![](https://habrastorage.org/getpro/habr/post_images/623/ace/433/623ace433baee4c042f018d27b6d0428.jpg)
Поскольку наш предыдущий топик с описанием процесса внедрения инспекций кода в нашей компании вызвал определенный интерес у хабрасообщества, мы решили написать внеочередное продолжение. Сегодня мы рассмотрим пример внедрения данной практики на конкретном проекте.
Рассмотрим внедрение инспекций кода на примере проекта и структуры проектной команды. В команду входят две группы: в одной из них два разработчика и руководитель, в другой — три разработчика и руководитель. Разработчиков будем обозначать буквой D (Developer), а руководителей групп буквой L (Lead).
Определим составы групп.
Группа 1: D_1_1, D_1_2, D_1_3, L_1.
Группа 2: D_2_1, D_2_2, L_2.
Закрепляем инспекторов за деревом проекта.
![](https://habrastorage.org/storage2/b12/d8a/487/b12d8a4877a678e447823ded6eef2da5.png)
trunk/module_1 — отвечает группа 1.
trunk/module_2 — отвечает группа 2.
trunk/common — общая ответственность обеих групп, конкретных инспекторов назначает руководитель из числа членов собственной группы.
Разработчик пишет код, который затрагивает модули обеих групп
![](https://habrastorage.org/storage2/a5b/2f8/cdb/a5b2f8cdbbb7518bbdd0e109a727894c.png)
1. Разработчик D_1_2 решает какую-то задачу и в процессе решения пишет код, который затрагивает следующие пути: trunk/module_1/dev_1_1, trunk/module_2/dev_2_3.
2. D_1_2 создаёт инспекцию и добавляет следующих участников.
![](https://habrastorage.org/storage2/884/c1e/100/884c1e100af7f60bbf9c17fbfdb3977f.png)
3. Руководитель L_2 назначает инспектором разработчика D_2_3.
4. Итоговая таблица участников инспекции выглядит так.
![](https://habrastorage.org/storage2/43b/3db/0c1/43b3db0c1a61c89da8b37d662363d1d8.png)
Разработчик пишет код в общий модуль
![](https://habrastorage.org/storage2/471/9d8/f88/4719d8f88d57b97350c45967706fa722.png)
1. Разработчик D_1_2 решает какую-то задачу и в процессе ее решения пишет код в trunk/common.
2. D_1_2 создает инспекцию и добавляет следующих участников.
![](https://habrastorage.org/storage2/c1b/5ac/73a/c1b5ac73a08d06ba1a971ecde799a8a6.png)
3. Руководитель L_1 назначает инспектором себя.
4. Руководитель L_2 назначает инспектором разработчика D_2_1.
5. Итоговая таблица участников инспекции выглядит так.
![](https://habrastorage.org/getpro/habr/post_images/470/b8c/78e/470b8c78ebb897347462085325e78284.png)
Конечно же, запустить процесс инспекции кода в рамках небольшой группы, насчитывающей 6—7 разработчиков, — это одно, а масштабировать процесс на большой проект, над которым работают десятки разработчиков, — гораздо более трудная задача, но все же выполнимая.
Следующая статья (как мы и обещали в первом топике) будет посвящена процессу автоматизации инспектирования с применением CodeCollaborator.
До новых встреч!