その他 2021.10.01

プラムザ
自社開発でシステムを構築するためのポイント

自社開発でシステムを構築するためのポイント

 

タナベ経営・久保(以降、久保) 月額制アジャイル開発サービスを展開されているプラムザは、多様な業種のDX推進に貢献されており、タナベ経営も経営シミュレーションゲームの開発でサポートいただいております。まずは会社概要をお聞かせください。

 

内藤 1998年にウェブシステム開発会社として創業し、以降、一貫してお客さまのニーズに合わせたシステムをオーダーメードで開発しております。最近は、ご紹介いただいた「アジャイル開発」という手法を使ったサービス「PRIME ORDER」(以降、プライムオーダー)を展開。システム開発を丸ごと請け負うのではなく、お客さまが手掛けるプロジェクトメンバーの一員として参画する形でシステム開発を行っております。

 

久保 従来のシステム開発はアウトソーシングが主流でした。なぜ、社内開発に参画する方法を採られるのでしょうか。

 

内藤 お客さまと一緒にシステムを開発することが、私たちの専門領域を最大に生かせる方法だと考えているからです。プロジェクトメンバーとして参画することで、お客さまの課題やニーズにぴったりと合うシステムを開発できるだけでなく、社内のITエンジニア不足を緩和したり、当社の社員が一緒に開発することでIT人材の育成につながったりします。多面的にお客さまのビジネスのお役に立ちたいという思いが、プライムオーダーを展開する背景として挙げられます。

 

久保 アウトソーシングとの違いやメリット・デメリットを教えてください。

 

内藤 アウトソーシングと社内開発には、それぞれにメリットとデメリットがあります。例えば、アウトソーシングは開発チーム全員がプロフェッショナルですから、ベンダーが品質や納期を保証してくれます。ただ、社外の人が作るので、事業に対する理解や熱意はどうしても社員と比べて劣ります。

 

逆に、自社システムへの熱意や理解の深さは社内開発のメリットになりますし、状況の変化や社員の意見を反映しやすいなど柔軟性が高いのも利点と言えます。ただし、高度な専門知識を持つエンジニアを確保することは容易ではありません。当社のプライムオーダーは、社内開発のメリットを生かしながら、デメリットを解決できるサービスだと考えています。

 

【図表1】プラムザにおけるシステム開発の流れ

出所:プラムザ企業サイトを基にタナベ経営作成

 

 

リスクを最小化するアジャイル開発

 

久保 システム開発を成功させる上で大事なことは何でしょうか。

 

内藤 最初にご理解いただきたいのは、システム開発はとても不確実だということです。これは、社内開発する場合もアウトソーシングする場合も共通して言えることです。例えば、ビルを造る場合、まずは設計図を描いて納得できれば工事に進みます。しかし、実際できたビルを見て、「思ったより窓が小さいな」と感じたとしても、後から窓を大きくするのは大抵の場合、不可能です。

 

一方、システム開発も設計書に基づいて構築していく点は同じですが、出来上がってから「ここを変えた方が便利だな」と思えば、修正できるのが特徴です。

 

久保 それはメリットと言えますね。

 

内藤 良い面はありますが、そうとも言い切れません。実際に使ってみたら「使いづらい」「こうしてほしい」といった声がさまざまな部署から出てきますが、そうした要望に対応しすぎると、だんだんとシステムの全体像や細部にブレが生じてきます。後から修正できるが故に、不確実性が増すのです。

 

また、独自性の高い事業の場合、この世にないシステムを構築するわけですから、できるかどうかはやってみないと分かりません。やってみたら難しくてなかなか完成しないといったケースもある。そうした不確実性が伴うことを最初にご理解いただくことが、より安全で着実なシステム開発につながると考えております。

 

久保 そうした性質を踏まえた上で、アジャイル開発はどのような手法なのでしょうか。

 

内藤 アジャイル型は、近年、幅広い分野で注目を集めている考え方です。従来のウオーターフォール開発には大きく要件定義・設計・実装の工程があり、フェーズを分けて1つずつ完了させながら次に進むやり方でした。それに対してアジャイル開発は、平たく言えば作りながら考えていく手法に近い。アジャイルは「agility(機敏さ、無駄のない)」が語源と言われますが、実際にはもっと多くのエッセンスが込められています。例えば、1人で問題に対処せずにチームで問題解決に当たるのもアジャイル開発に含まれる考え方です。

 

久保 面白い考え方ですね。

 

内藤 一見すると、考えながら開発を進めることは無計画にも思えますが、チームで一緒に考えて作っていく、また、作りながら考えることを繰り返すことで完成を目指していきます。具体的には、開発途中でお客さまにシステムを触っていただきながら、感想や意見といったフィードバックを反映していきます。そうした工程を、細かいサイクルで回して精度を高めていく。システム開発は不確実性を伴いますが、小さな失敗を機敏に修正し、リスクを最小化するメソッドの集合体がアジャイル開発と言えます。