ソフトウェア工学との説明を行う。Action)が行われる。トップダウン設計とウォーターフォール型開発が行われる。動作検証(Check)をうけ、最終的に利用者に納品し使ってもらう(Action)...の流れで開発が行われる。設計の中身も機能仕様や動作仕様...といった細かなフェーズになることも多い。全行程の遅延となることから、前段階では完璧な設計が必要となる。このような、上位設計から下流工程にむけ設計する方法は、トップダウン設計などと呼ばれる。川の流れが下流に向かう状態にたとえ、ウォーターフォールモデルと呼ばれる。ガントチャートなどを描きながら進捗管理が行われる。テストの前工程にそれぞれ対応した機能のチェックが存在する。その各工程に対応したテストを経て最終製品となる様は、V字モデルと呼ばれる。Eclipseテストツール活用の基礎知識しかし、ウォーターフォールモデルでは、(前段階の製作物の不備は修正されるが)前段階の設計の不備があっても前工程に戻るという考えをとらないため、全体のPDCAサイクルが終わって次のPDCAサイクルまで問題が残ってしまう。巨大プロジェクトで大量の人が動いているだから、簡単に方針が揺らいでもトラブルの元にしかならないことから、こういった手法は大人数巨大プロジェクトでのやり方である。部品となる部分を完成させ、それを組合せて全体像を組み上げる手法もとられる。この方法は、ボトムアップ設計と呼ばれる。このような設計は場当たり的な開発となる場合があり設計の見直しも発生しやすい。少人数開発では適宜前工程の見直しが可能となる。オブジェクト指向によるライブラリの利用者への影響を最小にしながら、ライブラリの内部設計の見直しも可能となる。このような外部からの見た挙動を変えることなく内部構造の改善を行うことはリファクタリングと呼ばれる。機能の一部分だけ完成させ、次々と機能を実装し完成に近づける方式もとられる。このPDCAサイクルを何度も回して機能を増やしながら完成形に近づける方式とも言える。このような開発方式は、アジャイルソフトウェア開発と呼ぶ。短い開発単位を繰り返し製品を作っていく。顧客とプログラマーが一体となって開発が行われる。エクストリームプログラミング(Xp)という考え方も提唱されている。一定期間毎にその役割を交代する)などの方式が取られることが多い。リーンソフトウェア開発は、品質の良いものを作る中で無駄の排除を目的とし、本当にその機能は必要かを疑いながら、優先順位をつけ実装し、その実装が使われているのか・有効に機能しているのかを評価ながら開発をすすめる。伽藍(がらん)とバザールこれは、通常のソフトウェア開発の理論とは異なるが、重要な開発手法の概念なので「伽藍とバザール」を紹介する。伽藍(がらん)とは、優美な寺院のことであり、その設計・開発は、優れた設計・優れた技術者により作られた完璧な実装を意味している。バザールは有象無象の人の集まりの中で作られていくものを意味している。製品は、優秀なプロダクトだが、中身の設計情報などを普通の人は見ることはできない。このため潜在的なバグが見つかりにくいと言われている。インターネット上にソースコードが公開され、誰もがソースコードに触れプログラムを改良してもいい。その中で、新しい便利な機能を追加しインターネットに公開されれば、良いコードは生き残り、悪いコードは淘汰されていく。バザール方式は、オープンソースライセンスにより成り立っていて、このライセンスが適用されていれば、改良した機能はインターネットに公開する義務を引き継ぐ。ライセンス、Apacheライセンスといった違いがある。[...]コメントは停止中です。miniOrange。