【scratch開発のデメリットとは?】開発手順やパッケージ開発との違いについても徹底解説!

scratch開発のデメリットとは?開発手順やパッケージ開発との違いについても徹底解説!

システムを開発する際には、必ず目にするscratch開発ですが、パッケージ開発の台頭により近年ではそのほとんどがパッケージ開発の製品となっています。なぜscratchによってシステム開発が行われることが少なくなってしまったのでしょうか。

この記事では、scratch開発のデメリットやパッケージ開発との違いについても詳しく解説していきます。

scratch開発とは?

scratch開発とは、既存のパッケージソフトなどを使わずに、ゼロから完全オリジナルのシステムを作り上げることをいいます。そのため、自社のニーズに沿ったシステムを作り上げることができます。

scratch開発のデメリット

scratch開発が行われなくなってきた理由には、scratchが持つデメリットも要因のひとつといえるでしょう。どのようなデメリットがあるのか見ていきましょう。

コストと時間がかかる

まずデメリットの大きな一つとしてあげられるのはコストの問題でしょう。想像していただければ分かると思いますが、既存の物を使用して作り上げるものと、全てを作り上げるのでは当然コストは変わってきます。そのため、パッケージ開発と比べた時に雲泥の差が出てしまいます。

更に問題なのが完成までの時間です。こちらも想像に易しですが、パッケージ開発がシステムを完成させるまでにかかる期間が3ヵ月から6ヵ月といわれてるのに対し、scratchは1年から3年といわれています。この完成までにかかる期間も大きなデメリットといえるでしょう。

開発者選びが重要

scratchを選択して開発会社にシステム構築をする場合、エンジニアのレベルが重要になってきます。こちらからの希望や要件を、しっかり反映してくれるエンジニアでなければ思い通りのシステムを作り上げることができません。

当然レベルの高いエンジニアは多くいます。しかし、そのようなエンジニアが必ず見つかるわけではありません。また開発会社に依頼する段階では、それを知るすべがありません。実際完成した段階で、ミスマッチが発生してしまうということもよくあります。エンジニアによって出来上がるものが違うのはデメリットになります。

失敗しやすい

この前に解説した内容と少し被りますが、単純に失敗しやすいのがデメリットです。既存のプログラムなどを使用してシステムを作り上げるパッケージ開発では、このようなことはほぼないでしょう。

開発をしていく中でも、高度なスキルと知識が必要になるscratchは、やはり完成までの工程の段階で、暗礁に乗り上げてしまったり思った通りに進まないといったことがあります。

開発に至るまでの工程で負担がかかる

ゼロからシステムを作り上げるということは、全ての機能を企業側で決定する必要があるということです。つまり要件定義にその全てを組み込む必要があるうえ、それらを開発会社へ正確に伝える必要があります。初期段階に行われる打ち合わせでの、企業側の負担は思ってる以上に大きくなるでしょう。

scratch開発の流れ

ここまでscratch開発のデメリットについて解説してきました。では実際の開発手順とはどのような流れになるのでしょう。簡単に解説します。

基本的な流れは、他のシステム開発と変わりません。流れ的には基本的な計画と要件を詰め込んだ要求仕様を確定していきます。先ほども言いましたが、工程の中ではここが一番重要になってきます。scratchでシステムを開発して行く場合、この要求仕様が全てになるので、これに合わせてエンジニアは開発を進めていきます。もししっかりと詰めた話やあいまいな要求仕様だと、完成品は間違いなく納得のいくものには仕上がらないでしょう。

それに従って、各ポジションで設計を行い実際に開発へと入っていきます。その後、各機能のテストを行いリリースという形になります。

基本的な流れはこのような感じになりますが、始めの段階でしっかりと情報を理解し共有しなければ、完成したあとに改善しなければいけなくなり余計なコストと時間を費やしてしまうので気を付けなければいけません。

scratch開発とパッケージ開発はどう違う?

まずパッケージ開発がどのようなものなのかを知る必要があります。パッケージ開発というのは簡単に言えば、すでにあるシステムに、必要な機能を付け足すことによってシステムを開発していく方法になります。そのため、時間的にもコスト的にもscratchより優れていることになります。

またscratchと違い、あらゆる知識に精通する高度な技術をそこまで必要としません。一定のスキルを持ち合わせていれば開発していくことが可能になるので、失敗するリスクを負うことなく開発を任せられるでしょう。

このように全くの真逆の性質を持つ2つの開発方法になります。最近ではあらゆる面を考慮したうえでパッケージ開発を選択する企業が非常に多くなっています。

scratch開発の失敗事例

ここからは、scratch開発を選択したことによって起こってしまった失敗事例をいくつかご紹介したいと思います。もちろん頻繁にこのようなことが起こるのかといえばそうではありませんが、scratchが持つデメリットによって起きてしまった事例になります。

前述してきたように、scratchには注意しなければいけない点がいくつか存在します。それらを怠慢にしたためにさまざまなことが起きてしまうわけです。

それでは実際にどのようなことが起きてしまったのか見ていきましょう。

希望通りの完成品ではなかった

これは事前準備ができていなかったがために起きてしまった失敗事例です。先ほども解説した通り、scratchの開発の工程において一番重要な工程は要求仕様です。このケースの場合その要求仕様を、開発会社と意思疎通が行き届くまでしっかり行わなかったために、完成したものが思っていたものと全く違うシステムに仕上がってしまい、そこから完成まで更に6ヵ月間の期間を要し、余分なコストもかかってしまったということです。

これにより、企業側も大幅な予定の変更を余儀なくされ、大きな損失に繋がってしまいました。

知識不足によりコストが膨れ上がった

scratch開発は全ての機能をゼロから実装していくため、コストが高くつくことは説明してきました。これは、実装する機能一つひとつにコストがかかるため、その量によってコストはかさんでいくことになります。

このケースは実装する機能の金額を把握していなかったが耐えに起きた事例です。さらに実装する機能によってはエンジニアの数も増やす必要があり、それによる人件費もプラスになります。それらを見誤ったことにより、当初予定していた開発費用よりも高くついてしまい、実装したかった機能をあきらめてしまったということです。

特にscratch開発の場合、ある程度の知識を持っていなければこのような事例が起きてしまうことが多々見受けられます。依頼側も知識がなければおいおいトラブルになってしまいます。

追加要件を伝えたことで開発中止に

このケースはある医療機関で起きた事例です。依頼側と開発会社の認識のずれが引き起こしたケースになり、今回のケースでは開発が注意になったうえ、裁判にまで発展してしまった最悪のケースです。

本来依頼側というのは、余計なコストをかけないためにも厳しい納期を要求することがあります。もちろん開発会社側も、それを承知で依頼を受けるわけですが、今回の場合はそれに加えて、追加の要望が1000以上も寄せられたということです。それに対応しきれなくなった開発会社は、開発を中止。それを不服とした依頼側はそれを不服とし提訴をするまでに至ったということです。

このように、scratch開発は時間が非常にかかるためこのようなことが起こってしまうわけです。

scratch開発はもう時代遅れなのか

これまでさまざまな角度でscratch開発についてご紹介してきましたが、実際scratch開発のように、時間やコストがかかる開発方法は今の時代には合わないといわれています。

今回の記事の中でもあげましたが「パッケージ開発」や、開発に必要なプログラミングの知識がなくても開発ができる「ノーコード開発」、誰でも気軽に始めることができる「クラウド開発」など、多くの開発方式が誕生し人気を集めています。

それらの開発方式と比べると、デメリットが多いscratch開発は古い様式に感じられ、時代遅れというように、とらえられてしまうのかもしれません。

まとめ

この記事では、scratch開発のデメリットや失敗事例について解説してきました。今回ご紹介してきたように、scratch開発は「ノーコード開発」、「パッケージ開発」、「クラウド開発」と比べてしまうと、多くの面で見劣りしてしまいます。そのため、すでに時代遅れではないかという意見も出ているほどです。

とはいえ、scratchにもメリットはあり、現在もscratch開発を利用してシステム開発を行っている企業はありますので、企業のニーズに合わせて開発方法を選ぶことをおすすめします。

Leave a reply:

Your email address will not be published.