昨日(2022/11/29)から、エンジニアYoutuberの山浦清透さんが運営している独学エンジニアで学習をスタートしたので、その学習内容を定期的にアップする。
※レッスン1、2に関しては既知のことが多かったため、ここでは割愛する。
プログラムを作れるようになるために
◯プログラミングの文法について学んでもプログラムを作れない原因は、プログラムの作る経験を積んでいなから。(筆者はよく料理をするのだが、確かに動画やレシピを見て料理をひたすら作っているだけで、ただの一度も料理の基礎について学んだことはない。)
◯課題設定とタスクばらしが骨格で、以下の流れで作成する。
- 課題を設定する
- 要件に落とし込む
- 要件をタスクにバラし、実行する順番を決める
- 一つずつ増やしていく
課題定義
◯背景・目的
- 解決したい課題は?
- 何のためにしたいのか?
- なぜシステム化する必要があるのか?
◯ゴール
- 目標は?
- 達成したいときにどのような状態になっていればよいのか?
◯やらないこと
- スコープの対象外のことは?
- 制約条件は?
◯インセプションデッキ
- 「アジャイルサムライ」という本を読むと良いらしい。
要件定義
システムを作る上で「必要な条件」を定義して、システムに落とせるようにする。
業務要件、機能要件、非機能要件、運用・保守要件を定義する。
※今回は非機能要件、運用・保守要件については記載しない。
◯業務要件
- 業務フロー
登場人物ごとに業務(行動)の流れを図にする。
◯機能要件
-
ページ遷移図
必要なページを洗い出して、ページの流れを図にする。 -
WF(画面図)、機能、データ
WFはデザインをあてずにページの構成要素をまとめたもの。項目とか文言はここで決め、見た目の装飾以外は決める。
機能はこのページで使う機能、できること。
データはこのページで登録したり、使用するデータのこと。
WF(画面図)、機能、データの3点は同画面に記載するとわかりやすい。
タスクばらし
◯方法
1.ゴールを確認・理解する
2 ゴール達成のために必要な項目をリストアップする
3.実行順に並び替える
コツは1時間以内の小さな単位で分割すること
◯毎日の仕事をタスクばらししよう
- 仕事に取り掛かる前に、今日やることを1時間単位でスケジュール作成
- 仕事完了後に、目標、実際、差分を記載(差分からなぜできなかったかを考える)