学術研究が関係する場合の開発計画


11

親愛なる仲間のプログラマー、

学術研究が関係する場合、どのように「ソフトウェア計画」を行いますか?そして、副次的に、ソフトウェアを書くことは家を建てるようなものではなく、小説を書くことに似ていると上司にどのように説得しますか?

厄介な詳細は以下のとおりです。

私は、研究室で働く小さな開発チームを担当しています。ある日公開することを目的にソフトウェアの開発を始めました(つまり、それを売ってお金を稼ぐ)。このようなソフトウェアは、とりわけ、少なくとも2つの独立した研究ラインに依存しています。つまり、少なくとも2つの博士号があります。願わくば、いつか私たちが必要とするものを実際に実装してくれる候補者です。

メインソフトウェアは、グラフィックレンダリング、ソフトボディの変形など、開発者が処理できる他のより具体的なリソースにも依存します。

上司から、プロジェクト全体の仕様、要件、血まみれのガントチャートを書くように頼まれました。私は研究部分についての手がかりがなく、そのような研究はソフトウェアの基本であるという事実に直面して、彼は「仮定を立てる」と言った。議論を明確にするために、彼は博士号を持つ教授です。学生は必要な研究を考え出す必要があります。そして、彼は厳密にエンジニアリングのバックグラウンドから来ています。最初にすべてを計画し、仕様を書き留めてから、「最後の部分」であるコードを書き留めます。

私が今していること:

  1. 製品の機能を分解しました。事実上、各「機能」は個別の製品です。
  2. 各機能は、前の機能の上に構築されています。
  3. 機能(A)が機能するプロトタイプを作成すると、チームは次の機能(B)の作業を開始できます。AのQAは完了します(お金が許せば、より多くの人を持ち込むことができます)。
  4. 研究に依存する機能は、最後に来る。(その後で、うまくいけば、研究の一部は、完成されたときにはまだ大きな問題です)。

また、数か月後に予定されている「バージョン1.0」の開発にSCRUMを使用するようにチームを設定しました。この期限は、合理的な仮定に基づいて設定できます。必要な機能をすべてリストし、可用性を数え、合理的な見積もりを出しました。

私の質問は次のとおりです。

  • 上司を喜ばせながら、ドアから何かを取り出すにはどうすればよいですか?
  • 私たち-開発者-ができるかどうかの手がかりがないものの仕様を書くにはどうすればいいですか?(一部のタスクに使用するライブラリをまだ決定していません。必要に応じて決定します)
  • まだクライアントも投資家もなく、多くの利益と約束があるのに、どうすればその要件を取得できますか?
  • 世界で平和を得るにはどうすればいいですか?

私の質問の少なくとも1つが答えられると確信しています:)

ps:潜在的な投資家がこれを発見すると裏目に出るかもしれないので、私はこれを匿名で書いています。ご理解いただければ幸いです。しかし、私はこの「真実を隠す」という考え方が好きではないと言う必要があります。このプログラムは多くの人に利益をもたらす可能性があり、これについて公然と話すことができない(私の名前と私の評判を付けて)検閲のように感じます。しかし悲しいかな、私はあなたの提案をもっと気にしています。


停滞と不明瞭さの黒い穴のように感じたもので長年働いていた元博士課程の学生として話すと、私は仕事で役に立つ何かをするのを待っていることによって専門家が立っていたことを知って非常に興奮していました(そして恐怖もしていました)。それはものすごくやる気になっていたでしょう。この質問はほぼ1年前に聞かれたと思いますが、状況が変わらない場合は、学生との連絡の程度を知りたいと思います。あなたが彼らを応援していることを彼らに知らせることは役に立つかもしれません!
-octern

回答:


6

私はその立場に何度かいたことがあります、経験があると、博士課程の学生が関連する研究を提供することを期待することはできませんし、有用なタイムスケールで起こっていることに頼ることはできません。博士課程の学生は、研究に興味がある場所に行くことが特に許可されており、自分には関係ないが自分には関係のないサイドトラックに急に足を踏み入れた場合、下流に行くのは非常に困難です。これはプロジェクトのリスクの主要な原因であるため、プロジェクト計画では適切なリスク軽減戦略を使用する必要があります。

(研究助成金を参照してください、それはあなたの資金ではなく、何か他のものによって決定されます)、というあなたはで提供するために持っている時に出て仕事を考えると、どのくらいの時間を提供するために取る研究が配信されることを想定。これには全能の推測が必要ですが、それは仕方がありません。時間推定でそれらの推測を明確にしてください。後で、博士課程の学生と適度に密接に連絡を取り合うことでリスクを管理します(たとえば、月に1回チュートリアルセッションに参加するなど)。必要なものを時間どおりに届けられないように見える場合は、緩和戦略について詳しく考えてください。運がよければ、ギャンブルは報われ、研究から何か有用なものが得られます。かわいそうなことが起こった。

他のすべては、顧客が誰になるかを知り、最終的な製品をどのように使用するか(および実際にどのように使用するか)について考えることから始まります。あなたがそれを知らないなら、あなたは誰にも売らないでしょう。しかし、あなたはそれを知っているか、少なくともすぐにそれを見つけるべきです。(研究部門によって決定された場合、あなたは深刻な問題に直面しています!研究プロジェクトは、ほとんど間違いなく否定的または部分的に否定的な結果を生み出す可能性があります。

最後に、匿名でこれを行っているのは非常に残念なことだと思います。あなたがしているのは、特定の種類のプロジェクト管理に関するアドバイスを求めることだけです。あなたは、研究の主題が何であるか、誰がそれを引き受けているのか、あなたの共同研究者は誰なのかについて言及しておらず、この質問にとっても重要ではない。問題となる唯一の方法は、研究を実施する前に研究開発以外の資金を探していたが、そのためには、関与するリスクのレベルを開示する必要があるか(おそらく投資を回収すること!)あなたは正直に計画しているので、リスクがより確実になった後にプロジェクトがそのような資金を求めるべきであるので、それは出てくるべきではありません。(あなたが-グループとして-潜在的な投資家に不誠実である場合、それはすぐそこに問題であり、それは涙で終わるでしょう。または訴訟。)


ドナール、答えてくれてありがとう。いくつかの良い点を挙げます。特にリスク管理について。研究では、はい、彼らは否定的な結果を見つけることになっています:それが研究が行われる方法です!あなたが何を得ようとしているのかを既に知っているなら、それは研究ではなく、広告です。匿名を維持する必要性については、私のStackExchangeアカウントから、自分のキャリアプロファイルで自分が誰で、どこで働いているかを確認できるからです。それは私のチームの将来の給与を危険にさらす可能性があります(はい、私たちは非研究開発資金を求めています)。私だけだったら、正直に言うと。しかし、それが今彼らに支払っているのは私のお金ではないので、私は注意しなければなりません。
別の匿名ユーザー

1
素晴らしい答え。私が行った商用ソフトウェア開発の種類でさえ、仕様とスケジュールを知識に基づいて推測する必要がある未知の部分があります。それらが推測であり、変更される可能性があることを誰もが知っている限り、問題ありません。リサーチアイテムでできることの1つは、提供する必要があるすべての番号(日付、お金など)で、良いケースを推測して提供する(10%の確率でうまくいく)、期待する(50%) 、および不良ケース(90%)の値。また、未知の問題を緩和するために、仮想バックポケットに「プランB」(理想的にはCとDを計画)を配置してください。
ボブマーフィー

研究に依存することの問題は、「明確な否定的な」答えに終わる可能性が高いことです。製品に求めるものは、単に未知の何かを必要とするのではなく、作成できないものです。または、研究がまったく関連性のあるものを提供しないこと(博士号の本当のリスク)。大きな投資をするポイントは、小さな概念実証を行った後です。少なくともそれができることを知って、あなたがしなければならないのは、それを使いやすく、市場に出す方法を解決することです。
ドナルドフェローズ

2

上司を喜ばせながら、ドアから何かを取り出すにはどうすればよいですか?

スマートになって物事を成し遂げましょう。

私たち-開発者-ができるかどうかの手がかりがないものの仕様を書くにはどうすればいいですか?(一部のタスクに使用するライブラリをまだ決定していません。必要に応じて決定します)

インターフェースの対象がわからない場合は、問題です。魔法の箱にはどんな入力をしますか?マジックボックスからどのような出力が得られますか?それはまた、研究者が魔法とは何かを定義するのに役立ちます。

あなたのアカデミックが助成金によって資金提供されている場合、彼はおそらく研究提案を書き上げました。把握してください。私が見た(そして書いた)研究助成金の提案のようなものであれば、それは彼らがやろうとしていることのタイムラインと「仕様」を持っているでしょう。

まだクライアントも投資家もなく、多くの利益と約束があるのに、どうすればその要件を取得できますか?

要件は、アルゴリズムのエンドユーザー/ thing-a-ma-jigです。あなた(または潜在的な顧客/クライアント)にインタビューできるかどうかを確認してください。

そうでなければ、あなた自身のドッグフードを食べてください。

世界で平和を得るにはどうすればいいですか?

オフトピック :-)


2

研究開発の計画では、1回でtgenの開発がうまく機能しないと思います。私は研究所で働いており、ラピッドプロトタイピングを使用してより多くの仕事をしています。多くの場合、プロトタイプを開発すると、正確に必要なものに対する洞察が得られます。プロトタイプを迅速に作成することで、上司と研究者からフィードバックを得て、これが彼らの期待通りであるかどうかを判断し、アプローチが機能するかどうかを確認できます。その後、コードをリファクタリングして改善できます。これは私が働いていた研究所で実際に見ているものです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.