ソフトウェア構成論(前期2単位)

教授 大久保 隆夫

1.授業のねらい

システムをサイバー攻撃から守るため、脆弱性のない安全なシステム構築が求められる。そのための知識はユーザ側、開発側双方に必要となる。
本授業では、セキュアなソフトウェアを構築するために前提となる、ソフトウェア開発手法を学ぶ。
本授業では、主に、オブジェクト指向モデルに基づいた最新のソフトウェア開発手法を取り上げ、ユーザ側、開発側双方の観点でセキュリティ対策をソフトウェアの面から考えるための基礎について学ぶ。
オブジェクト指向による開発の理解を深めるため、一部、UMLを用いた分析、設計手法やeclipseによるJava言語プログラミングの実習を行う。

2.到達目標

ソフトウェア開発に必要なプロセス(ライフサイクル)と、プロセスの各工程(要求分析、設計、プログラミング、テスト)において必要な作業とそのための技術について理解する。
また、オブジェクト指向開発の概念とそれを実践するための設計記法(UML)、プログラミング(Java)について、ある程度使えるようになる。

3.授業計画

 第1回 ソフトウェア構成論概要
 第2回 ソフトウェア開発のプロセスモデル
  (1)ウォータフォールモデル
  (2)プロトタイピングモデル
  (3)スパイラルモデル
  (4)アジャイル開発
 第3回 要求分析
 第4回 設計
 第5回 オブジェクト指向による開発
    オブジェクト指向の概念
 第6-7回 UMLによる分析・設計(実習を含む)
 第8-10回 Java言語 (プログラミング実習を含む)
 第11回 パターン、Dependency Injection
 第12回 テスト、検証
 第13回 プロジェクトマネジメント
 第14-15回 ソフトウェア開発とセキュリティ

4.教科書

特に指定しない。

5.参考書

  • ロジャー S. プレスマン著 「実践ソフトウェアエンジニアリング」 日科技連 2009年
  • ジョゼフ・オニール著 「独習JAVA」 翔泳社 2008年
  • E.ガンマ他著 「デザインパターン」改訂版 ソフトバンク 1999年
  • バリー・ベナム、リチャード・ターナー 「アジャイルと規律」 日経BP社 2004年
  • マーチン・ファウラー著「UMLモデリングのエッセンス」第3版 翔泳社 2005年

6.関連科目

プログラミング、セキュアシステム構成論

7.成績評価の方法

中間、期末レポート(80%)、実習の成果(20%)から総合的に評価する。