Slide 1

Slide 1 text

それでは、Oracle APEX、アイデアからアプリケーションへ、光の速度で実現する環 境、と題しまして、 オラクルが提供するローコード開発プラットフォームである、Oracle APEXの紹介を させていただきます。 1

Slide 2

Slide 2 text

本セッションのアジェンダになります。 最初にOracle APEXとは、どういった製品であるのか、製品の紹介を行います。 その次に、Oracle APEXが提供する機能をご理解いただけるよう、アプリケーション を作成するデモンストレーションをお見せします。 最後に、最近のアプリケーション開発の事例として、米国オラクル本社が開発し、米 国政府に寄贈したCOVID-19 Therapeutic Learning Systemの開発過程を紹介します。 3

Slide 3

Slide 3 text

それでは、Oracle APEXの紹介から始めます。 4

Slide 4

Slide 4 text

Oracle APEXは、業界で最も利用されている、企業向けローコード・アプリケーショ ン開発プラットフォームです。 世界の127ヵ国で、5万以上の顧客が、簡単なものから複雑なものまで、様々なアプ リケーションをOracle APEXを使って開発し、利用しています。 開発者は50万人で日々増加しています。 作成されたアプリケーションの数は220万以上、1日当たりに開発される、新規アプ リケーション数は3000以上、 新規のインストールは数百という単位になっています。 --- 数え方 サポートリクエストの数 ソフトウェアのダウンロード数の数 Check for Updateの情報から apex.oracle.comの利用状況 等 5

Slide 5

Slide 5 text

ローコード開発と、より伝統的なアプリケーション開発手法、ここではスクラッチ開 発としましたが、コードを書くという、やり方ですね、それを比較したアナリストの コメントです。 Forresterでは、ローコードでの開発は、トラディショナルな手法より10倍早く開発 を進められる、とコメントしています。 Gartnerは、2024年には、アプリケーション開発の半分以上が、ローコードの手法に よる開発になるだろう、と予想しています。 職業プログラマと市民開発者の双方にとって、開発の短期間化というメリットと同時 に、生産性も向上すると、コメントしています。 オラクルはこのようなトレンドが明らかになる以前より、Oracle APEXを市場に提供 してきました。 6

Slide 6

Slide 6 text

数多くある、ローコードでのアプリケーション開発の利点を、いくつか取り上げま す。 アプリケーションの開発を始めてから、リリースされるまでの期間が短縮されます。 これは、すでに出来あがっている、テスト済みのフレームワークを活用することで、 実際に記述するコードの量が少なくなりますし、また、必要なテストも少なくなるた めです。 同様に、テスト済みのフレームワークを活用することで、高い品質が確保されます し、また、同じフレームワークにアプリケーションを作成することで、それらの間に 一貫性が生まれます。 習得が容易、というのも利点としてあげられます。コードの記述量は実際少なくなり ますし、また、ソフトウェア工学の素養がなくてもアプリケーションを作ることがで きます。 例えば、Oracle Databaseを使うWebアプリケーションを作るには、SQL、PL/SQLま たはJavaといった手続き言語、HTML、CSS、JavaScriptを知っていることが必要で す。 これらが全部できる、フルスタック・エンジニアを確保することは、なかなか難しい のが現状です。 ローコード開発ツールは、それらの知識の不足を補ってくれます。 7

Slide 7

Slide 7 text

開発、運用コスト、高い信頼性、柔軟性、といった利点もあります。 JavaであれC#であれJavaScriptであれ、HTMLでもCSSでも、たくさん書けば、レ ビューする量も増えますし、保守の手間も増えます。そして、不具合が紛れ込む可 能性も上がります。セキュリティ上の問題も同様です。 7

Slide 8

Slide 8 text

Oracle APEXの高い生産性の例です。 ここでは、スプレッドシート形式でのデータ編集を可能とするモジュールの実装を、 例にとっています。 Oracle APEXでは、記述するコードは、1行のSELECT文です。 対して、スクラッチ開発は、グリッド編集を行うWebコンポーネントを使って、 Oracle Databaseのデータを編集するアプリケーションを作成するのに、600行を超え る程度のコーディングが必要でした。 Oracle APEXでは、WebコンポーネントとDBを繋ぐための、コードを書く必要はあり ません。 このように、データを主に扱うビジネス・アプリケーションでは、APEXは20倍の速 さ、100分の1のコード量で、アプリケーションを開発できると考えています。 8

Slide 9

Slide 9 text

では、Oracle APEXの説明です。 Oracle APEXは、Oracle Databaseで動作する、ローコード・アプリケーション開発プ ラットフォームです。 (左の図) デスクトップ向け、および、モバイル向けのWebアプリケーション開発に使うことに よって、美しく、レスポンシブなアプリケーションを作ることができます。 スマートフォーン向けやタブレット向けの特別の知識は必要とせず、フルスタックの 開発者である必要はありません。 (真ん中の図) 次に、Oracle APEXは、データを操作する処理を、特にうまく行うことができます。 データベースに蓄積されたデータを使った、レポート、フォーム、チャートやカレン ダーなどを、素早く作ることができます。 (右の図) さらに、SQLやデータベースの機能についての知識があれば、よりよいアプリケー ションを作ることができます。 9

Slide 10

Slide 10 text

Oracle Databaseは、アプリケーション開発に活用できる、多くの機能を提供していま す。 機械学習、リアルタイム分析(インメモリ)、IoT(Fast Ingest – Kafka)、グラフ分析 (RDF)、ドキュメント(Text)、スペーシャル、やブロックチェーンといった機能が Oracle Databaseに含まれています。 そして、Oracle Databaseが稼働していれば、追加の構成作業をすることなく、すぐに 利用可能です。 Oracle Databaseは、アプリケーション開発のプラットフォームとしても利用できま す。 そして、これらの機能はOracle APEXから、そのまま利用することができます。 10

Slide 11

Slide 11 text

Oracle APEXの代表的な用途です。 スプレッドシートでは、例えば、休暇や勤怠など、スプレッドシートにまとめて、関 係者みんなで更新して、どれが最新かわからなくなったり、スプレッドシートをメー ルに添付して回覧して、どこで止まっているかわからなかったり。そういったことは ありがちです。 スプレッドシートに保存するデータをOracle Databaseに投入し、Oracle APEXで簡単 なアプリケーションを作れば、ずっと効率よく仕事を進めることができます。 全員が同じアプリケーションを同じURLからアクセスして、それぞれデータを更新す ればよく、作業が競合することも発生せず、そのアプリケーションから確認できる データは常に最新です。 オポチュニスティック・アプリケーションとは、期間が限定されたニーズに応えるア プリケーションのことです。 締め切りが今月中といった作業に使うアプリケーションの開発に、1ヶ月かかるのであ れば、作る意味がありません。 それが数日で使用に耐えるものができるのであれば、作ろうと思えるはずですし、ま た、作業が終わったあとに使われなくなっても、それほど惜しくはないでしょう。 Oracle APEXはOracle CloudのAutonomous Databaseで利用できます。Webアプリ ケーションですので、URLがわかって、ネットにつながってれば、どこからでも、 データの参照や更新が可能です。これは社内でも社外でも同様です。 11

Slide 12

Slide 12 text

そういったアプリケーションを作ることで、デジタル・トランスフォーメーション への対応になります。 また、Oracle Formsの置き換えや、ERPの拡張に使用することもできます。 11

Slide 13

Slide 13 text

Oracle APEXは、すべてのOracle Databaseで、追加コストなしで利用することができ ます。 その対象には、Enterprise Editionはもちろんのこと、Standard Edition、さらには Express Edition、つまり無料で利用可能なOracle Databaseも含まれます。 Oracle Database自体がサポート対象であれば、その上で動作するOracle APEXもサ ポートされます。 発生する費用は、データベースのライセンスであったり、クラウドのサブスクリプ ションですので、Oracle APEX自体では、その開発者数、エンドユーザー数、アプリ ケーション数といったメトリックで課金はされません。 Oracle Cloudが提供する、すべてのOracle Databaseのサービスで、利用が可能です。 また、オンプレミス、Oracle Cloud、さらには他社のクラウドであっても、Oracle Databaseが動いていれば、その上でOracle APEXを利用することができます。 12

Slide 14

Slide 14 text

では、ここからは、実際にOracle APEXによるアプリケーション作成のデモンスト レーションを見ていただきます。 13

Slide 15

Slide 15 text

最近の事例として、今年のはじめに開発されたCOVID-19 セラピューティック・ラー ニング・システムについて紹介します。 14

Slide 16

Slide 16 text

Thera-peu-tic (theh – ruh – pyoo – tuhk) このシステムは、米国政府の要請を受けて、オラクルが開発し、クラウド上で稼働す るサービスとして、米国政府に寄贈したものになります。 COVID-19に罹患した患者を担当している医師が、このシステムに利用者登録を行いま す。 そして、彼ら、彼女らの患者は、利用者登録を行った医師によって、システムに追加 されます。 追加された患者に、電子メールもしくはSMSで通知が送られ、その通知にしたがって 患者が毎日、容体をアップデートする、というものです。 集められたデータは、医師によって参照されます。 15

Slide 17

Slide 17 text

このアプリケーションの開発経緯は、ZDnetの記事になっています。 https://www.zdnet.com/article/launching-oracles-covid-19-therapeutic-app-the- back-story/

Slide 18

Slide 18 text

今回は、このアプリケーションの開発を行った中心メンバーのShakeeb Rahmanから 伺った、実際の開発作業について紹介します。 Shakeebは日本でのOracle APEXの普及に力を貸してくれている方です。 昨年、一昨年と来日していただき、一般向けのセッションを行なっていただいていた のですが、今年はこのような状況ですので、来日はできませんでした。

Slide 19

Slide 19 text

プロジェクトの開始は3月18日でした。 その日の早朝に、米国オラクル本社のトップ・エクゼクティブと米国政府との間で会 話があり、 COVID-19の治療データを共有するシステムを3日間で作ることができないか、と相談 を受けたとのことです。 その時点から開発が始まり、最終的には、3月30日に公式に稼働しています。 18

Slide 20

Slide 20 text

最初の日は、夜の9時半から、深夜の2:45分まで、やらなければならないことは何か 、開発チームがZoomで会議を始めました。 Oracle APEXのチームがこの会議に呼ばれましたが、APEXのチーム・メンバーはソフ トウェア開発者であって、医療の専門家ではありません。 幸い、米国オラクルには、ヘルスケアを担当する部門があり、その部門から、複数の 専門家の方々がZoomの会議に参加しました。 一番最初に取り組んだことは、データ・モデルの作成です。参加者の間で素早く設計 結果が共有できるように、 データ・モデルの作成には、インターネットからアクセスでき、誰でも無料で利用で きるapex.(ドット)oracle.(ドット)comの環境と、 データモデルを素早く定義できる、クイックSQLが使用されました。

Slide 21

Slide 21 text

一日目の時点でのアプリケーションです。 初期のユーザー・インターフェースと、電子メールによる通知が作成されました。 このアプリケーションはCOVID-19の治療を受けた患者から、直接、その後の体調の変 化をデータとして収集し、そのデータを医師が共有することで治療に役立てよう、と いった目的のアプリケーションですが、 そもそもソフトウェア開発者には、患者にどういった質問をすればよいのか、ここで は息切れ、とか頭痛、といった項目になりますが、そういうことからわかりません。 ですので、医療の専門家から伺った内容を、その場で実装し、結果を共有できた、と いうのは短い期間で開発を進めるには、とても重要な要素でした。 この状態のアプリケーションで、オラクルのトップ・エクゼクティブに最初のデモを 行なっています。

Slide 22

Slide 22 text

二日目のアプリケーションです。 アプリケーションUIの改良、データモデルの改良を行っています。 容体について、文章による入力だったのが、3択に変更されていたり、スイッチがチ ェックボックスに変更されていたりします。 同時に、ユーザー登録を行うアプリケーション、バックオフィスのアプリケーション の開発も始まりました。 ユーザー登録で多要素認証が、最初から組み込まれていることもわかります。

Slide 23

Slide 23 text

3日目の状況です。 アプリケーションのセキュリティ・レビューを、この時点で開始しています。 このアプリケーションは、一般の利用者の個人情報を扱うので、高いセキュリティが 要求されているためです。 また、オラクルのサポート部門が、フリーダイアルやチャットからサポートを受け付 ける計画があったので、社内のサポート体勢についても準備を始めました。 元々、オラクルの社内では、Einsteinと呼んでいる総合的なQAサイトを運用している ので、そこに新たに本システムをカテゴリとして追加しています。 このQAサイトもAPEXで作られています。

Slide 24

Slide 24 text

4日目に、オラクルのトップ・エクゼクティブによるアプリケーションのレビューが 行われました。 デモを行なって、その評価をメモする、といった方法ではなく、作成したアプリケー ションを実際に動かし、説明となるラベル、色など、意見をその場でアプリケーショ ンに実装して評価を行なっています。 Oracle APEXのアプリケーションに対する変更は、即時で反映されるので、このよう なことが可能です。 実際、開発期間が非常に短く、異なるバックグラウンドの参加者が多い、今回の開発 の条件では、その場で変更が共有され確認できるのは、大変効果的でした。

Slide 25

Slide 25 text

5日目です。 さらにデータ・モデルを改良しています。 また、アプリケーションへの入力方法の見 直しも行っています。 オラクルのデジタル・アシスタントもこの時点で組み込まれました。 この日に、アプリケーションの色調を変えています。 この時点でユーザー・インターフェースの 99 %は、Oracle APEXの標準であるユニバ ーサル・テーマで、1 %ほど、カスタムのCSSを追加しています。

Slide 26

Slide 26 text

6日目です。 再度、オラクルのエクゼクティブとのレビュー・ミーティングを行いました。 主に、ユーザー・インターフェースと、色調について話し合いが行われました。 オラクルが提供するアプリケーションの標準のユーザー・インターフェースである、 Redwoodに準拠するために、オラクルの公式サイトであるoracle.(ドット)comや、 その他の、いくつかのサイトを参考に色調を合わせています。

Slide 27

Slide 27 text

このミーティングに向けて、アプリケーションの開発環境を、社内で利用されている インスタンスに変更しました。 オラクルでは、所属や国籍、予算の有無にかかわらず、社内の誰でも、ワークスペー スのリクエストができ、そこで、APEXを使ったアプリケーションを開発、実行する ことができます。 この社内環境では5000を超えるワークスペース、および、1万を超えるアプリケ ーションが実行されています。 この時点で、米国のシアトルに拠点があるOracle Cloud Infrastructure – OCIのチーム が、このアプリケーションを載せるExadataのサービスを準備していましたが、ま だ、利用可能にはなってはいませんでした。ですので、社内のセキュアな環境は、開 発を進める上で重要でした。

Slide 28

Slide 28 text

7日目です。エクゼクティブのレビューを受けて、ユーザー・インターフェースに、 Redwoodのダーク・モードが適用されました。

Slide 29

Slide 29 text

7日目の時点での開発状況です。 医師が使用するメインのアプリケーションが43ページ、患者が使用する健康状態の 報告は4ページ、ユーザー登録に関するページが5ページ作成されています。

Slide 30

Slide 30 text

7日目までに開発されたアプリケーションは、これが全てではありません。 管理、サポート要員向けのアプリ、稼働状況の確認など、バックオフィス系のアプリ ケーションも作成されています。 すでにこの時点で 200 ページを超えるアプリケーションが開発されました。

Slide 31

Slide 31 text

この日以降は、リリースの日まで、改良とテストの実施に時間を費やしています。 ひとつ追加として、患者が利用するアプリケーションの、スペイン語の翻訳の追加 が、この期間で行われました。 開発されたアプリケーションは、最終的にOCIのクラウド上に実装され、そして、3 月30日にローンチされました。 4月3日に、ホワイトハウスの記者会見でAlex Azar保健福祉長官から、このシステムに ついて報告がされました。 30

Slide 32

Slide 32 text

開発されたアプリケーションのまとめです。 これは、2日目のアプリケーションです。 この時点では、100%標準のユニバーサル・テーマによるUIです。

Slide 33

Slide 33 text

完成したアプリケーションです。 95%は標準のユニバーサル・テーマで、5%の特別な変更にカスタムのCSSが適用さ れています。

Slide 34

Slide 34 text

アカウントの登録画面です。 電子メールまたはショート・メッセージを使った、追加の確認が実装されています。 右側の画面は、医師が使用するアプリケーションです。 ---- (確認にはDEA番号とNPI番号が使用されています。) DEA番号 – 米国麻薬取締局が医療提供者(医師、歯科医、獣医などに割り当てる番号) NPI – National Provider Identifier - 医療機関毎のID、HIPPAに基づく事務、財務上の 処理に使用する。

Slide 35

Slide 35 text

患者が使用するアプリケーションです。 電子メールの表示は、OSの設定で、ライト・モードとダーク・モードの切り替えが行 われます。 右が患者が容体を入力する画面で、このシステムで最も重要な画面です。

Slide 36

Slide 36 text

今までのまとめになります。 35

Slide 37

Slide 37 text

Oracle APEXの利点のまとめです。 まずは、 Oracle Databaseをお持ちで、 すでに、そこに蓄積されたデータがあり、 そのデータを活用したい、と考えていらっしゃるのであれば、 Oracle APEXはベストのツールです。 すべてのOracle Databaseで、追加の費用なく利用でき、無料で利用できる環境も提供 されているため、気軽に始めることができます。 リレーショナル・データベースやSQLの知識はあった方がよいですが、 JavaScriptとCSSは知らなくても、スマホ、タブレット、PCすべてに対応したレスポ ンシブなWebアプリを作成することができます。 36

Slide 38

Slide 38 text

最後に、今回、説明した事例ですが、検査、治療、ワクチン投与の機能を加えて、 Oracle Health Management Systemとして、現在、アフリカの3カ国で利用されてい ます。ガーナではすでに、黄熱、Yellow Feverを対象としたワクチン投与に利用され ています。 システムが稼働した最初の週で70,000人を超える人がこのシステムに登録され、実際 にワクチンが投与されました。 本プログラムを推進しているトニー・ブレア・グローバル・チェンジ研究所とオラク ルは、現在、アフリカをはじめアジア、欧州、北米の30カ国以上において、同様のシ ステムを使ったCOVID-19のワクチン接種プログラムの運用管理について協議を行って います。 37

Slide 39

Slide 39 text

apex.oracle.comが情報ポータルになります。Oracle APEXに関する情報は、こちらか ら入手可能です。 38