Knowledge/Culture
一覧へ戻る

「ローコード開発」始めてみませんか?

タグ
  • システム開発
  • サステナビリティ
目次

はじめに

近年、さらなるシステム開発の効率化を目指して「ローコード開発」という手法が注目されるようになりました。
「ローコード開発」とは、簡潔に述べると「人が記載するソースコードの量を可能な限り少なくしてシステム開発を行う」手法です。
今回は、新卒入社から3年間営業を担当した後、技術部門に異動した私が、ローコード開発を経験しながら学んだことをご紹介いたします。私のような未経験者であってもシステム開発が行える、といったことがこの記事を通して皆様に伝われば嬉しいです。

ローコード開発の前に ー システム開発とは?

「ローコード開発」の話を始める前に、「そもそもシステム開発ってどんなもの?」について、2点、お話ししたいと思います。

システム開発とは

①ソースコードとプログラミング言語

世の中には多種多様な(コンピューター)システムが存在していますが、どの様なシステムであっても、処理が行われる裏には「ソースコード」があります。「ソースコード」とは、プログラミング言語を用いて、プログラムにどんな処理をさせるかを記載したテキストのことです。
(プログラミング言語とは、人間がコンピューターに伝えたいことがあるときに用いられるコンピューター専用の言語です。)
プログラミング言語はコンピューターの種類や作りたいシステムによって使いわける必要があり、C言語、C++、C#、Java、JavaScript、Ruby、Python等・・・たくさんあります。(多い・・・)
言語によって、利用される分野やできることが異なるだけでなく、それぞれソースコードの記載方法(文法に近いですかね?)も異なるため、一つひとつ専門的に勉強する必要があります。

システム開発では、「どんな画面で、どんなデータを入れて、どんな操作がしたいのか?」等を、全て、ソースコードとして人間がプログラミング言語で書いていきます(=開発する)。全て一から書いていくので、非常に手間が掛かりますし、それ以前にプログラミング言語の勉強に多くの時間が発生します。

ソースコードとプログラミング言語

②システム開発手法

実際のシステムは上記の通り、ソースコードを記述することで作られますが、システム開発全体の流れとしては、ソースコードの記述の前に、要件定義、設計といった工程があり、実際の開発(製造)の工程の後、テスト(動作検証)、リリースの工程を経て、システムが利用されることになります。開発手法の代表的なものを二つご紹介いたします。

ウォーターフォール開発

システム開発手法の中でも最も一般的と言えるかもしれません。
その名前の通り、水が上から下に流れるように、決められた作業工程を一つひとつ順番に遂行していく手法です。大きく分けて、要件定義、設計、開発(製造)、テスト、リリースの工程から構成され、どんなものを作るか全て事前にきっちり決めてから始めます。
「事前にきっちり決めて」がポイントです。この「きっちり決め」た範囲に対し、各工程を順次進めていきます。
※対象範囲に対し要件定義が全て完了したら、次工程の設計に進む・・・といった流れ

Wterfall
アジャイル開発

アジャイル開発は、スプリントと呼ばれる数週間程度の開発単位ごとに開発を繰り返して遂行していく手法です。
どんなものを作り上げたいか、大枠だけを予め決めた後、リクエスト(要件)に優先順位を付けて、優先度の高いものから小規模な開発を繰り返して進めていきます。要件の変更にも柔軟、且つスピーディーに対応できるのが特徴です。「とりあえず簡易版でもよいから動くものを見ながら進めたい」という場合には、アジャイルが適しています。

一方で、何を優先して開発していくかは随時変更しながら進めることになるため、完成時期が見通しにくい場合があります。
決まった期日までにリリース必須なシステムを開発する場合は、ウォーターフォール型の方が適しているかもしれません。

Agile

ローコード開発とは

ここで本題の「ローコード開発」についてお話ししたいと思います。
前章でご紹介した通り、従来型のシステム開発の場合、プログラミング言語を用いて全てのソースコードを人間が記述します。作業量は膨大ですし、プログラミング言語も時間を掛けて学習しなければなりません。システム開発未経験の私のような人にとっては、かなりハードルが高い話です。

従来型のシステム開発とローコード開発の違い

  • 人間がソースコードを書いて開発する部分をできる限り減らして、代わりに機械にソースコードを記述してもらう
  • 機械に記述してもらうソースコードの元になる情報は、人間がGUI(Graphical User Interface:アイコンをマウスで動かす等視覚的に操作できる)で伝える
従来型のシステム開発とローコード開発の違い

大部分をGUI(マウス操作)で開発しますので、プログラミング言語をマスターできていなくても、ある程度開発できるのが嬉しいところです。
全ての処理をGUIのみで開発することは難しく、複雑な処理などは引続き人間がソースコードを記述する必要がありますが、それでも大半の処理はGUIで開発することが可能です。

従来型の開発ではソースコードを人間が記述する分、ミス(バグ)も発生します。ミスはテストの中で発見されますが、これを修正し、再度テストを行うので手間が掛かります。ローコード開発では、人間がソースコードを記述する部分を減らすことで、人的ミスの発生しうる作業自体が削減されるので、修正に掛かる手間(時間・工数)を削減することができ、システムの品質UPにもつながります。
また、ローコード開発だとGUI操作のみで開発が短時間で進められますので、簡易版を作ってみることが容易になります。「とりあえず簡易版でもよいから動くものを見ながら進めたい」場合、アジャイル型開発手法を採り、ローコードでの開発を進めることで、変更され得る要件にもスピーディーに対応することが可能となり、システム開発の効率をより上げることができます。

ローコード開発をやってみる!

ローコード開発だと「GUIで開発できて便利!」と書いてきましたが、気になるのは「本当にそんなに簡単にできるの…?」という点ですよね。
実際のローコード開発の流れを動画でお見せしたいと思います。

今回は、案件管理のWebアプリケーションを開発するデモ動画を用意してみました。Excelで管理していた提案情報等のデータを読み込み、Webアプリケーション上で情報の更新や追加ができるようにするものです。
利用したのは、ローコード開発プラットフォームのOutSystemsです。プログラミング言語は一切使用せず、ドラッグアンドドロップや、通常の文字入力のみでアプリ作成が完了することを確認いただければと思います。

※OutSystemsとは
2001年にポルトガルで設立されたOutSystems社のローコード開発プラットフォームです。
人間がよく行う作業を学習したAIが開発をサポートしてくれるので、より迅速なアプリケーション開発ができるようになります。 

如何でしたでしょうか?
新卒入社して3年間営業担当で、プログラミングは研修で少し勉強しただけの私でも、新たにプログラミング言語の勉強をすることもなくアプリケーションを作れるようになりました!

まとめ

今回は、そもそもシステム開発とは何か?や、ローコード開発はこれまでのシステム開発とどう違うのか?など、技術部門へ異動後に私が学んだことを振り返りながらお話しさせていただきました。システム開発、というと難しいプログラミング言語を駆使して山のようなソースコードを書かなければならないというイメージをお持ちの方も多いと思います。私自身も営業部門にいた頃に受けたJava研修で、簡単なプログラムであってもソースコードを書くのに苦労した記憶があり、漠然とシステム開発は大変というイメージを抱いていました。そのため異動後ローコード開発プラットフォームを使用してみて、プログラミング言語を使わずに簡単にアプリケーションを作成できることに大変驚きました。

DXが加速しシステム開発においても柔軟でスピーディーな対応が求められる中、企業では「システム内製化」の動きも進んでおり、専門的な知識が無くとも簡単なアプリケーションであればスピーディーに作成できるローコード開発は、今後の強力な武器になると思います。
皆さんも「ローコード開発」始めてみませんか?

三井情報は、今回のデモ動画で使用したOutSystemsでの開発方法論の整備を行っており、開発実績もございます。
ローコード開発にご興味をお持ちいただけましたら、お気軽にご問い合わせください。

関連ページ

おすすめコラム:
ノーコード/ローコード開発への取り組み
クラウド複合開発 by アジャイル

執筆者

伊丹(写真左)
ソリューション技術本部 基幹ソリューション技術部 第一技術室
OutSystemsを用いたローコード開発案件のプリセールスや開発手法の標準化を担当

山田(写真右)
ソリューション技術本部 基幹ソリューション技術部 第一技術室
営業職を経験後、現在は、OutSystemsを用いたローコード開発案件に従事

コラム本文内に記載されている社名・商品名は、各社の商標または登録商標です。 本文および図表中では商標マークは明記していない場合があります。 当社の公式な発表・見解の発信は、当社ウェブサイト、プレスリリースなどで行っており、当社又は当社社員が本コラムで発信する情報は必ずしも当社の公式発表及び見解を表すものではありません。 また、本コラムのすべての内容は作成日時点でのものであり、予告なく変更される場合があります。

Downloads

製品・サービス / 事例等の
各種資料はこちら。

Contact

三井情報への各種お問い合わせはこちら。