問題タブ [software-estimation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
483 参照

duration - ソフトウェア推定の速度と精度

2 つの Web アプリケーション (DAL/DAO/BO アセンブリといくつかの OSS ライブラリを共有する) を含むプロジェクトがあるとします。

  • 認証に Windows Live ID を使用し、さまざまな通知サービス (電子メール、SMS、Twitter など) と通信することもできる半複雑な管理アプリケーション。対象となる通知機能は機能の約 10% です。
  • 機能は少ないが堅牢性が高く、認証に Windows Live ID も使用する、単純からやや複雑なユーザー アプリケーション

中程度の見積もり能力を持つ私たちのうちの 2 人がいて、たとえ私たちが望んでも、またはしなければならないとしても、2 日でそれを行うことはできません。少なくとも、それはかなりかけ離れた見積もりになるでしょう。

質問

  1. 信頼できる/価値のある見積もりを行うには、通常どのくらいの時間がかかりますか?
  2. 精度を犠牲にすることなく推定を高速化するために何を提案しますか?
  3. 推定速度に応じて、どのくらいのスラック(コスト/時間の観点から)を追加しますか(あなたが言う場合:まだかなりずれていると思うので、もう少し推定できます
0 投票する
6 に答える
1070 参照

project-management - チームデスマーチを回避するために希少な仕様のプロジェクトで競争する方法

私は、機能の約 75% に特定の要件がない半複雑なソフトウェア ソリューションの時間とコストを見積もっています。クライアントから追加のデータを取得して、可能な限り正確な見積もりを作成したいと考えています。他の製品/テクノロジーとの依存関係が多すぎて定義が不足しているため、開発できなくなる可能性がある部分がまだあります。また、この見積もりを作成するために非常にタイトなスケジュールがあります。

このプロジェクトには他の候補もいます。クライアントは価格+期間(そしておそらく機能も)を期待しており、誰もがオフになることを知っています. それが不可能であることはわかっていますが、それをマーケティング担当者に伝えてください。もう 1 つの問題は、私がクライアントと直接ではなく仲介者と話していることです。私は仲買人だけに信頼を寄せることができますが、決定的なクライアントには信頼できません。これはまったく別の問題です。

このプロジェクトでチームを犠牲にしないために、価格プラン/契約にどの免責事項/情報を入れることができるので、プロジェクトが (コスト/時間/機能の点で) 遅れ始めた場合、何らかの支払いでカバーされます. もちろん、時間に応じてスプリントまたはリリースによって支払われることを望んでいますが、クライアントがこれを納得できるとは思えません。締め切りまでにこの製品を完成させ、素晴らしい製品を作成できると確信していますが、どうすればクライアントに私を信じてもらうことができますか?

質問

このプロジェクトを取得し、同時にデスマーチの状況を回避するにはどうすればよいですか?

どんな提案でも大歓迎です!

編集:結果

最終的に、私たち (私と私の同僚) は、製品を評価するのに少なくとも 1 週間は必要であるとクライアントに確信させました。だから私たちはやった。また、未解決の要件に関する質問を明確にするために、クライアントとの数時間にわたる会議のスロットをプッシュ (および取得) しました。だから私たちはやった。最初の見積もり草案を作成した後に会議が行われたため、完全に誤解されているか、見積もりが曖昧すぎる詳細を指摘するすべての質問があると確信していました. 8 か月のフルタイムの仕事と妥当な賃金を意味するので、プロジェクトが成功することを願っています。約1週間半でわかる。

もちろん、私たちがこの製品を提供する方法は、実際に彼らが望んでいた製品で、彼らが望む場所に正確に到達することも指摘しました. また、価格と時間のみにコミットし、機能性についてはコミットしていません。これは変更される可能性があるためです。私たちは十分に良い印象を与えたと思います。

0 投票する
4 に答える
3165 参照

software-estimation - ソフトウェア開発プロジェクトのコスト見積もり、ファンクションポイント?

ファンクションポイントを使用したコスト見積もりに関して、この簡単な質問があります。

私たちは小さな会社のために小さな(コースプロジェクト)プロジェクトを行っています、そしてそれはもちろん無料です。インストラクターは、ファンクションポイントを使用してプロジェクトのコスト見積もりを提供することを望んでいます。

ファンクションポイントの計算はやや簡単です(一種の)。

現在の問題は、プロジェクト期間の長さ、ファンクションポイントごとのプロジェクトのコストの割合など、他の値(メトリック)を導出することです。

明らかに、見積もりの​​基礎となる履歴データはありません。そこに続くことができる、ファンクションポイントごとのある種の「典型的な」コストはありますか?助けてください。

0 投票する
5 に答える
1664 参照

software-estimation - ソフトウェア プロジェクトへの個人の貢献を見積もる方法は?

私はソフトウェア プロジェクトに取り組んでおり、ソフトウェアの開発に費やした貢献全体に対する割合を見積もりたいと考えています。これを行うツールはありますか?このようなツールは、評価や交渉などに役立ちます。結局のところ、私たちはお金のために働いています(はい、お金だけでなく、要点は残ります)。最も重要なことには十分な手を振っていると思います。

見積もりは非常に主観的です (少なくとも私にとっては) が、主観的な見積もりを提供するツールを知りません。私は、開発者ごとではなく、コード行を使用して総作業量を綴る Sloccount を知っています。

この目的のための理想的なツールについての私の考えは次のとおりです。

  • コードの複雑さを測定します (複雑になるほど労力がかかりますが、労力が増えるほど貢献度が高まるとは限りません)。
  • ソフトウェアの分解性/柔軟性を測定する (分解性が高いほど良い)
  • ライブラリ コードの使用量 -- ライブラリ コードを使用すると、開発プロセスが高速化され、関連するリスクが増大し、開発者は以前からライブラリについて知っているか学習する必要があります。
  • 「誰がコードを書いたか」、「誰がコードをコピーしたか」、「誰がコードをインデントしたか」を区別できるほど知的であること。

実装の複雑さと問題の本質的な複雑さを区別することは困難です。おそらく、同等のオープンソースの対応物がある場合はそれと比較するか、サブモジュールごとに個別に比較することができます。

そのようなツールがない場合、そのようなツールを持つメリットはありませんか? それとも、「私は仕事をしているが、私は測定していない」と信じていますか? やっぱり時間がかかります。おそらく、プロジェクト マネージャーは、この見積もりを継続的に、たとえば毎週行う必要があります。基準はありますか?はい、プロジェクトごとに異なる目標があるため、標準化は困難ですが、標準がまったくないのではなく、複数の標準が必要であることを意味するはずです。これは、企業が市場でどのように評価されるかに似ています。

更新:いくつかの最初の回答を見た後:パーセンテージを出力するだけのツールを想像するのは意味がありません。人間 (特にマネージャー) がより良い意思決定を行うのに役立つツールはありますか? または、より良い意思決定を行うのに十分な統計は何ですか? これらの統計は利用できますか?

0 投票する
1 に答える
504 参照

estimation - オープンソースプロジェクトのタスクサイズを見積もるにはどうすればよいですか?

オープンソースプロジェクトの規模は、私がオフィスで行っているプロジェクトとはまったく異なります。仕事は暇な時間に行われる、実現しないかもしれないボランティアの仕事、個人的な開発リソース、企業ではないなど。

明らかに「機能する最小のことを行う」という栗が当てはまりますが、それを超えて、オープンソースプロジェクトの適切なサイズを見積もるより正式な方法があります。たとえば、テーブルの数、Webページの数、または-天国禁止-ファンクションポイントを数えますか?

この種のプロジェクトに最適な見積もりツールは何ですか?

0 投票する
22 に答える
2838 参照

software-estimation - 優れた有料のツールセットが利用できるのに、なぜ人々は「無料」のツールセットを探したりハッキングしたりするのにこれほど多くの時間を費やしているのでしょうか?

明確化:私は、専門的に開発者に報酬を支払う企業を指しています。「趣味」または「楽しみ」の開発者が、完全な機能を備えた有料ツールを望まない (または余裕がない) 理由を理解しています。私が話しているのは、締め切りが開発者/会社に押し付けられ、有料ツールでできることを達成するための「無料」ツールを追求するために開発時間が目標からそらされている状況について話している.


私は最近、多くのスタック オーバーフローの質問に気付きました (それらは新しいものではなく、私が最近注目したばかりです) 人々がALM、データベース比較、およびその他の機能のための一般的な開発ツールに代わる無料の代替手段を探しています。わずかに費用のかかる有料の代替手段があります。Stack Overflow の「無料」タグには 350 の質問があり、「X を実行するための無料ツールはありますか?」という例が数十件表示されるのに時間はかかりません。その後、調査と参加に何時間も費やしたに違いないディスカッションが続きます。

単に支払いを減らすだけではありません - 一部の開発者 (または、より正確には、彼らの会社) が何かの支払いを避けるために経験する困難にしばしば驚かされます。文書化が不十分で、バグが多く、機能が不完全なオープンソース ソリューションであり、回避できたはずの何十時間もの作業が発生します。

私は最も明白な理由を理解しています:

  • 会社の現金が不足している
  • (機能的に同等の)無料の代替品が利用可能な場合、何かにお金を払わないでください
  • 「趣味」の開発者はお金に余裕がなく、ただ学んでいるだけなので、いじくり回すだけのツールセットにお金を払うのは理にかなっていません。

しかし、「現金が不足している」という推論は完全にでっち上げだと思います。大学を卒業して間もない開発者として、私は年間約 5 万ドル、つまり 1 日あたり 200 ドルを稼いでいました (つまり、私の会社はおそらく 1 日あたり 300 ドル近くを支払って私を採用してくれました)。私の椅子、すべてが考慮されます)。その価格を 300 ドルのツールと比較すると、明らかな答えは、「1 日以上の時間を無駄にする場合は、代わりに購入して仕事に戻るべきです」です。しかし、それは私が観察したことではありません.50ドルしかかからないものにお金を払うことを避けるために、人々は喜んで何十時間も費やしているようです.

理解するのを手伝ってください - いつか販売したいツールの開発者として、私はその考え方を理解したいと思っています。お金を使うことを恐れない会社で働いて甘やかされたことがありますか? 開発者 (またはその会社) がお金を使いたくない根深い理由はありますか? 生産性の損失という観点から、「無料」ツールのコストを正確に見積もることができないのでしょうか?


私は優れた無料の代替手段が利用できる例について言及しているのではありません. たとえば、これらのツールはどれも、お金を払うべきではないものの良い例です。ただし、それらの 1 つに必要な重要な機能がなく、同じライブラリの有料バージョンが提供しているとしましょう。代わりに、必要な機能 (または必要な機能の足場) を追加するために無料バージョンをハッキングする傾向があるようです。無料のツールを捨てて、有料の(そして機能が完全な)バージョンを選ぶということです。それが間違った選択だと言っているわけではありませんが、理由を理解したいだけの選択です。重要な点は、私がしたいということです - 私の意図は議論をすることではありません.

0 投票する
3 に答える
197 参照

javascript - 古いJavaWebアプリを新しいIE8ブラウザーで実行する際の重大な問題はありますか?

プロジェクトについて簡単に見積もる必要があります(取得したかどうかはわかりません):これは古い銀行のCMS Java Webアプリですが、UIはwinformスタイルに近づくことを目的としています。

  • サーバー:jdk5、weblogic 9(JSP 1.x)、weblogic内部サーブレットのみを使用します(strut ...は使用しません)。
  • クライアント:winXP、Ie6。

これはie6でのみ使用するように設計されていましたが、新しいクライアント(win7ではie8、ie7)でも正常に動作するようにする必要があります。
最も違いがあるのはクライアントであると理解しています。DOMとCSSです。
しかし、私の問題は、ie8を使用していないことです。また、開発環境でテストを行う準備ができていないため、テスト環境を構築する時間がありません(完全にリモート処理され、別のパートナーによって管理されています)。

このタスクの必要性を検討するのに役立つ経験や提案があれば歓迎します。

編集:HTML、CSSはかなり時代遅れで、Firefoxではまったく機能しません。JSはほとんど手順ではなく、ajaxもプラグインもありません。
クライアントPCは、バンキングおよび内部使用に制限されています(ユーザーが構成を変更したりブラウザーを選択したりすることは想定されていません)
activeXを使用してプリンターを操作し、レポートを作成します(セキュリティ問題に対応する能力を高めます)

0 投票する
1 に答える
1682 参照

software-estimation - ソフトウェア コストの見積もり方法とモデルにはどのようなものがありますか?

私は数人の同僚とソフトウェア コストの見積もりモデルと方法についていくつかの調査を行っています。ありがとう!

モデル:

  • 企画ゲーム
  • ココモ / ココモⅡ
  • スリム
  • SEER-SEM
  • 加重マイクロ機能ポイント
  • プログラム評価とレビュー手法
  • 価格システム
  • 広帯域 Delphi
  • 機能点分析
  • 証拠に基づくスケジューリング

方法:

  • 専門家の判断方法
  • 類推法
  • パラメトリック/アルゴリズム法
  • ボトムアップ/作業分解構造方式
  • トップダウン方式
  • 分析工数法
  • プロキシベースの推定方法
0 投票する
3 に答える
1299 参照

programming-languages - アプリケーションをある言語から別の言語に書き直すときに、SLOC でプロジェクトのサイズを見積もる方法は?

過去に、SLOC とプログラミング言語に基づいてプログラムの予想サイズを示す統計をいくつか見つけたことを覚えています。

Python で 100k SLOC C++ プロジェクトを再実装するための大まかな見積もりをしたいと思います。

これらの数字がどこにあるか知っている人はいますか?

0 投票する
5 に答える
6499 参照

estimation - 3 点推定で「最も可能性の高い推定値」に 4 を掛けるのはなぜですか?

プロジェクトの 1 つで 3 点推定を使用しました。フォーミュラは

つまり、

ここ

最悪のケースまたは最良のケースが発生する可能性が低くなります。誠意を持って、おそらく推定 (M) は、仕事を成し遂げるために必要なものです。

しかし、なぜ彼らが を使用するのかわかりません 4(M)。なぜ彼らは4を掛けたのですか???. 5,6,7 などを使用しないでください...なぜ最も可能性の高い推定値がfour times他の 2 つの値と同じくらい重み付けされているのでしょうか?