Надеюсь, вы сможете адаптировать под нужды ваших проектов как можно больше информации из этой книги. Описанный подход к созданию программ не единственный, но он испытан в деле и с успехом применялся.
Для кого предназначена эта книга
Если вы занимаете (или надеетесь занять) руководящую должность в проекте по созданию ПО, то эта книга — для вас. К целевой аудитории книги также относятся:
• верхние эшелоны управления техническими подразделениями (вице-президенты компаний, начальники отделов, руководители групп);
• руководители проектов;
• ведущие разработчики;
• архитекторы ПО;
• менеджеры продуктов;
• менеджеры групп технических писателей;
• ведущие технические писатели;
• менеджеры групп тестировщиков;
• ведущие тестировщики;
• менеджеры по эргономике;
• ведущие специалисты по эргономике;
• менеджеры групп технологов по разработке ПО;
• ведущие технологи по разработке ПО.
Если вы — рядовой член группы, вам тоже следует прочитать эту книгу. В ней описаны роли всех участников команды, а не только менеджеров и ведущих специалистов. Важно, чтобы вся команда работала как единое целое, разделяя одни и те же концепции, единое отношение к разным проблемам, чтобы это были единомышленники и носители одной культуры.
Структура книги
В книге три части, и в каждой описан один из критических аспектов управления созданием ПО.
Часть 1. Люди, организация и методы
Прежде чем приступать к планированию проекта или написанию программы, нужно позаботиться об основах. Для эффективной работы необходимо подобрать людей, организовать их и вооружить их приёмами. Без этого все усилия не отстать от графика будут безуспешны, и при возрастании темпа работы и давления сроков проект просто развалится на части. Первая часть посвящена фундаментальным потребностям любого проекта, исполняемого быстрыми темпами, включая:
•кадры —как найти и удержать нужных специалистов;
•организацию —какова роль и обязанности каждого участника группы;
•инструментарии —ключевые инструменты для разработки и способы их использования;
•тестирование —как вести тестирование параллельно с разработкой;
•технологию разработки —как поддерживать целостность программы и обеспечивать её пригодность к использованию на протяжении цикла разработки.
Часть 2. Формулирование и планирование проекта
Если вы всерьёз намерены выпустить программу в срок, то прежде, чем приступать к её созданию, нужно понять, что и как должно быть создано. Даже самым талантливым людям требуется иметь представление о планируемых результатах проекта, намеченных для использования технологиях и конечном облике продукта. В связи с этим нужно:
• сформулировать основные требования к проекту:
• определить технологии, которые лягут в основу проекта:
• создать модель использования проекта.
Решив эти задачи, можно составить график, в котором задачи проекта приведены в равновесие с доступными кадрами и уровнем их способностей. В определённой степени можно быть уверенным, что при таком подходе будет создан реалистичный график создания именно такой программы, какая нужна.
Все четыре предмета — требования, технологии, использование и график работ — тесно связаны, поэтому если ваша цель — успешный проект, их нельзя рассматривать в отрыве друг от друга. Без них придётся полагаться только на догадки, допущения и игнорировать ключевые элементы проекта, внося неприемлемый риск, часто ведущий к возникновению проблем и срывам графика. Помните: почти все самые большие ошибки делаются в первые несколько недель работы над проектом, при планировании.
Часть 3.