カテゴリー ( 20.情報技術(IT) ) 登録内容の一覧

12-10-26 アジャイルソフトウェア開発Aa
 今日、プログラム開発の方法として、従来からのウォーターフォール開発手法を乗り越える アジャイル・ソフトウェア開発手法が注目を集めていますaAAA。 これにより 開発するプログラムの品質を高の向上、同時に、開発スピード・アップ、コストの引下が達成できるというものです。 当初は、比較的小さなプロジェクトの成功事例でしたが、開発方法として洗練されてきて、 大規模システムに適用できる方法として認められるようになっています。 しかしながら、 IPA(独立行政法人情報処理推進機構)非ウォーターフォール型開発の普及要因と適用領域の拡大に関する調査報告書 2012/06/11 によると、 米国、欧州では、アジャイルソフトウェア開発手法が広く採用されており、既に開発の主流となっており、 デンマークのように国あげてが普及を促進しているところが出てきている。 ところが、日本では普及が遅れており、ようやく認知された段階となったところとしている。 

********************************************************************************
1.基本となる従来からの開発思想
********************************************************************************
ウォーターフォール(Water Fall)開発手法と呼ばれるもの。 要件定義、分析、設計(外部・内部)、実装、テストの各工程を、厳格に、予め計画された順序に従って行う。 プロジェクトの進捗にともない、要求仕様書、外部設計文書、内部設計文書、テスト計画書、コードレビュー書といった一連の成果物がアウトプットされる。 各工程を完全に行い、後戻りをしない。 特徴は、    ・数あるソフトウェア開発手法の中でも、最も計画重視である。 ・開発期間は、数か月から数年の長い期間。 ・開発の参加者が多い。 ・たくさんの文書を書く。 ・秩序を重視する組織的文化。
********************************************************************************
2.反復型開発(はんぷくがたかいはつ、Iterative and Incremental Development)
********************************************************************************
アジャイルソフトウェア開発手法における基本的な手法が、反復型開発です。 ・要求仕様の単純なサブセットから開発を始め、要求仕様から次々とサブセットを切り出し、   開発を反復してしていき、最終的に完全なシステムを仕上げる。 ・ひとつの反復(イテレーション)の中で、プログラムの設計・製作・テストを完了する。 ・ひとつの反復(イテレーション)は普通数週間と短い。 ・出来あがったサブセットで使用可能なシステムを段階的にリリースしていく。 この方法で、 ・「ユーザーに価値をもたらし、かつ動作が保証されたソフトを超高速で実現する。 ・ユーザーには文書ではなく動くソフトウェアを使って要求を確認する。 ・ユーザーは、開発段階のプロトタイプや、段階的にリリースで、新システムを早期に確認できる。 ・プロジェクトを成功させるために価値が少ないドキュメント作成を極限まで省くことになる。
********************************************************************************
3.RAD(Rapid Application Development)by James Mertin 1991
******************************************************************************** アジャイル的ソフトウェア開発手法の一つ。「はしり」に位置する ・プログラムの開発にタイムボックスの設定。期間固定(90日)・機能は可変。 ・開発対象をサブセットに分割、タイムボックス内でサブセットのプログラムの開発を終える。 ・タイムボックスは、期間固定(90日)。機能は可変。、 ・1タイムボックスでは2-4人の開発チーム。 ・タイムボックスを反復して、システムを仕上げる。 ・エンドユーザー、全開発工程に参加。 ・大規模システムでは、並行開発。
********************************************************************************
4.アジャイルソフトウェア開発手法
********************************************************************************
アジャイルとは’機敏・俊足'を意味するもので、アジャイルソフトウエア開発は、複数の開発論がある。 主なもに、 XP www.extremeprogramming.org ケント・ベック、ウォード・カニンガム、ロン・ジェフリー Scrum www.controlchaos.com ケン・シュウェイバー、マイク・ビードル DSDM www.dsdm.org アリー・バン・ベネカムなど FDD www.nebulon.com/fdd/ ピーター・コード、エリック・レフェーブル、ジェフ・デ・ル ASD www.adaptivesd.com/learn.html ジム・ハイスミス * ASD:Adaptive Software Development * DSDM:Dynamic Systems Development Method * FDD:Feature-Driven Development * RAD:Rapid Application Development * XP:eXtreme Programming
********************************************************************************
5.アジャイルソフトウェア開発宣言(Manifesto for Agile Software Development)
******************************************************************************** アジャイルソフトウェア開発宣言 2001年アメリカ合衆国のユタ州のスノーバードに アジャイルソフトウェア開発を提唱する17人が集まり、 それぞれ別個に提唱していた開発手法の重要な部分を統合することについて議論した。 そして、彼らは「アジャイルソフトウェア開発宣言」(Manifesto for Agile Software Development)という文書にまとめた。 アジャイルソフトウェア開発宣言は、アジャイルソフトウェア開発とその諸原則を公式に定義した文書となる。 アジャイルソフトウェア開発の価値     ・プロセスやツールより人と人同士の相互作用を重視する。 ・包括的なドキュメントより動作するソフトウェアを重視する。 ・契約上の交渉よりも顧客との協調を重視する。 ・計画に従うことよりも変化に対応することを重視する。 アジャイルソフトウェア開発の原則 ・最も重要なことは顧客を満足させること。早く、そして継続的に、価値のあるソフトウェアをリリースする。 ・開発の終盤においても要求の変更を受け入れる。アジャイルプロセスは顧客の競争力を優位にするための道具である。 ・数週間、数ヶ月の単位で頻繁に実用的なソフトウェアをリリースする。タイムスケールは短い方がよい。 ・プロジェクトの間中、毎日、顧客と開発者は一緒に働くべきである。 ・やる気のある人を中心にプロジェクトを構築する。環境と必要なサポートを与え、彼らが仕事を成し遂げると信じること。 ・開発チーム内で情報伝達を行う効果的で有効な方法は、Face to Faceによる会話である。 ・進捗を測るには、動くソフトウェアが一番である。 ・アジャイルプロセスは、継続的な開発を促進する。スポンサー、開発者そしてユーザは一定のペースを保つようになる。     ・優れた技術と良い設計に絶えず目を配ることで、機敏になる。 ・単純性--最大限に仕事を行わないことは極めて重要である。 ・最良のアーキテクチャは自己最適化されたチームから現れる。 ・定期的な間隔で、チームにもっとも効果的な方法を反映することで、調律・調整に従うようになる。    
********************************************************************************
6.その他
********************************************************************************
なお、要件定義、スケージュール作成、全体のアキテクチャー設計を十分に行い、 プログラムを開発する局面に反復型開発を採用するという意見もあります。


11-06-01 POSデータ検索プログラムaaa
 このプログラムは、ある書店チェーンのPOSデータ検索を行うものです。
この書店では、店舗数が60を超え、活動している単品数は600万件を超えています。

当初は、商品分類単位に単品の販売状況を表示するだけでしたaaaa。

その後、いろいろな条件を入れて、検索結果を表示するようにしました。
また、画面に発注数をインプットできるようにしました。

現在は、業務の切り口から表示する単品を絞るようにして、業務に結びついた単品管理ができるように、プログラムは進化しています。

サンプル画面の表示

なお、サンプル画面は、代表的な画面を2つサンプルとして表示しています。画面からのリンクはすべて、この2つの画面になっています。
 


copyright (c) itworks.co.jp All right reserved.