2018.09.20

ローコード開発とDevOpsが奏でる素敵なハーモニー(前編)

河原﨑剛
OutSystemsジャパン株式会社
ソリューションアーキテクト
このエントリーをはてなブックマークに追加

OutSystemsジャパン株式会社 ソリューションアーキテクトの河原﨑 剛と申します。
今回のコラムでは最近脚光を浴びつつある「ローコード開発」をテーマとして取り上げ、DevOpsの実践においてローコード開発がどのように貢献できるかを見ていきたいと思います。

ローコード開発とは?

ローコード開発(プラットフォーム)とは「ソースコードを書かずにアプリケーションを高速開発するためのプラットフォーム」です。「ローコード開発」という言葉は比較的新しく、2014年にForrester社がソフトウエアを分類するためのカテゴリとして使用したのが始まりです。

それ以前にも、CASEツール、4GL、RAD、MDA・・などアプリケーション開発の生産性を高める試みがありましたが、モデルに基づきアプリケーションを自動生成するという点はローコード開発も同様です。しかし、ローコード開発の場合、以下のような点が過去のツールとは異なります。

  • 開発可能なアプリケーションの自由度が高い(必要に応じて細かな拡張が可能)
  • 単なるソースコードジェネレーターではない(ロジック・UIを含めたアプリケーション全体の自動生成&ラウンドトリップ開発が可能)

ローコード開発のメリット

ローコード開発を採用するメリットとは何でしょうか?

通常のシステム開発では、「開発アプリケーションの80%は似たようなコーディングパターン、ロジックの使いまわしで実現できる」というのが実感だと思います。残りの20%こそがアプリケーション毎に異なる部分であり、ローコード開発を利用すると、開発者はこの20%に注力することができます。

コーディングや複雑な設定を極力減らし、アプリケーションの大部分を自動生成するため、開発者は個別のシステムに特有なUI・ロジックの実現に専念可能です。結果として、高品質なアプリケーションをより多く開発することができます。

つまり、ローコード開発とは、開発者を単純な労働作業から解放し、より付加価値の高い活動に専念させてくれるプラットフォームといえます。このようなローコード開発の主な特徴・メリットを以下に示します。

システム開発リスクの低減、生産性・品質の向上

コンポーネントを活用したビジュアル開発により、設計から短期間で実際に動くアプリケーションを構築可能です。手作業のコーディングを行わず、アプリケーションを自動生成するため、低レベルなバグの混入を防ぎ、プログラム全体の品質を上げることができます。

ビジネスに貢献するシステム・ITの実現

業務要件を素早く形にして、短期間でアプリケーションを構築できます。システムリリース後もユーザのフィードバックを取り入れ、アプリケーションの改修・改善を高速に行うことができるため、ユーザ満足度・ROI・ビジネス上の効果が高まります。

システム開発に必要なリソース不足問題の解消

システム開発・運用上のボトルネックを解消し、生産性を上げることができるため、開発者・リソースを効率的に配置・活用できます。特定のプログラム言語・スキルセットに縛られないモデルベース開発がメインとなるため、人材を確保・育成しやすいというメリットがあります。

ローコード開発プラットフォームの例(OutSystems)

ここで、ローコード開発プラットフォームの一例として、OutSystemsという製品を取り上げます。OutSystemsは2001年にバージョン1がリリースされ、ローコード開発の分野で18年の実績を持つ老舗のソフトウエアです(もっとも、18年前はまだ「ローコード開発」という言葉が存在しませんでした)。

OutSystemsを利用すると以下の図のようなWebアプリケーション/モバイルアプリをハンドコーディングと比べて数分の1の時間で作成できます。UIだけではなく、バックエンドのロジック、DB連携、外部システム連携もすべてノンコーディングで作成可能です。


180905_outsystems_01.png

OutSystemsはツールの使いやすさ、痒い所に手が届く拡張性の高さで評価されており、すでに1,000社以上の企業がOutSystemsを利用しています。GetApp、Capterraのようなレビューサイトでも、世界中のエンジニアから「開発分野のゲームチェンジャー」「人生が変わった」と高評価を得ています。これまで述べたようなローコード開発のメリットに加えて、OutSystemsには以下のような特徴があります。

  • 異なる種類のアプリケーション(Webシステム、iOS/Androidアプリ、Webサービス)をすべて同じツール上で同じスキルセットのみで作成できる。
  • 開発と運用の両方をサポートしている(性能・セキュリティーを考慮したアプリケーション自動生成、ワンクリックデプロイ&依存性チェック、運用時の利用状況・パフォーマンス分析、デプロイAPIを利用したJenkinsやテストツールとの連携 など)。


180905_outsystems_02.png

ここまでローコード開発について説明してまいりました。このようなプラットフォームを利用することで、開発と運用のサイクルをより円滑化・高速化することができます。次回は、いよいよテーマの核心である「DevOpsとローコード開発が創り出す新世界」に踏み込んでいきたいと思います。


関連リンク
ローコード開発とDevOpsが奏でる素敵なハーモニー(後編)
アプリケーションの開発と運用、大変じゃないですか?

この記事の著者:河原﨑剛

OutSystemsジャパン株式会社
ソリューションアーキテクト

複数のシステムインテグレーター・ソフトウエア企業でSE・サポート・テクニカルコンサルタント・プリセールスを担当後、
2018年 OutSystemsジャパンに入社。
この18年間、一貫してJava関連のシステムに関わってきたが、日本企業、ヨーロッパ企業、大・中規模、ベンチャーと
様々な企業で働くことができたのが貴重な経験。現在はOutSystemsというポルトガルの会社で新たなイノベーションを目指して奮闘中。


DevOps Hubのアカウントをフォローして
更新情報を受け取る

  • Like on Feedly
    follow us in feedly

関連記事

このエントリーをはてなブックマークに追加

お問い合わせ

DevOpsに関することなら
お気軽にご相談ください。

Facebook、TwitterでDevOpsに関する
情報配信を行っています。