ソフトウェアの危機とUML

序文

1960年前に、私たちは、そのソフトウェア技術は全能と信じていますが、1960年のソフトウェア業界のソフトウェア危機が勃発しました。全国一般会計事務所は、1983年に、すべてのソフトウェアプロジェクトの配信政府のために検討しました。これは、プロジェクトのわずか3%が時間通りに配信することができることを見出し、およびクリアランスの品質は、プロジェクトの49%は、プロジェクトの48%が出産後に使用するように再修正されなければならない、利用できません。
大企業では、1.78倍でITプロジェクトのオーバーランの平均コストは、スケジュールが2.3倍をオーバーラン。オリジナル要求のわずか42%がプロジェクト送達後の製品の最終バージョンで実装することができます。
そのため、ソフトウェアエンジニアリングがされて入ってきた、私は、ソフトウェア工学、オブジェクト指向モデリング言語UMLでこれを要約し、それはソフトウェアの危機を解決することを目的とする方法を紹介します。

危機のソフトウェア機能

1.深刻なソフトウェア開発サイクルは、指定された日付超え
2.ソフトウェア開発費用はるかに超え
3.ソフトウェアの品質を保証することは困難であるが

理由ソフトウェアの危機

1.ソフトウェア生産増加の大きさは徐々に、より多くの複雑な構造
2.ソフトウェア開発費用はるかに超え
3.ソフトウェアの品質は保証することは困難です

もしドキュメント・ソフトウェア・エンジニアリング、成功した様々な観客の間の通信の問題の解決策、および残業、運用・保守コストオーバーラン問題のソフトウェア開発サイクルに対応するための開発計画および運用・保守プログラムに関連する文書の確立を通じて。だから、UMLモデリング言語は、問題の魔法の武器スケールの構造を解明するために、異なる角度は、ソフトウェアシステムの直感的に理解することができから、さまざまな観客を支援することです。

UMLモデリング言語

1.UMLビジュアルオブジェクト指向モデリング言語であり
、2.UMLは、動的挙動、システムの静的な挙動を記述するオブジェクト指向システムの全体構造を示すグラフィカルな方法
、システムモデルの異なる角度から3.UMLを異なるシステムビューを形成します。
ここに画像を挿入説明
物事の構造

カテゴリ

Objectクラスは、同じ属性、メソッド、関係、およびグループの意味の説明です

インターフェース

インターフェイスは、サービスクラスまたはメンバーの一連の操作を説明します。インタフェース仕様のみの操作のセットを定義し、それが動作のこのセットの特定の実装を与えません。

連携

协作定义了一个交互,它是由一组共同工作以提供某协作的角色和其他元素构成的群体,这些协作行为大于所有元素的各自行为的总和。因此,协作有结构,行为,和纬度。一个给定的类可以参加多个协作。

用例

用例是对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值且可观察的结果。

主动类

主动类,类的一种,其对象至少拥有一个进程或线程,因此他能启动控制活动。

构件

构件是系统中物理的、可替代的部件,他遵循且提供一组接口的实现。

节点

节点是在运行时存在的物理元素,他表示了一种可计算的资源,他通常至少有一些记忆能力处理能力,一个构件集可以驻留在一个节点内,也可以从一个节点迁移到另一个节点。

行为事物

交互

交互这样一种行为,他由在特定语境中共同完成一定特定任务的一组对象之间交换的消息组成。一个对象群体的行为或单个操作的行为可用一个交互来描述。此外交互还涉及一些其他元素,包括消息,动作序列(由个消息所引起的一系列行为),链接(对象之间的links)

状态机

状态机是这样一种行为,描述了一个对象或一个交互在生命期内响应事件所经历的状态序列。单个类或一组类之间协作的行为可以用状态机来描述。一个状态机涉及到一些其他元素,包括状态转换(从一个状态到另一个状态的流)事件(自发转换的事物)和活动(对一个转换的响应)

分组事物

分组事物是UML模型的组织部分,最主要的分组事物是

包是 UML中唯一的组织机制,负责将元素组织成组的机制

UML中的关系

关联(Association)

描述了两个或多个类之间的结构性关系

依赖(Dependency)

表示两个事物之间彼此的使用关系

泛化(Generalization)

泛化实际上是一种更具体和普通的关系,具体元素(子元素)的对象可以替代普通元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。因此泛化是对面向对象技术中继承进行建模的UML元素。

实现(Realization)

由一个类元描述了另一个类元保证实现的契约。

UML中的图

用例图

、ユーザの視点の説明から、システム機能をユーザーのニーズを記述するために使用され、そしてパフォーマーのための完全なシステムを備えてシステムを、使用している人強調する、様々な業務執行機能を指摘しました。

クラス図

システムは、内部構造とクラス説明クラスとの関係を含めて、クラスを定義するために使用されます。図主として静的クラス構造は、システムを記載しています。

オブジェクトグラフ

オブジェクト・クラスの図の例は、特定の時点を含むシステム内のオブジェクトとの関係を説明する図であり、各オブジェクト

状態マップ

オブジェクトクラスの遷移条件は、すべての可能な状態と状態を説明する時に発生

アクティビティ図

並列アクティビティ図有益な行動認識システムを使用する実施形態によって実行されるべき必要なイベントや活動の間の関係を記述するために使用される制約を満たします

シーケンス図

標的配列との間の相互作用を記述し、送信順序は、オブジェクト間の強調メッセージを反映するだけでなく、オブジェクト間の相互作用を示します

コラボレーション図

記述されたオブジェクトとの間の協力は、例示のオブジェクト間でメッセージを渡すことに重点があります

シーケンス図とコラボレーション図は、相互に変換することができます。

図メンバー

図部材は、コード部材と各部材との間の物理的な依存関係の構造を説明するために使用されます。メンバーは、リソース・ファイル、バイナリファイルまたは実行可能ファイルを作成することができます。

図の実施形態。

図展開システムは、それらと物理デバイスとの間の接続を記述するために使用される物理的なハードウェアアーキテクチャを定義します。

概要

最初のいくつかのエピソードのビデオUML、基本的なビルディングブロックのUMLの理解を完了した後、ソフトウェア工学の役割で自分のプレイすることを知って。次は、合理的なバラのツールを実際に使用すると、グラフの多様性を知っておく必要があります。

おすすめ

転載: blog.csdn.net/s310040799/article/details/89765306