学習のアウトプット(開発の管理手法)
【開発の種類】
大きく分けて2種類。
・アジャイル開発
一度にまとめてではなく、1〜4週間のスプリントと呼ばれるスパンで開発を行い、
作業の確認やユーザーへのリリースを実行した後、さらに次のスプリントで変更や更新を行うような手法。
アジャイルは「俊敏な」という意味。
・ウォーターフォール開発
最初に綿密な計画を立て、その計画通りに開発を進めていく手法。
工程を上から順に流れるように行なっていくイメージ。
----------------------------------------------------------------------------------
【2つの開発のメリット・デメリット】
・アジャイル開発
メリット:クライアントやユーザーの要望に合わせて、開発の柔軟な修正・変更ができる。
デメリット:進捗の把握がしづらい。
・ウォーターフォール開発
メリット:進捗が把握しやすいため、多くの人数が関わる大規模な開発に向いている。
デメリット:開発中に修正・変更が行いにくい。
----------------------------------------------------------------------------------
【アジャイル開発の詳細】
スクラムでは、以下の役割分担がある。
プロダクトオーナー:プロダクトの期限内の実行に責任を持つ管理者。
スクラムリーダー:スクラム内における、開発者間での摩擦を防止する役割を持つ。
開発メンバー:計画に沿って開発を進めるメンバーで、上下関係はない。相互で話し合い、必要であれば計画の修正などの上申を行う。
----------------------------------------------------------------------------------
【開発に寄与するツール】
開発において、なるべく人が関わる工程を少なくすることで、ミスや漏れを防ぐことが重要。(特に関わる人数が増える場合など)
そのために、下記のようなツールがある。
・Sider
インデントの整理や、開発者が設定したルールに沿っているかなど、コードレビューを自動で行なってくれるツール。
・CircleCI
アプリケーションのテストや、問題がなかった場合のデプロイなどを自動で行なってくれるクラウドサービス。
・CI
開発したコードのテストを定期的に自動で行なってくれる仕組みのこと。
Continuous Integrationの略。
・CD
書いたコードを、自動でデプロイ準備を行なってくれる仕組みのこと。
Continuous Deliveryの略。