ソフトウェア実現 シラバス
TOPへ
【授業科目】
ソフトウェア実現
【担当教員】
鎌田賢、上田賀一
【英語名】
Software Realization
【概要】
ソフトウェアとして機能実現する方法のエッセンスを修得する.
講義と演習を通して, ソフトウェアの開発手法の概要,およびライフサイクルの考え方を理解する.
演習では, MS Windowsプログラムの統合開発環境であるVIsual Studio上で,Win32APIを利用して,ウィンドウグラフィック表示,ネットワーク通信を含むアプリケションプログラムを開発する.
【キーワード】
ソフトウェアライフサイクル,イベント駆動プログラミング,GUIシステム,API
【到達目標】
ソフトウェアライフサイクルの捉え方を理解し,開発手法を意識しながら,イベント駆動プログラムの実装を通して,ソフトウェアの実現形態を考えられるようになる.
【授業計画】
<基本演習>
  1. オリエンテーション,開発環境整備
  2. スケルトンプログラムの導入,ウィンドウクラスとメッセージハンドラ
  3. ボタンクラス,インスタンス,メッセージ、 マウスイベントとグラフィック描画
  4. 非同期ソケット通信,簡易チャットプログラム
  5. 手書きチャットプログラム・ドキュメント作成
    詳細はこちら
<ソフトウェアの開発手法とライフサイクル>
  1. ソフトウェア開発手法とソフトウェアライフサイクル
<発展演習>
  1. 手書きチャットプログラムの応用検討
  2. 機能構造・データ構造の検討とグループ作業
  3. プログラム試作と問題点検討
  4. テスト設計
  5. プログラミング
  6. ドキュメント作成
  7. 開発ソフトウェア報告
【履修上の注意】
本科目の学習内容は積み上げ式の理解や作業が必要ですので,休まずに取り組んで下さい.
【成績の評価方法】
基本演習に対する個人ごとのレポートとそれに基づく口頭試問の重みを40%とする.
グループ演習に対するグループの報告の重みを40%とする. 報告のドキュメントとプログラムの担当部分には個人名を記載すること.
開発手法およびライフサイクルに関するレポートの重みを20%とする.
-
【教科書・参考書】
教科書
配布資料(このウェブサイト)を用いる.
参考書
Windows2000時代のWin32 APIシステムプログラミング with VisualC++6.0,カットシステム
公式Win32 APIリファレンス Volume 3,アスキー出版局
基本演習
個人演習 個人でレポートを堤出
P2Pの簡易手書きチャットを想定,マウスのペン座標を互いに送り合って,それを固定長配列に記憶し,再描画の際には,その配列に入っている座標を再描画する.
基本演習とグループ演習の間を空けるために,座学・理論を中間に挟む.
発展演習
少人数(3-5人)グループ演習 グループでレポートを堤出
7-12コマ目は,始めに当日やるべきことを説明し,PC画面を前にしてグループ討論させる.
当日までにやるべきことの達成具合と次回までに各自がやるべきことを打合わせて,その日のうちに報告させる.
実質的開発作業は授業時間外となる.
プログラムおよびドキュメントは各箇所の担当者名を記した1編として提出させる.
13回目の報告はPPTなら4枚程度(応用目的とゴール,機能と役割分担,ソフト紹介,テスト結果と自己評価)を用意させて発表する.
発展方向は自由であるが, グラフィックと通信を扱うものとする.
例は, 簡単な知育ソフトなどである. 通信プロトコルとグラフィク描画の設計が大切になる.
場合によっては, 固定長配列をやめて,動的な配列をストロークごとにとる方式に変更しなければならないかもしれない.
現在描いている点列の受け入れ用のバッファの作り方,複数のストロークを記憶する可変長配列の持ち方を工夫することも必要かもしれない.
あるいはP2Pの1対1の手書きチャットからサーバ1つ,クライアントn個というn人チャットへの変更もあり得る.

TOPへ