システムエンジニアへの第一歩である詳細設計書(SS)の役割とは?【プログラムの説明書】

※本サイトはアフィリエイト広告を利用しています。
実体験
スポンサーリンク

まずは自己紹介をさせてください。gugusukeと申します。

gugusuke
gugusuke

詳細設計書が作成できるようになればシステムエンジニアと名乗れます。

詳細設計書の役割とは?

プログラムを実装するための説明書になります。

説明書

詳細設計書とは名前の通り、要件に対する詳細な内容を設計書にしたものです。

gugusuke
gugusuke

詳細設計書はExcelで作成している現場がほとんどです。

IT業界ではお客様からこういったものを作りたいという要件を受け取って、それを実現するためにプログラミングを用いて開発していきます。

システム開発は各工程に分かれており、プログラムを実装するまでの段階があります。

  • 要件をまとめる要件定義書
  • 要件をシステムチックにまとめた基本設計書
  • プログラムよりに詳細化した詳細設計書
システム開発

その工程の1つが詳細設計になります。

gugusuke
gugusuke

詳細設計書はよりプログラムに近い設計書になります。

極端な話、詳細設計書があればプログラムを実装することができるのです。

詳細設計書が必要な理由

そんな面倒な手順を踏まないで、要件を聞いてプログラムだけ実装してしまえばいいじゃんと思ったかもしれません。

gugusuke
gugusuke

わたしも最初はそう思いました。実際にアジャイル開発と呼ばれる開発手法もあります。

それでもお客様の要望に答えることはできるかもしれませんが、わたしは詳細設計書はあった方が良いと感じました。

それは詳細設計書を作ることで要件を整理することができ、実装をスムーズに行うことができるからです。

  • プログラミングよりの設計書のため実現方法を整理できる
  • 条件によって分岐する機能を整理できる
  • 要件が満たされているか整理できる
  • 実装するために必要な情報が足りていないか整理できる

以上のことから、プログラムを実装するための説明書を作成することはプログラミングを効率よく実装するために必要なプロセスだと感じました。

また、もう1つ詳細設計書が必要な理由があります。

それは、詳細設計書を作成した人とプログラムを実装する人が別の人物であることがほとんどだからです。

gugusuke
gugusuke

わたしの経験上、詳細設計書とプログラミングをする人が違う現場の方が圧倒的に多かったです。

詳細設計書はある程度知見のある人が担当し、その人が作った詳細設計書をもとに新人や若手がプログラムの実装をします。

プログラミングの経験を積んでいくことが新人や若手を育てていくことにも繋がっていきます。

育てます

経験を重ねればいずれ詳細設計書を作成する側になれるので人が上手く回っていく仕組みとなっています。

そして、詳細設計書を一人称で作成することができるようになるとシステムエンジニアとして第一歩を踏み出したといえるでしょう。

詳細設計書の書き方は現場による

ここまで説明すると詳細設計書があればプログラムを実装できるということがわかるかと思います。

しかし、現場によって詳細設計書の書き方はまったく別のものになっているため、どの現場でも使えるフォーマットのようなものがあるわけではありません

  • プログラムの1行1行を細かく落とし込んでいるところ
  • ざっくりこんなことを実現したいというあいまいな書き方のところ

それぞれの詳細設計書にはもちろん意図があります。

前者はプログラミングの初心者でも詳細設計書通りに実装すればできるということで、プログラミングの経験を積むには適しています。

後者は書かれていることをそのまま実装するだけでは成長につながらないから、やりたいことは明確にしておくからプログラムの実装は自分で検討してねといったものです。

どちらも良い点、悪い点はあるかと思うので、どちらが良いかは一概には言えないと思います。

悩み

どちらも経験してきたわたし個人的な意見としては、後者が良いかと思っています。

gugusuke
gugusuke

後者の詳細設計書の方が自分で考えることが多い分自分の力になると思います。

もちろん難易度は後者の方が高いことは言うまでもありません。

しかし、どんなに苦しくても決められたレールを歩くより、自分で考えたレールを歩いた方が絶対に力になります

とはいえ、こればっかりは現場のルールに従うしかありません。

もしこれから新しいプロジェクトを立ち上げることになった場合は、後者の詳細設計書をおすすめしたいと思います。

まとめ

詳細設計書はプログラムを実装するための説明書になります。

現場によっては詳細設計書の粒度が違いますが、基本的にはこれを見ればプログラムを実装することができる資料になっています。

また、前述はしていませんが、前回の記事で紹介させていただいた単体テストのケースを作成する基の資料にもなっています。

詳細設計書に記載されていることがプログラムとして実装されているかを確認するための単体テストになります。

そのインプットとして詳細設計書をテストケース作成に使うのが一般的とされています。

しかし、ここだけの話、慣れてきてしまえば実際はプログラムからテストケースを作成することの方が多いです。

ありがとうございます

コメント

タイトルとURLをコピーしました