前回まで
前回までは機能の洗い出しを行いました。
参考資料
この記事の目的
今回から基本設計のフェーズに入ります。
基本設計は大きく分けて、画面設計、機能設計、データ設計の3つに分かれます。
この記事では基本設計の概念を整理していきます。
基本設計の目的
どうやってビジネス要件をシステム実装するのか
- 画面設計:オブジェクト指向UI、タスク指向UI
- 機能設計:ドメイン駆動設計
- データ設計:ドメイン駆動設計
基本設計の流れ
- 画面設計
- 機能設計
- データ設計
- 1~3を繰り返してブラッシュアップする
画面設計を最初に行う理由として、実際にクライアントに見てもらうことで要件定義の検討漏れが早期に見つかるためです。
その背景として、クライアント側にこの要件定義で本当に良いの確認してもらう(機能が足りてないことがあるから)必要があるです。
画面設計
UI/UXの考え方
UX(User Experience):ユーザーにどんな体験をして欲しいか
UI(User Interface):ユーザーが実際に操作する画面をどう作るか
UIとUXの違い
UX:画面設計の目的
UI:UXを実現する手段
おしゃれ、使いやすい、直感的などの体験(UX)を実現するために、ボタンの配置やページ遷移の方法(UI)を考える
タスク指向UI/オブジェクト指向UIの違い
UIにはタスク指向UI/オブジェクト指向UIの2つの考え方があります。
この考え方の違いは、タスク(アクション、行動)を起点に設計しているか、オブジェクト(目的のもの、対象物)を起点に設計しているかの違いです。
タスク指向UI:行動・アクション(タスク)を起点に設計
タスク指向UIの例として、銀行ATMや賃貸の検索サイトがあります。
賃貸の検索サイトの場合、①検索方法を選択→条件を絞り込む→③物件表示
オブジェクト指向UI:ユーザーが欲しいもの、知りたいこと(情報にフォーカス)
オブジェクト指向UIの例として、フードデリバリーサイトがあります。
フードデリバリーサイトの場合、①一覧から食べたいものを選択→②店舗とメニューを選択→カートに入れる
オブジェクト指向UIが注目されている?
オブジェクト指向UIが注目されている1番の理由として、操作が直感的にできることが挙げられます。
日常生活でも私たちは何らかの目的があった上で行動することが多いと思います。
このように、対象物から行動に移行する方が自然な考え方です。
オブジェクト指向UIは日常生活と似ているため、直感的で目的にたどり着きやすいUIであるとされています。
参考サイト
機能設計
画面設計が終わったら、システムに実装する機能を設計します。
機能設計は裏側で実行する処理、必要なデータを定めるフェーズです。
機能設計で考えること
- ユーザーの操作の裏側で行われる処理(機能名と処理内容)
- 処理に必要なデータ、データの取得元(画面から入力、DBから取得等)
- 処理したデータの受け渡し先(画面表示、DBへ保存)
データ設計
最後はデータ設計です。
###データ設計で考えること
- データの具体的な中身
- DB設計
- データの流れ(データフロー)
ここで意識すべきことは、データは大きく分けて4種類ある点です。
プログラムに入力するデータ
- 画面からユーザーが入力するデータ
- データベースから読み取るデータ
プログラムから出力するデータ
- 画面に表示するデータ
- DBに保存するデータ
最後に
これで基本設計の概念整理を終了します。
次回から画面設計に入って行きます。