OutSystems Platformはどのように企業の課題を解決しますか?

OutSystems Platformは、ライフサイクル全体を一元的にサポートする超高速開発プラットフォームであり、アプリの開発・導入プロセスの各ステージをシンプルにします。開発者および開発チームは、企業が求めるアプリをマーケット需要と同じ速度で提供できるようになります。

開発チームは、その規模に関係なく、アプリの設計、開発、QAおよび分析、管理が可能になります。OutSystems Platformは、フロントエンドおよびバックエンドの開発ニーズすべてに対応しています。また、デプロイや長期メンテナンスにも対応しています。個別ツールを組み合わせて使う必要がないため、コストの増加や生産性の低下を避けることができます。また、ガバナンスとインパクトの分析機能も提供されているので、コーディングや管理工程を増やすことなく、大規模プロジェクトをさらに拡張することができます。

OutSystems Platformの中核はアプリケーションの超高速開発とデリバリですが、それ以外にも多くの特長を持っています。OutSystems Platformの目標は、以下の機能を提供することにより、システムのライフサイクルにおいてスムーズで連続的なデリバリを可能にし、コストとリスクを低減することです。

  • 高い生産性:月単位ではなく、週単位の短納期でアプリを作成し、全体システムに組み込む。
  • スピードとコード:カスタムコードを組み込むための高い柔軟性を確保しながら、ビジュアルモデルを用いて開発の拡張性、効率性、およびスピードを高める。 
  • マルチチャンネル開発:開発者は、ビジュアルモデリングを用いて、あらゆるデバイスやプラットフォーム上で作動するアプリケーションを開発する。エラーのない自動化されたデプロイにより、リスク、開発期間、およびコストが大幅に削減される。
  • オープン・プラットフォーム:既存のSoR (Systems of Record)またはデータソースとの統合により、大規模なバックエンドシステムへの投資を有効活用する。 
  • エンタープライズ規模のプラットフォーム:開発チームにより作成された大量のアプリケーション資産を、単一のアプリの場合と同様に、容易かつ素早く構築・管理する。
  • コストの削減:自動化された依存関係管理と総体的なアプリケーションライフサイクル管理(ALM)により、アプリケーションのメンテナンスコストを大幅に削減する。
  • ノー・ロックイン:OutSystems Platformのアプリケーションを作動させるのに、ランタイムインタプリタやエンジンは必要ありません。作成したコードは、どこへでも好きなところに持っていくことができます。

 

高い生産性

OutSystems Platformは、基礎部分を含めてすべてが、アプリケーションの開発と開発済みアプリケーションに対する変更のプロセスを加速させることを狙いとして設計されています。開発者はビジュアルにアプリケーションを作成できますので、時間とコストを削減し、効率性を向上できるのです。高いデザイン性を持つマルチチャンネルのユーザーインターフェイス(UI)により、HTMLおよびCSSに詳しくない開発者でも、その言語を活用できます。手作業のコーディングによって一貫性を失うといった問題なしに開発を行い、1クリックでデプロイすることができます。何ヶ月、何年という長期間ではなく、何週間という短期間でアプリケーションの導入が可能になる理由がここにあります。 

従来型のアプリケーション開発では、変更プロセスによって生産性が大幅に低下することが多々ありました。そのプロセスが、OutSystems Platformでは自動化されています。OutSystems Platformは、システム全体におけるアプリケーションの依存関係を調べ、全レイヤーに対する変更の影響を正確に割り出し、コスト、時間、およびリスクを最小化します。自動的に訂正可能な箇所を修正し、手動での修正が必要な場合にはそれを教えてくれます。この処理によってエラーフリーのビルドパッケージが作られ、実行中のアプリケーションの品質に何ら影響を与えることなく、本稼働環境のアップグレードが数分の内に実施できるようになるのです。

また、OutSystems Platformを用いることにより、従来型の開発方法で統合するときに生じていた遅延や予算超過を回避できるようになります。ビルド済みのコネクタ、REST API、SOAPウェブサービス、およびカスタムAPIにより、バックエンドの統合が高速化されます。お客様からは、「企業内で必要なすべてのものはOutSystemsが統合してくれる」という評価を頂いています。

組織が所有するアプリケーションに対して、一目で見て分かる運用支援機能がアプリケーションや環境のコントロールをサポートするため、アプリケーション管理さえも高速化されます。OutSystems Platformでは、複数の環境にわたるバージョン、リリース、デプロイ、およびコンポーネントの依存関係を管理することができるようにする集中制御コンソールが提供されています。複雑な構成ツールを必要としないので、デリバリが簡素化されます。企業は、アプリケーション開発やバージョンの管理で悩んだり、そのセットアップのために専門家を探したりする必要がありません。 

IT部門は、デフォルトの標準アーキテクチャーと、開発者に依存しない優れた設計に基づくモデリング言語による恩恵を享受できます。開発者同士で、追加のドキュメント作成を行うことなく、2週間以内に容易に引き継ぎやトレーニングを行うことができるようになります。これによりプロジェクトは加速され、アプリケーションはより短期間で導入されます。また、完全な柔軟性が実現されているため、メンテナンスをいつでも実施可能とするための情報を提供して、開発業務をアウトソースすることができるようになります。1つの基幹系システムのために、1人の開発者を永久に貼り付けておく必要はありません。ITを駆使すれば、新しいメンバーをチームに迎えたとしても、アプリケーションは決してメンテナンス不可能なレガシーシステムにはなりません。

 

スピードとコード

OutSystems Platformは、高い開発スピードと、カスタムコードおよび既存のコードとのシームレスな統合という課題を、独自の方法を用いて両立し、高いアジャイル性を実現しています。開発者は、アプリケーションのUI、ビジネスプロセス、ビジネスロジック、およびデータモデルをビジュアルに設計します。ビジュアルな開発環境においてドラッグ&ドロップ機能を使うことで、手作業のコーディングに比べて高い効率性が実現できます。マルチデータソース、ユーザーインターフェイスブロック、API、統合コネクタ、およびビジネスルールを含むすべてのコンポーネントをマッシュアップする機能もサポートされています。これにより、従来型のソリューションを使う場合よりもはるかに短い時間で、高品質なアプリケーションおよびプロセスを作成できるようになります。 

だからといって、ビジュアルモデルの制限を受けるわけではありません。ビジネスアプリケーションにカスタムコードや既存のコードが必要な場合には、Javaまたは.NETを使ってビジュアルモデルを拡張することができます。外部のAPIを呼び出し、そのサービスを利用するためのコードを書くのに、Visual StudioやEclipseを利用することもできます。

スピードと制御に関する優位性は、開発段階におけることばかりではありません。OutSystems Platformを使用すれば、アプリケーションのライフサイクル全体にわたり、高速で安全なデプロイと変更をたった1クリックで行うことができます。アプリにどれほど変更が加えられようとも、OutSystems Platformは変更プロセスを自動化、管理、統制し、エラーフリーなデプロイを実現してくれます。アプリケーションのデータモデルやAPI、そしてアーキテクチャなど、大きな変更に対しても同じです。

OutSystems Platformは、アプリケーションの全レイヤーに対する変更の影響を正確に割り出し、コスト、時間、およびリスクを最小化します。また、ほとんどの問題箇所を自動的に修正し、手動での修正が必要な場合にはそれを教えてくれます。全データベースの変更スクリプトを含め、デプロイメントプロセスも自動化します。その結果、どうなるでしょうか。エラーフリーのビルドパッケージが低コストで完成し、本稼働環境のアップグレードが、品質に何の影響も与えずに数分で完了します。

 

マルチチャネル開発

OutSystems Platformを利用することにより、組織は高品質なアプリケーションを開発し、それを従来技術に比べて大幅に短時間、低コストで好きなところにデプロイできるようになります。開発スピードを犠牲にすることなく、あらゆるデバイスとOSをサポートします。 

OutSystems Platformを使ってアプリケーションが開発されると、そのアプリは既にすべてのデバイスで使用できる状態になります。手作業のコーディングなしでHTMLとCSSを活用することができるため、エラーも労力も開発時間も、大幅に削減することができます。絶え間なく変化し続けるテクノロジーを修得したり、デバイス固有の知識を持つ専門家を雇用したりする必要がありません。

GPS、カメラ、通知、およびオンデバイスのアプリ統合などのネイティブ機能を追加し、ビジネスニーズを満たすことも容易です。労力を費やさず、リスクなしで、モバイルアプリを全てのブラウザ向けに拡張することができます。 

オフラインで動作するアプリさえ、オンラインアプリと同じくらい素早く簡単に開発可能です。オフラインアプリの開発にフォーカスしたフレームワークもOutSystems Platformが持つ機能の一部となっており、 ネット接続できないときでも動作可能なクライアントアプリケーションのデリバリを可能としています。ネットワーク接続が利用できるようになると、直ちにクライアントとサーバーの間で自動的にデータ同期が起動します。REST APIを使えば、クライアントはサーバーとの間でデータを送受信することができます。この同期機能は、予期しないネットワーク障害に対する回復機能を持っており、停止させた後で再開することができます。

マルチチャンネル開発とは、新しいデバイスやプラットフォームが出現したときに、バージョンの変更や更新、あるいは付随するコストやリスクの増加などに悩むことなく、アプリを開発することができるということも意味しています。OutSystems Platformの新しいバージョンはそれぞれ、既存のアプリケーションを再生成し、最新版のブラウザ、アプリケーションサーバースタック、データベースエンジン、およびモバイルOSで稼働します。これにより顧客は、新しいテクノロジーに合わせてアプリケーションを書き直す作業に悩まされることなく、常に改良が繰り返されるコードやアーキテクチャーパターンによってもたらされるアプリケーションのセキュリティー、拡張性、およびパフォーマンス面の強化というメリットを享受することができます。

アプリケーションを変更することは、新規に開発するのと同じです。OutSystems Platformは、アプリケーションの変更を即座にユーザーのデバイスに届けます。新規または新バージョンのアプリケーションがリリースされると、すべてのユーザーは何もインストールまたは更新せずにアクセスできるようになります。ユーザーは、時間と費用のかかるApple StoreやGoogle Playの承認プロセスを回避することができます。組織内でデータやユーザーにとってリスクとなるようなバグが発見された場合は、そのバグを即座に修正し、すべてのデバイスおよびプラットフォーム上で稼働する新しいバージョンのアプリケーションをデプロイすることができます。

 

オープンプラットフォーム

柔軟さや迅速さを持つ理由とはなにか?

OutSystems Platformは、標準ベースのコードと拡張性を提供するオープンな統合プラットフォームです。この形としている理由は、独自のデータやアーキテクチャはアプリケーション開発の制約となり、コスト増を招くことためです。OutSystemsは、あらゆるデータベースと接続可能で、基幹系システムと容易に統合できるオープン・プラットフォームを提供します。

OutSystems Platformは、アプリケーション開発のための表現力豊かなビジュアル言語を提供し、アプリケーションの超高速開発にありがちな落とし穴を回避します。OutSystems Platformを用いて設計したアプリケーションのビジュアルモデルは、適切な構造で最適化された標準のJavaまたはC#のコード、JavaScript、CSS、および標準SQLに変換されます。これは、.NETやJEEなどの標準的なアプリケーションサーバー環境にデプロイ可能であることを意味します。

ビジュアルモデルは、JavaScript、Java、C#、SQL、CSS、およびHTMLなどの標準コードやカスタムコードを使って拡張することができます。開発者は、SOAおよびマイクロサービス用に標準化できます。また、作成したアプリを、外部データベースや既存システム、さらにテスト用および監視用ツールと統合することもできます。作成可能なアプリケーションのタイプやサイズには、限界が見えません。

OutSystems Forgeには、オープンソースコンポーネントのリポジトリがあり、多くの開発者に活用されています。ここに置かれたコンポーネントには、公開されたオープンソースの.NET、Java、JavaScriptのライブラリやプラグインのラッパーも含まれており、自分のアプリケーションの好きな所で利用することができます。既に存在しているものを作るために時間や費用をかける必要はありません。

データアクセスについて、OutSystems Platformでは追加設定を行うことなくSQL Server、Oracle、MySQL、およびDB2に接続できます。加えて、開発者は、あらゆるデータベースに対してデータベースコネクタを実装することができます。開発者は、組織のホームページ、ビジネスロジック、またはワークフローの一部として、既存またはインポートしたデータベースに対する複雑なクエリを書くことができます。 対象のデータベースに対するクエリ実行には標準SQLを使うことができます。

SAPを始めとする基幹系システムとの統合においては、OutSystems PlatformではREST APIまたはSOAPウェブサービスを使用します。手作業によるコーディングが不要なため、コストが低減し、生産性が向上します。REST APIに関して、OutSystems Platformでは、他のビジネスロジックやウェブサービスの場合と同様、ビジュアルロジックとのインターフェイスが自動的に生成されます。SOAPウェブサービスについては、ウェブサービスメソッドを視覚的に使用できるよう、OutSystems Platformが必要なデータ構造すべてを作成します。

エンタープライズ規模のプラットフォーム

OutSystems Platformは現時点で、エンタープライズ・アプリケーションの要件を満たすクラス最高のプラットフォームの1つだと考えられています。基幹系アプリケーション、PoSアプリケーション、およびカスタマー向けモバイルアプリケーションの開発やデプロイに、多くの大企業がOutSystems Platformを使用しています。このように、作成されるアプリケーションが従業員用なのか、ビジネスパートナー用なのか、顧客用なのかに関係なく、OutSystemsは高速かつ高い費用効率でデリバリできるのです。

OutSystems Platformは常に拡張できるため、事業部門あるいは基幹のビジネスプロセス向けの革新的で高品質なアプリケーションの大規模ポートフォリオをサポートする機能を備えています。高い柔軟性と管理機能を持つOutSystems Platformにより、何百というサービスとアプリケーションを備え、的確な構造を持ち、適切な管理が行われる企業施設へと素早く変革することが可能となります。 

OutSystems Platformは、パフォーマンスと敏捷性を損なうことなく、仕事の完遂に必要なだけの開発者とチームをサポートすることができます。モジュール化、パッケージ化、再利用可能なコンポーネントとサービスの配布とデプロイにより、小規模なチームでも大規模なチームでもメンテナンス可能な大規模SOAを迅速に設計することができます。今まで投資してきたIT資産はモジュールに姿を変え、OutSystems Platformに取り込むことにより、依存関係の追跡と再利用を可能にし、時間と費用と労力を低減します。すべての依存関係に関してデリバリ・パイプラインが自動化され、複合アプリケーションが常に一貫性を保って動作できるようになります。

OutSystems Platformは、スピード性と拡張性を保ちながら、外部の企業システム、データベース、またはカスタムアプリケーションとの統合を大幅に簡易化します。企業データ、サードパーティーサービス、およびカスタムアプリとのシームレスな統合を、設定変更なく行うことができます。事前に作成済みのコネクタを使って、Salesforce、SAP、Oracleなどのエンタープライズサービスやデータベースと迅速に統合することが可能です。また、開発者は、必要に応じて独自のカスタムの連携を作成し、修正、拡張することができます。  

 

コストの削減

OutSystems Platformは、広範囲の複雑なライフサイクルをサポートし、プロジェクト開始時点からスムーズなデリバリプロセスを可能とします。アプリケーションのデプロイの場合と同様、アプリケーションの管理と更新が簡単になります。ライフサイクル全体を通じ、OutSystems Platformは背後で稼働し続け、アプリケーションがエラーを生じないように働きます。パフォーマンスと品質の向上のためのアプリケーションが備えられており、分析結果はOutSystems Platformの総合監視ダッシュボード上にグラフィカルに提示されます。そのため、アプリケーションの中で修正または最適化が必要な部分を簡単に見つけ出すことができます。結果として、パフォーマンスまたは品質の問題が早期に発見され、迅速に解決されるため、開発コストおよびデプロイメントコストを削減することができます。

使いやすい管理コンソールの機能は、シンプルなアプリケーション構成機能から、アプリケーションのパフォーマンス管理までカバーしています。アプリケーションとサービスにおけるハイレベルのセキュリティーガバナンスにより、大規模アプリケーション開発に必要な、オーナーシップの定義、再利用、管理、および運用ルールを実現することができます。ドキュメント作成が自動化され、バックオフィスの構成サービスが集中化されます。これには、ビジネスプロセスのオペレーションインスタンスおよびビジネスアクティビティのモニタリングが含まれます。また、モバイル機器管理およびモバイルアプリケーション管理のためのツール(例えば、Airwatch)との統合により、モバイルアプリケーションガバナンスが実現されます。

これらの、集中化・自動化された管理機能により、基幹系アプリケーションの管理と運用に必要な時間も人員も大幅に削減され、コストが低く抑えられます。複数の環境にわたるステージング作業がダウンタイムなしで自動化され、問題が生じた場合にはロールバックの処理も自動的に実行されます。また、アプリケーションおよびサービスに関する完全な依存関係トラッキングにより、整合性が確保されます。その結果、当社のお客様は、大きな費用をかけることなく、1日に複数の複雑なデプロイメントを実行することができるのです。

 

ベンダーに依存しない「ノー・ロックイン」

お客様が利用するベンダーとプラットフォームが変わった場合に、そのプラットフォームで作成されたアプリに何が起こるかを知ることは重要です。OutSystems Platformは、心配やリスクのないアプリケーション導入を実現する唯一のソリューションであり、本当の意味での「ノー・ロックイン」を提供しています。OutSystems Platformでは、特定企業のランタイムエンジンを使用せずにアプリケーションを実行しています。開発者は、作成したアプリケーションの実行および変更、更新を、他のプラットフォーム上または他のツールを用いて行うことができます。コードは、テクノロジーの進化に合わせ、改変せずに移植することができます。 

OutSystems Platformはモデル駆動型のアプローチを採っており、実行時にはOutSystems Platformを必要としない標準アプリケーションが生成されます。ビジュアルに作成されたモデルデータは、メタデータを追加することなくデータベースのネイティブな機能に直接マッピングされます。OutSystemsは、標準ETL、BIまたは他のサードパーティー製データベースツールを使って、データへのアクセスを可能にします。アプリケーションのコードは、分離し、標準の.NETまたはJavaによるウェブアプリケーションサーバースタックにデプロイすることができるので、時間とコストが削減できます。

すべてのアプリケーションは、標準の.NETおよびJavaをベースとしています。OutSystems Platformは、アプリケーションの生成、最適化、コンパイル、およびIIS、JBoss、またはWebLogicのような標準ウェブアプリケーションサーバーへのデプロイまで、必要なすべてのステップを支援します。組織は、そのような処理のために高価なリソースを使用する必要はありません。