mixing agile rup

18
Mixing Agile & RUP Agile Gathering 6

Upload: alexey-krivitsky

Post on 13-Jul-2015

1.681 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Mixing Agile Rup

Mixing Agile & RUP

Agile Gathering 6

Page 2: Mixing Agile Rup

О Докладчике

Роман ОксюковскийРуководитель выделенного центра разработки, [email protected]+38.097.796.4117

8 лет в индустрии разработки программногообеспечения, 3 из которых на руководящихпозициях

Page 3: Mixing Agile Rup

Методология под проект

«В зависимостиот размера проекта(числа людей, работукоторых необходимокоординировать), кри-тичности разрабаты-ваемого приложения иосновных приоритетов, в проекте могутприменятьсяразличныеметодологии.»-Алистэр КоубернHumans and Technology Technical Report, TR 99.04, Oct.1999 7691 Dell Rd, Salt Lake City, UT 84121 USA

Page 4: Mixing Agile Rup

Пример из жизни ...

Проект разработкиERP системы длядистрибьюторскойкомпании, котораязанимается оптовойпродажей FMCGтоваров в Донецкойобласти.

Page 5: Mixing Agile Rup

Характеристика компании ...

~1000 сотрудниковГеографическаяраспределенностьфилиалов компанииВысокая сложностьнекоторыхуправленческихфункцийЗависимость кпроизводительностии стабильностиработы ИТ-систем

Page 6: Mixing Agile Rup

Структура команды ...

Спонсор проектаСпонсор проекта

Бизнес-аналитик х 2Бизнес-аналитик х 2Руководитель

отделаразработки

Руководительотдела

разработки

Руководительотдела

тестирования

Руководительотдела

тестирования

Системныйаналитик

Системныйаналитик АрхитекторАрхитектор

Разработчикибизнес

логики х 5

Разработчикибизнес

логики х 5Тестировщик х 2Тестировщик х 2

Page 7: Mixing Agile Rup

Характеристика команды ...

Спонсор = собственниккомпании-заказчика.Бизнес-аналитики = ключевые сотрудникикомпании-заказчика.Вся команда физическирасположена в одномофисе.Комната для совещанийоборудована проектороми досками для рисования, а также большим столомдля совещаний.

Page 8: Mixing Agile Rup

Timeline …

Page 9: Mixing Agile Rup

Inception

RUPОбоснование бизнес-идеиОпределение виденияпродуктаНаброски архитектурыОпределение основных use caseBusiness modelingНаброски процессов иструктуры артефактов.

AgileРабота в одной команде надопределением виденияИнтенсивное общениеПрототипирование системыКаждый влияет наопределение процессовразработкиПолучение раннего feedback по прототипам и наброскамархитектурыИспользование принципаSimplicity для всего, чтопроизводится(документация, код, прототипы).

Page 10: Mixing Agile Rup

Elaboration

RUPУточнение виденияПроработка деталей use casesСтарт разработки бизнес-модулей системыУточнение процессовразработки и тестирования. Уточнение структурыартефактов.Уточнение ролейChange ManagementИспользование UML

AgileПоявление итераций, хотяразных по протяженностиПроведение Demo спонсоруи бизнес-аналитикам, получение feedbackDaily Scrum (15 мин)Формирование Product Backlog и Iteration Backlog

Page 11: Mixing Agile Rup

Construction

RUPСтабилизация архитектурыМинимальные уточненияпроцессов разработки итестирования

AgileDaily ScrumsСтабильные итерациипротяженностью 1 месяцПланирвоание Iteration Backlog, при котором выборзадач и оценку трудозатратвыполняли разработчикиDemo спонсору и бизнес-аналитикам (Product Owners)Процесс инкрементальный(выпуск версий, поставляемых конечнымпользователям сполучением feedback)

Page 12: Mixing Agile Rup

Transition …

RUPПланирование действий повнедерению готовогопродукта в компанииChange ManagementИнтенсивное тестированиемодулей системы

AgileDaily Scrums ☺Внедрение модулейсистемы в «пилотном»режимеПолучение feedback отконечных пользователей ипланирование Iteration Backlog с учетомзапрошенных измененийПроцесс инкрементальный

Page 13: Mixing Agile Rup

Что не прижилось ...RUP: Use Case Points Estimation – слишком сложно и неучитывало «особенных»моментов. RUP: Unit Tests – из-заспецифика приложения идинамично изменяющихсятребований.Agile: Инкрементальностьпроцесса – в виду того, чтосистема достаточно сложная иимела много зависимостей(рабочие инкременты появилисьтолько при Transition).В некоторых случаях не работалпринцип Agile – Simplicity.

Page 14: Mixing Agile Rup

RUP. Best Practices

Разрабатывайте ПОитеративноУправляйтетребованиямиИспользуйте компонето-ориентированнуюархитектуруВизуально моделируйтеПОПостоянно проверяйтекачество ПОКонтролируйтеизменения к ПО

Page 15: Mixing Agile Rup

RUP и другие методологии

Алексей Закис «RUP и другие методологии разработки ПО»http://cmcons.com/articles/obshhie_stati_rup/rup_i_drugie_metodologii_razrabotki_po/

Page 16: Mixing Agile Rup

RUP. Tailoring …

«Applying all of RUP on a single project will likely result in an inefficient project environment, where teams will struggle to keep focused on the important tasks, and struggle to find the right set of information. Thus, we recommend that all projects tailor the RUP.»- RUP. Concepts: RUP Tailoring

Page 17: Mixing Agile Rup

Выводы

Под каждый проект следует подбиратьсвою методологию и подходы.Не стоит сравнивать методологии(лучше\хуже) , а стоит знать, понимать, использовать по назначению и получатьудовольствие от результатов.Чем больше знаешь инструментов иситуации, в которых их использовать, темзрелее процессы разработки в каждомВашем проекте.

Page 18: Mixing Agile Rup

Вопросы

?