LAMP環境(Linux / Apache / MySQL / PHP)で構築する業務用 Web システムの設計・開発手法を具体的にご説明したいと思います。
目次
Webシステムの特徴
業務用 Web システムの特徴としては、まず、インターネットを使うことによりデータの操作や管理が オフィス以外のどこからでも可能であるということ。また、ブラウザがあれば スマホからでも操作できることなどの利便性もあげられると思います。
また、2点目として そのシステムにログインするユーザーにログイン時にアクセス権限を付与し、システム内で常時そのユーザー権限を管理し切り分けることによって、任意のメニューに対して 提供・許可するメニューや機能を切り分けることができるという点。また それにより、開発の工数やコスト面でも シンプルな画面構成で より直感的な UI (User Interface) を実現できるという特徴を兼ね備えます。
アクセス権限の具体例
アクセス権限の具体例として…例えば、契約申込メニューはエンドユーザーにのみ更新+閲覧許可する、または、代理店に更新+閲覧権限を許可し、エンドユーザーには閲覧権限のみを許可する…など、開発工数としては [契約申込] 1メニュー/PHP1ファイルのみを用意し、そのファイルにアクセスしたアクセス権限によって 提供機能を切り分けるようなシステムを設計・運用することが可能です。
ドメイン/ディレクトリ構成
ドメイン および ディレクトリ構成としては、よくあるのはルートディレクトリがホームページになっており、その一部に用意されるログインフォームからログインすると system.hogehoge.com などのサブドメインに移動し、Web サーバー内部的には /system/ ディレクトリに保存されたプログラムファイルを表示させる … といった構成などは一般的ではないかと思います。
または、大規模システムであれば(同一サーバー内ではなく)トークンを渡して別サーバーに飛ばしたり…といったこともあると思います。
データベース構成
データベースは各種データを保存し、効率的に検索することができるためのソフトウェアですが、機能によってデータの種類は大きく2種類に分かれます。
1つ目は「マスター」と呼ばれるもので、簡単に言うと1つ1つのデータが重複せずに一意に定義され … 例えて言うなら会員台帳に代表されるようなデータです。
2つ目は「トランザクション」と呼ばれ、1つ1つのデータは時間/時系列情報を除いて全く同じデータが重複して追加される可能性のある … 例えていうなら売上等の取引データになります。
ユーザーインターフェイスの流れ
ユーザーインターフェイスの流れとしては、以下のような流れになると思います。
- ログインメニューからログインします。
- 業務用システムのメニュー画面を表示します。
- 業務用メニューの操作を実行します。
- 業務用メニューの操作を完了します。
- ログアウトボタンをクリックしてシステムからログアウトします。
上記をもとに、次にメニュー構成を考えます。
メニュー構成
メニュー構成としては、最低限 以下のようなメニューが必要になります。
- ログイン
- メニュー
- 各種データ操作
- ログアウト
具体的な機能 ~ ログイン / ユーザー 登録
上記メニューのうち ①ログイン を実現させるために必要な機能としては、開発者自身およびクライアント様(= 管理者)がシステムにログインできなければいけませんので、それらのユーザーをまずは登録するための [ユーザー 登録] メニューを作成する必要があります。
業務用 Web システムのモデル
業務用 Web システムには、いくつかの典型的なモデルがあります。
- 販売管理システム … システム内にエンドユーザーを登録し、顧客管理および販売管理の機能を持ちます。
- 代理店管理システム … システム内に代理店をユーザーとして登録し、エンドユーザーの情報は契約データとして登録するモデルです。
- その他
まとめ
[ユーザー 登録] メニューの具体的な開発手法は こちら でご紹介いたします。
SNS開発18年で2つのSNSを開発・運用中の当社が、あなたのアイデアを形にするお手伝いをします。