理工学部Faculty of Science and Engineering
COT200XE(計算基盤 / Computing technologies 200)ソフトウェア設計技法Software design
山浦 恒央Tsuneo YAMAURA
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 理工学部Faculty of Science and Engineering |
添付ファイル名Attached documents | |
年度Year | 2022 |
授業コードClass code | H6161 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 秋学期授業/Fall |
曜日・時限Day/Period | 金2/Fri.2 |
科目種別Class Type | |
キャンパスCampus | 小金井 |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | |
単位数Credit(s) | |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
カテゴリー<理工学部>Category |
応用情報工学科 学科専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
In modern society, software contained in information systems has been indispensable. Software is becoming more extensive and complex, and various techniques are required to develop it efficiently. In addition, developing such complex software involves many people. In this course, students learn the basics of techniques for developing such software.
By the end of this course, students should be able to do the followings:
- Students can explain each phase of software development.
- Students can demonstrate software modeling.
- Students can explain several techniques in software design, such as object-oriented programming.
Before/after each class meeting, students will be expected to spend four hours to understand the course content.
Your overall grade in the class will be decided based on the following
Term-end report: 60%, Short tests: 40%.
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
現代社会において,ソフトウェアは必要不可欠となっている.一方で,ソフトウェアは大規模化・複雑化の一途を辿っており,効率よく開発を行うためにはさまざまな技術が求められる.また,このようなソフトウェアの開発を行う場合,多くの人が関わってくる.本講義では,ソフトウェアを設計する上で種々の問題を乗り越えるために必要な技術の基礎を学ぶ.
到達目標Goal
ソフトウェア設計技術を中心として,ソフトウェア開発に関わる基礎的な知識を適切に説明できることを目標とする.具体的には,(1) ソフトウェアを開発する上で現れる各フェーズについて説明できること,(2) ソフトウェアモデリングを行えること,また,(3) オブジェクト指向を始めとした設計技法について説明できることを到達目標とする.
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
講義形式で基本的な概念について学ぶ.また,授業中の小テストで自身の理解度を把握する.必要に応じて,小テストについて振り返りながら,到達目標を達成しているかはレポートによって採点される.課題等に対するフィードバックは学習支援システムまたは授業等を通じて行う.
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
なし / No
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
第1回[対面/face to face]:概要
設計技法とそれを取り巻くソフトウェア工学の概要
第2回[対面/face to face]:ソフトウェアモデリング
UML表現,ユースケース図,アクティビティー図,クラス図
第3回[対面/face to face]:情報システム
情報システムとビジネス,組込みシステム
第4回[対面/face to face]:要求定義 (1)
要求を獲得するための技術
第5回[対面/face to face]:要求定義 (2)
シナリオ分析,ユースケース分析,要求仕様
第6回[対面/face to face]:設計技法 (1)
設計の基礎,モジュール化,構造化手法
第7回[対面/face to face]:設計技法 (2)
情報・データ・状態に関する設計
第8回[対面/face to face]:設計技法 (3)
オブジェクト指向
第9回[対面/face to face]:設計技法 (4)
ソフトウェアパターン
第10回[対面/face to face]:検証と妥当性 (1)
検証と妥当性,ブラックボックステスト
第11回[対面/face to face]:検証と妥当性 (2)
ホワイトボックステスト,テストの運用
第12回[対面/face to face]:開発プロセス
ライフサイクルモデル,ウォーターフォール,アジャイル開発
第13回[対面/face to face]:保守と管理
ソフトウェア再利用
第14回[対面/face to face]:形式手法
形式仕様と検証,モデル検査
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
【本授業の準備・復習等の授業時間外学習は、4時間を標準とする】
テキスト(教科書)Textbooks
特に指定しない.教員が作成した資料を利用する.
参考書References
岸知二,野田夏子,ソフトウェア工学,近代科学社,2016
成績評価の方法と基準Grading criteria
授業中実施される小テスト (40%) およびレポート (60%) で評価する.達成目標に対して60%以上の点数を獲得した学生が合格する.
学生の意見等からの気づきChanges following student comments
本年度授業担当者変更によりフィードバックできません