kintone

ローコード開発でDXを促進できたのか振り返ってみた

システム部門でエンジニアリングマネージャー(EM)をしている高山です。

今春で
トライステージがシステム開発の内製開発を始めて2年たちましたので
エンジニアたちがどのようにして開発にチャレンジしているのか
logを残しておきます。

弊社ではコードをなるべく書かない「ローコード開発」を
取り入れてます。

この開発スタイル、導入するときは、そこまで主流になるとは思わず
ま~、ほどほどにしようと考えていたのですが・・・
ここ1年で自然な流れで
開発の5~8割くらいが「ローコード開発」での開発となっている実状です。

ローコード開発とは


詳細は割愛しますが、超高速開発の中の一種で
ざっくり分けると
 全く開発しないもの・・・ノーコード開発
 少し開発するの  ・・・ローコード開発
として分類できると思います。

トライステージでの利用の感じも以下の分類で、世の中と大差がないです。

ローコードのツールとかプラットフォームは
他のサイトで一覧紹介をお任せするとして、ノーコードのプラットフォームとして有名なZapierやShopifyなどは、実利用も多く
非エンジニアの人の方もよく使い方を知っていて、広く普及しています。

トライステージにローコードツールの導入


始まりは、2020/3にプラットフォームの比較検討をして
2020/4にKintone導入しました。
要件にフィットしたため採用をしたのですが
コロナ前後でこの手のサービスが流行り、弊社でも時を同じくして
導入をしていたということになります。

ちょうど、ライトに使える「Webべースの表サービス」や「WebDB」の導入を考えていたところに、対応するべく企画が入り、
システム化とともに簡易的なシステムでサービス提供ができる
「何か」の導入となりました。
Airtable等々の比較検討の上、サイボウズ社のkintoneが要件にフィット
して採用をしました。

ここがトライステージでのノーコード・ローコード開発の始まりでした。

どのようにプラットフォームを使っているか

導入当初は2~3日位のコーディング量のものから始まったのですが
最近では、これ、ローコード?なの?
というような、システムを立ち上げることが多くなってきました。

なので、トライステージの主流は
スクラッチだけどローコードプラットフォームを使うというスタイルです。

使っているプラットフォームによっても異なりますが、トライステージでは以下の機能を任せてしまっているので、その分でローコードにしてます。

プラットフォームに任せているもの

サーバレスWebサーバとか、そもそもサーバ自体の管理が不要。
サーバ監視・リソース監視も不要。
DBローコード開発のプラットフォームのメインの機能。
DBで使いづらい部分もありますが
プラットフォームの制約を受けつつ利用
認証・認可・セッション管理Webフレームワークの機能を使ったとしても
開発コスト、運用コストがかかりますので
この部分だけでも、かなりの恩恵を受けています。
アカウント管理この機能もあり物を流用したとしても、システムごとにコストがかかるので、アカウント管理も地味に重要。
ユーザ権限レコード・カラム単位で制御ができるので
非常に便利です。
排他制御同時更新における排他制御は悩ませますが、
プラットフォームで楽観ロックが実装されているので、それに大人しく従います。
セキュリティ周りセキュリティ周りを外部に外だしできるのは
恩恵があります。
RESTAPI外部システムからも、RESTAPIを利用しているので
マスタをローコードプラットフォーム内に持ちたくなります。
CSS/JSのパーツ標準フレームワークとして、スタイルや機能を
提供されたリソースより利用している。
バックアップKintone自体にバックアップ自体は無いものの、別途共通化したバックアップで、自動バックアップを取っている。
レコードの履歴変更点の一覧をみることはできないのだが、変更履歴がレコード単位で保持されている。地味に便利。

独自で開発しているもの

ファイルアップロード標準機能で代用できない場合は、作りこんでいることもあり。
ファイル出力(エクスポート機能)標準のWeb画面も表形式で、CSV出力も可能なので、作らないときもある。ただ、出力内容がフィットしないときは、出力機能を作ることも多々ある。
バッチバッチ処理が必要な場合は、バッチは違うプラットフォームで、
APIで処理するような作りこみを実施。
通知メール通知などは標準の機能でもあるが、ほとんどフィットしないので通知が必要な場合は、作りこみをしている。

1年 ローコード開発をしてみてどうだったか

開発したアプリ・システム数は、大小合わせて約8個
ユーザ自身が作った表アプリが5個ありました。
約1年での数なので、月に1個くらい何かが生まれている感じです。

開発工数での比較は、(正しく取得していなく感覚値ですが)
 スクラッチで6人月程度で作成した4画面のマスタシステム
 ローコードなシステムでマスタ画面を1つ作る場合、0.5~1人月
と、従来の開発に比べて
半分くらいの工数になる感覚はあります。

ただ、その中には半年開発した大きなシステムもあり
ローコードの上で作らない方がよかったのかも・・・
と感じることもしばしばあります。
それは、ローコードは、小規模に適応というセオリーと同じです。

比較的ライトに、とりあえず作るということが可能なのですが
開発したシステムは、入口も同じでUIも似てくるので
 ・アプリ名(システム名)が超重要!
 ・アイコンも超重要!
最初に決める2つの要素なので
後々コンセプトがずれてナニコレ・・・になります。
要件定義はこの開発スタイルでも重要でした。

最後に、DXが促進できたのか、という点については
ローコードプラットフォームを導入したことで、デジタライゼーションは
しやすくなった、と纏めさせて頂きます。

関連の内容で、現場データをAPIで吸い上げる利用例などで記載します。

一緒に働くエンジニアを募集してます
少数で開発するトライステージでは、開発スピードを求めるエンジニアを募集します。

https://www.tri-stage.jp/recruit/680/
ABOUT ME
高山 和芳
高山 和芳
トライステージのシステム部門のマネージャー。 仕様検討とか調整事項を業務とすることが多い。 趣味は釣り。