はじめに
インターネットを見ているとノーコード・ローコード開発というのが注目されているように思われます。
そんな中で、有償のローコード開発ツールを使ったハッカソン(個人開発)のようなものがあり、ローコード開発をする機会がありました。その開発の中で感じたことを書いていこうと思います。
- 初めてローコード開発をしたため他製品との比較はできていません。
- 今回使用したものが企業・官公庁向けだったためOSSと比べて使用ときの感想が異なる可能性があります。
システムの特徴
先に今回使用したローコード開発ツールの特徴を挙げておきます
- Webサイト・業務アプリの作成をブラウザからできる
- テストと本番環境が用意され安全に検証が可能
- サービスの公開が迅速かつ簡単に行える
- データの収集から活用までが簡単
- 高いセキュリティが確保されている
- 第三者による脆弱性診断で最高評価「A」を取得している
- 法人や官公庁にも採用されている
- 柔軟な開発
- HTML、CSS、JavaScript、PHPによるコーディングも可能
- APIを使った外部システムとの連携も可能
- システムを作る際にデータベースの構造から作る
- システムの構築・運用をこのローコードツールを提供する企業に対してアウトソースもできる
利点・不便な点
システムの特徴にあるようにWebサービスを簡単かつ早くに作ることができた点は非常に大きな利点だと思います。
例えば開発事例として普通の開発だと2~3ヶ月くらいの所をこのツールで1週間以内に作成したという話があるようなので開発速度はとても早くできることが分かると思います。
実際に試してみましたがとても早く開発を進めることができました。
しかし、不便な点を挙げるならインターネット上にある情報量が少ないことだと思います。
元々個人向け製品で無いため情報共有がされないというのは当たり前ですが、操作方法や、やりたい機能を実現させるためのやり方を調べようにも公式が出しているナレッジサイトしか情報がなかったのでこの点については大変でした。
また、ローコード開発ではあったもののエンジニアに求められるような知識は必要であったので開発を進められる人が限られるのではないかと思いました。
データベースから作る仕様であるためデータ構造(テーブル構成)の知識だったり、デザインを工夫したいなら普通にWeb開発するときのようなコーディングをするのが必須な点が理由です。
(ノーコードではなくローコードツールなのでエンジニアの知識が必要なのは当たり前なのかもしれません)
結論
以上のことからローコード開発をする前にツールを選ぶ段階で考えるべきことは以下の事柄なのではないかと考えます。
- ローコード開発ツールを使う意味は何かを考える
- ツール固有の知識が必要となるためツールの学習コストがかかる
- ナレッジの蓄積はツール固有となるため広く利用はできない
- 製品と開発するシステムとの相性問題を考える
- 情報量のチェック
- 場合によってはアウトソーシングを検討する
ローコード開発ツールを使う意味については、どんなにローコード開発ツールが便利になってもそれを支える技術はコーディングなどの従来の知識です。ちゃんとしたメリットや理由がないのであれば地道にコーディングをしてエンジニアの知識を高めた方がいいと思います。
それと、製品と開発するシステムとの相性というのも考える必要があるかと思います。頭の中ではできていても製品によっては実現できない、又は開発コストが高くなるので検討が必要です。(私も一部機能の実装が出来なかったので…)
必要性を検討し、使用していくなら情報量のチェックは重要です。
OSS系なら多分情報量は多いと思いますがサポート等はないので会社で使用するならその辺りも検討するべきです。またサポートのある有償のものを使うという場合は情報量は少ないと思われます(実際そうでした)。場合によってはアウトソーシングができるようなところにして任せるのも一つの手段だと思います。
さいごに
今回のイベントに参加することで、ローコード開発ツールを使用することのメリットと課題が体験できたのはよい経験になりました。
ローコード開発ツールは開発元がサービスを終了すれば移行が必要になる。ツールの知識を再利用するのは限定的など利点だけではないです。会社やエンジニアとして必要なものであるか良く考えてから利用しましょう。
それでもエンジニアの人も一度使ってみてから、どんな仕事が代用出来て、出来ないのかを考えてみると必要となる知識や経験が再認識できていいかもしれません。
誤り・意見・その他何かあればコメントお願いします。
最後まで見ていただきありがとうございました。