要件ドキュメントを作成する適切な方法は何ですか?


23

現在、私のスーパーバイザーは、バグ追跡ソフトウェアを使用して要件のドキュメント/仕様を作成しています。これは私にとってひどいアイデアのように思えます。すべての要件はこれらの小さなチケットにあり、要件を取得するためにこの馬鹿げたWebフォームをクリックする必要があります。要件/ソフトウェア仕様に対する健全なソフトウェアソリューションとは何ですか?

明確にするために、私は非常に多くの機能を備えたこの大きなソフトウェアコンポーネントを構築しており、これらの機能はこのバグ追跡ソフトウェアで説明されています。

回答:


17

これまでのところ、要件を追跡するためにウィキの使用を推奨している人がいないことに驚いています。

次の理由により、ほぼ完璧なシステムであることがわかりました。

  • これにより、人々は要件について共同作業を行うことができ、この側面が目立つようになります。
  • プロジェクトの進行に合わせて、要件を簡単に最新の状態に保つことができます。
  • 「私たちが同意したものではない」論争の場合には、いつでも歴史を見ることができます。
  • 最新のWikiには適切な書式設定機能があるため、Wordドキュメントとほぼ同じように見えます。
  • 要件から実際のドキュメントに直接ハイパーリンクできます。
  • 異なる/時代遅れのコピーで作業する人々を心配する必要はありません。
  • 要件は、設計/実装のように、反復プロセスとして扱われ始めることができます。
  • 要件が非常に大きく/複雑になり始めた場合、ページ/トピックに簡単に分割できます。
  • ほとんどのウィキはHTMLを受け入れるため、高度なフォーマットが本当に必要な場合は、Windows Live Writerなどのツールを使用できます。

この選択を考えると、私は最近、ほとんど常にウィキの方法を選択します。昔ながらのWord文書やバグ追跡システムにすべて詰め込むのに比べて、これは非常に簡単です。


トラッキングシステムからwikiにデータを比較的簡単に埋め込むことができ、いくつかの階層的なバグを設定してそれらを要件にグループ化できる場合、プロジェクトマイルストーンにはwikiページがあり、プロジェクト、顧客、頭を動かすのは簡単です。Wikiは接着剤ですが、それでもバグトラッカーを使用します。バグトラッカーがwikiのWebページを指す能力を調査してください!
ティムウィリスクロフト

絶対に、ウィキはバグ追跡システムの代わりではなく、補完的なものです。プロジェクトの計画とコラボレーションは、Wikiで行うのが最適です。IMSまたは優先度キューで問題を追跡する必要があります。
アーロンノート

6

私は常にSRSドキュメントのテンプレートとしてIEEE Std 830-1998(ソフトウェア要件仕様のIEEE推奨プラクティス)を使用しています。http://standards.ieee.org/reading/ieee/std_public/description/se/830-1998_desc.htmlを参照してください

最終的なSRS文書自体は通常、単一のOpenOffice.org文書ですが、通常はスプレッドシートや図など、それに含まれる多くの構成要素があります。

通常、これらのドキュメントはすべて、SVNやCVSなどのリビジョン管理システムに入れたリポジトリにまとめます。他のすべてのビジネスアナリスト、デザイナー、開発者、テスター、プロジェクトマネージャー、およびクライアントはこのリポジトリにアクセスできるため、彼らはそれを読んで編集することができます。

覚えておいてください、SRSは生きた、進化するドキュメントです。しばらくの間、変化と成長を続けます。すべての利害関係者がSRSにアクセスできることが重要であるだけでなく、変更の完全な履歴を保持し、必要に応じてこれらの変更をロールバックすることも重要です。そのため、リビジョン管理システムはこの目的に最適です。がんばろう!


5

要件管理にバグトラッカーを使用すると、社内でのコラボレーションとコミュニケーションの欠如を隠す傾向があります。

特定の方法について判断を下すことなく:

  • ウォーターフォールを使用する場合は、適切に構成された正確な複数ページのドキュメントが必要です(多くの人が通常バグの説明として入力する1つの段落ではありません)。また、マーケティング/営業担当者(要件を作成した人)がエンジニアリングスタッフとうまく連携していない場合、これらのドキュメントを作成して適切なレベルの品質で維持することもできません。
  • アジャイルメソッドのいずれかを使用する場合、要件の1つの単位は、ストーリーカードで表されるユーザーストーリーです。カード自体は必須ではなく、会話の出発点にすぎません。

要件にバグトラッカーを使用した私の過去の雇用者の1人の(簡単な)経験は、それが多くの人々に完全にコミュニケーションを止める非常に簡単な方法として与えたということでした。人々は単に願い事を書き、それをバグトラッカーにダンプし、最終的には実現すると思い込んでいた。

もちろん、彼らは関係なくそうしました:

  • 自分の資格
  • プロジェクトへの出資
  • 他の要件と競合する
  • 要件のギャップ
  • 費用
  • 技術的な考慮事項

しかし...不完全な要件が入力されると、それが割り当てられ、不完全な情報を解決する必要があるのは誰に割り当てられるでしょうか?人々がアイテムを落としていないと仮定して、それがシステムに入ると、それは解決されるべきではないのですか?私は完全なソフトウェアの素人がアイテムを入力することを提案していませんが、たとえ彼らが入力したとしても..それはシステムにあり、処理されるべきです。例:ビジネスがバグトラッカーに要件「印刷領収書」を追加し、それをバスアナリストに割り当て、バスアナリストが穴を埋めて処理し(必要に応じて通信を介して)、開発者が取得します。
ジョンマッキンタイア

通信障害はプロセスの問題の兆候ではありませんか?(意図した誠実さ)
ジョンマッキンタイア

@JohnMacIntyre(1):結果はコラボレーションではなくピンポンです。譲受人が常に適切な人物であるとは限りません。まれな問題は1人でしか解決できません。より多くの人が必要な場合、担当者は彼らに何をすべきかを指示する権限をめったに持たず、すべての依存関係を見ることはめったにありません(要件が独立していることはめったにありません)。失われるのは、自己組織化、ROIによる優先順位付け、または遅延のコストなどの利点です。
azheglov

@JohnMacIntyre(2):コミュニケーションの崩壊は、もちろん、彼らのプロセスが機能していないか、彼らがプロセスを持っていないか、彼らの会社で健全なコミュニケーションとコラボレーションの文化を持っていないというサインです。私の立場は、彼らがそれらの根本原因に対処するべきだということです。
アジェグロフ

@asheglov-譲受人が実装者であり、誰にも再割り当てしたり話したりすることが許可されていない場合、これは問題になると思われます。しかし、私の立場は、それはツールではなく、これは最高のツールで起こると思いませんか?
ジョンマッキンタイア

2

次の理由から、「Word」文書は要件を満たすための間違った方法であると考えています。

  1. 変更点を確認するために2つのドキュメントを「差分」する方法はありません。
  2. ユーザーインターフェイスは、一貫したスタイルを使用することを推奨しません。はい、スタイルを使用することはできますが、ほとんどの人は困難のため気にすることはできません。
  3. ドキュメント形式は基本的に非表示です。確かに、OLEファイルの仕様はありますが、これは「Word」ドキュメントと思われますが、Microsoftは有用なものをすべて大量に埋めているので、誰も知りません。遅かれ早かれ、あなたの光沢のある新しい「Word」はドキュメントを開きません。
  4. 他の形式ではうまく再生されません。つまり、WindowsとIEを使用しない限り、誰かが「Word」形式のファイルへのリンクを含むHTMLファイルでプロジェクトのドキュメントを整理すると、運が悪くなります。間違ったリンクをクリックすると、Wordのダウンロードと開始の長い期間を経て、思考の流れが中断されます。「Word」ドキュメントから他のドキュメントへのハイパーリンクが機能する場合と機能しない場合があります。
  5. 「Word」は、基本的に紙に表示することを目的としたドキュメントを書くためのものです。立派な目標ですが、オンライン表示にはあまり役に立たないものです。

私が経験した代替案はありませんが、Pythonの再構成されたテキストまたはマークダウンを代替案として考えました。


1
これらの議論のほとんどはFUDのように聞こえます。Wordは最良の選択ではないかもしれませんが、それほど悪くはありません。2.スタイルは、2007年のリボンUIよりも顕著です。スタイルを使用する理由を説明するのは、まったく新しいソフトウェア3を説明するよりもおそらく簡単です。最新のWordでは、16年前に作成されたWord 97ファイルを読み取り/保存できます。Word 2003は、互換性パックを使用して2010ファイルを読み取り/保存できます。4.と5.に同意しますが、pdfはオンライン表示のオプションかもしれません。
kapex

@kapep-私の議論は古典的な「恐怖、不確実性、疑い」の意味でのFUDではありません。おそらく、あなたは何らかの方法で「FUD」を使用しています。私の議論のそれぞれに答えることができます。たとえば、「[挿入]メニューでcontrol-shift- @を実行して、現在のドキュメントと別のドキュメントとの行ごとの差分を取得する」と言うことができます。あなたが提供したのは反対意見だけだったので、それはできません。マイクロソフトには、ドキュメント形式を放棄したか、少なくとも古い形式を使用するのが高価であるか困難であるという歴史があり、アップグレードの売上が増加すると思います。
ブルースエディガー

OK。私は自分を修正しなければなりません。たった3つだけが、プロプライエタリであるためにword / docをバッシングする際によく使用されるFUD引数であるようです。確かにマイクロソフト捨てられたフォーマット-しかし、DOCファイルは、「遅かれ早かれ」そう、周りに非常に長い時間がかかっただけで、前世紀から古風なバージョンに適用されている場合は、彼らが次の単語がリリースされる2016>またはいつでもサポートをドロップすることを決定します。また、ドキュメントを「差分」する簡単な方法があることを指摘したかっただけです。もちろん、行ごとの比較ではありません。これは、行ベース以外の形式ではあまり意味がありません。SEのインラインdiffのようなものです。
kapex

2

通常はWordを使用しますが、実際にはソフトウェアでデータを作成する方法は、データを収集してデータを作成する方法や、情報を収集する人が要件が過度に複雑で、コストがはるかに高くなることを知るのに十分な知識があるかどうかよりも重要ではありませんより単純な要件でありながら、誰にも真の価値を追加しない(ID番号を常にスキップせずに順番に割り当てる場合など)か、既存の要件または他の計画機能と競合する場合。多くの場合、実際のユーザーと話をすることはありません。マネージャーが絶対にやらなければならないことを知らず、ソフトウェアの新しいバージョンにない場合、多くの驚きがあります。

また、さまざまなpdf、Excel、またはVisioファイルも使用できます。プロジェクトのすべてがSharePointから収集および編集されるため、必要に応じて以前のバージョンを確認できます。


1

User Storiesを含む製品バックログ(プロジェクトまたは製品ごとに1つ)を管理しています。これらは、使用しているようなバグ追跡ソフトウェアに保存できます。個人的には、バックログにExcelを、スプリントバックログにTracを使用しています(おそらく、そのようなツールを使用しています)。

必要な場合にのみ、ユーザーストーリーを詳細に説明するWord文書を作成し、ユーザーストーリーに添付します。しかし、ユーザーストーリーを小さなストーリーに分割することで、これを回避しようとしています。

小規模なユーザーストーリーは管理が容易です(推定を含む)

Word文書が気に入っているのは、リンクを入れたり、テキストをフォーマットしたり、表やスクリーンショットなどを入れたり、誰でも読むことができるからです。

もちろん、各ユーザーストーリーについては、推定セッションとスプリントプランニングで詳細に説明されており、開発者が作業を決定する際には、いつでも他の質問に答えることができます。スプリントレビューを使用した頻繁なフィードバックにより、開発者は製品所有者から要求されたものとは異なることを行うことができません。


1

個人的には、過去にWord文書を使用していましたが、将来的にはこれを管理するツールを見つけることを決意しました...特にバグを要件に設定する機能を使用すると、多くの場合、バグは要件ではなく、仕様と実装の違いではありません。

バグ追跡ツールを使用することは私にとっても偶然ではありませんでしたが、完全に理にかなっています。

好奇心から、それについてあなたが好きではないことは何ですか?

編集:1つの注意; マネージャーにバグ追跡ソフトウェアのブランド変更を依頼してください。それ以外の場合、その中のすべてはバグであると想定されます。私は最後のクライアントでこの政治的な問題を抱えていました。そこでバグ追跡システムにタスクを置きました。良くない。


1

これを処理するために、6年または7年前に要件データベースを作成しました。各要件レコードには、短い説明、「定義」メモ、および「メモ」メモ(両方ともリッチテキスト、スクリーンショットを埋め込む機能など)があります。プロジェクト、成果物、シーケンス番号(論理的に順序付けできる)、関連するユースケース/機能、時間の見積もり、実装するために誰かが選択した場合、それを処理する人のフィールドには、他のフィールドもあります。等

機能を設計している間、「ステータス」-「入力済み」もあります。「承認済み」。要件のグループがレビューされ、実装の準備ができていると判断されると設定されます。プログラマーが要件を達成したと判断すると「実装済み」になり、QA技術者がプログラマーに同意すると「検証済み」になります。(QA技術者が同意しない場合、プログラマーはそれを「承認済み」に戻すことができます。)要件は「遅延」、「拒否」、または「質問済み」(変更管理委員会がそれを見る必要があることを意味します) )

これをうまく行う秘trickは、合理的な粒度です。1つの文の要件(「問題12345で説明されている問題が修正された」など)が必要な場合もありますが、一般的に要件は機能全体(または1つの大きなチャンク)のすべての重要な側面を説明する必要があります。たとえば、一般的な「新しいレポート」機能には、レポート形式の要件(出力の外観)とオプションダイアログの要件(フィールド、検証などの説明)があります。簡単なクエリなどではなく、データを処理する複雑なジェネレーターがあります。さらに、対応するヘルプトピックの「ヘルプ」要件を作成します。

このようなものを大きなドキュメントではなくデータベースレコードに保持することには大きな利点があります。複数のプログラマーが同時に要件に取り組むことができます。個々のレコードはロックされているため、一度に編集できるのは1人だけですが、他の誰かが編集している間にそれらを開いて読み取ることができます。ただし、最大の利点は、要件が何であるか、およびそれらがどのように実装されたかに関するメモの両方のドキュメントを簡単に検索できることです。現在、25,000を超える要件があり、すべてのフィールドに特定の単語を含むすべての要件、定義、メモなどを10秒以内に簡単に見つけることができます。(6年以上のWord文書で試してください。)

「バグトラッカー」で要件を実行するのは悪い考えだと人々が言う理由はわかりますが、検索可能なデータベースに要件を保持することは悪い考えではなく、ツールが悪いからだと思います。


1
DOORSなどの市販の要件追跡ソフトウェアが利用可能です。
M.ダドリー

1

私はかつてhttp://www.pivotaltracker.com/を使用しましたが、現在の会社では、.docをコア仕様ソースとして使用し、Lighthouseをウィッシュリストと問題追跡機能の組み合わせとして使用しています。私にとって、チームの他の人がWordに慣れているときに他のツールを使い始めるのは難しいです。


0

アジャイルの方法論に従うことができる場合、次のリンクを使用して、優れたアジャイルプロジェクト管理ツールを選択できます。

そして真剣に、アジャイルの方法論を試してください-それはあなたが何をするにしても、すべてのチームメンバーが他のすべてのメンバーの役割と努力を理解し、評価するように、シンプルでエレガント、ナンセンス、ノンジャジー、一般的な感覚的アプローチを説きます。

がんばろう!

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