今日、あなたはあなたのソフトウェアが他のソフトウェアと統合することができる必要があることを認識しています。 あなたは、ソフトウェアアプリケーションがすべてを行うことはなく、あるプログラムから別のプログラムにデータを転送する必要があることに気付きました。 実際には、技術的な用語では、簡単に統合できるようにするために、ソフトウェアは「オープンアーキテクチャプラットフォーム」と呼ばれるもので設計する必要があることを意味します。
誤解しないでください
ソフトウェア ベンダは、アプリケーションと他のプログラムとの統合について疑問を抱いていることに気付き、オープン アーキテクチャ プラットフォームの概念についても理解しています。
残念ながら、ベンダーは誤解を招く可能性があり、時には彼らがあなたに答えるときに真実を伸ばします。 これは、コンピュータプログラマやソフトウェアエンジニアでない限り、ソフトウェアプログラムやプラットフォームの設計の基礎アーキテクチャを分析する専門家になることは現実的に期待できないからです。 幸いなことに、ベンダーに誤解されないように頼むことができる質問がいくつかあります。
質問 1: ソフトウェアに API はありますか?
最初の問題は、アプリケーション プログラミング インターフェイス (API) がソフトウェア プラットフォームで使用できるかどうかです。 技術的な詳細に入りきりすぎずに、API は、基盤となるデータ モデルへの制御されたアクセスと、その上に構築された外部アプリケーションからのさまざまなアクションに対する制御されたアクセスを提供する必要があります。 これは、API を使用すると、開発者はタスクの特定の問題を解決する機能を追加し、追加の機能を追加のカスタマイズを行わずに、基になるアプリケーションへのリンクを維持できるためです。
API がない場合、統合プロジェクトは基になるデータを変更する必要があります。 これにより、アプリケーションが更新され、統合をやり直す必要がある場合に問題が発生します。 実際には、APIがない場合、他のアプリケーションとの複雑な統合をすべてやり直す余裕がないため、通常は使用しているソフトウェアの古いバージョンにロックされることを意味します。
さらに、API が存在する場合でも、プラットフォームが API を処理する方法は大きく異なる可能性があります。 一部のプラットフォームでは、API のごく一部しか提供しませんが、これにより拡張できる部分が制限される場合があります。 さらに、API は非常に複雑で使いにくくなり、プラットフォームに接続することが困難になります。
さらに良い質問:ソフトウェアは良い開発者コミュニティを持っていますか?
API の品質とソフトウェア プラットフォームの適切な開放性を測定する最善の方法は、開発者コミュニティを調べることです。 プラットフォーム用のアプリケーションを作成する健全な開発者コミュニティがある場合、API が使いやすい可能性が高く、優れたトレーニング資料があり、ベンダーは内部データ/プロセスへの適切な量のアクセスを提供し、多くの例を示しています。 多くの開発者と多くの統合がある場合、それはソフトウェアプラットフォームが実際にどのようにオープンであるかに関する良い証拠です。
この問題の詳細
デニス・モライス ( 波形ブログ著者 ) と私は2016 COMPIT会議のためにこの問題についての技術論文を書いています. この論文では、船舶設計と造船事業の文脈におけるアプリケーションの統合について説明していますが、実際にはほぼすべての業界に適用可能です。 最も重要なことは、IT プロフェッショナルではない人に対して説明する論文を書きました。
この論文は、相互運用性がビジネスの成功にとって重要であるため、ソフトウェア購入の重要な基準について、あなたが知っておくべきことを理解するための貴重なツールです。 不必要に高価なソフトウェア統合プロジェクトにお金を無駄にしたくない。 さらに、プロジェクトを完了した後、将来簡単に変更を加える機能なしに、古いソフトウェアを使用してロックされたくない。 オープンアーキテクチャに関するこのホワイトペーパーは、SSIウェブサイトの 記事セクション にあります。