本記事作成の背景
IT系の職についたものの、言語で開発することがなく、フレームワークに触れつつ苦手なC++を学習していこうかと考えてます!
そのうえで誰もが使うであろうものを作成するとなったとき、タスク管理アプリがいいのかなと思いまして開発に至りました。
本記事では基本設計、詳細設計と困った際の試行錯誤を記載していきます。
開発背景
タスク管理アプリは世の中にあふれてはいるが、タスク管理のみとなっており、プロジェクトとは無関係の振り返りがおろそかになってしまう
クライアントに説明するときは不要でも今後の作業の効率化のために振り返りは必要
振り返りを別ファイルで保存すると、どのタスクに紐づいたものでどういうときの教訓だったかというのが把握しずらくなる
そのため、タスク管理票内で、振り返りも紐づけておくことで、再度見たときに思い出し、効率化につながる
概要
個人またはプロジェクト内で使用するタスク管理アプリ。
個人の進捗、プロジェクトの進捗をチームリーダーがひと目で把握できるようにすることができ、
タスクの振り返り欄を設けて新人の振り返りにもなるようにしておくことが目的
システム構成
規模
- 開発規模:1.5人月
- 開発人数:1人
機能要件
機能一覧
- プロジェクトの登録
プロジェクト名称、チームメンバーをチームリーダーが登録
内容はのちに編集できるようにすること - 親タスクの登録
クライアントの名称、タスクの名称、背景、目的、完了の定義、チームメンバー、をチームリーダーが登録
内容はのちに編集できるようにすること - 子タスクの登録
各タスクに対して、調査、実装、レビューなどやることの一覧とその目的をチームリーダーまたはチームメンバーが登録
内容はのちに編集できるようにすること - タスクの進捗表示
親タスク、子タスクの進捗状況を表示する
親タスク:完了,未完了の状態管理と子タスクの完了個数に応じたパーセント表示
子タスク:未完了,完了,社内レビュー中,レビュー中の状態管理を持たせる - タスクごとに振り返りの設定
親タスク:チームリーダーがタスク完了時に振り返りの入力、子タスクにおけるチームメンバーの振り返りを表示
子タスク:チームメンバーがタスク完了時に振り返りを入力
画面
- 会員登録画面
パスワード,メールアドレス,名前を登録する画面
クラウドの場合、チームリーダーかチームメンバーの権限設定も可能 - メンバーの招待画面
メールアドレスを指定して、招待する画面 - 招待メンバー用会員登録画面
名前、パスワードを登録する画面。
会員登録画面と違い、メールアドレスの確認を行わない - パスワード設定画面
招待されたメンバーもしくはパスワードを忘れた人ようの新たなパスワードの入力画面 - ログイン画面
パスワードでログインする画面 - プロジェクトの選択画面
プロジェクトを選択する画面 - プロジェクトの登録画面
プロジェクトを新規登録する画面 - タスク登録画面
タスクを登録する画面 - プロジェクト全体のタスク管理画面
タスクの進捗管理、子タスクの追加、振り返りの確認をする画面
振り返りは表示非表示を切り替えれること - 個人ごとのタスク管理画面
関連する親タスクの表示、子タスクの進捗を管理、振り返りの設定をする画面 - チームリーダーの設定画面(オンプレミスのみ)
登録されたメールアドレスで検索し、チームリーダーを設定する画面
データ
本システムでは、以下のデータが作成される
- 会員のメールアドレス名前、各プロジェクトのタスク内容がデータベースに保存されます。
非機能要件
- 表示は1秒以内に行われること
- 100台以上の同時アクセスに耐えられること(オンプレミス版)