ページ

2014年10月31日金曜日

ソフトウェア工学


 1. ソフトウェア工学とは
ソフトウェアの大規模化すると、システムの構造が複雑になる。全体の見通しが悪くなる

<<注意>>安易に見積もりを提示しない(見積にはリスクや粗利などが含まれる 人月×2ぐらい)

◯ソフトウェアの生産性を向上させるには・・・
 ・ソフトウェアプロダクトのアーキテクチャや構成要素の標準化
 ・ソフトウェア開発プロセスおよびプロジェクト管理の定式化

◯ソフトウェアの工程(ライフサイクル)
要求分析→システム設計→プログラム設計→コーディング→テスト→保守の6つの工程に分類

プロダクト・・・開発されるものを言い、モデルの表現方法、ソフトウェアのアーキテクチャに関する技術で構成
プロセス・・・開発工程とその開発手順を定式化したもので、どのような手順で作るかという開発技術の中核をなします。
プロジェクト管理・・・工程管理とも言い、納期、品質、コストの管理技術や、教育などを含みます。


2. ソフトウェア開発プロセス
・デザインレビュー・・・工程の成果物のレビューであり、ドキュメントなどが揃っているかをチェックします。
品質管理部門など外部の人間が加わって、成果物の品質を検査します。
・ウォークスルー・・・工程の中で開発に携わった人が集まって行われるチェックです。
参加者は仕様書やソースコードを最初から順にトレースしながらバグを探していきます。


3. ソフトウェア構造とモジュール分割



4. オブジェクト指向とモデリング言語



5. オブジェクト指向分析と設計
UMLを描くエディタが存在する


6. ソフトウェアの品質保証
品質特性は大きく6つに分類され、それぞれの英語の頭文字をとってFRUEMP特性とも呼ばれています。

機能性とは、必要な機能を満たしているかということです。
信頼性とは、指定された条件の下で正しく動くかということです。
使用性とは、使いやすさを表します。
効率性とは、スピードとサイズに関する性能です。
保守性とは、修正のしやすさです。
移植性とは、実行する環境の移行のしやすさを表します。

これらおのおのは、さらに複数の品質副特性に分類されています。


7. ソフトウェア開発のマネージメント
PMBOKでは、プロジェクトを統合的に管理するために知識エリアと呼ばれる8つの領域に着目してマネジメントを行います。
具体的には、スコープ、タイムスケジュール、コスト管理、品質管理、人的リソースの管理、コミュニケーション、リスク管理、調達管理に着目します。


8. ソフトウェア工学の発展

0 件のコメント:

コメントを投稿

ZenBack