関連記事
【開発実況シリーズ】店舗用Web予約システムを作る「#1 企画編」
この記事の動画版はこちら(画像クリックでYoutubeに飛びます)
今回から「開発実況シリーズ」の第2弾を始めていきたいと思います。
※前回(第1弾)の開発実況シリーズはこちら
この「開発実況シリーズ」は、毎回テーマとなるアプリを決めて、そのアプリを企画/設計/開発と、実際に僕が1から作っていきながら、その過程を発信していく企画です。
Webアプリはこんな風に作っていくんだ、という参考になれば幸いです。
実際にクライアントからの依頼があって作っている訳ではないので、完全に趣味プログラミングの領域になりますが、こうやって暇があればアプリを作っていくことで、実際に依頼があった時に素早く提供出来る、自分の「資産」が増えていくのでおすすめです。
Webアプリ企画フェーズ
今回作るアプリは、店舗で使うことを想定したWeb上で予約が出来る「Web予約システム」
最近では、飲食店や美容室などの店舗ではもちろん、病院などでもWeb予約ができるところが増えていますよね。
Web予約メリット
顧客側としては、空き状況が一目で分かることや、営業時間を気にせず予約が出来る。
店舗側としては、業務の削減や管理のしやすさ、予約の重複や抜けなどの人為的なミスを防げる。
などなど、ざっと挙げるだけでも多くのメリットが考えられますね。
店舗の形態によって予約の取り方に独自の要素もあると思いますので、ある程度その店舗に合ったカスタマイズが行えるような仕様にしていきたいと思います。
ということで、今回は「店舗用Web予約システム」を1から作っていきましょう!
まずは必要機能を洗い出す
作るアプリが決まったら、まずはこのアプリに必要な機能を考えていきます。
今回は、「顧客側が使う機能」と「店舗側が使う機能」に分けて考えていきましょう。
まずは、必要最低限の機能を洗い出していきます。
その後で、「汎用的に使える機能」や「あったら便利だな」と思う機能を考えますが、その全てを最初から実装しようとせず、その中でも本当に必要な機能を見極めることが重要です。
最初から多くの機能を用意したものの結局ほとんど使われなかった、機能が多すぎて使い方が分かりにくい、などという事もよくあります。
実際に運用してみないと見えてこない部分もありますし、実際にユーザーに使ってもらいながら、必要になった機能を後から足していくということもできますので、ここでは極力シンプルに考えていきましょう。
必要な機能
「店舗用Web予約システム」で出来る事として、
顧客側
ページにアクセスして、日時を選び、名前や連絡先や人数などの必要な情報を入力することで予約が出来る。
店舗側
その予約情報が月別で確認出来る。
店舗に合わせてある程度のカスタマイズが出来る。
というシンプルな構成で作っていきます。
そのために必要な機能としては
顧客側の機能
・日付選択
・予約時間選択
・予約情報入力
・予約確認メール送信(顧客向け)
店舗側の機能
・ログイン
・予約情報の月別一覧表示
・予約確認メール送信(店舗向け)
店舗のカスタマイズ機能
・予約可能日(何日先まで予約を受け付けるか)の設定
・営業時間(予約可能な時間)の設定
・1時間当たりの予約人数の上限設定
まずは、このくらいの機能があればOKかと思います。
その他、あったら便利な機能としては
・曜日ごとの営業時間の設定
・定休日の設定
・予約のメニューが選べたり、それによって予約時間が変更になる
・人数だけでなく、予約の組数の上限設定ができる
・確認メールから予約のキャンセルができる
このような機能が考えられるかもしれませんが、こちらは先ほども言った通り、今回は最初から実装はしないでおきます。
さあ、これでアプリの企画は完成です。
開発プロジェクトのTODOリスト作成
ここで、この開発プロジェクトのTODOリストを作っておきましょう。
開発は、このような流れで進めていきます。
今回は「①企画フェーズ」が完了しました。
次回は「②設計フェーズ」を進めていきたいと思います。