元ネタ: レガシーPHP改善日記 シーズン2 エピソード1 - komagata
クライアントサイド(主にJavaScript)向けの現状と理想のチェックリストです。
JavaScriptのライブラリはプロジェクトの目的によって左右されるため、概要に大まかな目的を書いておくといい気がします。
- となっている部分を各自書き換えて使いましょう。
- <プロジェクトの概要> 例) 商品の管理画面
- 本番環境
- 例) さくらのマネージドサーバー(FreeBSD)
- ステージング環境
- 例) 共有開発サーバー(社内に古めのCentOS)
- 開発環境
- 例) 共有開発サーバー(社内に古めのCentOS)
- ソースコード管理
- 例) svn
- 例) 共有開発サーバーのコードを担当者一人が全員を代表してsvnにコミットする。バックアップ的な役割
- タスク管理
- 例) 社内の独自タスク管理システム
- デプロイ
- 例) 共有開発サーバーのソースをFTPでアップする
- 開発マシン
- 例) Windows7
- コーディング規約
- 例) なし
- UIレビュー
- 例) 各自確認
- コードレビュー
- 例) なし
- チャット
- 例) IP-Messenger
- ナレッジ共有
- 例) 社内の独自情報共有システム
- 例) 社内の独自日報システム
- 自動テスト
- 例) なし
- エラー管理(JavaScript)
- 例) なし
- モジュール管理(JavaScript)
- 例) 即時関数でグローバル空間にもれないように分けられている。
- ライブラリ利用(JavaScript)
- 例) jQuery
- フレームワーク(JavaScript)
- 例) なし
- 本番環境
- 例) AWS?
- 例) DigitalOcean?
- ステージング環境
- 例) 上記サービス上に構築
- 開発環境
- 例) 各自のローカルマシン
- 例) Vagrant?
- 例) Docker?
- 例) 共通開発サーバーに全員分の環境を作る?
- ソースコード管理
- 例) GitHub
- タスク管理
- 例) GitHub Issue?
- 例) Pivotal?
- 例) Trello?
- デプロイ
- 開発マシン
- 例) Mac?
- 例) Linux?
- 例) Windows?
- コーディング規約
- UIレビュー
- 例) PRベースで行う。PRごとにステージング環境で確認できるようにする
- コードレビュー
- 例) PRベースで行う
- チャット
- 例) Slack
- ナレッジ共有
- 例) Qiita Team
- 自動テスト
- 例) CircleCI
- エラー管理(JavaScript)
- 例) Sentry
- ライブラリ利用(JavaScript)
- 例) なし
- フレームワーク(JavaScript)
- 例) AngularJS