------------------------------------------------------------ ソフトウェアエンジニアリングカリキュラムに求める最低限の要件 ------------------------------------------------------------ 2001年2月11日 情報処理学会アクレディテーション委員会 ソフトウェアエンジニアリング分科会 教養及び基礎科目 JABEE の共通基準に配慮して教養および基礎科目を構成する。次の a およ びb, b' を合計して、4年間に学習すべき全単位数の約4分の1程度とする。 この部分の全単位数は、各大学で実施中のものをベースに構成する。 a. (総合人間系) b. (総合理数系) 次の目的を達するように履修するものとする。 ・豊かな教養を身につけ,その上で自ら考え、責任をもって判断し,技術の 自然や社会に対する影響への洞察を含めた倫理感を涵養すること。 ・広く社会の制度、経済、歴史等に目を向け,それらに対する社会科学的な アプローチへの関心と理解をもつこと。 ・文化、芸術、思想、哲学等への関心を深め、人文科学的なアプローチへの 理解と素養を育てること。 ・物理、科学、生物等の自然科学の基礎を身につけ、必要に応じて応用が可 能であるようにすること。 ・工学の基礎を学び、エンジニアリング・センスを身につけること。 ・言語による記述、発表、討論等のコミュニケーション能力を駆使できるよ うにすること。 ・向学心を持続し、常に生き生きとした好奇心と探求心を保ち続けること。 b'. SE教育プログラムからみて必要な基礎 情報理論 形式論理(論理式とその応用) 確率と統計(待ち行列理論を含む) 離散数学(集合,関数,関係,順序,帰納,木,グラフ) 専門科目 本項に挙げる c から i までが [CMU99] がいうところの "computer science and software engineering fundamentals" に対応した 部分であり、SE寄りCSで試行審査を受けるプログラムが具えるべき最低必須 要件となる。なお、各項目に付与した SE1〜SE9の番号は [CMU99] に提案さ れた SE 教育モジュール番号に相当する。項目i (4単位; 通年1講時) 以外 の各項目はそれぞれ2単位(半期1講時)に相当し、ソフトウェアエンジニアリ ングコア部分での総単位数は22単位となる。 ここに挙げる各項目は、カリキュラム上必ずしも単独の科目に対応する必要 はなく、その内容を複数の科目によりカバーし、それぞれで内容をさらに深 めるような方法を選択したり、逆に一つの科目の内容が複数の項目にまたがっ ていても良い。科目の編成方法や記載以外の残りの単位に割り当てる内容は、 それぞれのプログラムの目的に合わせて決定する。 プログラムの目的としてはたとえば次のようなものが考えられる。 ・特定の問題領域に関する知識に重点をおいたプログラム ハードウェア関連、組込みシステム関連、ネットワーク関連 など ・特定のアプローチ・方法論に関する知識に重点をおいたプログラム フォーマル、オブジェクト指向 など c. コンピュータサイエンス入門 論理回路・形式言語・オートマトン コンピュータアーキテクチャ オペレーティングシステム データベース 情報ネットワーク HCI d. ソフトウェアエンジニアリングのためのコンピュータサイエンス1: SE1 アルゴリズム プログラミング言語 言語処理 d(演). プログラミング演習1 個人のプログラミング能力訓練を対象; シーケンシャルプログラミング e. ソフトウェアエンジニアリングのためのコンピュータサイエンス2: SE2 データ構造 抽象データ型 オブジェクト指向プログラミング e(演). プログラミング演習2 個人のプログラミング能力訓練を対象; 並行,オブジェクト指向 f. ソフトウェアエンジニアリング概論: SE3 ソフトウェアエンジニアリングの基本知識要求と仕様   設計   テスト   ツール・環境   ソフトウェアプロセスと品質 プロジェクト計画とマネジメント (概論) g. ソフトウェア要求と設計: SE5, 6 システム/ソフトウェア要求分析、及び定義 ソフトウェア設計論 (手続き・オブジェクト指向) h. ソフトウェア構築と発展: SE7, 8 ソフトウェアツール・環境 ソフトウェアテスト ソフトウェア保守・再利用 fgh(演). プログラミング演習3 複数人からなるプロジェクトでのソフトウェア開発能力を訓練する i. ソフトウェア開発総合演習: SE9 卒業研究・演習・製作 注. SE専門職業・倫理: SE4 d, e, f, g, h, i の各教育・演習を通じて、あるいは特別講義などを設 け、ソフトウェアエンジニアリング専門職業倫理、ソフトウェアの知的所有 権、プライバシ、セキュリティ/安全性などの意識を身につけ、考察する機 会を与えること。 項目の配列順序(上から下へ; どの期に実施するかは随意) +--+ |c | +--+ +--+ +---+ |d | |d演| +--+ +---+ +--+ +---+ |e | |e演| +--+ +---+ +--+ |f | +--+ +--+ |g | +--+ +---+ +--+ |fgh| |h | |演 | +--+ +---+ +--------+ |i | +--------+ 参考文献 [J97] 大学の理工系学部情報系学科のためのコンピュータサイエンス教育 カリキュラム J97 (第1.1版), (社) 情報処理学会, 1999年9月. [CMU99] Donald J. Bagart, Thomas B. Hilburn et al.: "Guidelines for Software Engineering Education Version 1.0", Technical Report: Carnegie Mellon University Software Engineering Institute, CMU/SEI-99-TR-032, ESC-TR-99-002, Oct. 1999. [CC2001] The Joint Task Force on Computing Curricula IEEE-CS, ACM: Computing Curricula 2001, Volume II, Computer Science (Ironman Draft), Feb. 2001, (http://computer.org/education/cc2001/).