EffiProzは、完全にC#で書かれており、ディスクベースとメモリのみモードの両方に対応した組み込みデータベースである。開発者は、.NET Compact、Mono、Windows 7、Silverlightといった様々なCLR環境で使用することができる。次期バージョンでは、モバイルプラットフォームにも拡張される予定である。
EffiProzのIrantha Suwandarathna氏に、なぜSQL Server CompactやSQLiteの代わりにこれを使うべきなのかをたずねた。彼の答えは
次のような機能に興味を持った場合
- 究極のパフォーマンス
- ACIDに準拠したトランザクション
- 標準SQLに準拠(SQLiteやSQLCE以上に)
- 完全なマネージドコードデータベースエンジン
- .NET Compact Framework、Silverlight、Mono、Windows Phone、Moonlinght(将来的にAndroidとiPhone)アプリケーション上で同じデータベースを使用したい。または、それらのプラットフォーム間でデータベースファイルを移行したい。(基本的にHSQL互換のため、.NETとJavaアプリケーションで同じデータベースファイルを使用して、相互に交換することができる)
また、EffiProzは、次のバージョン(1.3)で、Entity FrameworkとMonoTouchをサポートする。その後、MonoDroidのサポートのリリースが計画されている。
アプリケーションの品質はそれに組み込まれているコンポーネントの品質に大きく依存するため、彼らのテストと品質管理についてたずねた。
我々は、コードの10,000行を超えるリグレッションテストスイートを使っています。現在の1.2リリースでは、約74%のコードカバレッジを達成しました。1.3リリースでは、80&のカバレッジを目標にしています。我々は、ストレージ層にそれぞれテストスイートを繰り返し実施しています。また、次のテストケースを2回実施しています。ひとつは、トランザクションログの復元と正常にシャットダウンできるテスト。また、この自動化されたリグレッションテストスイートを実施するとともに追加でマニュアルテストを実施しています。
HSQLDBは、オープンソースのJavaデータベースであり、この製品の基礎となっている。
EffiProzは、HSQLDBを.NET Frameworkに翻訳することから始まった。しかし、EffiProzは、現在HSQLDBにない多くの機能(たとえば、SQL Server互換のUniqueIdentifierデータ型)を取り込んでいる。HSQLDBは、リベラルBSD形式のライセンス下で公開されている。EffiProzは、非商用利用(アカデミック、研究など)であれば、無料で使用することができる。商用で利用する場合は、ライセンス料を支払う必要がある。