開発方針
ユーザー様とのお打ち合わせで、ご要望をお伺いしながら費用面も含めてユーザー様と当社の双方が納得できる範囲、規模での開発をさせて頂きます。
ユーザー様のご要望は重要視いたしますが、費用面等を含め状況により全て満たせるとはがぎりません。ただし、ご納得頂けるようなご提案をさせて頂きます。
開発に当たっては、設計書などのドキュメントの作成を最小限とし、プロトタイプを作成することで実際の画面のイメージや主要となる機能の操作性、動きなどを確認する方法を取っています。プロトタイプによる確認後、ご提供するアプリケーションを作成して行く方式を採用しています。
プロトタイプ方式について
一般的にシステムの構築に当たっては設計書を作成し、その設計書に基づき打ち合わせを行い設計書を承認することにより、アプリケーションの開発が行われます。しかし、設計書は紙ベースでありそこに記述されている文書や画面レイアウトから実際に使用する画面や操作性及びアプリケーションの動作をイメージするのは結構大変なことです。
その為、実際のアプリケーションが導入されてから使用者側と開発者側とのとらえ方の違いが発覚することがあります。導入後に、アプリケーションを修正、改修することは手間もかかり、困難なケースも発生します。
当社は、設計書などのドキュメント作成を軽減させて頂く代わりに、プロトタイプ(疑似アプリケーション)を作成する事により、開発前に導入時のアプリケーションに近いものを実際に操作していただき、ご要望や意見を伺う方法を取っています。
実際に、利用者の方に画面を操作していただくことにより稼働時のイメージを持ってもらうことにより、導入後のトラブルを極力少なくすることができると信じております。
プロトタイプは1~3週間毎に前回の指摘・要望を回収したもの及び新しく作成したものを提供し、確認をして頂きます。
動作環境について
開発するアプリケーションは、JavaによるWebシステムが基本となります。動作させるマシンとしてJavaが実行可能なWebサーバとなるサーバ機が1台必要となります。サーバ機のOSはWindows,Linuxなどいずれでも問題ありません。利用者はWebクライアントであるIE(インターネット・エクスプローラ)があれば、その他のソフトウェアは必要としません。
データの管理としてデータベース・システムを利用しますが、PostgreSQL,MySQL,OracleなどJavaから操作可能なRDB(リレーショナル・データ・ベース)であれば対応可能です。
Webシステムを選択した理由
- 管理費用の軽減
システム管理者にとっては、運用するうえでサーバのみ管理すればよく、アプリケーションの改修・改善においてもサーバ機のみに対して行えば良いので管理が容易になります。 - クライアントの簡便性
利用者からすれば、比較的使い慣れたWebクライアントによる操作となり、利用するパソコンが変わってもソフトウェアのインストールや動作環境の確認がいりません。
また、サーバ機の設定によっては社外からの利用も可能となります。 - データの共有化
全てのデータがサーバ機上で一元的に管理されているので、必要となる情報をどこからでも取り出し、閲覧することが可能となります。 - 汎用性が高い
WebサーバとWebクライアント間はHTTP(HyperTextTransferProtocol)等の汎用的なプロトコルを利用しているので、WindowsパソコンやUNIXワークステーションなど環境の異なる様々なプラットフォーム上で利用可能となります。 - 機密性、安全性を高められる
暗号化された通信形態のSSL(Secure Socket Layer)など標準化された手順が用意されている。また、ユーザーIDとパスワードによるログイン制御や機能制御などを行う事により人的・組織的セキュリティーを高めることができます。
など、クライアントサーバ型に比べWebシステムは利用者側にとってメリットが多いと感じています。
Javaを選択している理由
- 汎用性
JavaはWindows,Linuxなど様々なプラットフォーム上で稼働させることができるので、サーバ機のOSを自由に選択することが可能となります。 - 可用性・安定性
Javaの実行環境にはメモリー管理やプログラムの再利用など可用性や安定性を高める仕組みが用意されている。 - 低コスト
実行環境やJavaをサポートしたWebサーバ及びデータベースとの接続など稼働させるうえで必要となるソフトウェアがフリー(無料)で提供されている。
また、開発環境やJavaで利用可能なデータベースシステムなどもフリーで提供されているもので十分である。 - 拡張性
Object指向言語であるので、アプリケーションの拡張性や再利用性が高く、アプリケーションの改修や改善に対して他の言語に比べ対応が容易である。
また、Java環境ではネットワークプログラミング用にサーブレットやJSP(JavaServerPage)などが用意されており、Webシステムのサーバ用プログラムの開発に適しています。
フレームワークについて
当社では、当社独自で作成したアプリケーションフレームワーク(Application Framework)を使用して開発を行います。
フレームワークとは、頻繁に必要とされる汎用的な機能をまとめて提供することにより、アプリケーションの土台として機能するソフトウェアのことで、アプリケーションの雛型となります。
フレームワークを使用することによる利点
- 開発期間の短縮、コストダウン
基本的な部分をフレームワークがカバーしているので、業務に特有な部分のみ開発することとなり、開発期間の短縮がはかれそれに伴いコストダウンとなります。 - 安全性、安定性の向上
クロスサイト・スクリプティング(Cross Site Scripting) などのWeb上の脅威に対する対応やログの出力などが標準で装備されています。一覧形式の画面でのページ制御や画面とアプリケーション間の制御が提供されているので、個別に同様な機能を開発するよりもシステムが安定します。 - 拡張性の向上
日付選択画面などの共通的な処理が用意されているので、簡単な機能の拡張に対して比較的容易に行う事ができる。
プロトタイプ方式が可能なのも、当フレームワークを使用することにより、短期間で機能の実装を行う事ができるからです。