「ウォータフォールは時代遅れ」と言われて久しいですが、多くの業務システム開発はウォータフォールモデルで開発されています。SE・プログラマーの頑張りでなんとかリリースまで持っていけてるものの、「もっといいやり方があるんじゃないか?」と誰もが考えているかと思います。私はアジャイル開発をしているベンチャー企業で仕事をしたことがあります。アジャイルも万能なものではありませんでしたがいい所もたくさんあります!そんな経験を踏まえて「業務システム開発にアジャイルを取り入れる的方法」を紹介します。テスト結合テストシステムテストという順で開発を進める開発プロセスのことですが、これのどこに問題があるでしょうか?とても合理的に見えますよね。システム開発に必要な工程を必要な順序で行っているわけですから。問題は「実際の開発は、工程を一直線に進めていくことなどできず、行ったり来たりすること」です。詳細設計まで進んだ段階で、新たな要件が見つかったりすることは往々にしてあります。新たな要件が発見されたことでこれまでに設計が完了していた部分にも変更が必要になる場合があります。このような手戻りがたくさん発生することが想定されていないことがウォーターフォールモデルの問題なのです。アジャイル開発プロセスの利点アジャイル開発プロセスは一言で言えば、ウォーターフォールモデルを進める範囲を小さくして何度も繰り返すというものです。ウォーターフォールでは開発するシステムの全ての要件定義をして、その後、全ての基本設計をして...と、工程を進めていきますが、アジャイルでは開発するシステム全体の5分の1の要件定義をして、5分の1の基本設計をして...と、小さい範囲でシステムテストまで進めていきます。することで、詳細設計している段階で新たな要件が見つかったとしても、それが影響するのは5分の1の範囲で済むんです。小さい範囲で開発を進めることで、手戻りの範囲も小さくするのがアジャイルの利点なのです。アジャイルを業務システム開発に取り入れるポイント自社のWebサービスを開発するのであれば、初期リリース時に必要な機能を絞り込んでアジャイル開発することが出来ますが、顧客企業から受注したシステムを開発する場合、まず、顧客がどんなシステムを必要としているか、システムの全体を知る必要があります。ウォーターフォールモデルで行うのが良いと思います。その後の詳細設計以降は範囲を選択して(例えば全体の5分の1)、詳細設計から、システムテストまでを通しで進めていきます。それが終わったら残りの5分の4の中から開発範囲を選択して同じことをしていきます。これを繰り返していくことで徐々に完成したシステムが増えていき、最終的に100%のシステムが完成します。「アジャイルでやりましょう!」と提案しても通らない場合はアジャイル開発したからと言って、手戻りが発生しないわけでもないし、完璧な設計が出来るわけでもありませんが、一度に開発するスコープを小さくすることで、手戻り発生時の影響範囲を小さくすることが出来ます。これは大きな進歩です。よって、業務システム開発にもアジャイルを取り入れるべきですが、なかなか合意が得られない場合があります。多くの人は変化を嫌います。人間にはホメオスタシス(恒常性維持機能)があるというのは小学校の理科の授業で習ったかと思います。真冬の朝、気温が3度しかない中を歩いても、体温は3度にはならず35度から37度の間位になります。実はこのホメオスタシスは情報空間(思考、思想、心の中)でも働くそうなのです。そのため、「アジャイルでやりましょう!」とあなたが提案してもホメオスタシスによって「今のままの方が良い、変えたくない、現状を保ちたい」という力が働いて、「失敗したらどうするんだ?」等と反対をしてくるのです。人には現状を保とういう力だけでなく、変えようとする力もあるのです。人類は進歩してきたのです。現状維持を望むか、進歩を望むかは人それぞれです。これを読んでいるあなたは進歩を望む人なはずです。あなたが仕事をする相手は進歩を望む人たちであるべきです。アジャイル好きは進歩的!アジャイルの利点をしっかりと説明しても受け入れてもられないようであれば、転職して、あなたと同じように進歩を望む人たちのいる会社へ行くべきだと思います。幸いなことにITエンジニアの需要は高く、常に人手不足なのに加えて、ソフトウェア開発のスキルは汎用性が高く、他社に移っても、ほとんどそのまま使うことが出来ます。私もそうやって何度も転職して自分に合った職場を見つけることができました。探してみるといい会社ってホントたくさんあるので、ぜひ探してみてください!転職活動はやってみるとかんたん私自身3回ほど転職してるんですが、思ってたよりかんたんで、転職エージェントを使ったらあっという間でした。エージェントが応募先候補の選出から、面接の日程調整までやってくれるので、こちらから動かなくても半分くらい自動的に進む感じで楽でした。今はエンジニア不足で売り手市場なので転職するのにちょうど良い時期です。レバテックキャリアっていうエージェントがおすすめです。このサービスを運営しているレバレジーズという会社はシステム開発もやっているので、現場の仕事をよくわかってくれてますし、ヒカ☆ラボというIT系の勉強会を主催していたりteratailというプログラマー専用の質問サイトを運営していて好感が持てます。求人案件もWebやスマホの面白い仕事が多いのでいいと思います。あとホームページ見ると分かるんですが、若くて美人の担当者が多いのもナイスなんです!私の場合(たぶんあなたも)、担当者が美人だと転職活動のモチベーションめちゃ上がりますからね笑なので、レバテックキャリアのホームページ見てみてください。職務経歴書の作り方がわからないという方は、私が使っているテンプレートを使ってみて下さい。エンジニア経験者向けサービスなので、地方在住の方や、エンジニアの仕事が未経験の方には、ワークポートがおすすめです。未経験の人はサポート対象外のエージェントが多いんですけど、ワークポートは未経験者の転職も支援してくれます。以前エンジニア未経験の友達にワークポートを教えてあげた所、ちゃんと登録できて未経験可の求人を紹介してもらえました。未経験の人こそエージェントから職務経歴書の作り方や面接の仕方のレクチャーを受けた方がずっとうまくいくと思います。ワークポートは全国の求人をカバーしているので地方在住の方もご利用いただけます。プログラミングを学んでから転職したいという方は、無料のプログラミングスクール「プログラマカレッジ」も見てみてください。人脈がなくてもフリーランスになれるフリーランスになりたい方にはギークスジョブがおすすめです。人脈がなくてもギークスジョブに登録するだけで案件を紹介してもらえます。案件の希望(どんな技術を使っているか、残業が少ないこと)等も聞いてくれるので、やりたい仕事が出来ます。「派遣社員」なら正社員とフリーランスのいいどこ取りフリーランスになりたいけど、確定申告とかめんどくさいなという方には派遣社員がおすすめです。派遣ってネガティブなイメージありますが、ITエンジニアの派遣社員ならやりたい仕事を選べて、給料も悪くないですし、確定申告や年金、健康保険も派遣会社が入ってくれるのでいいと思います。私の先輩でフリーランスになった後、派遣社員になった人がいるんですが「自由かつ煩わしい手続きがなくて最高」って言ってました!パーソルテクノロジースタッフに登録するだけでかんたんに派遣社員になれます。転職や仕事術、勉強法等について質問や相談がありましたら、以下のメールフォームからぜひご連絡ください。経験者ならかんたんに解決できる相談って多いのでお気軽にどうぞ!こう書いてもなかなかメールくれる人って少ないのでホント気軽にメールしてくれると嬉しいです。(必須)相談内容たまに間違ったメールアドレスを入力されていて返信できない場合があります。一週間経っても返信がない場合、メールアドレスを確認の上、再度送信をお願いします。(26)プロフィールやまろうと申します。ITエンジニアを十数年やってます。スマホゲームと幅広い分野で仕事をしてきました。そこで培ったエンジニアの本質的な仕事力や転職ノウハウを書いています。プロフィール詳細やまろうのYoutubeチャンネルIT関連のことから人生哲学までざっくばらんに話してます。