blog.mtb-production.info

よくある経歴のPythonエンジニア

ソフトウェア工学の当てはまらない状況

本を読んでいて、ソフトウェア工学はこういう状況には当てはまらない、という話を見つけた。

自分の感じたことに近かった。 興味深かったので書きます。

とは言え、読んでるのはソフトウェア開発の古典みたいな本なので、ソフトウェア工学とか聞いたことない人は読まなくていい記事かと思います。(というか、今だと少し変わってるようにも思うし)

前置き

ソフトウェア工学というものを学んだことがある。

ソフトウェア工学 - Wikipedia

ソフトウェアを工学的に作っていこうという考え方の方法論です。

簡単にいうと、設計と実装やテストを分離して、考えます。

ソフトウェア工学の中には、設計に関する話と生産に関する話があります。

で、僕の知ってるソフトウェア工学は、ウォーターフォール型のドキュメント駆動開発です。

ドキュメント駆動開発では、ドキュメントが全てです。

動くソフトウェアを早く届けることより、矛盾のないドキュメントが重要視されます。

ソフトウェア工学では、設計してから設計に基づいて実装を行います。修正するときも同じです。

やってる方からすると、すごいめんどくさいやり方なので、なんでこんなことになってるの?という疑問を持っていました。

ソフトウェア工学の適用場面

ソフトウェア工学は、以下の状況でソフトウェア開発を成功させるために作られたらしいです。

  • プロジェクトメンバーが数百人から1000人などのプロジェクト(超大規模)
  • 開発対象のソフトウェアのバグが人命を脅かすようなプロジェクト(ロケットとか飛行機とか)
  • 品質がコストより重要視されるプロジェクト(国家レベルのプロジェクト)
  • ハードウェアの製造が遅く、ソフトウェアを開発する時間が十分にあるプロジェクト
  • シビアなハードウェア要求があり、汎用ハードウェアは使えないプロジェクト

所感

上記の背景を聞いて、自分の疑問が解消された部分がありました。

とりあえず、今のところはドキュメント駆動で開発しなくて良さそうです。

理由のわからないものは、ずっともやもやと気になってしまいます。

今回、1つ納得できてなかったことが解消できて嬉しいです。

参考文献

ソフトウエア開発プロフェッショナル

ソフトウエア開発プロフェッショナル

ソフトウェア職人気質―人を育て、システム開発を成功へと導くための重要キーワード (Professional Computing Series)

ソフトウェア職人気質―人を育て、システム開発を成功へと導くための重要キーワード (Professional Computing Series)

  • 作者: ピートマクブリーン,McBreen Pete,村上雅章
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2002/03
  • メディア: 単行本
  • 購入: 4人 クリック: 85回
  • この商品を含むブログ (63件) を見る

人月の神話【新装版】

人月の神話【新装版】