講義概要
ソフトウェアシステムの設計が適切に行われているかどうかは、開発段階だけではなく、保守、再利用に至るまで大きな影響を及ぼす。本講義では、手続き型言語による開発で広く用いられている構造化分析・設計法について述べる。次に、オブジェクト指向の考え方と、ソフトウェア開発においてオブジェクト指向を用いることの意義について学ぶ。また、デザインパターンにも触れる。
講師
- 所属
- 京都産業大学
- 講師名
- 荻原剛志
京都産業大学情報理工学部にてオペレーティングシステム、プログラミング関連科目を担当。ソフトウェア開発手法、深層暗号などに関する研究に従事。特にオブジェクト指向技術には30年近い経験を持つ。主な著書に「詳解Objective-C 2.0」、「詳解Swift」などがある。
講義内容
- プログラムの設計とは
- 構造化分析・設計法 データフロー図、データ辞書の書き方、構造図への変換
- オブジェクト指向開発とは オブジェクト指向プログラミング、動的結合と型の多態性、クラス継承とインタフェース継承
- オブジェクト指向モデリング モジュールの抽象化、可視性と相互関係、UMLの基礎(全体構成、クラス図、シーケンス図など)
- デザインパターン デザインパターンの有用性、オブジェクト指向開発におけるデザインパターン
受講要件
- 【受講要件】
- C言語などによる数千行以上からなるソフトウェアシステムの開発に携わった経験があることが望ましい。オブジェクト指向言語の開発経験は特に問わない。
- 【事前学習のポイント】
- 規模の大きなソフトウェア開発には、フローチャートなどは役に立たない。全体を把握したり、設計方針を議論するには何が必要か考えてみよう。
教科書
講義2週間前に電子ファイル送付(事前学習を推奨)井上 克郎(著)、「演習で身につくソフトウェア設計入門」、NTS、 2006. (講義当日配布)
講義に関連する解説記事・参考文献・図書等
オージス総研 組み込みソリューション部、「いまさら聞けない構造化手法とオブジェクト指向の違い」
(http://www.ogis-ri.co.jp/casestudy/docs/CaseStudy_ESEC2010_StructOO.pdf)
SESSAME WG2(著)、「組込みソフトウェア開発のための構造化モデリング」、翔泳社