.NET 開発基盤部会 Wiki

目次

概要

OpenSaaS1ExecEngineの開発で検討したこと。

Tablet系

画面サイズ

専用端末化

Android

iOS

iOS6から追加された「Single App Mode」が使える。

なお、iOSのシングルアプリモードは、
アクセスガイドで、上下エリアの操作を無効化できるようで、
HTMLコンテンツでもブラウザのフルスクリーンモードの解除を抑止できる。

HTML系

オフライン

という方式が良いと考えた。

チェック

window.navigator.onLineでチェック可能。

ストレージ

ポピュラーな、Key-ValueのWebStorageが良さそう。

定期的な情報送信

バック・グラウンド処理

setTimeoutやsetIntervalなどを用いることで実現できる。
最新の「Web Workers」については、別に使用しなくていもイイかな。という感想。

JSON処理

成功と失敗

エフェクト

効果音

アニメーション

二重クリックの防止

業務系

サイン・アップ

DBスキーマ系

に使用する。

マスタ・データ

企業テーブル

店舗テーブル

端末テーブル

ユーザ・テーブル

画面初期化情報テーブル

以下、画面初期化情報の項目情報。

画面テーブル

画像テーブル

トランザクション・データ

結果テーブル

画面系

コンテンツ画面

HTML/CSS/JavaScript技術を中心に使用して開発する。

カスタマイズ画面

エンプラ寄りのWeb Forms技術を中心に使用して開発する。

非構造化データ(JSONデータ)の入力・編集処理

JSONの情報から入力・編集フィールドを自動生成

条件検索と集計・グラフ表示機能

エンプラ寄りのWeb Forms技術を中心に使用して開発する。

ボタンIDの集計

期間の中での変化

上記を踏まえた技術選定

Open棟梁はコミュニティ連携のため前提で(笑)。

OS

Windows

DBMS

PostgreSQL

WAS

IIS+ASP.NET

.NET開発基盤部会だけに。

フレームワーク

画面毎

ASP.NET Web Forms

ASP.NET Web Formsを選択した。

Ajax - REST ( JSON ) - WebAPI

Web Formsだが、オフライン実装を考慮しPostBack?無しのWebAPIで実装。

ADO.NET

ADO.NETでイイと考えた。

,etc.

本開発

画面

メンテナンス画面

コンテンツ画面

集計画面

テーブル

マスタ

トランザクション

SQL

CREATE TABLE Answers(
    ID                       integer        NOT NULL,
    EnterprisesID            integer        NOT NULL,
    InitializeScreenInfoID   integer        NOT NULL,
    StoresID                 integer        NOT NULL,
    DevicesID                integer        NOT NULL,
    Datetime                 timetz         NOT NULL,
    AdditionalSearchCriteria VARCHAR(40),
    AnswerID                 integer        NOT NULL,
    CONSTRAINT PK_Answers PRIMARY KEY (ID)
);
--------------------
-- Index:
--------------------
CREATE INDEX Split_key_InitializeScreenInfo ON Stores (EnterprisesID);
CREATE INDEX Split_key_Answers ON Devices (EnterprisesID);

CLUSTER Stores USING Split_key_InitializeScreenInfo;
CLUSTER Devices USING Split_key_Answers;

--------------------
-- Sequence:
--------------------
CREATE SEQUENCE TS_InitializeScreenInfo START 1001;
CREATE SEQUENCE TS_AnswersID;

プロト開発

Ph1

3 画面

コンテンツ画面

種々の情報は固定

集計画面

Ph2

6 画面追加

3 テーブル * CRUD画面は 2 画面(検索・詳細) = 6 画面

メンテナンス画面の追加

コンテンツ画面

種々の情報を可変に。

Ph3

8 画面追加

4 テーブル * CRUD画面は 2 画面(検索・詳細) = 8 画面

メンテナンス画面の追加

コンテンツ画面

サイン・イン、サイン・アウト(認証)に対応


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS