Closed spadr closed 5 months ago
ユーザーがダッシュボードを確認するまでのシーケンス図
sequenceDiagram
participant User
participant App
participant SecureStorageService
participant SupabaseService
User->>App: アプリを起動
App->>SecureStorageService: 環境情報を読み込み
alt 環境情報が存在する
SecureStorageService-->>App: 環境情報を返す
App->>App: ネットワーク接続を確認
alt ネットワーク接続がある
App->>SupabaseService: 環境情報を使用してデータを取得
SupabaseService-->>App: データを返す
else ネットワーク接続がない
App->>User: ネットワークエラーを表示
end
else 環境情報が存在しない
SecureStorageService-->>App: 環境情報がないことを通知
App->>User: 環境情報が設定されていないことを通知
end
リポジトリパターン
sequenceDiagram
participant feature
participant develop
participant release
participant main
participant USERS
note over feature, main: 開発開始
main->>develop: developブランチを作成
develop->>feature: feature/*ブランチを作成
feature->>develop: feature/feature1をマージ
note over develop: [CI/CD] ユニットテスト
develop->>release: release/v1.0.0ブランチを作成
note over release: [CI/CD] 統合テスト
release->>feature: feature/bugfix1ブランチを作成
feature->>develop: feature/bugfix1をマージ
note over develop: [CI/CD] ユニットテスト
develop->>release: release/v1.0.0ブランチを修正
note over release: [CI/CD] 統合テスト
release->>main: リリースとタグ付け v1.0.0
note over main: [CI/CD] 自動デプロイ
main->>USERS: APKのインストール
note over USERS: 利用可能
リポジトリパターン(HotFix)
sequenceDiagram
participant feature
participant develop
participant release
participant main
participant USERS
note over feature, USERS: リリース後バグ発生
note over USERS: なんか変
USERS->>develop: GitHub Issuesで報告
note over develop: 障害箇所特定<br>最優先タグ付与
develop->>feature: feature/hotfix1ブランチを作成
feature->>develop: feature/hotfix1をマージ
note over develop: [CI/CD] ユニットテスト
develop->>release: release/v1.0.1ブランチを作成
note over release: [CI/CD] 統合テスト
release->>main: リリースとタグ付け v1.0.1
note over main: [CI/CD] 自動デプロイ
main->>USERS: APKのインストール
note over USERS: 利用可能
ワークフローチェック
アーキテクチャはMVVM Riverpodで状態管理 BottomNavigationBarを使った複数画面のアプリ