特定の問題や概念実証などを分析するためだけに、デザイン、GUI のプロトタイプを作成します。プロトタイプを破棄することもあれば、最終的に製品コードになることもあります。プロトタイプには、さまざまな言語、テクノロジー、戦略、スタイルを使用します。
通常、どのような状況でプロトタイプを作成し、どのようにプロトタイプを作成しますか? クラフトをマスターするための良いリソースはありますか?
特定の問題や概念実証などを分析するためだけに、デザイン、GUI のプロトタイプを作成します。プロトタイプを破棄することもあれば、最終的に製品コードになることもあります。プロトタイプには、さまざまな言語、テクノロジー、戦略、スタイルを使用します。
通常、どのような状況でプロトタイプを作成し、どのようにプロトタイプを作成しますか? クラフトをマスターするための良いリソースはありますか?
ホットなタイトルの1つは、ソフトウェアメーカー向けの効果的なプロトタイピングです。問題は、いくつかの考え方があるということです。
ラピッドプロトタイピング。派手なツールを使用します。すぐに何かを成し遂げなさい。
進化的プロトタイピング。プロトタイプから生産へと進化します。
これのいくつかは、ツールが原始的であり、プロジェクトが最初から綿密に計画されなければならなかった時代に基づいたレガシー思考です。私がこの業界で始めたとき、ロケット科学とモックアップするのが非常に苦痛な「グリーンスクリーン」文字モードアプリケーション。コストとリスクを管理するには、ツールと正式な手法が不可欠でした。
この考え方は、最近の考え方によって打ち負かされています。
強力なツールにより、複雑なプロトタイプが不要になります。HTMLモックアップはすばやくまとめることができます。予算を立てたり計画したりする必要がほとんどない場合でも、それはプロトタイプですか?[MS-Wordでモックアップして、HTMLとして保存できます。ビジネスアナリストにとっては、それを指定してプログラマーにやらせるよりも早くやることができます。]
また、強力なツールは間違いのコストを減らすことができます。何かをまとめるのに1週間しかかからなかった場合、つまり生産準備が整った場合、正式なプロトタイプ作業のポイントは何ですか?
アジャイル技術は、非常に詳細な事前計画を行う必要性を減らします。ユーザーの手にすぐに届くものを置くとき、始める直前にすべてのニュアンスが正しいことを確認する必要はそれほどありません。それはそれが進歩したと考えるのに十分に良いものでなければなりません。
起こり得ることは次のとおりです。[隠された質問は、これはまだ「プロトタイピング」なのか、それとも強力なツールを使用したアジャイルアプローチなのかということです。]
Djangoのようなツールを使用すると、重要なコアデータ構造をまとめて、ほぼ即座に実行できます。デフォルトのDjango管理ページを使用すると、データ構造を明確にし、ロードユーティリティを記述できるようになり次第、稼働状態になります。
次に、実際の作業データをラップしたプレゼンテーションページを追加します。あなたが物事を正しく持っていることを確認してください。データモデルとテンプレート駆動型のHTMLページのみを作成したため、投資は最小限に抑えられます。探検。
人々がデフォルトの管理ページで利用可能なものよりも賢いトランザクションを求め始めるまで繰り返します。この時点で、あなたは「発見」と「精緻化」から「構築」へと移行しています。プロトタイピングをしましたか?破棄した各HTMLテンプレートは一種のプロトタイプだったと思います。そのことについては、あなたが保管したものはどこにありますか。
ずっと、あなたは多かれ少なかれライブの本番ユーザーと一緒に仕事をすることができます。
個人的には、真のプロトタイプは、達成しようとしていることの流れを示すために紙に描かれた図以上のものであってはならないと思います。次に、これらの文書化されたフローを使用して、いくつかのシナリオを実行し、機能を要求した人と連携するかどうかを確認できます。
ペーパープロトタイプが機能するように変更されたら、それを基礎として使用して、適切にコーディングを開始します。
このプロセスの利点は、プロトタイプコードがないため、実際にプロトタイプコードを本番環境で使用することができないことです。また、ビジネスエキスパートが理解できるコードがないため、ビジネスエキスパートでテストする方がはるかに簡単です。
プロトタイプを作成する主な理由は、リスクを減らすことです。したがって、UIプロトタイプを作成します。これは、ユーザーが実際に操作できることを行わない限り、あまり役に立ちません。同様に重要なのは、何かが機能することを証明するため、または何かがどのように機能するかを理解するために、プロトタイプを作成することです。
今は絵を描くだけです。もっとやりたいのですが、ユーザーが写真よりもよく理解できるようになるには、多くの時間がかかります。
私はこれらの反応のいくつかを見ることに興味があります:)
私が働いている場所は、私ともう 1 人だけで、プロジェクト マネージャー (データの収集、仕様とアプリの設計)、データベース管理者、コーダー、ツールの研究者/開発者など、アプリを作成する仕事に付随しています。小さな会社のために。
Web アプリケーションの場合は、純粋な (x)HTML + CSS モックアップから始めて、機能を簡単に実装できるフレームワークを使用します。
テンプレートベースのフレームワークはこれに非常に適していますが、JSF + Facelets + Seam でもいくつかの良い経験がありました。
最も興味深い部分を機能させるプロトタイプを作成することから始めて、それを捨てて、新しい、より興味深いプロジェクトに移ります...
*自分を殺す*