元Webデザイナー兼コーダーの備忘録

HTML,CSSの入門記事やブログのカスタマイズについてアウトプットしています。

 メニュー

【現場で活きる基本を身につける】「ずっと受けたかったソフトウェアエンジニアリングの新人研修 第3版 エンジニアになったら押さえておきたい基礎知識」の感想

家にこの本があったので読んでみました。

本書は、とある会社の研究所で新入社員を対象にした研修内容を元にした本です。新米の社会人エンジニアやエンジニアを目指す学生さんに対し、ソフトウェアエンジニアリングで押さえておきたい基礎知識を解説した入門書です。

本の紹介

タイトルの通りソフトウェアエンジニアリングの基礎知識について、平易な文で書かれています。まず、ソフトウェアエンジニアリングの始まりと基本的なルールが説明されています。それから、ウォータフォール型開発モデルとアジャイル型開発モデルの流れに沿って、システム開発の各工程が説明されます。

大人数でソフトウェアを開発するのに必要な知識が、基礎から説明されています。また、システム開発の各工程で作成する文書の作成例が掲載されています。

学んだこと

ソフトウェアエンジニアリングという学問

ソフトウェアエンジニアリングの歴史でいうと、構造化(構造化プログラミング)→人や物の管理→オブジェクト指向アジャイル開発モデルという流れがあるそうです。

ソフトウェアの大規模化、複雑化により、品質や生産性の低下が問題(ソフトウェア危機)になっていて、それらを解決するために提唱されたのが「ソフトウェアエンジニアリング」だそうです。ソフトウェアエンジニアリングは、学問として捉えられているそうです。

ソフトウェアエンジニアリングの始まりの頃は、いかにプログラムを効率良く作るのかに関心が向けられていたそうです。そこで、構造化プログラミングという考え方が出てきました。構造化の考え方が、ソフトウェア開発の他の工程に取り入れられ、分析や設計の手法が固まりました。しかし、大規模なシステムを開発するには、それだけでは不十分であると認識されていたそうです。そこで注目されたのが、開発に関する人や物の管理だそうです。プログラムを効率的に作ることだけでなく、人や物の管理についても考えるようになりました。以降、オブジェクト指向アジャイル開発モデルというものが出てきます。

標準化

人によらない保守、運用をするために、作業を標準化するそうです。配置換えなどで担当者が変わっても、作業が滞りなくできるようにするため必要になります。作業標準は、会社によって違うそうです。ノウハウを貯めながら、改定していくそうです。

ルール(規約)の必要性

個人が自分のために開発する場合は、ルールが緩くても問題ないかもしれません。しかし、仕事として開発する場合は、そうもいかないようです。

大人数が関わるソフトウェア開発では、情報を正確に伝えるため、各種文書を作成します。文書の作成自体にもルールがあるそうです。単語の表記を統一したり、用語の意味を定義して、誤解や混乱を避けるそうです。面倒に思うかもしれませんが、ルールがあるおかげで混乱せずに仕事を進められるのだと思います。

顧客と開発企業の間でもルールを決めるそうです。顧客と開発企業が、システム開発で認識を合わせたり、コミュニケーションが上手くいくようにするために、文書に残すそうです。ここでは、情報の取捨選択や専門用語を使わずに説明することが大事になります。

感想

当記事ではごく一部しか書きませんでしたが、本書から学べることは沢山あると思います。

話が変わりますが、基本情報技術者試験の試験範囲にシステム開発があったと思います。その部分を抜き出して、1冊の本にしたという印象を持ちました。基本情報の参考書より細かく書いてあるので、本書を読むと良いかもしれません。

本としては、難しい言葉がほとんどなく読みやすかったです。図が多くあり、内容をイメージしやすかったです。私はSEの経験がありませんが、この本でソフトウェアエンジニアリングについて少しは知れたのではないかと思います。