

Good Linksトップ画面
Civic Forceとの出会い
2024年10月に地方自治体・中小企業支援分野の活動に関心がありABICに登録したところ、個別の面談をしたいとの連絡を受けた。この分野は業種・取扱商品・求められる職能等が多岐にわたるため、経験や希望などを聞いてもらえるとのことであった。10月11日に担当コーディネーターとの面談があり、そこで紹介されたのが公益社団法人Civic Forceの案件であった。
Good Linksシステム
Civic Forceは、誰もが相互に協力し合い、市民(Civic)の力(Force)で災害に強い社会をつくるというビジョンの下、Good Linksという物資・サービスの支援マッチングシステムを運営管理している。要は、災害などに対して、支援をしたい企業と、支援をしてほしいNPOとを有機的につなぎ、物資やサービスが円滑に流れるようにする仕組みを提供しているのがGood Linksシステムである。
依頼内容は、現行システムの利用拡大に伴いシステムの見直しを行い、サービスを改善するというものである。求人要項では、2024年10月から年度末までの業務ということであったが、私との業務委託契約では11月下旬から年度末で、その後契約は延長され2025年6月末までになった。
システム改修
Good Linksシステムは、MicrosoftのPower Apps/Pagesというローコード開発環境を使って開発されている。ローコード開発とは、最小限(ロー=Low)のプログラム記述でシステムを開発する手法である。これに似た言葉としてノーコード開発があり、これは一切プログラムを記述せずに開発を進める手法。これらに対置する手法としてフルコード開発があり、さまざまなプログラム言語を用いてシステムを開発する方法である。
例えれば、カレーライスのカレーを作るのに、ノーコードとしてはレトルトカレーで、ローコードとしては市販のカレールーを用いて、フルコードとしてはスパイスを調合して、ということになろうか。システム開発でもカレー調理でも、開発工数(=費用)と開発期間(=調理時間)を考えると、ノーコード < ローコード < フルコードの順でそれらが増えることになる。逆に、システムにおける柔軟性(=好みの調整)が弱くなってしまう。
私が依頼された実際の作業は、開発業務ではなく、Civic Force側の立場に立って、GUI(※)の再検討、開発会社との調整、改修成果物の受け入れ試験を行うのが主な役割であった。GUIの再検討では、まずは現行システムのGUIを理解する必要があるが、私はWebシステムのフルコード開発は十数年の経験があったものの、ローコード開発は未経験であった。そこで、現行システムを深く理解するために、Power Apps/Pagesで開発されたWebページと同じ内容(一部機能)を自宅サーバー上にフルコード実装してみた。これにより、Power Apps/Pagesによって生成されたコードスタイルが理解でき、フルコード実装との違いが実際的に分かるようになった。この知識は開発会社と改修内容を調整する上で有意に機能したと思われる。
(※)GUI(Graphical User Interfaceの略語)とは、コンピュータ画面上に表示されるボタンやアイコン(例えば、ごみ箱の絵)などの視覚的要素(グラフィック)に対して、マウスなどを使って直感的に分かりやすく操作できるようにした操作方法のこと。
おわりに
社内業務システムを短期間で開発するには、一般にローコード開発が有効だといわれている。Good Linksシステムはそれより汎用なシステムであるが、諸般の事情によりローコード開発を採用した経緯があり、ある程度柔軟性を犠牲にした部分があったと思われる。しかし、今回の改修でかなり汎用なシステムに仕上がったと思う。これはひとえにCivic Forceと開発会社のご努力によるものと痛感する。
ローコードでの開発現場の一端を経験する機会を与えてくれたABICのコーディネーターおよび関係者にこの場をお借りし感謝申し上げる。
ご参考:https://goodlinks.civic-force.org/
https://www.civic-force.org/index.html