Japan
サイト内の現在位置
「ローコード開発」を使いこなす!
官公庁向けシステム開発コラム 第2回
お客様との共創を実現するローコード開発の伝道者が
開発手法の使い分けから製品選定まで詳しく解説!
本記事は、エンジニアではない方でも「ローコード開発」について理解し、活用推進できるようになることを目指した全3回掲載のコラムです。第2回となる今回は、目的にあった開発手法や製品の紹介などを解説しました。
「ローコード開発」の導入検討をされる方、必見の内容です。
INDEX
お客様との共創を実現する
ローコード開発の伝道者が詳しく解説します!
──システム開発にスピードや柔軟性が求められる中、要件に合わせてゼロから作るだけではなく、
極力コーディングを行わないローコード・ノーコード開発やSaaS、パッケージ製品の利用など様々な選択肢が広がっています。
それらの使い分けやローコード開発の位置付けをまずは教えていただけますでしょうか。
清宮
システムの利用者視点で見ると、システム導入のためのさまざまな選択肢が提供されています(図1)。
例えば、多くの組織で共通する定型業務の場合、SaaSやパッケージ製品が豊富に用意されていますのでそもそも自分たちで独自に作る必要はない場合もあるでしょう。時間をかけずに業務を効率化したい場合は、コーディングを必要としないノーコード開発ツールを使って内製化を行うこともできるようになってきました。
また、ある程度大きな規模のシステム開発であっても、極力コーディングを行わず、用意されたテンプレートや処理部品を組み合わせることで開発を行うローコード開発プラットフォームが様々な用途で利用可能になっています。これらの開発手法を選択する際は、「ゼロからつくる」をいかに減らして効率的に自分たちの要件を満たすことができるかという視点で考えると良いでしょう。
まずは市場にあるSaaSやパッケージ製品を利用できるか。次にローコード開発やノーコード開発で素早く開発できるか。その際、システム導入によって、具体的にどの部分が効率化できるかも検討します。それらが難しい場合は、自前でゼロから構築することになります。
さらに近年では、市場の変化に迅速に対応するため、シチズンデベロッパーと呼ばれる非技術者のエンドユーザーや事業メンバーがシステム開発に参加するようになってきました。シチズンデベロッパー自身がシステムを内製化することやIT技術者とシステムを共創することで、現場のニーズに合わせてシステムを素早く変更させる事ができます。そういった場合、シチズンデベロッパーがシステム開発に参加しやすいローコード開発やノーコード開発を選択すると良いでしょう。
──スピードや柔軟性をシステム開発に持たせるには共創や内製化が求められているのですね。その2つの違いについて、もう少し詳しく教えていただけますでしょうか。
清宮
前述の通り、技術の発展により非技術者であるシチズンデベロッパーが開発に参加するということが可能になってきましたが、その中で重要になるのが内製化と共創という考え方です。これについて、日曜大工と家づくりを例に考えてみます(図2)。
シチズンデベロッパーが行うシステムの内製化とは日曜大工のようなものです。日曜大工を支援するツールは世の中にたくさんあり、棚や椅子、頑張れば物置だって自作することができます。しかし家づくりになると、日曜大工の延長では膨大な時間と労力と根気が必要で現実的ではないでしょう。また、家の形が完成すれば良いというものではなく、断熱や防音など暮らしの質に関わる考慮や、耐震や防火のような安全に関わるものなど、人が住むためのさまざまな対応が必要になります。これはシステム開発で言えばセキュリティや非機能要件に当たる部分です。
また、家を建てる際の基礎工事は、非技術者ができるものではありません。これはシステム開発で言えばインフラ設計やデータモデル設計が該当します。自分たちの意見を伝えながら家本体の構築はプロの大工が行い、完成した家に日曜大工で自分好みの手を加えていく。これが共創という考え方です。
この考え方をシステム開発に当てはめるとどうでしょうか。内製化は、数時間や数日で作れるような軽いもの、そして失敗しても致命的な問題にならない範囲のものが適します。一方、規模が大きくて複雑なものや、失敗に対して責任が発生するもの、安全や安心・品質が求められるもの、これは専門家と協力した共創が必要です。
シチズンデベロッパーの技術や内製化の体制にもよりますが、内製化する場合はノーコード開発、共創の場合はローコード開発と使い分けるのがよいかと思います。
──様々な開発の選択肢があり、それぞれの位置付けを理解することができました。
そんな中、ローコード開発プラットフォームも多くの製品がありますが、どのような場合にどのような特徴をもった製品を選べばよいのでしょうか?
清宮
ローコード開発プラットフォームは様々な製品が登場していますが、その中でもここではアプリケーション開発を対象としたローコード開発プラットフォームについてお話します。アプリケーション開発を対象としたローコード開発プラットフォームは、特定の用途に強みを持つ特化型と用途を限定せずに幅広く活用できる汎用型の2つに大別できます。
特化型のローコード開発プラットフォームは、例えば顧客管理(CRM)や営業管理(SFA)、ECサイトや電子申請のような特定の用途に対する独自のテンプレートを持っており、そのテンプレートを目的に合わせて部品を組み合わせるようにカスタマイズをすることができます。ある程度作りこまれたテンプレートを活用することで、迅速なシステム導入を可能とするのが特化型のローコード開発プラットフォームの特長です。
一方、汎用型は、特定のテンプレートを基本とするのではなく、テンプレートも含めたシステム全体をローコードで効率的に開発することができます。様々な粒度の開発部品を柔軟に組み合わせることにより、幅広い要件に対応できます。特化型はパッケージ製品をベースとしたローコード開発プラットフォーム。汎用型は開発環境をベースとしたローコード開発プラットフォームと考えるとわかりやすいかもしれません。
──特化型と汎用型の使い分けをもう少しわかりやすく教えていただけますでしょうか。
清宮
それでは先ほどと同様に家づくりに例えて特化型と汎用型のローコード開発プラットフォームについて考えてみます(図3)。
最近は家づくりでも大手住宅メーカーを中心に規格されたパネルや部材を組み合わせて構築するプレハブ住宅のようなものが増えています。従来の工法に比べると自由度は下がりますが、品質が均一化され工期が短くなってコストが下がるという効果があります。これはシステム開発で言うフルスクラッチ開発とローコード開発の対比と同様です。
ではその中で特化型と汎用型はどのような違いがあるのでしょうか。これは、特化型は建売住宅、汎用型は注文住宅と考えるとわかりやすいでしょう。特化型はあらかじめ製品に用意されているテンプレートを活用して自分たちの好みにカスタマイズをします。建売住宅は、すでに設計された家を購入しますので基本的な家のつくりはすでに決まっています。その上で壁紙や床材の変更、仕切りの追加による部屋数の変更が可能です。
一方、注文住宅の場合は家そのものを建築会社とお客様で話し合いながらゼロから作り込むことが可能です。重要なのは建売住宅の場合、『すでに設計されている家に対して生活スタイルを合わせる必要がある』ということです。例えば多くの建売住宅の場合、両親と子供一人か二人の家族構成を想定したつくりとなっています。そういった家族の場合は、自分たちの生活に合った住宅を選び、効率的に家を手に入れることができます。
しかし、二世帯住宅や住宅の一部を事業用に使いたいという場合は、建売住宅で売っていることは少ないため、『自分達の要望にあわせて家を作れる注文住宅を選択する必要がある』と思います。この考え方は、システム開発も同様です。特化型を選択する場合は、提供するテンプレートに業務を合わせる必要があります。
例えば、これから新たに行う業務で利用する場合、業務プロセスをテンプレートに合わせることもできると思います。また、既存業務であっても業務プロセスの見直しを同時に行いたい場合はシステムに合わせることも考えられると思います。こういった場合は特化型を採用することで効率的にシステム導入ができます。
一方で既存の業務システムを作り直すが、業務のフローや手順、システムの使い勝手は変えたくないという場合、業務に合わせてシステム側を作り込まなくてはいけません。また、特殊な業務要件の場合はテンプレートが存在しない事もあります。こういった場合は、汎用型を採用することで自分たちの業務に合わせて柔軟にシステム導入をすることができます。「システムに業務を合わせるか」、「業務にシステムを合わせるか」が特化型と汎用型の使い分けのポイントです。
──ローコード開発プラットフォームの使い分けについて理解できました。
このようにお客様側では多様なローコード開発プラットフォームを使い分ける必要がある中で、官公庁のお客様向けにNECではどのようなご提案をされているのでしょうか?
清宮
これまでも我々は様々な特化型のローコード製品をお客様の要望に合わせて使い分けて活用してきました。また、ローコード開発プラットフォームが適用できない領域では要望に合わせて『ゼロから作る』という対応を行ってきました。しかしながら、昨今ではシステム導入のスピード感や柔軟性の重要度が増してきており、これまで『ゼロから作る』で対応してきた領域に対してもローコード開発の強みが求められるようになっています。
そのため、我々はこれまで提供している特化型ローコード開発製品のラインナップに加えて、汎用型のローコード開発プラットフォームであるMendixの提供も開始しました。官公庁のお客様ではシステムの利用用途がお客様特有である場合や、大規模で複雑なシステムの場合も多くあります。そのため、様々な機能要件や非機能要件に対応することが必要であり、汎用型ローコード開発プラットフォームの活用場面が今後広がると考えています。
──汎用型ローコード開発プラットフォームが求められる中、NECではMendixの取り扱いを始めたとのことですが、Mendixとはどのような特長を持った製品なのでしょうか?また、Mendixが行政システム開発に適すると考えたポイントを教えていただけますでしょうか。
清宮
Mendixは事業部門とIT部門が一体となって開発を行うことをコンセプトとした汎用型のローコード開発プラットフォームです(図4)。日本国内ではまだ広く浸透していませんが、すでに全世界では4000社以上の企業や組織で活用されており、内製化が広がるグローバル市場では高い評価をされています。日本国内においても、事業部門が開発に加わる共創が広がりを見せてきたことから、今後幅広く活用されていく注目のローコード開発プラットフォームの一つです。
Mendixが行政システム開発に適すると考えたポイントは大きく2つあります。
一つ目はデザインや機能要件への柔軟な対応が出来ることです。Mendixでは、実際に構築される画面デザインを表示しながら、そのデザイン上にドラッグアンドドロップで部品を追加し、組み合わせていくことで開発を進めます。開発部品には、粒度の異なる様々なテンプレートや部品が用意されており、指定の要件に合わせた柔軟な作り込みが可能です(図5)。デザイン面ではAtlas UIというフレームワークを採用しており、ユーザーフレンドリーで直感的に操作ができ、異なるデバイスで表示した場合でも一貫性を実感できるようなアプリケーション開発が可能です。
これらの機能により、熟練した開発者でなくても、利用者の使いやすいアプリケーションを用途に合わせて素早く柔軟に開発することを可能としています。また、Mendixは開発した部品やアプリケーションを共有・再利用する仕組みが備わっています。例えば、行政システム特有の部品やテンプレートをIT部門やベンダーが開発し、共有および蓄積することで、個々の組織に合わせて開発の生産性を上げていくことも可能です。
2つ目は、用途に合わせて選択できる2つのインフラ環境構成が取れるということです。Mendixでは利用者の非機能要件に応じて、クラウドベースのインフラ環境も含むMendix Cloudと、利用者自身で用意したインフラ環境(プライベートクラウドやオンプレミス含む)が活用できるMendix for Private Cloudの2つから選択することができます。(図6)
官公庁で利用するシステムでは安全性に配慮して、プライベートクラウドやオンプレミスを採用することもあります。用途に合わせて選択できることは大きなメリットになると考えています。これを生かして状況に合わせて最適なデプロイ先を切り替えることで、環境変化に柔軟に対応することも可能です。
例えば、小さくリリースして将来的に拡張して行く場合には、まずはMendix Cloudでアプリケーションを素早く構築し、システムが成長し、複雑化するのに合わせてMendix for Private Cloudへ置き換えていく、もしくは現状はオンプレミスで使っているが、将来的にクラウドに移行して行きたい場合には、Mendix for Private Cloudでオンプレミス上に環境を構築してからMendix Cloudに移行するというようなことも可能です。
行政システムにおいては、各省庁がそれぞれの分野において無二の役割を果たしていることもありますので、市販されているサービスやテンプレートがそのまま使えないケースが多くあります。様々な住民が利用するようなシステムでは、使い勝手の良いデザインやアクセシビリティも求められます。インフラ面に関しても、官公庁の業務は多岐に渡るのでシステムの規模が大きく複雑化することも多くあります。セキュリティや非機能など要件に応じたきめ細かい対応も必要です。そのため、機能・非機能面で柔軟に対応ができるMendixは、行政システム開発において活用できるシーンが幅広くあると考えています。
関連するサービス
第3回コラムでは、ローコード開発導入における課題とNECの提供価値に迫ります。
乞うご期待ください。
行政DXに役立つ「ローコード開発」について、わかりやすく解説した全3回のコラムです。
合わせてぜひお読みください。
解説者紹介
清宮 晨博
きよみや しんぱくNEC
クラウド・プラットフォームソリューション統括部
ササービス開発グループ
茨城県つくば市出身。2022年7月にキャリア採用にてNEC入社。前職では金融・公共向けの様々なITサービス事業や製品事業に従事。現在は官公庁領域を担当する新事業開発チームに所属し、国民・住民の生活をより豊かにできる社会的価値の大きなサービス事業の開発を目指している。その活動の一環で、迅速且つ継続的な価値創造を実現するローコード開発に魅力を感じ、ローコード開発CoEの推進メンバーとしても活動する。