ソフトウェアの設計に取り組んでいます。再び一から開発した作品です。私のマネージャーは私にビジネスプロセスを描くように言っています。私はこの作品をすでに知っており、設計とプロトタイプの開発をすぐに始めることができるという事実のため、これには疑問があります。ソフトウェアを設計するとき、ビジネスプロセスは良い出発点と思いますか?これは、関係者に提示できるものです。彼らはお金を投資するので、おそらくこの方法で彼らは私たちがしていることを理解できます。彼らはビジネスプロセスの全体像を理解しています。
私の懐疑論は以下の理由によるものです:
プロセスを引き出すことで、お客様の代表者に計画を提示する可能性があることに同意します。これらのプロセスはカバーするものであり、カバーしないものであると言って、スコープを決定することもできます。プロダクトオーナーと相談することもできます。
コードベースのデザインについて聞いた。それについて何か教えてもらえますか?コメントで推奨されている「ソフトウェア設計の代替方法」に関する文を削除しました。
私が好む方法は、アジャイルチームが編成されるときに、段階的にプロトタイピングを行うことです。計画されたソリューションについてのアジャイルチームでの議論が大好きです。残念ながら、すべてのチームメンバーが平等に関与しているわけではありません。
私はこの作品をすでに知っており、設計とプロトタイプの開発をすぐに始めることができるという事実のため、これには疑問があります。
ソフトウェアを設計するとき、ビジネスプロセスは良い出発点と見なしますか?これは、関係者に提示できるものです。
そのため、プロセスを完全に理解し、コードを書き始めることができます。
よかったね。
あなたはこの仕事をするためにあなたにお金を払っている利害関係者のそれと一致する理解を理解していますか?どうやって知っているこれ?
同意済み彼らとのプロセスはありますか?
どのようにすればいいですかbefore離れて、潜在的に間違ったものを書き、彼らの時間とお金を浪費していますか?
多くの場合、知っている別の形式に「翻訳」すると、それを別の方法で考えるようになり、いくつかの奇妙な点やEdgeケースが木工品から飛び出し始めます。
一部の開発プロジェクトでは、ビジネスプロセスの描画は、コミュニケーションやドキュメント化、要件の収集または検証、システムの構造の設計、および場合によっては単にマーケティング目的のために役立つツールです。他のプロジェクトの場合、これは必要ないか、意味がありません。一部のプロジェクトでは、グラフィカルまたは文書化された他の形式のドキュメントが ビジネスプロセスモデル よりも役立つ場合があります。
これは依存します
開発するシステムの種類とサイズについて
システムがサポートするビジネスプロセスの種類
関係者、彼らの知識の異なるレベル、そして彼らの好ましいコミュニケーションと文書化の方法
プロジェクトの時点、およびその特定の時点でのコミュニケーションまたは文書化に必要な抽象化のレベル
質問には、特定のケースで何が意味があるかを説明するのに十分な情報がありません。しかし、あなた(またはあなたのチーム)が適切なソフトウェアを開発するのに十分なビジネスプロセスを知っていると思うという事実から、すべての利害関係者がすぐに同じと確信しているという結論には至りません。そのため、何をしているのかを知っていることを何らかの形で示す必要があるかもしれません。 方法これを決定するのは、あなた、あなたの組織、そしてあなたの利害関係者の考え次第です。
既存のビジネスプロセスに影響を与える新しいソフトウェアをゼロから開発する場合、いくつかの課題があります。
注:新しいソフトウェアがプロセスフローを根本的に変更しない場合、またはプロセスが単純な場合、プロセスの描画はソフトウェア設計に価値を追加しない可能性があります。
ビジネスプロセスモデリング ソフトウェア開発のコンテキストでは、次のリスクに直面します。
したがって、プロセス「描画」が必要であるという点で、マネージャーは正しいです。あなたはそのような図面が不完全であり、十分ではないという点で正しいです。
幸い、両方のアプローチをアジャイルな方法で組み合わせることができます。
通信機能と文書化機能の価値に加えて、私はそれを主要な時間節約とプロトタイピングのステップとして実行します。それはビジネスアナリストがやるべきことであり、なぜ多くの人が存在するのかです。
ref。 https://en.wikipedia.org/wiki/Business_process_modeling
他のチームとのコミュニケーションが現在のプロセスを文書化する大きな理由であることは正しいです。これにより、すべての利害関係者が、何が構築され、何が行われるかを理解しやすくなります。
現在のプロセスが実際に正しいことを検証することも非常に重要であるため、これをソフトウェアプロセスの一部として含めることは間違いなく理にかなっています。多くの場合、利害関係者はビジネスプロセスが引き出されているのを見ると、現実の世界で実際に必要なことと一致しない論理的な問題や事柄を見つけます。ユーザーがどのように作業する必要があるかをユーザーが最もよく知っていることを思い出してください。ユーザーとのコミュニケーションは、ソフトウェアを構築する上で重要な部分です。プロトタイプが動作する前に、フローダイアグラムはアプリケーションのロジックに関するフィードバックを得るのに非常に役立ちます。
ただし、通常、製品の所有者が承認基準/要件が形成されているときにこれらの議論を推進することを期待しますが、少なくとも、ビジネスフローがあなたの理解にとって正しいことを検証するための入力が必要です。
あなたはビジネスプロセスを知っています(またはあなたは言う)が、私は知りません。ビジネスプロセスを描くことで、何らかの理由でできない場合でも、私が仕事を続けることができることを確認できます。ビジネスプロセスを実際に使用している人は、図面を使用して、プロセスの理解が実際に正しいことを確認できます。
アジャイル開発についてあなたが言うことは、最も誤解を招くものです。すべての開発はあなたの目標を決定することから始まります。実際に欲しいもの-あなたの場合、より効率的な方法でビジネスプロセスを実装します。ビジネスプロセスを知るために必要なもの。 A 仕様は次のステップです後それ:あなたはソフトウェアがその目標を達成するために何をすべきかを指定します。ここから、アジャイル開発では、開始時に完全な仕様は必要ないことがわかります。それでも、すべてのタスクには仕様が必要なので、開発者がタスクが終了したと言ったら、そのタスクの仕様を取得して、実際に終了しているかどうかを判断できます。