ソフトウェア工学Ⅱ (132010) Software Engineering Ⅱ (132010)
 
◇ 担当教員 Instructor : 石尾 隆(Takashi Ishio / いしお たかし)、 畑 秀明(Hideaki Hata / はた ひであき)
◇ 単位数 Credits : 1単位 ◇ 選択・必修 Required/Elective : 選択 ◇ 講義室 Room : L1
◇ 講義スタイル Style : 講義/公開
◇ 開講時期 Quarter : Ⅲ期 火曜2限

◇ 授業目的 Course goals : ソフトウェア開発における技術的課題解決のための方法論、ツール、及び、ノウハウについて、実際のソフトウェアの構造やソフトウェア開発プロジェクトの状況の分析を題材として実務的な視点から学習する。

Learn methodologies, tools, and know-how for solving technical problems in software development from a practical perspective with the analysis of actual software structure and software development project situation.
◇ 授業内容 Course description : 本授業では、ソフトウェア工学Ⅰ、ソフトウェア設計論の授業で学んだソフトウェア構築やマネジメントのための方法論を踏まえ、発展・応用的トピックを学習する。

In this lesson, students learn advanced / applied topics based on fundamental methodology and management learned in Software Engineering I and Software Design.

前半は、データフロー解析を用いたプログラムの機能の分析手法や、開発者によって複製されたソースコードの検出、再利用可能なソースコードの検索など、企業でも実際に用いられているプログラム解析技術を取り扱う。

In the first half, we will study program analysis techniques used in industry, such as analysis of program functions based on data flow analysis, duplicated source code detection, searching of reusable source code.

後半は、ソフトウェア開発データのマイニング・アナリティクスの基本や得られるエビデンスについて、また、自動化についての最新研究、リリースエンジニアリングについてを取り扱う。

In the second half, we will deal with the fundamentals of mining and analytics of software development data and the discussion of evidence, and also about the latest research on automation, release engineering.


1. Program Slicing プログラムスライシング(石尾)
2. Code Clone Detection コードクローン検出(石尾)
3. Software Clustering ソフトウェアクラスタリング(石尾)
4. Source Code Search ソースコード検索(石尾)
5. Evidence-based SE エビデンスに基づくソフトウェア工学(畑)
6. Software Analytics ソフトウェアアナリティクス(畑)
7. ML for Software Development ソフトウェア開発のための機械学習(畑)
8. Release Engineering リリースエンジニアリング(畑)

◇ 教科書 Textbook : 特になし。必要に応じて資料を配布する。

No texts but slides will be provided on demand.
◇ 参考書 Reference materials : Andy Oram、Greg Wilson 編、久野禎子、久野靖 訳、Making Software――エビデンスが変えるソフトウェア開発、オライリー・ジャパン、2011

Andy Oram, Greg Wilson, Making Software -- What Really Works, and Why We Believe It, O'Reilly Media, 2010.
◇ 履修条件 Prerequisites : ソフトウェア工学Ⅰ,ソフトウェア設計論を受講していることが望ましいが,必須ではない.

Taking Software Engineering I and Software Design is recommended but not required.
◇ 成績評価 Grading : 試験(60%)、提出レポート(40%)によって行う。

Examination (60%) and report submission (40%).
◇ オフィスアワー Office Hours : 随時。ただし事前にメール等にて連絡すること。(石尾B303、畑 B306)

On demand. Basically by email (Ishio in B303, Hata in B306).
◇ 配布資料 Handouts : 現在、配布資料はありません。