シラバス参照

公式版のシラバスを表示  
最終更新日:2020/09/15  
筑波大学 教育課程編成支援システム

GB31501 ソフトウェア工学

2.0 単位, 3・4 年次, 秋AB 火3,4
早瀬 康裕

授業概要

オブジェクト指向技術を中心として,ソフトウェア開発に関する手法を論じる。オブジェクト指向プログラミング,クラスライブラリ構築法,UML.デザインパターン,ユニットテスト,リファクタリング等の手法を,具体的な演習を行いながら学習する。

備考

オブジェクト指向プログラミング実習等の授業によって,オブジェクト指向プログラミングの基礎を学んでいることが望ましい。
オンライン(オンデマンド型)

授業形態

講義

学位プログラム・コンピテンスとの関係

・汎用コンピテンス
2. 批判的・創造的思考力
4. 広い視野と国際性
・専門コンピテンス
3. 情報システム分野の専門能力
6. 実践的技術力と問題解決能力
7. 情報専門技術者としての倫理

授業の到達目標(学修成果)

ソフトウェア開発の全体像について理解する.
ソフトウェア開発で用いられる基本概念、基本語彙を習得する.
現代的なソフトウェアの開発手法について演習を通じて学ぶ.

キーワード

ソフトウェア工学, 開発方法論, オブジェクト指向, デザインパターン, UML, ユニットテスト, リファクタリング, バージョン管理

授業計画

オンデマンドのビデオ講義と,Microsoft Teamsのビデオ会議によるオフィスアワーとを組み合わせて実施する.

第1〜2週 オブジェクト指向プログラミング(2週)
抽象化とカプセル化,継承と再利用,多相
クラス,インスタンス,変数とメソッド,クラス階層,抽象クラス,インターフェース
パッケージ,Generics

第3週 UML(Unified Modeling Language)
ユースケース図,クラス図,オブジェクト図,シーケンス図

第4週 ソフトウェアのパターン
アーキテクチャパターン,フレームワーク,デザインパターン

第5〜6週 デザインパターン(2週)
生成,構造 ,振舞いに関するパターン.オブジェクトの責任と契約.

第7〜8週 ソフトウェア開発方法論
方法論とその発展,ウォーターフォール・モデルとその問題点,ラピッドプロトタイピング,スパイラル型開発モデル,統一開発プロセス,アジャイルソフトウェア開発,エクストリームプログラミング,テスト駆動開発とユニットテスト

第9週 リファクタリング

第10週 開発支援ツール,まとめ
バージョン管理,バグ追跡

履修条件

Javaプログラミングの知識を前提とする.
オブジェクト指向プログラミング実習等の授業によって,オブジェクト指向プログラミングの基礎を学んでいることが望ましい。

演習では Java プログラミング環境として、 Eclipse を使用する。各自のPCにEclipseとJava開発環境をセットアップするか、大学の計算機室を使用するなどして、演習に必要な環境を準備すること。

成績評価方法

演習の成果と,理解度評価の総合点により,成績を決定する.

小テストなどにより,講義の理解度の評価を行う.
毎週行う演習問題に解答することによって演習の学習状況の評価を行う.

学修時間の割り当て及び授業外における学修方法

教材・参考文献・配付資料等

教材
学習管理システム(manaba)上で公開する講義資料,演習資料を用いて講義と演習を行う.

講義のWebページ
学習管理システム(manaba)を用いる.

参考書籍
結城「Java言語 プログラミングレッスン第3版 上下」ソフトバンククリエイティブ (2012)
ガンマ他「オブジェクト指向における再利用のためのデザインパターン」ソフトバンクパブリッシング(1999)
結城「増補改訂版Java言語で学ぶデザインパターン入門」ソフトバンククリエイティブ(2004)
ベック「XPエクストリーム・プログラミング入門―ソフトウェア開発の究極の手法」ピアソンエデュケーション(2000)
ヤコブソン他「UMLによる統一ソフトウェア開発プロセス―オブジェクト指向開発方法論」 翔泳社(2000)
ファウラー「新装版 リファクタリング―既存のコードを安全に改善する」オーム社(2014)
メイヤー「オブジェクト指向入門 第2版 原則・コンセプト」翔泳社(2007)

オフィスアワー等(連絡先含む)

原則として,火曜日の4限をオフィスアワーとする.
変更がある場合には,Manabaなどを通して連絡する.

その他(受講生にのぞむことや受講上の注意点等)

他の授業科目との関連

ティーチングフェロー(TF)・ティーチングアシスタント(TA)

TA 1名 (未定)