ソフトウエア設計は,ソフトウエアの保守性や再利用性に大きく影響する重要な要素技術である.また,ソフトウエアの処理効率には,良いコーディングよりも良い設計が大きく影響する.その一方で,ソフトウエアの設計は複雑で反復が必要なプロセスであり,ベストの解が1つしかないことは通常ありえない.本講義では情報システムのアーキテクチャ、振る舞いモデリング,状態モデリングといった設計に関する技術を系統的に学ぶ.単なる座学ではなく,PBL教材を活用して実践的なソフトウェア設計技術を学生が身につけられるように指導する.