Top Banner
Зазеркалье разработки ПО Акуляков Артем .net разработчик сотрудник не известного банка
37

mirror world of software development

Aug 07, 2015

Download

Documents

0xffAA
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: mirror world of software development

Зазеркалье разработки ПО

Акуляков Артем.net разработчик

сотрудник неизвестного банка

Page 2: mirror world of software development

Кто я?

● 5+ лет разработки● c#, f#, c++, python● параллельное и асинхронное

программирование● тот еще enterprise разработчик

Page 3: mirror world of software development
Page 4: mirror world of software development
Page 5: mirror world of software development

Рутина

● Управление кодовой базой● Управление задачами● Публикация● Качество кода

Page 6: mirror world of software development

Как справится с рутиной?

Page 7: mirror world of software development

Выработать devworkflow. Провести автоматизацию с использованием подхода

continuous integration.

Page 8: mirror world of software development

Как управлять кодовой базой?

Page 9: mirror world of software development

Система контроля версий

● Без неё никак● Git, Mercurial(hg)● Удобное ветвление решает

Page 10: mirror world of software development

Ветки — это параллельные реальности вашей кодовой базы.

Page 11: mirror world of software development
Page 12: mirror world of software development

Пример названия:

Login form #123

Page 13: mirror world of software development

Как управлять задачами?

Page 14: mirror world of software development
Page 15: mirror world of software development
Page 16: mirror world of software development

Нужно использовать bug-tracker

Page 17: mirror world of software development

Bug-tracker

● Bug-tracker должен быть● В bug-tracker'е не только баги,

но и задачи● Подзадачи необходимы,

обойтись можно, но не надо

Page 18: mirror world of software development

Жизненный путь бага\задачи

Page 19: mirror world of software development

Рекомендую

Redmine, YouTrack, Jira, Track

Page 20: mirror world of software development

Вы используете систему контроля версий и bug-tracker?

Page 21: mirror world of software development
Page 22: mirror world of software development

Для ленивых - Github, Bitbucket

Page 23: mirror world of software development

Как осуществлять публикацию?

Page 24: mirror world of software development

Автоматически

● Роботы не ошибаются● Автоматизировать нужно всё

Page 25: mirror world of software development

Как контролировать качество кода?

Page 26: mirror world of software development

Контроль качества кода

● Это не сложно● Проверка стиля кодирования● Проверка наличия и количества

комментариев

Page 27: mirror world of software development

Code review

● Не дает программировать заведомо плохо

● Помогает делить опыт на команду● Меньше ошибок

Page 28: mirror world of software development

Как объединить все эти разрозненные части в единый

инструмент?

Page 29: mirror world of software development
Page 30: mirror world of software development

CI

● CI — это практика частых автоматических сборок проекта.

● Сейчас это методология фиксации и автоматизации рабочего процесса.

Page 31: mirror world of software development

CI

Page 32: mirror world of software development

CI базируется на событиях

● Изменения в ветке dev● Изменения в ветке test● Изменения в ветке prod

● Закрытие задачи\бага в bug-tracker'е

Page 33: mirror world of software development

Когда отдавать версию на тестирование?

Page 34: mirror world of software development

● По расписанию● По условию

Page 35: mirror world of software development

Когда выпускать новый релиз?

Page 36: mirror world of software development

● Механизм milestone

Page 37: mirror world of software development

Вопросы?