私が考えるウォーターフォール型開発はSIer、すなわち受託開発系の会社がその手法を取っています。
アジャイルと何が違うかというと代表的な成果物としてドキュメント類(要件定義書、基本設計書、詳細設計書、テスト仕様、シーケンス図、ER図などなど)を小説レベルの文言で詳細に書く作業がウォーターフォール型では存在します。ドキュメント自体が納品物であるためとお客様との間で言った、言わなかったの論争を避けるため、小説レベルのドキュメントが必要となります。また、開発自体を下請けに丸投げする傾向が強く、2次、3次受けみたいなピラミッド型のビジネスが成り立っています。
アジャイル型は、自社サービス開発を行っている企業に多く、ドキュメントが納品になっていない為、パワーポイントで概要、A5SQLみたいなソフトウェアーで吐き出したER図などでWiki、Confluenceみたいなものに纏めている感じが多いです。
アジャイル系の良くないとこはドキュメントが乏しく仕様について属人化してしまうことで初期の開発に携わった人が優位に立ってしまうことにあります。
アジャイル系はドキュメントを書かないといわれていますが、これは間違った認識でアジャイルでもそれなりのドキュメントは必要となります。
SIer系のお仕事は非常にストレスがたまりやすく、上部に意見を言えず粛々と作業をこなすイメージですが、アジャイル系は開発者どうして意見を出し合いながら進めていく感じになり、SIerよりはストレスはあまりたまらない傾向にあります。技術的なスキルはアジャイル系のエンジニアには勝てません。
SIer系は納期は必須、アジャイル系は自社開発が多いため割と自由であり、この点からSIer系の企業はとても厳しくブラックな現場が多い印象です。
幸せなエンジニア人生を送るためには、自社WEBサービス開発を行っている企業で働く方が良いですが、非常に高いスキルを要求される傾向にあります。
つづく・・・
コメント