# 販売アシスト 1 号「母艦お局様」 - 要件定義書 ## 1. プロジェクト概要 |項目|内容| |---|---| |**プロジェクト名**|販売アシスト 1 号 | |**コードネーム**|母艦「お局様」| |**コンセプト**|オフライン単体で見積・納品・請求・レジ業務まで完結 → クラウド同期オプション| |**技術スタック**|Flutter + SQLite + Google エコシステム| --- ## 2. 機能一覧 ### 2.1 マスタ管理(完了済み) - [x] 商品マスタ - [x] 得意先マスタ - [x] 仕入先マスタ - [x] 倉庫マスタ - [x] 担当者マスタ ### 2.2 販売管理機能 #### 短期計画(1-3 ヶ月) |機能|優先度|ステータス| |---|---|---| |見積入力画面|High|[ ] TODO: 実装| |受注入力画面|Medium|[ ] TODO: 実装| |売上入力画面|High|[x] 完了| |請求作成画面|High|[ ] TODO: 実装| |返品処理画面|Low|[ ] TODO: 実装| |領収書作成画面|Low|[ ] TODO: 実装| #### 中期計画(3-6 ヶ月) |機能|優先度|備考| |---|---|---| |在庫管理モジュール|Medium|既存マスタと連携| |販売日報/月報|Medium|管理画面向け| |顧客ポータル|Low|Web 版との連携予定| ### 2.3 レジ業務(完了済み) - [x] POS システム実装 - [x] キャッシュ・カード決済対応 - [x] 領収書発行機能 - [x] レシート出力機能 ### 2.4 クラウド同期オプション(未着手) |機能|優先度|備考| |---|---|---| |Google アカウント連携|High|Gmail/Drive 統合| |リアルタイムデータ同期|Medium|Conflict resolution| |オフラインモード切り替え|Low|バッテリー最適化| --- ## 3. 非機能要件 ### 3.1 パフォーマンス - **起動時間**: 最大 2 秒以内(冷スタート) - **処理応答**: UI 操作からレスポンスまで 50ms 以内 - **同期サイクル**: デフォルト 60 分、手動トリガー機能 ### 3.2 互換性 - **Android**: API レベル 21+ (Android 5.0+) - **Google Play 版**: AARL 制限あり(サーバー経由認証) - **iOS**: 対応予定(後日検討) ### 3.3 セキュリティ - 機密データ暗号化(AES-256) - Google API トークンローテーション - SSL/TLS 通信の強制 --- ## 4. アーキテクチャ要件 ### 4.1 レイヤー構成 ``` ┌──────────────┐ ┌──────────────┐ │ UI Layer │◄──►│ Service Layer │ │ (Screens) │ │ (BFF) │ └──────────────┘ └──────────────┘ │ ┌──────────────┐ ┌──────────────┐ │ Data Layer │ │ External │ │ (SQLite + │◄──►│ Services │ │ Cache) │ │ APIs │ └──────────────┘ └──────────────┘ ``` ### 4.2 データベース要件 - **形式**: SQLite - **バージョン管理**: MIGRATIONS ファイルで管理 - **同期ログテーブル**: `sync_metadata` に保存 - **クォリアティチェック**: アプリ起動時に DB コンテンションテスト --- ## 5. インテグレーション要件 ### 5.1 Google エコシステム連携 - [ ] Google Sign-In (OAuth2) - [ ] Gmail API (メッセージ/ドラフト同期) - [ ] Google Drive (ファイル保存・共有) - [ ] Firebase Analytics (利用動向分析) - [ ] Crashlytics (エラー追跡) ### 5.2 外部サービス連携 - | サービス | 目的 | ステータス | |---|---|---| | LINE Notify | 通知配信 | ✅ 完了 | | Google Calendar | イベント連携 | ❌ 未着手 | | Google Forms | アンケート収集 | ❌ 検討中 | --- ## 6. 開発プロセス要件 ### 6.1 コード品質管理 - **Linting**: `flutter lint` でエラー回避 - **フォーマット**: `dart format --set-exit-if-changed` - **テストカバレッジ**: Minimum 70% - **CI/CD**: GitHub Actions で自動ビルド・デプロイ ### 6.2 ドキュメント管理 |ドキュメント|更新頻度|担当者| |---|---|---| |README.md|変更時|開発者全員| |APISpec.md|API 変更時|Backend エンジニア| |UI_Guide.md|デザイン変更時|Design Engineer| ### 6.3 環境管理 ```bash # 必須ツールリスト - Flutter SDK ≥ 3.19 - Android SDK (API 21+) - Google Cloud Console プロジェクト - Firebase プロジェクト設定済み ``` --- ## 7. デプロイメント要件 ### 7.1 アプリストア対応 - [ ] Google Play: AARL 制限クリア(サーバー認証) - [ ] Deep Link 登録(`app://://...`) - [ ] APK ファイル署名管理 ### 7.2 バージョン管理ポリシー ```yaml # semver コマンドライン version_major | version_minor | version_patch 1 | 0 | 0 # 初期リリース 1 | 1 | 0 # マイナー機能追加 1 | 0 | 1 | バグ修正のみ ``` --- ## 8. 今後のロードマップ(Q1-Q2 2026) ### Q1 2026(現在 ~4 ヶ月後) - [ ] レジ業務の売上入力画面改善 - [ ] クラウド同期機能の開発開始 - [ ] Google Play 版リリース準備 ### Q2 2026 - [ ] iOS 版の調査・検討開始 - [ ] CRM モジュールの導入評価 - [ ] リモートサポート機能の実装 --- ## 9. 承認事項 |項目|担当者|承認日|備考| |---|---|---|---| |要件定義書最終版|開発リーダー|2026/03/07|上記内容を承認| |技術スタック選定|CTO|2026/03/05|Flutter 採用決定| **承認者**: 管理母艦「お局様」 **最終更新**: 2026/03/07 **バージョン**: 1.0 (Initial Release)