なんちゃって要件定義 ~Laravelで動画投稿機能を作る!⓪ ~

未経験者のためのPHP・Laravel講座

f:id:sakusaku57:20191231020047p:plain

動画投稿機能の概要

これから、Laravelで動画を投稿する機能を作っていきます。

ただ今回はまだプログラムを書きません。

本記事では”要件定義〜設計”をざっくりやっていこうと思います。

 

未経験からエンジニアを目指している方向けに書いている本サイトですが、エンジニアになった場合、要件定義から設計のフェーズは避けては通れない道です。

 

前回の記事の最後の方にも若干書きました。

www.maji-peace.com

 

要件定義とは”なぜ作るか?”を決めること

要件定義って聞くと、なにか身構えてしまいますよね。

要件定義は、システム開発において一番重要といっても過言ではありません。また、お客さんと頻繁にコミュニケーションを取るフェーズでもあります。それゆえこのフェーズはお金がもらえます笑

 

ざっくりといえば、要件定義とは”なぜ作るのか?”を決めることです。

企画書を作るようなもんだと考えてもらえればイメージしやすいと思います。

 

詳しく知りたい方には、Backlogさんの記事がわかりやすかったのでご紹介します。

要件定義とは何?スムーズな進め方や成果物(要件定義書)についても解説 | Backlogブログ
要件定義とは、クライアントの要望とその要望をどのように叶えるのかを文章としてまとめたものです。本記事では、要件定義とは何か、進め方や成果物の書き方について解説します。プロジェクトに参加する機会のある方や、IT業界を志している方も、この記事を読んで要件定義についての知見を深めましょう。

 

今回で言えば、「動画を投稿する機能」を作るだけなので要件定義もクソもありません笑

 

「Laravelを使った開発を学ぶために、動画を投稿する機能を作ること」という風に定義しておきましょう。

設計とは”何を作るのか?”を決めること

要件定義の後は、基本設計と詳細設計と言われる設計フェーズに入ります。

この辺がまた細やかにあれこれと決めていくややこしいところですが、ざっくりと言えば、どんな昨日かなどの”何を作るのか”を決めるフェーズです。

 

この設計がしっかりできているかどうかで、次のプログラミングをしていくフェーズがスムーズに進むかどうかが決まります。

要件定義はお客さんとのコミュニケーションでしたが、設計書は、プログラマーとのコミュニケーションと考えてください。

 

「プログラマーに渡したらその設計書通りに作れば完成する」ものを作れればベストです。

 

実際の設計書って何が必要なの?と気になる方は調べてみてください。

参考に記事を貼っておきます。

基本設計・詳細設計とは?仕様書との違いは?企業の設計課題を解決する方法
ソフトウェア開発工程の設計には基本設計と詳細設計の2つの工程に分かれています。本稿では2つの設計の違いを明確にして、ソフトウェア開発における設計の役割について解説します。

 

今回はざっくりだけ決めておきます。 

画面は最小限にします。

  • 動画情報一覧画面
  • 動画情報詳細画面
  • 動画情報投稿画面
  • 動画情報編集画面

 

次は機能です。

  • 動画情報登録機能
  • 動画情報編集機能
  • 動画情報削除機能
  • 動画一覧機能
  • 動画アップロード機能
  • 動画削除機能

 

データベースには以下2つのテーブルを作ります。

  • 動画情報テーブル
  • 動画テーブル 

 

開発環境は、これまで作ってきたHomesteadを使っていきます。

 

以上で、要件定義〜設計フェーズをざっくり紹介しました。

実際の現場では、現場によって様々な解釈やドキュメントがありますので、そこで経験しながら覚えていけると思います。

 

未経験からエンジニアを目指す場合、オリジナルのアプリを作る方が多いと思いますので、その開発をする段階での参考になれば幸いです。

 

続きはこちら

www.maji-peace.com

 

コメント

タイトルとURLをコピーしました