FURIMA
テックキャンプの最終課題にて作成したアプリケーションを紹介します。また、自身で実装した箇所、および開発を通じて得られた経験についても紹介します。
アプリケーション情報
接続先情報
ID/Pass
ID: admin
Pass: password
テスト用アカウント等
購入者用
メールアドレス: [email protected]
パスワード: 1111111
購入用カード情報
番号: 4242424242424242
期限: 01/27
セキュリティコード:1111
出品者用
メールアドレス名: [email protected]
パスワード: 2222222
Githubリポジトリ
開発状況
開発環境
Ruby/Ruby on Rails/MySQL/Github/AWS/Visual Studio Code
開発期間と平均作業時間
開発期間:7/22〜8/11(21日間)
1日あたりの平均作業時間:10
開発体制
人数:3
アジャイル型開発(スクラム)
Trelloによるタスク管理
動作確認方法
Chromeの最新版を利用してアクセスしてください。
ただしデプロイ等で接続できないタイミングもございます。その際は少し時間をおいてから接続ください。
接続先およびログイン情報については、上記の通りです。
同時に複数の方がログインしている場合に、ログインできない可能性がございます。
テストアカウントでログイン→トップページから出品ボタン押下→商品情報入力→商品出品
確認後、ログアウト処理をお願いします。
開発担当箇所
担当箇所一覧と確認方法
本番環境へのデプロイ
トップページ(フロントエンド)
http://54.238.56.136/にアクセスするとご覧いただけます。
商品詳細ページ(フロントエンド)
トップページ上部の検索バーから商品名で検索いただくか、ページ中央付近の新規投稿商品に表示されている画像をクリックするとご覧いただけます。
出品商品一覧新着表示機能(バックエンド)
http://54.238.56.136/にてご覧いただけます。
商品詳細表示機能(バックエンド)
トップページ上部の検索バーから商品名で検索いただくか、ページ中央付近の新規投稿商品に表示されている画像をクリックするとご覧いただけます。
各担当箇所の詳細
本番環境へのデプロイ
概要
アプリケーションをAWSのサーバにデプロイし、全世界に公開状態にする
担当内容
EC2インスタンスの生成
Ruby on Railsのgemである"CarrierWave"、"fog-aws"を用いたS3への画像アップロード機能の実装
Capistranoによるデプロイ作業の自動化
Basic認証の導入
トップページ(商品新着一覧ページ)
概要
新着順に商品が一覧表示されるページ
ピックアップアイテムに該当商品を出品すると、トップページに一覧表示される
担当内容(バックエンド)
コントローラーに、アイテム一覧からピックアップアイテムに該当商品を新着順に表示され、スクロール表示出来るようにする
担当内容(フロントエンド)
haml,scssを使用しトップページのマークアップ作業
商品詳細ページ
概要
商品の情報が表示されるページ
出品商品の画像をクリックすると表示される
担当内容(バックエンド)
データベースに登録された該当商品の情報を抽出し、確認出来るようにする
担当内容(フロントエンド)
haml,scss,javascriptを使用し詳細ページのマークアップ作業
開発を通じて得られた知見
工夫した点
①チームとして工夫を行った点
マークアップ作業担当者がそのページのバックエンド作業も併せて行ったため、作業を効率的に進めることが出来た。
また、ユーザー機能や商品管理機能など他の機能のベースとなる必須機能を早めに実装すべきと考えたため、マークアップ作業は機能確認出来る最小限に留め、バックエンド開発を優先的に行うことでスムーズな開発が出来るようにした。
②個人として工夫を行った点
トップページや詳細ページの、ビュー崩れの有無や必要な情報が網羅されているかを丁寧に確認した。
苦労した点
①チームとして苦労した点
作業当初はGitHubに各々がマージする際にコンフリクトが頻発し、その解決策が分からず苦労した。開発を進めていく中で、コンフリクトが起こりやすい箇所があらかじめ判別出来るようになった。
そのため、チーム内でコードレビューする際にお互い指摘し合う習慣にした結果、どうすればコンフリクトが回避出来るのか理解出来るようになった。
②個人として苦労した点
デプロイの際にエラーが起こり本番環境で全く動作しなくなることがよく発生した。特にマイグレーションファイルを編集したり追加したりする際にデータベースとの兼ね合いで発生することが多かった。
そのため、チームの誰かがマージしマスターが変更された際には毎回すぐにデプロイを実施して正しく動作しているか確認することを徹底し、問題がある場合にはすぐにチーム間で共有し修正するようにした。
以上
