ソフト開発に関する仕様書の書き方は?

このQ&Aのポイント
  • ソフト開発における仕様書の書き方について知りたいです。
  • どういった項目が仕様書に必要なのかわかりません。
  • 仕様書を作成する業務とは何なのか教えてください。
回答を見る
  • ベストアンサー

ソフト開発に関する仕様書の書き方は?

ある携帯を用いたシステム開発における仕様書を作ってくれと会社の上司から依頼されました。 当方、プログラム経験は少々ですがあります。 (といっても、MS-DOS時代のC、エクセルVBAでのツール作りくらいですが・・) よって、具体的な仕様書をおこしたことはありません。 一口に仕様書といっても、システムの種類や内容などによって、いろいろあると思うのですが、何か具体的な仕様書フォームとかあれば、ぜひ欲しいです。 どういった項目が必要なのかがわからず、何から手をつけて良いかが、わからないもので・・ ちなみに、仕様書を作成する側(SEと呼ばれる立場?)は、開発する環境(使用するハードやソフト)、開発言語、使用するDB、開発するための規則なども細々と決めなければならない(仕様書に盛り込む必要がある)のでしょうか? プログラミングは、外部のソフトベンダーに依頼するそうなのですが、そうなると仕様書がしっかり書かれていないとマズいような気がしています・・ しかし、どこまでのことを仕様書を作成する側がやらなければならないかも、ちょっとわからないんです。 また、仕様書を作成する業務=システム設計またはプログラム設計と考えてもよろしいのでしょうか?

  • THUBAN
  • お礼率76% (771/1002)

質問者が選んだベストアンサー

  • ベストアンサー
  • zzen
  • ベストアンサー率23% (9/38)
回答No.1

仕様書と言っても色々な種類がありますが、プログラミングを外部に発注するための仕様書であれば、要求仕様書になると思います。 一般的には、なんのためのシステムか、入力データと出力データ、操作方法(GUI)、必要な機能、性能、保守、スケジュール、開発方法、言語、動作環境、耐障害性、データバックアップなどなど。 プログラムを作ってもらうための、必要な要件を記述すれば良いのです。要件を文章や図で記述するか、大変だったら、要件のみ箇条書きにすれば良いと思われます。 もしくは、発注先のSEとの会話で、上記の要件をヒアリングしてもらい、先方に要件定義書ということでまとめてもらうやりかたもあります。ただし、この工程の費用も請求されると思われます。 このプロセスがシステムを作る上で最も基本となる部分ですので、ここが正確に伝わっていないと、希望に添っていないシステムができあがり、トラブルの元となります。 ちなみに、要求仕様(要件定義)のあとに、システム設計、運用設計、プログラム設計、試験設計、導入(移行)設計などという形ですすんで生きます。このような進め方をウォーターフォールモデルといいます。 GUIがメインのシステムの場合(WebAPや業務APなど)、画面デザインや操作性などの決定に非常に時間がかかり、ウォーターフォールモデルは適用しにくいです。その場合はスパイラルモデルを適用します。プロトタイピング、RAPなどがそれにあたります。 なお、要件定義、システム開発プロジェクト管理などを自社でまかなえない場合、発注先に丸投げすることになり、非常にリスクが高くなります。そのため、発注先の立場として、外部にプロジェクト管理を委託するケースもあります。参考URLをどうぞ。

参考URL:
http://www.geocities.jp/tk_yosh/index.html
THUBAN
質問者

お礼

一度、締め切りさせていただきたいと思います。 進めていくうちにまた疑問点が出てきたら、Qできればと思いますので機会あいましたら、よろしくお願い致します。 どうも皆様、ありがとうございました。

THUBAN
質問者

補足

どうも、詳しくお答えいただき、ありがとうございます! 当方の状況からするに、まさに要求仕様書になるものと思われます。 当方にて、書籍についてもネットでいろいろ探し、早速、以下の書籍を注文してみました。 http://www.dart-books.co.jp/books/739-4.html 要求仕様書サンプルもついているらしいです。 役立ちそうですかね? 携帯(iアプリやおさいふ携帯機能)とWeb系コンテンツ(Flashなど)を連動させるようなシステムなので、GUI必須のシステムになるかと思います。 例)携帯をかざすと、PC画面のコンテンツが動作するなど。 ウォーターフォールモデル、スパイラルモデルなどの存在も、大変、勉強になりました。 プロトタイピングとは、簡単にアプリ画面などを実際に作ってみるということでよろしいのでしょうか? ちなみに、RAPとは何でしょうか? 参考URLも後で見てみます。

その他の回答 (4)

  • toshi7607
  • ベストアンサー率12% (60/482)
回答No.5

えっと、余計なお世話かもしれませんが、一番心配なのはリスク管理です。 後工程での仕様変更や手戻り等発生しないようにする為には、SE側にはそれなりのノウハウが要求されます。 あとは、外注先を本当に技術力のあるところを選ぶのが大事です。 細かい事は任せてしまって良いです。技術的な面も相談しながら進められる相手を選んだ方が良いですね。

THUBAN
質問者

お礼

一度、締め切りさせていただきたいと思います。 進めていくうちにまた疑問点が出てきたら、Qできればと思いますので機会あいましたら、よろしくお願い致します。 どうも皆様、ありがとうございました。

THUBAN
質問者

補足

外注先はすでに決まっているところがあるようです。 相談ベースで進めて行ければと思っています。 どうも、ご回答ありがとうございました。

  • nano_cat
  • ベストアンサー率24% (26/106)
回答No.4

仕様書を書くのは難しいですよ。 仕様書の善し悪しで、そのソフトの出来が決まる のですから。(当たり前のことですが。) 仕様書を読んだこともないのに、仕様書が書けるかなー、 と、非常に心配です。 仕様書に書いてないことでも親切にプログラムを書いて くれる人に出会えたらいいですね! 私はプログラマでもありますが、よくわかってない人の 書いた仕様書でプログラムを書くと、変更、変更で プログラムがボロボロになったことがあります。 下手な仕様書は、無い方がマシだったりします。 (大ざっぱな仕様書にして細かいところはプログラマに オマカセにする---しかし、これで満足できるかは、 プログラマ次第です。)

THUBAN
質問者

お礼

一度、締め切りさせていただきたいと思います。 進めていくうちにまた疑問点が出てきたら、Qできればと思いますので機会あいましたら、よろしくお願い致します。 どうも皆様、ありがとうございました。

THUBAN
質問者

補足

仕様書は見たことはあります。 DBのフィールドの定義や入力デバイス図、システムの流れなど。 しかし、実際に作るとなると、どこから手をつけていいかがわからないので、参考になる元があれば、その形を自分用に変えながらできるかな(やってみたい)と思っています。 依頼客先と開発を頼む先の間に入るわけですから、口頭でしっかりとやり取りして、認識のズレがないようにはしたいと思っています。

  • zzen
  • ベストアンサー率23% (9/38)
回答No.3

No.1のzzenです。 GUIや、他システムとの連携が必要みたいですが、画面遷移や、データフロー、イベント(アクション)に応じた処理の内容、さらにユーザ入力があるのであれば、文字種や文字数の制限、数値の範囲など、さまざまなものを要求仕様としてまとめていかなければなりません。 お求めになられた本は参考になるとは思われますが、発注者としてそれらを押さえた上で、どこかに委託するのがベストかと思われます。 RUP(RAPは間違え)、RADなどをグーぐるとたくさんでてきます。

THUBAN
質問者

お礼

一度、締め切りさせていただきたいと思います。 進めていくうちにまた疑問点が出てきたら、Qできればと思いますので機会あいましたら、よろしくお願い致します。 どうも皆様、ありがとうございました。

THUBAN
質問者

補足

どうも、ありがとうございました。 それらを踏まえた上で、頭を悩ませてみます。

  • toshi7607
  • ベストアンサー率12% (60/482)
回答No.2

見た感じ、SE経験のある方によく相談されたほうが良いと思います。 経験の浅い状態で要求仕様書や外注との交渉を行うのは、リスクが高いです。

THUBAN
質問者

お礼

一度、締め切りさせていただきたいと思います。 進めていくうちにまた疑問点が出てきたら、Qできればと思いますので機会あいましたら、よろしくお願い致します。 どうも皆様、ありがとうございました。

THUBAN
質問者

補足

会社内では、SE経験は薄い人ばかりで、その中でも年齢的にも業界経験的にも、私しかやる人がいないんですよ。 上司もそれで、私に依頼してきたんだと思います。 SEとして働いていたことはありますが、運用管理SEだったので、システム開発SEとしての経験は薄いのは確かです。 自分でも力を付けたいので、今回、課せられたこの課題をクリアしたいと思っています。

関連するQ&A

  • ソフト開発に関しての仕様書の書き方

    ソフト開発に関しての仕様書の書き方なんですが、やはり何か決まりごとがあるのでしょうか? 仕様は ・業務フロー→システムフロー ・機能一覧 ・画面遷移→画面設計 ・ER→DB設計 とやる必要がある。 うちの会社の人は上記のように提唱しているのですが、これは必須なのでしょうか? なにか、ソフト開発に関しての仕様書の書き方にかんして説明しているHPなどあれば紹介してくださるとありがたいんですが。

  • 開発設計(仕様)と使用年数の関係

    社内SEをしております。 社内の基幹システムの保守が主な業務です。 その基幹システムの運用が始まって5年目に入るのですがあちこちで不具合がおきております。 その中でもっとも納得がいかないのはデータ件数が増えた(運用により)ために 動かなくなった、というものです。 (具体的に言うとSQLでビューを使いまくっていて、件数が増えたことにより ビューを作成する時点で応答がなくなってしまう) 開発したベンダーに報告しても、 「そんなに件数の多いパターンで納入時に試験できなかった(試験してない)」 「運用して5年もたって不具合を言われても困る(無償では対応できない)」 といった切り返しをされます。 これってどうなんですかね・・・? いちいち設計のときに何万件のデータでも動くようにしてください、とか 言わないといけなかったんでしょうか。 データ量も他の業界に比べれば全然少ないほうで、むしろこの程度で 動かなくなるなんて不良品じゃないかーって言いたい気持ちがあるのですが・・。 仕様検討の段階で、大量の試験データを用意して納入試験をしなかった弊社、 そしてとりあえず今動けばいいや、という認識でプログラム作成したベンダー、 両社の責任・・・ってことになるのでしょうか・・。

  • ベンダーでBVを使って開発している方に質問です。

    VBで開発を請け負っている人に質問です。(逆の立場の人でもかまいません) 開発にはノータッチで完成してからお前が運用を考えろと渡された、人事管理 システムがあります。この中に名簿の定型帳票があり1万ステップを超えて いるので改修は許して欲しいと言うのプログラムがあります。 先日バグの切り分けの為にシステム設計書、概要設計書及びプログラム仕様書 を見て「バカやってんじゃねぇーよ!」と怒ってしまった。私はVBの知識は ありませんが、要求されている仕様を整理すれば1~2千ステップもあれば 書ける内容を、概要設計から出力フォーマットに沿った説明をコーディング レベルまで持ち込み大きなステップ数になっているのが判りました。 (推測ですが、以前はAccessで開発されていたものをセキュリティーやメンテ  ナンスの理由から書き換えを行ったことからAccessのクエリー等をそのまま  VBに置き換えたのかも知れません。) システム設計の先頭にメンテナンスビリティーを重視した開発を行う事と あるのに、この帳票は部課コードを始めにコード類は殆どConstant Valueを 使っていて組織変更等がある都度変更の必要があると言う優れもの。 開発の当社側担当の無能さもさることながらVBで開発されている方はこんな レベルが低いのかと呆れた次第です。汎用機を扱うベンダーであれば効率性や メンテナンスの事を良く考え、詳細設計書に書かれている内容では、それらが 損なわれると判断すると、設計の変更を申し入れられる経験をして来た人間に とって泥棒並のベンダーとの思いもします。

  • 他社が開発したソフトの、ユーザーからの修正の依頼(著作権)

     ソフト開発会社に勤めていますが、ベンダーの対応に不満を抱いているユーザーからタイトルの件の依頼が良く来ます。  著作権に関して触れてこないユーザーの場合は、そのように修正して差し上げていますが、いま商談中のユーザーから、法律的に大丈夫なのか?と聞かれています。  具体的にはVB5.0で他社が開発したプログラムを、ハードのOSのアップに伴うVB6.0への移行作業を依頼されている、といった感じなのですが、こういった作業は可能ですか?  当社が作ったプログラムをユーザーが手直ししているケースも多々ありますし、システムを複製して転売するようなことがなければOKなのではないでしょうか?  全く無知なご質問ですが、特にソフト関係に詳しい方がいらっしゃいましたらご回答お願いします。

  • 開発したソフトの流用について

    開発したソフトを他のシステムに流用することが可能かどうかを知りたいと思っています。法律関連に詳しくなくプログラムの著作権、使用権などについて、よくわからないので教えてください。 A病院から依頼を受けて患者さんの予約システムを開発しました。開発時にA病院とは特に契約書などをかわしておらず、システム完成後に納品して代金を受け取りました。この場合、予約システムの著作権は当方、使用権はA病院にあると思うのですが、合っていますか。 その後、他のB病院から同様の予約システムの依頼があり、A病院に納品した予約システムのデザインを変更し、プログラム部分はほとんどそのまま流用して、納品をすることは法律的に問題がありますか。 よろしくお願いします。

  • 防爆仕様の装置開発について

    今回開発設計している装置ですが、防爆仕様の依頼できています。 初めての、防爆仕様の設計に何をどうしたらいいか良くわかっていません。 客先からの仕様では 『エアパージに関して、爆発性ガスの侵入防止条件として内圧を検出し 50Pa以上を維持する必要があります。 これを下回った場合に、センサー検出で非常停止(動力電源OFF) のインターロックを取る事になっています。 消防への届出資料として、回路図(上記のインターロックが記載されており、ハード的にも回路がある)が必要になります。 他にも、電気の絡む部分に関しては、防爆仕様の証明が出来る資料 (労検合格証など)が必要です。』 とあります。 まず具体的になにから、初めていいものか、かなり悩んでいます。 エアパージに関しては、なんとなくわかるぐらいですが、消防の届け、 労検合格証等がまったく、わかりません。 いったい、どういったものか、教えてもらえれば幸いです。 よろしくお願いいたします。

  • 仕様書について

    ある開発会社がパッケージプログラムを作成して、ソースを提供してもらい (但し、開発会社からは仕様書の提供はありません。) こちらがそれを各ユーザーにセットアップします。 そしてその各顧客の要求通りにプログラムを修正して提供している わけですが(主に帳票レイアウトの変更) その変更内容を記述する仕様書を作成するのですが、これを一般的に 何仕様書というのでしょうか?あまりこのパターンは経験したこと ありません。大体基本設計仕様書とかがあってそれを修正したもの がプログラマーに提供されるもので。インターネットで調べても出てきません。どうか教えてください。

  • システム開発における変更仕様書について

    現状、社内では超小規模開発が乱立しており、都度変更仕様書を作成し、それをもとに開発ベンダが製造を行なっています。結果、大元の外部仕様書は置き去り状態です。通常、変更仕様書の内容は、都度、外部仕様書へ反映させる作業を行うのが一般的なのでしょうか?そもそも変更仕様書の位置づけや目的がよくわかっていません。現状では、仕様を調べるためには、変更仕様書を追いかけないとわからない状態です。

  • システムの仕様書

    ある某コンピュータ会社のSEから、ユーザサイドへシステムの仕様書の作成を依頼されました。 ソフト導入時のシステムの仕様書は、ユーザーが作成することは一般的に行われているのでしょうか。 仕様書は、SEが書いてくれるとばかり思っていました。

  • ソフトウェア開発(技術者試験)について

    いままではVBやCで簡単なプログラムを作っていたのですが、もっと応用的なソフトを作りたいと思い、ソフトウェア開発(システム設計など)の勉強をしたいと思います。 そこで質問なのですが、ソフトウェア開発技術者試験の知識などはソフトウェア開発には必要なのでしょうか?もっと効率のよい勉強の仕方(本など)があれば教えてください。 また、高校なんですが、個人でソフトウェア開発をやるというのはどれくらい難しいのでしょうか。なるべくお金はかけたくないのですが。 また、基本的なことを勉強するのにどの本を読めばいいかを具体的に教えてくださるとうれしいです。