web-dev-qa-db-ja.com

「ファウンテンウェル」スタイルのソフトウェア開発

開発が設計プロセスに従うウォーターフォールスタイルのソフトウェア開発の代わりに、開発者が迅速に製品のプロトタイプを作成して機能をロックし、その後、 UX/UIデザイナはルックアンドフィールを改良しますが、製品/サービスの機能またはビジネスロジックに影響を与えません。

アジャイルチームがビジネスロジックを実装フレームワーク/プラットフォームから切り離すことができ、視覚的およびインタラクションデザインロジックも実装の詳細から抽象化される場合に、このプロセスが適用されるのを見てきました。開発者または設計者がこのアプローチを製品/サービス設計に適用しているかどうか、およびプロジェクトのスケジュールとリソース/予算を満たすという点でプロジェクトの成果が成功したかどうか疑問に思っています。

ウォーターフォールやアジャイルの方法論と比較して、このプロセスをいくらか区別することが重要だと思います。つまり、設計と開発のプロセスが並行して発生する可能性があっても、開発は設計を進め、設計の実装後は最小限の量しかありません。開発された製品/サービスへの設計のリファクタリングで発生した労力の割合。

私が質問したいのは、ビジネスプロセス設計をソリューションアーキテクチャ設計およびユーザーエクスペリエンス設計から分離することが、LEANおよびAGILE開発プロセスと比較して製品/サービス開発の異なる方法であるかどうかです。異なるスタイルの製品/サービスの設計と開発。

ソフトウェア開発の「噴水」モデルで paper を見つけましたが、用語が似ていても別の何かを説明しているように見えるので、それを読みました。

2
Michael Lai

あなたのコメントに基づいて、私はあなたが想像していることを理解していると思います。

このコメントは役に立ちました:

開発者は、インターフェースとその相互作用の変更に対応するシステムを「設計」でき、設計者は、基盤となる実装プラットフォーム/フレームワークの変更に対応するインターフェースを「設計」できます。

それは素晴らしいアイデアだと思います。しかし、それが現実に存在することは知りません。

MVP(Model-View-Presenter)ソフトウェアパターン

MVPの概念は進化および拡張されており、パターンにはいくつかの異なるMV *タイプがあります。最近では、Angular.jsなどの frameworksがMVW(model-view-whatever

いずれにしても、MV *のタイプに関係なく、目的は通常同じです。つまり、プレゼンテーションロジックをビジネスロジックから分離します。

これは、あらゆる種類のテクノロジーで実現できます。サービスとAPIは、UIレイヤーがデータを直接「要求」し、それを受け取り、UIに合わせてフォーマットする一般的なものです。

これは、一方の端を他方の前に構築できることを意味しますか?うーん、ダメ。あんまり。どのように2つを分離しても、両方に依存関係があり、開発を効率的にしたい場合は、早急に理解して対処する必要があります。

それは私たちをアジャイルに導きます。アジャイルにはもちろんさまざまな種類がありますが、根本的な原則(もちろんIMO)は、ソリューションの1つの側面を開発しないとしないことです他から独立しています。代わりに、あなたはそれらをタンデムに行います。一緒。各側面が他のニーズに対応できるように。そして、機能ごとにクイックスプリントで機能を実行します。従来の「6か月間設計してから1年間開発してから、何かを変更する必要があることに気づく」ウォーターフォールプロセス。

私は良いアナロジーを考えようとしており、これは私が思いつくことができる最高のものです。あなたのプロジェクトが公共交通機関を設計することであるとしましょう。 UXチームは車両を担当し、開発はインフラストラクチャを担当します。

両方のチームが互いに独立して作業するには、仮定を立てるか、幅広い変数に対応する必要があります。 UXチームがまだ車両を設計していない場合、開発チームは何をしますか?彼らは列車の線路を作っていますか?高速道路?トンネルを掘る?ええと、最も柔軟性を持たせるために、彼らは3つすべてを実行する必要があります。そうすることで、UXチームが思いついたものすべてに対応できます。もちろん、これは実際には使用されない可能性のある多くのものを構築していないため、効率的ではありません。完全に構築されていなくても、私たちは複数の通行権の購入、備蓄資材などについて話している。

したがって、他のオプションは仮定を行うことです。それが電車で、100マイルの線路を作り始めたとしましょう。

6か月後、UXは人々が本当に欲しがっているものが自転車道だったことを発見しました。まあ、私たちはすでに権利を開発しているので、すべてが失われるわけではありませんが、Railsに費やされたすべてのお金を見てください。

アジャイルな世界では、おそらくチームは一緒に作業し、最初に2マイルの線路を構築したでしょう。それからたぶん2マイルの道。そして2マイルの自転車道。自転車道を構築すると、彼らは何が必要であるかを正確に理解するでしょう。そして、他のルートの4マイルを無駄にしたかもしれませんが、それを理解するためにさらに98マイルの線路を無駄にしませんでした。 :)

1
DA01