!!! テーマ説明 内容を検討し, 説明を紙に書いてWiki にまとめて下さい. * この内容からプログラムに向けて詳細化していきます * 的確に,かつ内容が分かるようなものにして下さい * 作るものにもよりますが,プログラムが動いているときの画面を想像して描いて見るといいでしょう. * その絵にいろいろコメントを書き込んで下さい. * 絵とかは最初,紙に描いた方がいいです. !!! 昨年、一昨年の例 * [group@:Group2012|http://wiki.cis.iwate-u.ac.jp/~wiki/ssw/index.html?page=Group2012] * [group@:Group2011|http://wiki.cis.iwate-u.ac.jp/~wiki/ssw/index.html?page=Group2011] * [group@:Group2010|http://wiki.cis.iwate-u.ac.jp/~wiki/ssw/index.html?page=Group2010] !!! テーマ説明を書く意味 ソフトウェアへの要求(仕様書)を書く * 自分たちのやりたいことをはっきりさせ, * 全員が同じイメージを持つ. * やりたいことに含まれているものや機能を洗い出す. この内容からプログラムに向けて'''詳細化'''していきます.要求から実現方法を取り出すのです. !!! テーマ説明をつくるにあたり どうすればやりたいことが書けるのか,みんなで考えてください. やりたいことを明確にするために * 今までどうしていたか? ** 自分一人の場合 ** 複数の人の場合 * プログラムを作るにあたり特殊なことはあるか? ** どんな決めごとをしていかなければならないか? 8< 似たようなものがあれば,参考にするのがいいかもしれません. その場合でも,最初は自分たちで考えて,あとから参考にするのがいいと思います. 自分のデザイン能力の開発のために. >8 * プロセスを経験することが大切です. * 万能な方法はおそらくありません.経験すること,自分で考えることが大切です. * まずはブレーンストーミングから !! KJ法 たとえば,[KJ法|http://nokai.ab-garden.ehdo.go.jp/giho/43.shtml]という方法があります.これはソフトウェアの設計方法ではありませんが,いい方法の一つです. ボトムアップに抽象化し,トップダウンに検証していく. * やりたいことに関連すると思われることを,小さなカードに書き出す. * 出尽くすまで,書き出す. * カードを机の上に広げ,関連すると思われるものをまとめて,タイトルをつけてまとめる * カードをまとめたもの同士でも,関連づけを行う.構造をつくっていく トップダウン * 今度はまとめたカードを広げていく. * タイトルは適切か,ほかにまとめる方法はないか * 構造を認識していく !!! 次にやることは テーマ説明が出来上がった班は, * 「ものと操作の洗い出し」 * 「フローチャート」 * 「モジュールわけ」 などに突入してください.