課題
Sticky Password は、パスワード管理分野の新規参入者ではない。セキュアなパスワード管理を求める新たなニーズの出現に応えるべく、ニッチのソフトウェアを定義するというユニークな課題を抱えた Lamantine Software は、技術、市場、ユーザーのインターネットへのアクセス方法とそのソフトウェアシステムの進化に対 応できる柔軟性を必要としていた。
結果
Tischenko 氏とそのチームは、いくつかの IDE を検討したが、それぞれに制約があった。最終的に、チームは Delphi を選択した。Delphi は、ユーザーインターフェイスを容易に構築、変更できる上に、ユーザーフィードバックに迅速に対応できる機能性を有していた。
2001 年に Lamantine Software が最初に開発した Sticky Password は、受賞歴のあるパスワード管理ソフトで、セキュアで、マルチデバイス、マルチプラットフォーム対応のパスワード管理サービスを提供する。充実した機能一式を取り揃えた Sticky Password は、自動ログイン・フォーム入力編集からデバイス間のデータ同期、セキュアなクレジットカード情報管理、そして軍事グレードデータ保護及びパスワード生成にいたるあらゆる領域において、フルセットのアクセスおよびセキュリティ機能を提供する。
その広範な機能一式に加えて、Sticky Password は、フルローカライズされたパスワード管理ソリューションの先陣であり、発売当初から英語、ドイツ語、フランス語、オランダ語、チェコ語、ロシア語、ウクライナ語、日本語、スペイン語、ブラジル・ポルトガル語、ポーランド語版を出荷していた。
課題
進化し続ける要件に遅れを取らない柔軟な IDE を見つけること
Sticky Password は、パスワード管理分野の新規参入者ではない。
「私が 20 年前にスタートしたとき、それは斬新なアプリケーションでした。当時、パスワード管理とは実際に何であるかという概略的な指針はなく、自分達が開発するソフトウェアのあるべき姿やユーザーのニーズさえ、明確に把握できていませんでした。」
Aleksandr Tischenko, Founder and CEO of Lamantine Software
セキュアなパスワード管理を求める新たなニーズの出現に応えるべく、ニッチのソフトウェアを定義するというユニークな課題を抱えた Lamantine Software は、技術、市場、ユーザーのインターネットへのアクセス方法とそのソフトウェアシステムの進化に対 応できる柔軟性を必要としていた。
Delphi ソリューション
Tischenko 氏とそのチームは、いくつかの IDE を検討したが、それぞれに制約があった。最終的に、チームは Delphi を選択した。「Visual Studio と比べ、Delphi はコンパイル速度が速く、適応性のあるモダンな RAD(Rapid Application Development)ツールです。Visual Basic を使っても、迅速にユーザーインターフェイスを構築できたかもしれませんが、言語機能があまりにも限定されていました。それに対し、Delphi は、ユーザーインターフェイスを容易に構築、変更できる上に、ユーザーフィードバックに迅速に対応できる機能性を有していました。」と Tischenko 氏は述べる。
Delphi 採用の成果
単一コードベースで顧客要件を満たす
「Delphi を使って、私たちは、公開/非公開の Windows API を使 って、他のアプリケーションのパスワードを入力可能にするモダ ンな UI を備えたネイティブ Windows アプリケーションを開発し ました。」と Tischenko 氏は語る。Lamantine Software の 6 名の開発者チームはまず UI 設計に Delphi の RAD アプローチを採用したが、まもなく、特定のロジックを持つ個々のコンポーネントで UI を構成する方法へと切り替えた。
「Delphi は、ユーザーインターフェイスを作成し、ユーザー要件 に適合させるための迅速で容易な方法を与えてくれます。」と Tischenko 氏は言う。「パワフルな言語で、OOP(オブジェクト指 向プログラミング)を用いることで、単一コードベース上に、様々 なパートナーや OEM プロジェクトの諸要件をサポートする柔軟 性を与えてくれます。」
Windows、macOS の双方に対応できる迅速な開発
Delphi のツールセットは、開発チームにさらなる柔軟性をもたら した。「他のプラットフォームへの拡張を開始したところ、アプリケーションの一部の中核部分を C++(Visual Studio)で実装し、Delphi コードと統合しなければなりませんでした。それが見事に成功したのです。」と Tischenko 氏は述べる。「ある特別なパートナープロジェクトのために、当社の既存の Delphi コードを macOS に対応させる必要がありましたが、僅か 2 週間で、支障なく実現しました。」
開発および配布サイクルの短縮
さらに、Lamantine Software は、RAD アプローチに基づき、サードパーティコンポーネント、OOP サポート、高速なネイティブコードコンパイラを活用することで、開発から配布に至るサイクルを短縮することができた。「RTL に Windows の新しい API 宣言が含まれていなくても、何の問題もなくそれらをインポートし、使用することができました。また、自分たちの Delphi コードを他のアプリケーションに挿入して、当社の Sticky Button や Automated UI のような独自の機能を迅速に提供することもできました。」(Tischenko 氏)
高速コンパイル
Delphiのコマンドラインツールを用いることで LamantineSoftware は、ビルド自動化により時間の節約も図る。「Git を利用した自社製スクリプトは、コンポーネントやアプリケーションモジュールすべてをコンパイルし、インストーラを作成、コード署名証明を行い、FTP にアップロードします。新しい開発環境を構築するときには、コードリポジトリを確認して、Delphi をインストール。自社製スクリプトを実行するという簡潔な作業で済みます。」(Tischenko 氏)
開発およびデバッグに関しては、Lamantine Software のチームは、 5 つのモジュールと 20 前後のサードパーティコンポーネントから 成る Sticky Passwordを5 分~7 分でコンパイルできる。「まさに私たちの要件にとって完璧です」と Tischenko 氏は付け加える。
メリット
柔軟性、スピード、そして限られた資源の効率的活用
Tischenko 氏と Lamantine Software のチームにとって、開発環境として Delphi を選択したメリットは明白だ。「何年もいくつかの GUIリデザインや他の種類のリファクタリングを手掛けてきましたが、どのプロジェクトでも、Delphi は私たちが望んだことを叶えてくれました。」と Tischenko 氏は語る。「このプラットフォームの重要な強みは、その快適な IDE エディタ、Windows コード用の高速コンパイラ、既存のコードベースを容易に新バージョンへと移行可能にする高い後方互換性です。」
「私たちは小さな会社です。複数のツールを利用するとなると、それぞれのツールに必要なスキルセットをもった社外の人材に頼らざるを得ません。Delphi を使い続けることで、時間もお金も大幅に節約できます。」
Aleksandr Tischenko, Founder and CEO of Lamantine Software