これらのソリューションをより便利かつ迅速に作成し、後で変更するために、Docsvisionプラットフォーム用に、さまざまなツール(デザイナー、モジュール、ゲートウェイ)を作成しました。これらのツールは、プラットフォーム上で特定の顧客の要件を考慮しながら、特定の顧客向けのソリューションを構成できるようにしました。
また、これらの同じツールを使用して、特定のビジネス上の問題(会議プロセスの自動化など)を解決するDocsvisionプラットフォーム用の既製のアプリケーションセットを準備しました。 また、同様のビジネスタスクを顧客が解決する必要がある場合、そのような既製のアプリケーションを実装プロセスの基盤として使用できます。同じプラットフォームツールを使用して自分用に構成するだけです。
視覚的には、これらはすべて4層ピラミッドの形で表すことができます。Docsvisionプラットフォーム(第1層)がベースにあり、さまざまなデザイナー、モジュール、ゲートウェイ(第2層)が開発され、それらを使用してアプリケーションが作成され(第3層)、顧客がカスタマイズされます設計決定(第4層)。
そして、そのような4層構造は偶然に私たちによって選ばれたわけではありません。 それを設計するとき、私たちはDocsvisionの最新バージョンを開発する際に依存することを決めた4つの原則を自分用に策定しました。
- 開放性。
- 柔軟性。
- モジュール性。
- パフォーマンス。
さらに、これらの原則を開示すると同時に、Docsvision構造のピラミッドの各レイヤーについてさらに詳しく説明します。 だから:
原則1:オープン性。
Docsvisionプラットフォームは、その上で開発できるようにする必要があります。
したがって、Docsvisionプラットフォームのサーバー側は、.NETテクノロジーに基づいて記述されています。 サーバーはweb \ WCFサービスです。 .NETを使用して記述できるプラグインサーバー拡張機能を使用してサーバー機能を拡張するメカニズムがあります。 これらのサーバーエクステンションは、利用可能なAPIを使用してクライアントから使用できます。 Docsvisionプラットフォームのクライアント部分は、.NETおよびCOMテクノロジーを使用して記述されています。
Docsvisionのクライアント部分を変更できるパブリックAPIとインターフェイスがいくつかあります。このために、広く使用されている最新のプログラミング言語(C#、VB.NET)と、過去に人気のあったVisual Basic 6.0およびC ++の両方を使用できます。
Docsvisionプラットフォームのアーキテクチャ(カーネル、オブジェクトモデル、システムモジュール、プロセスを処理するための「エンジン」など)については、次の投稿で詳しく説明します。
原則2:柔軟性。
Docsvisionプラットフォームでは、すべてがカスタマイズ可能でなければならず、プログラミングなしでこれを行うためのツールが必要です。
これを行うために、Docsvisionの最新バージョンでは、10人ものデザイナーを開発しました。
- カードデザイナー。
- プロセスデザイナー
- ディレクトリのデザイナー。
- 状態コンストラクター。
- ロールのコンストラクタ。
- レポートデザイナー
- 検索クエリデザイナー。
- スクリプトコンストラクター。
- 承認のコンストラクタ。
- ナンバリングコンストラクター。
カードデザイナー。
プロセスデザイナー
ロールのコンストラクタ。
これらすべてのコンストラクターを統合パートナーに無料で提供し、顧客向けのさまざまな設計ソリューションを作成できるようにします。 Docsvisionプラットフォームで作成された既製のソリューションの操作では、顧客がこれらのデザイナーを購入する必要はありません-顧客が自分でソリューションを変更する場合のみ。
各デザイナーの能力を詳細に開示することはしませんが、その数でさえも、Docsvisionプラットフォームがどれほど柔軟であるか、そして単に「正しいチェックマークを設定する」だけで多くの変更が行えることを理解できます。
次の投稿では、カードデザイナーなど、最も興味深いデザイナーの能力について明確に説明します。これにより、カードフォームをシミュレートし、既存のフォームを変更できます。
原則3:モジュール性。
顧客が必要なコンポーネントのみを入手できるように、Docsvisionプラットフォームのアーキテクチャはモジュール化する必要があります。
現時点では、Docsvisionプラットフォーム用に次のいわゆる既製のモジュールを開発しており、顧客はそこから必要なものを選択して使用できます。
1.既製のアプリケーションのセット
これらは、たとえば、契約、会議管理、文書管理などのアプリケーションです。 これらはすべて、関連するオブジェクトをDocsvisionプラットフォームに追加する独立した完成品です。カードフォーム(「契約」カードなど)、ディレクトリ(通貨ガイドなど)、役割(「コーディネーター」、「署名者」など)。 上記のように、Docsvisionプラットフォームを構築するツールを使用してすべてのアプリケーションを作成します。つまり、設計ソリューションでは、これらのアプリケーションを顧客の要件に適合させることができます。
2.統合ゲートウェイのセット。
現時点では、メール(SMTP / POP3)、1C:エンタープライズ、SharePoint、SAP B1へのゲートウェイを開発しています。 これは一種の既成のコネクタであり、設定により、Docsvisionを外部システムと統合できます。 すべてのゲートウェイの主な機能は、外部システムオブジェクトの監視、およびデータの読み取りと書き込みです。
3.ユーザージョブのセット。
Docsvisionプラットフォームでは、さまざまなユーザーグループ向けに多くの職場を開発しました。 以下に簡単な説明を示します。
- 「Navigator」は、WPF / WinFormsテクノロジを使用して開発されたアプリケーションです。その原理は、Windowsのエクスプローラーの原理に似ており、フォルダーツリーが左側に、カードファイルが右側に表示されます。 これは、Docsvisionのすべてのカスタム機能へのアクセスを提供するプライマリワークステーションです。
Navigatorはどのようなものですか?
- 「SharePoint用クライアント」 -SharePoint用に開発したWebパーツ。ポータルを介してDocsvision機能を直接操作できます。 Webパーツには、ツールバー、フォルダー構造、さまざまなビューのフォルダーコンテンツ、検索フォームなどのDocsvision要素が表示されます。
Client for SharePointはどのようなものですか?
- 「イージークライアント」は、クライアントワークステーションにソフトウェアをインストールせずにDocsvisionで作業できるWebクライアントです。 軽量クライアントはWebアプリケーションであり、HTML5、CSS3、およびjQueryを使用してASP.NET MVC 4テクノロジー上で単一ページアプリケーションとして実行されます。 Navigatorの機能のすべてをこのワークプレースに移し、オーバーロードして本当に簡単にしないようにしましたが、通常のマネージャーまたはリーダーに必要な基本機能のみを移しました。
「イージークライアント」はどのように見えますか?
- 「Manager for Outlook」は、C#で完全に書き換えられたMicrosoft Outlookアドインであり、OutlookでDocsvisionジョブを使用できます。 Docsvisionジョブを表示するには、カスタムMS Outlookタスククラスが使用され、フォームはフォーム領域メカニズムを介して置き換えられます。
Outlook用マネージャーはどのようなものですか?
- 「トップマネージャー」 - マネージャーの仕事のシナリオを実装するiPadおよびiPhone用のアプリケーション。 オンラインでもオフラインでも機能します。 Docsvisionシステムとの相互作用は、データ交換を実行する特別なコネクターを使用して編成されます。
「トップマネージャー」はどのように見えますか?
- 「Assistant for Android」 -Android OS用のアプリケーション。Docsvisionで割り当てられたタスクを通知します。 アーキテクチャはクライアントサーバーアプリケーションです。サーバーは、Docsvisionプラットフォームのサーバー側にアクセスしてクライアントコマンドの処理を実行するWCFサービスであり、クライアントはAndroidプラットフォームの通常のアプリケーションです。
Android Assistantはどのように見えますか?
原則4:生産性。
Docsvisionプラットフォームは、数万人のユーザーへの負荷の下で、耐障害性と生産性を備えている必要があります。
これを検証および確認するために、システムの負荷テスト用に設計されたいくつかのサーバーの特別なインフラストラクチャを展開し、Visual Studio負荷テスト環境でユーザーアクションのソフトウェアエミュレーションを使用して実行しました。
しかし、このスタンドの詳細、および製品テストの方法論については、すでに次の投稿で説明します。