FURIMA

OVERVIEW

テックキャンプの最終課題にて作成したアプリケーションを紹介します。また、自身で実装した箇所、および開発を通じて得られた経験についても紹介します。

YEAR 2020

アプリケーション情報


開発状況

  • 開発環境

    • 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に各々がマージする際にコンフリクトが頻発し、その解決策が分からず苦労した。開発を進めていく中で、コンフリクトが起こりやすい箇所があらかじめ判別出来るようになった。

 そのため、チーム内でコードレビューする際にお互い指摘し合う習慣にした結果、どうすればコンフリクトが回避出来るのか理解出来るようになった。


②個人として苦労した点

 デプロイの際にエラーが起こり本番環境で全く動作しなくなることがよく発生した。特にマイグレーションファイルを編集したり追加したりする際にデータベースとの兼ね合いで発生することが多かった。
 そのため、チームの誰かがマージしマスターが変更された際には毎回すぐにデプロイを実施して正しく動作しているか確認することを徹底し、問題がある場合にはすぐにチーム間で共有し修正するようにした。


以上

WEBSITE