授業科目名 : ソフトウェア工学

科目コード 90990
配当学年 3年
開講年度・開講期 平成30年度・後期
曜時限 月曜・4時限
講義室 総合研究7号館情報1
単位数 2
履修者制限
授業形態 講義
使用言語 日本語
担当教員    所属・職名・氏名 情報環境機構・助教・渥美紀寿,非常勤講師・星野寛

授業の概要・目的

ソフトウェア工学とは、高品質な情報システムを開発するための理論・技術・手法・規律など様々な学問分野の総称である。ソフトウェア工学が対象とする情報システムとは、組織、社会、あるいは個人における様々な活動に関連する情報を取り扱うシステムでありこれを正しく低コストで迅速に開発することは社会要請となっている。本講義では、情報システム開発に関わる様々な側面について解説する。

成績評価の方法・観点及び達成度

定期試験で評価する。ただし、講義中にレポートを出題する場合は、提出されたレポートと定期試験を総合して評価する。

到達目標

高品質な情報システムを正しく低コストで迅速に開発するための理論・技術・手法について理解する。

授業計画と内容

項目 回数 内容説明
ソフトウェア工学概説 1 ソフトウェア工学の概要について紹介する。ソフトウェア工学が対象とする情報システムの開発手順や組織、開発の管理について概説する。
ソフトウェア要求工学 2 ソフトウェア開発の最上流工程である要求工学の諸技術について解説する。要求獲得や分析、要求の文書化などに用いられる技術や、システムのモデル化手法について解説する。
ソフトウェア設計技術 2 ソフトウェア要求を実装につなげるために行われる設計技術について解説する。ソフトウェアアーキテクチャの設計、アーキテクチャのスタイルなどとともに、オブジェクト指向設計プロセスについて解説する。
ソフトウェアプロセス 1 ソフトウェアプロセスとソフトウェアプロセスモデルについて解説する。また、ソフトウェア開発の各工程においてどのようなソフトウェアプロセスが実働されるかについて説明する。
ソフトウェアの品質管理 1 ソフトウェアプロダクトの品質特性および利用者からみたソフトウェアの品質特性について解説する。また、クリティカルシステムとソフトウェアのディペンダビリティについて解説する。
ビジネスモデル創生 1 組織内業務を管理する大規模ソフトウェアの開発ニーズから、外部ユーザが直接使う例えばショッピングサイトの構築に見られるような、ビジネスに直結するシステムの開発ニーズへ変化している。ビジネスモデルを理解して開発するソフトウェアの要求を捉えることの重要性について解説する。
プロジェックト管理 1 ソフトウェアを開発する場合、顧客の要望を聞いて設計をした後に開発やテストの作業があり、その作業をさまざまな関係者が予定に沿って進める。所謂、プロジェクト管理が必要である。PMBOCKに沿ってプロジェクト管理を説明し、その重要性について解説する。
ソフトウェアモジュール 1 保守性、再利用性の高いソフトウェアを構成するために必要となる、モジュール分割の方法およびモジュールの評価方法について解説する。
ソフトウェアテスト 1 システムが正しく作られていることをテストにより検証する手法について解説する。
形式手法 1 システムが正しく作られていることを検証する手法の一つである形式的手法について解説する。
ソフトウェアメトリクス 1 ソフトウェアの規模、複雑さ、保守性などソフトウェア開発をさまざまな観点で定量的に評価する手法について解説する。また、メトリクスの評価結果に基づく開発者支援について解説する。
ソフトウェアの保守と発展 1 ソフトウェア開発ライフサイクルの中で最も長い保守工程について、長く利用されるソフトウェアを構築するために必要となる技術について解説する。また、ソフトウェア資源を有効活用するための、様々な抽象レベルにおける再利用技術について解説する。
学習到達度の確認 1 本講義の内容に関する到達度を確認(講評)する。

教科書

ソフトウェア工学入門 (鰺坂恒夫著,サイエンス社)

参考書等

Ian Sommerville, "Software Engineering 10th Edition", Pearson, 2016.
荒木 啓二郎, 張 漢明, プログラム仕様記述論, オーム社, 2002.
磯部 文洋, 粂野 文洋, 櫻庭 健年, 田口 研治, 田原 康之, ソフトウェア科学基礎, 近代科学社, 2008.
来間 啓伸, Bメソッドによる形式仕様記述, 近代科学社, 2007.
玉井 哲雄, ソフトウェア工学の基礎,岩波 書店, 2004.
岸 知二,野田 夏子, ソフトウェア工学,近代科学者, 2016.
ロジャー S.プレスマン著, 古沢聡子, 正木めぐみ, 関口梢訳, 実践ソフトウェアエンジニアリング, 日科技連出版社, 2005.
Tom DeMarco著, 渡辺 純一訳, 品質と生産性を重視したソフトウェア開発 プロジェクト技法, 近代科学社, 1987.

履修要件

プログラミング言語(90170),オペレーティングシステム(91030),データ構造(91000).

授業外学習(予習・復習)等

授業URL

その他(オフィスアワー等)

当該年度の授業回数などの必要に応じて、一部省略や追加、順序の変更があり得る。講義時に使用する資料、レポート問題などは Web ページ(学内限定)を通じて配布する。受講にさいしては、該当する回の講義資料を印刷して持参することをお勧めする。アクセス方法などは初回講義時に説明する。