-
一部上場の大手通販会社で ECサイトの 商品推薦に関するシステムの 大規模リファクタリング
■ プロジェクトの目的 商品推薦におけるレガシーフロントエンドのリファクタリングを実施し、JavaScriptプログラムの可読性・保守性・可読性を向上させる。
■ 体制・人数
4名のチーム
■ 自分のポジション・役割
PM (プロジェクトマネージャー)として、チーム全体のリーダーシップを担当。
■ 目的を達成する上での課題
・JavaScriptプログラムの可読性・保守性・可読性が低い。
・責務のわかりづらい命名、書式がES5以前のもの、テストコードがないなどの問題がある。
・改修の頻度が高く、コピペコードが量産されている。
■ 課題に対して取り組んだこと
・上長へリファクタリングの提案を行い、プロジェクトとして認められること。
・該当ソースコードの理解を深め、課題を把握しやすい状況にし、文章化して他者に共有しやすい形にすること。
・設計を行い、理想状態を定義し、必要なタスクを明文化してロードマップを作成すること。
・サンプルコードを生成し、複数人で協力してリファクタリング作業を進めること。
・Unit Testingを実装し、カバレッジを0%から100%にすること。
・ソースコードの行数を大幅に削減し、高品質なモジュール関数に抽出すること。
■ ビジネス上の成果
・リファクタリング際中に既存のバグを5件以上発見し、解消することができている。
・開発者から可読性・保守性の向上に対するフィードバックを得られた。
・開発リードタイムを短縮させた。
・リファクタリング実施前後で不具合発生率が1/7になった。用件定義〜運用保守(フルサイクル)
技術: HTML/CSS, JavaScript/TypeScript, JQuery, React.js, Next.js, Styled Components, Jest, Python, Flask, OpenAPI, GCP