フルスクラッチは体力

開発手法の選択

フルスクラッチかパッケージか、最近ではSaaSなどもシステム構築の検討に入る。実は開発手法やツールよりも、どのようなシステムで、どれくらいの規模のシステム開発会社が担当するかが重要である。

SESのリスク

人数が多い会社であればあるほど安心感があってよいと安易に考えることは適切ではない。なぜなら、SE派遣やSESと呼ばれる人月(人工)単位で売り上げの経つ会社には技術の総合力がないからである。

技術の総合力

技術の総合力とは、SE作業やプログラミング作業などの1人で対応できる技術力を差すのではなく、システム構築やシステムの運用全般における最適手段を考えることができる能力のことである。

表層の即効性

SE派遣やSESの付加価値はその人単体のプログラミング能力に偏るため、一見対応がよく、何も問題がないように思える。しかし、これが技術的負債を作ってしまうひとつの要因でもある。

まとめ

フルスクラッチを考えるなら、SESを中心としないシステム会社で且つ人数規模も多い方がよい。安価にフルスクラッチでシステムを構築してしまうと、メンテナンスや運用でしっぺ返しが待っている。時間が経つごとにシステム保守費用が高くなるのである。

関連記事

SEのいうバッファとは

バッファの真意

見積りや作業スケジュールに際して、エンジニアやシステム会社から「バッファである」という回答を受けたことはないか。システム会社が言うバッファとは保険を意味していることがほとんどである。

不確実なバッファ

非エンジニアは見積りのバッファを聞いたときに、無駄なのではないかと感じる。「念のため」に必要なバッファは、裏を返すと知識がないから調べないと分からないので不安であるという意味である。知識があり、「念のため」が必要なければバッファはないと考えられる。

知識の不足

ほとんどのシステム構築プロジェクトは、バッファが多いほうが知識がないのに見積りが高くなるという矛盾が発生することになる。そう考えると「バッファ」とは「無駄」に聞こえるかもしれない。

本質のバッファ

さて、このバッファについて本来あるべき姿を説明する。本当にやってみなければ分からないといった高度な技術を使うときに、未知の領域に関するスケジュールの影響を勘案し、計画された期間のことをバッファと見るべきである。

まとめ

単なるシステム構築プロジェクトにおいて「無駄を削ればよい」というのは非エンジニアから見ると合理的でコストの軽減にもなる。しかし、研究開発分野において無駄を削ることは必ずしも合理的ではない。発想が乏しくなるからである。

続きを見る >

伴走型開発で仕様変更地獄を脱出

炎上の元凶

システム開発プロジェクトにおいて「仕様変更地獄」は最も深刻な問題の一つである。開発が進むにつれて次々と変更依頼が発生し、スケジュールは遅延、コストは膨張、開発チームの疲弊が進む。こうした状況に陥った企業では、プロジェクト自体が頓挫するケースも少なくない。特に従来型の開発手法では、仕様を固めてから開発に着手するため、後から変更が入ると大きな手戻りが発生する。ビジネス環境の変化が激しい現代において、この開発スタイルは限界を迎えているのだ。

仕様変更の理由

仕様変更が頻発する背景には、いくつかの構造的な問題がある。第一に、プロジェクト開始時点で業務要件を完璧に定義することは実質的に不可能だという現実である。現場の担当者も、システムが動く姿を見るまで本当に必要な機能が見えない。第二に、開発期間中にビジネス環境や競合状況が変化し、当初の要件では不十分になることがある。第三に、発注側と開発側のコミュニケーション不足により、認識のズレが後から発覚するケースである。これらの問題は、従来の「要件定義→設計→開発」という一方通行の開発プロセスでは解決できない。

伴走型開発の効果

こうした課題を解決するのが「伴走型開発支援」というアプローチである。これは、開発ベンダーが単なる請負業者ではなく、ビジネスパートナーとして顧客企業に寄り添い、プロジェクト全体を通じて継続的に支援する手法だ。具体的には、小さな単位で機能を実装しては確認するアジャイル的な開発サイクルを回し、仕様変更を前提としたプロジェクト管理を行う。重要なのは、変更を「悪」ではなく「ビジネス価値の最大化」として捉え直すことである。定期的なレビューで優先順位を見直し、本当に必要な機能に開発リソースを集中させる。こうすることで、限られた予算と期間の中で最大の成果を生み出せるのだ。

成功の3つの鍵

伴走型開発支援を成功させるには3つのポイントがある。第一に、発注側と開発側が対等なパートナーシップを築き、透明性の高いコミュニケーションを維持することである。進捗状況や課題を隠さず共有し、一緒に解決策を考える姿勢が不可欠だ。第二に、MVP(実用最小限の製品)の考え方で、コア機能から段階的に実装していくことである。すべてを一度に完璧にしようとせず、ユーザーフィードバックを得ながら改善を重ねる。第三に、変更管理のルールを明確にし、影響範囲とコストを可視化することである。無秩序な変更を防ぎながら、本当に価値のある変更は柔軟に取り入れる。このバランスこそが成功の鍵となる。

まとめ

仕様変更地獄から抜け出すには、開発手法そのものを見直す必要がある。伴走型開発支援は、変化を受け入れながらプロジェクトを着実に前進させる現代的なアプローチである。単なる技術提供ではなく、ビジネスゴールの実現に向けた戦略的パートナーシップが、これからのシステム開発には求められているのだ。

続きを見る >

オオカミ少年化の弊害

SE常駐の負連鎖

システム開発会社側の立場からすると、時間ばかり取るよくないクライアントはできるだけ減らさないと、他の優良クライアントに迷惑がかかる。特に横にいてくれないと進めることができないというニーズが、SE常駐の常態化してしまっている要因である。

常駐要請の心理

SEへの安心感の欠如が常駐しないといけない理由のひとつである。隣にいれば、何かあった時にすぐに指示が出せる。たとえば、サーバが止まったときにすぐに復旧させることが可能である。

対症療法の克服

隣にSEを常駐させて対応できてしまうがゆえに対処療法になってしまいがちである。本来であれば、サーバが止まらないようにすべきであり、リカバリのプランがしっかりと計画されていることが理想である。

脱属人化の施策

SE側も、すぐに復旧させられるからといった怠慢により、事前に問題や対策を考えておくといった準備を怠ってしまう。そう考えると、発注側のITリテラシーも非常に重要である。属人化しないように仕組化するにはどうするかを常に整理する意識を持つことが大切である。

まとめ

発注側は感情だけでプロジェクトを遂行すると、何かあった時に何でもSEを急かしてしまう。これによって、発注側はオオカミ少年化してしまうため、本当に急がないといけないときに対応が遅れてしまうのである。

続きを見る >