Новосибирский Государственный Университет
Опубликован: 20.08.2004 | Доступ: свободный | Студентов: 5023 / 541 | Оценка: 4.01 / 3.23 | Длительность: 18:07:00
ISBN: 978-5-9556-0013-0
Лекция 15:

Концептуальная база проекта как основа его развития

Преимущества разделения принципов

Концепции развития проекта — это прежде всего свод принципов и соглашений, принимаемых для данного проекта. Они разделяют общие положения и информацию о проекте, которая относится к прикладной области. Польза от такого разделения сводится к следующему.

  • Документальное разделение принципов помогает менеджеру отделять общие сведения от специфичных вопросов и в дальнейшем развитии проекта.
  • Общие принципы представляют основу методики управления проектом, и, отделенная от частностей проекта, эта методика может эффективно использоваться повторно, обогащаясь дополнительными приемами при переходе от проекта к проекту (разумеется, с поправками на новые прикладные области). Гораздо труднее использовать повторно что-либо, пока это документально не разделено.
  • Концепции развития проекта полезно просмотреть в конце проекта, чтобы выделить то, что "работало", а что нет и почему. Документ, в котором общее отделено от частного, допускает гораздо более результативное изучение, нежели разного рода проектно-ориентированные документы.

Хорошо составленные концепции развития проекта способны в дальнейшем предохранить от недопонимания и бесполезных обсуждений того, как проект должен развиваться. Документально зафиксированное продумывание процесса развития проекта на самой ранней стадии облегчает задачу изучения требований к программному изделию и приведения его средств в соответствие с реальными пользовательскими нуждами. Однако концепции развития проекта — довольно трудный документ для составления, особенно для неопытного менеджера. В частности, нелегко сбалансировать соглашения о пользовательских средствах с необходимой гибкостью разработки с точки зрения коллектива исполнителей.

По этой причине в реальной практике работы над концепциями полезен опыт других проектов, подходов и методологий. Единственное, от чего нужно предостеречь, это от догматизации переиспользуемого: каждый проект привносит свою специфику в процесс разработки, а потому все внешние положения должны согласовываться с этой спецификой. Так, в используемом материале могут быть представлены альтернативные варианты действий, положений и т.д. Если рассматривать их в контексте конкретного проекта, вполне вероятно, что найдутся аргументы для того, чтобы избавиться от неоднозначных ситуаций. С другой стороны, некоторые принципиальные решения могут оказаться неверными из-за специфики проекта.

С учетом последних предостережений обратимся к ранее рассмотренным методологическим подходам, многократно использовавшимся выше для иллюстраций.

В первом приближении в качестве постоянной части концепций проекта можно принять предложения MSF [44]. Это не отдельный документ, а комплект материалов, фиксирующий ряд предписаний для организации проектной деятельности:

  • модель процессов MSF;
  • модель проектной группы MSF;
  • дисциплина управления рисками MSF;
  • дисциплина управления проектами MSF;
  • дисциплина управления подготовкой MSF.

Конечно, эти документы для проекта, который решено реализовать по шаблону MSF, нуждаются в конкретизации. Скорее всего, при такой конкретизации потребуется выделить части, относящиеся не к концепциям развития проектов, а к другим материалам концептуальной базы. Но это неизбежная работа с любыми переиспользуемыми материалами, которая необходима, в частности, для того, чтобы решить, подходит ли предлагаемая методология для целей конкретного проекта.

В качестве исходного материала для концепций реального проекта, для которого принимается методология экстремального программирования, целесообразно воспользоваться книгой Бека [3]. Другие его книги, обсуждающие принципиальные аспекты этого подхода (тестирование [4], планирование [5]) помогут при подготовке концептуальной базы проекта. Понятно, что цели пропагандистских монографий не совпадают с целями организации проектной деятельности, а потому не следует принимать наши рекомендации буквально.

На фоне предыдущих иллюстраций подход RUP, представленный в книге [30], выглядит менее концептуальным, поскольку авторы пытаются представить все возможные варианты использования системы понятий, не фиксируя методологии. Отсюда, несмотря на заверения о привязке "рациональных" процессов к модели жизненного цикла, книга представляет собой лишь содержательный рассказ о том, как можно применять разработанные соглашения и инструменты (в этом качестве обсуждаемая монография оказывается очень полезной). Гораздо точнее объектно-ориентированное проектирование представлено в монографии [10], которая излагает шаблоны проектирования без претензий на концептуальное и методологическое обобщение. Если же обратиться к классической для объектно-ориентированного проектирования книге Г. Буча [8], то говорить о ней как об основе концепции развития проекта или хотя бы как о ее проектно-независимой части не приходится, но уже по другой причине. Она нацелена на доказательство продуктивности подхода в целом и в этом качестве вполне убедительна и полезна.

Дарья Федотова
Дарья Федотова
Сергей Березовский
Сергей Березовский

В рамках проф. переподготовки по программе "Программирование"

Есть курсы, которые я уже прошел. Но войдя в курс я вижу, что они не зачтены (Язык Ассемблера и архитектура ЭВМ, Программирование на С++ для профессионалов). Это как?

Сергей Прошута
Сергей Прошута
Россия
Sergey Ostr
Sergey Ostr
Россия, Энгельс