本学のソフトウェア工学関連科目の関連を下図で示します.
太字は僕が直接関わっている科目です.各科目は次のような内容です.
- 計算機演習I: UNIX, シェルプログラミング,sed/awk, LaTeX, C言語プログラミング(データ型,制御構造)
- アルゴリズムとデータ構造: 配列,リスト,スタック,キュー,木,再帰呼び出し,アルゴリズムの解析,ソート
- 計算機演習II: C言語プログラミング(配列,構造体,関数,ポインタ,ファイル入力,データ処理,リンクリスト,スタック,キュー,木構造)
- 形式言語とオートマトン: 帰納的表現,形式言語,正規表現,有限オートマトン,非決定性有限オートマトン,文脈自由文法,プッシュダウンオートマトン,チューリング機械
- 数理論理学: 命題論理,述語論理
- プログラミング言語処理系: コンパイラの構成と原理を,講義・演習両面で学習する.「メタ」の概念がOOP演習につながっていないこともない.
- ソフトウェア設計論: UML の基本的な図の読み書き
- コンピュータアーキテクチャ: パターソン&ヘネシー.ハードウェア系の科目だが,プログラミング言語処理系の出口なので記載.
- オペレーティングシステム(OS): 並列プログラミングの基礎.
- オブジェクト指向プログラミング演習(OOP演習): 本科目.
- ソフトウェア工学概論: ソフトウェア開発の各工程ごとの技術の知識体系を講義.企業講師の方から最新技術の説明もあり.
- 組込みソフトウェア: 組込みソフトウェアの基礎である状態機械モデルを,LTSA を使って演習
- 組込みシステム開発演習: 近未来のモデルベース開発を先取りし,演習.安全性・信頼性にフォーカス.
- ソフトウェア検証論: SPIN によるモデルベースの検証方法の理論と実践.