1 Менеджмент разработки программных изделий 2.Принципы построения системы деятельностей программного проекта. Методологические стратегии.

Презентация:



Advertisements
Похожие презентации
Менеджмент разработки программных изделий 8.Особенности первой итерации объектно- ориентированного программного проекта.
Advertisements

Контроль как функция менеджмента это вид управленческой деятельности с целью удержания организации на выбранной траектории развития посредством сравнения.
ПРОЦЕСС УПРАВЛЕНИЯ ПРОЕКТОМ И ОРГАНИЗАЦИОННАЯ СТРУКТУРА.
СИСТЕМНЫЙ ИНЖИНИРИНГ 1. Со второй половины 20 века существенно возросла сложность проектируемых объектов и характер их воздействие на общество и на окружающую.
Тема 7 Планирование и организация маркетинговой деятельности Лекция 9 1. Маркетинговая служба: задачи, функции, особенности, кадры 2. Маркетинговые планы.
Семинар Автоматизированная система ( АС ) Планирование работ подразделений в проектах НИОКР Семинар Автоматизированная система ( АС ) Планирование работ.
Жизненный цикл программного обеспечения Лекция 4.
Педагогическая мастерская «Педагогическое моделирование и проектирование»
Продолжение темы 4. Основные этапы проектирования MRPII-системы.
Функция управления – это направление или вид управленческой деятельности, характеризующийся обособленным комплексом задач и осуществляемый специальными.
Стратегическое планирование Тема 8. План Сущность стратегического планирования Сущность стратегического планирования Процесс стратегического планирования.
Выполнил студент гр ДЭ -21 Бобров А. А.. Основные понятия управления проектами управления проектами Работа любой организации может включать в себя два.
Формирование инновационной политики и осуществление инновационных программ.
Управление проектами Лекция 1. Основы управления проектами.
Информационные системы Что такое ИС? Функции ИС Жизненные циклы ИС: Понятия Процессы Стадии Модели Основные способы построения ИС.
Жизненный цикл программного обеспечения Подготовил студент 1 курса Лось Павел.
Формализованные методы в управлении предприятием Докладчик: С.И. Шаныгин Федеральное государственное бюджетное образовательное учреждение высшего профессионального.
Лекция 5 Способы конструирования программ. Основы доказательства правильности.
Предмет и задачи информационного менеджмента Тема 2.
Планирование (часть2) Integration management Time management Cost management Quality management Communications management Procurement management МГИМО.
Транксрипт:

1 Менеджмент разработки программных изделий 2.Принципы построения системы деятельностей программного проекта. Методологические стратегии

2 Декомпозиция проектной деятельности Проект большая производственная функция, выполнение которой требует осуществления многих различных деятельностей. Деятельности проекта взаимосвязаны, нуждаются в планировании, обеспечении ресурсами и др. От существования многих из них приходится абстрагироваться (несущественные?) Организованность совокупности проектных и внешних (косвенно связанных с проектом) деятельностей должна быть достигнута! Для построения нужной организованности применяются методологии развития проектов. Среди прочего они решают задачу декомпозиции. Это одно из назначений методологии. А какие они бывают? Производственные функции и исполнители как декомпозируемые сущности –можно структурировать выполнение функции, разбивая ее на составляющие, определяя назначение каждой из составляющих и связи между ними так, чтобы результат совместного выполнения совпадал с требуемым результатом разбиваемой функции –можно структурировать обобщенного исполнителя, иными словами, конкретизировать исполнителей, отвечающих за разные аспекты выполнения функции Оба разбиения допускают продолжение в глубину: –для исполнителей до конкретных индивидуумов –для функций до неделимых единиц действий

3 Элементы деятельностей Субъект: программисты, выполняющие проект, и др., инициаторы работ Субъект: программисты, выполняющие проект, и др., инициаторы работ Материалы и ресурсы: требования к программной системе, оборудование, вспомогательные ресурсы Материалы и ресурсы: требования к программной системе, оборудование, вспомогательные ресурсы Результат: программная система, документация к ней, методика работы, тесты, учебные материалы и др. Результат: программная система, документация к ней, методика работы, тесты, учебные материалы и др. Цель: решение проблем поль-зователя путем автоматизации его деятель- ности Цель: решение проблем поль-зователя путем автоматизации его деятель- ности Методы: стратегии развития, методологии, регламенты и соглашения Методы: стратегии развития, методологии, регламенты и соглашения кто в состоянии выполнять деятельность для чего выполняется деятельность из чего продуцируются результаты деятельности указывают на то, как выполнять деятель- ность фактически продуцируется в деятельности для чего выполняется деятельность Сопоставление цели и результата деятельности важная составляющая оценивания проектной деятельности (оценочная деятельность) Средства и инструменты: системы про- граммирования, библиотеки, CASE-средства Средства и инструменты: системы про- граммирования, библиотеки, CASE-средства с помощью чего продуцируются результаты деятельности Средства и инструменты и методы можно рассматривать совместно (но для нас полезно их разделять)

4 Любая деятельность есть часть некоторой общей системы деятельностей, охватывающей группу субъектов- исполнителей. Деятельности, субъекты которых не попадают в выделенную группу, являются окружением данной системы. Окружение связано с системой следующими способами: –из окружения поставляются элементы деятельностей системы; –деятельностям окружения передаются результаты деятельностей системы; –система в целом и ее отдельные деятельности являются элементами деятельностей окружения Системы деятельностей Субъект Д Материалы Результат Цель Методы Средства … … … Нужно всегда знать место методики (методологии) в системе проектных деятельностей Нужно всегда знать место всех деятельностей, на которые возможно и следует влиять, чтобы система проектных деятельностей (проект) развивалась успешно! Недостаточно говорить только о процессах (обычно этим и ограничиваются см. слайды про PMBOK)! Д2Д2 Субъект Материалы Цель МетодыСредства Результат Средства Результат Цель Результат Материалы Цель МетодыСредства Д1Д1 Субъект Результат Субъект Результат Субъект Материалы Цель МетодыСредства Д3Д3 Результат …

5 Автоматизированная и автоматическая деятельность. Цель программирования и цель методологии программирования Автоматизированная по сравнению с неавтоматизированной приводит к результатам с меньшими затратами (всего) Автоматическая неодушевленный субъект деятельность без субъекта одушевленный субъект осуществляет единственное воздействие-активизацию Цель программирования построить автоматические или автоматизированные деятельности для внешнего субъекта Цель методологии (методики) программирования построить автоматические или автоматизированные деятельности, заменяющие неавтоматизированные аналоги (по возможности всех!) деятельностей, относящихся к выполнению проектного задания

6 Понятие требований (к проекту, программной системе и др.) Замысел, основная идея проекта желаемый результат. Что такое «желаемый результат»? Ответ в требованиях ( к проекту, процессу разработки к квалификации исполнителей и др.) Что такое требования? Много разночтений. –Пользовательские требования что должна делать система, какие функции она должна выполнять, какие возможности взаимодействия с ней должны быть предложены и др. + дополнения (например, языковая среда пользователей) и ограничения часто об этом умалчивают –Системные требования как система должна работать, (1) характеристики производительности при выполнении функций, эргономичности и др., (2) описание необходимого окружения: оборудование, программы и др. (3) совместимость, переиспользуемость и др. + ограничения Иногда дополняют это. Например так: –Проектная спецификация «обобщенное описание структуры программной системы [?], которое будет основой для более детального проектирования системы и ее последующей реализации» И. Сомервилл Как требования возникают, как они задаются, как учитываются в разработке и др.? Подробности в дальнейшем.

7 Сопоставление со стандартом PMBOK PMBOK Project Management Body of Knowledge (институт менеджмента проектов PMI) «Процесс это серия действий, приводящая к результату» (действие ?, результат ?) «Процесс любая деятельность, в которой используются ресурсы для преобразования входов в выходы» (ISO 9000) Деятельность шире процесса! Группы процессов PMBOK: –процессы инициации –процессы планирования –процессы исполнения –процессы контроля –процессы завершения Процессы инициации Процессы планирования Процессы контроля Процессы завершения Процессы исполнения

8 PMBOK-процессов и система деятельностей разработки программных проектов Схема иллюстрирует сущность менеджмента проекта на самом абстрактном уровне как деятельность, направленную на организацию и поддержку целенаправленного развития обозначенных на ней групп процессов Более конкретная интерпретация системы деятельностей по разработке программных проектов включает: –… –анализ предварительных требований, –конструирование архитектуры, –составление программного кода, –проверка кода, –… Эти деятельности зависят между собой, поставляя свои результаты друг другу, они не могут выполняться в произвольном порядке. Дальнейшая конкретизация проектировочных видов деятельности должна следовать выбранной для проекта методической установке. Отделение существенного от несущественного важный аспект формирования системы как объекта управления.

9 Деятельность менеджера и составляющие системы проектных деятельностей Цель направление других проектных деятельностей так, чтобы они продвигали проект к выполнению (задаваемых вне системы) работ в условиях ограничений по времени, финансам и качеству = достижение целей деятельности, задающей проект в целом. Согласование параметров проекта: объем работ, сроки, запрашиваемые финансы (внешняя по отношению к работам проекта деятельность) Менеджмент проекта обеспечение предоставления продукта для его использования, разработка которого –требует выполнения определенного объема работ область действия, –использует затраты (в определенных пределах) ресурсы, –старается укладываться в заданные рамки времени план-график работ, и должна удовлетворять приемлемому уровню качества. Это хорошо известный треугольник менеджмента «хорошо-быстро- дешево»: из трех параметров выбери два получишь третий! Задание: 1. Конкретизировать элементы деятельности менеджера и их связи с другими деятельностями; 2. Сопоставить свой результат с полученным другими; 3. Объяснить различия.

10 Треугольник менеджмента проектов иллюстративная модель В р е м я В ы е п о л н н и е Ресурсы О б ь л а с т д е й с т в и й П л а н - г р а ф и к Качество Затраты X Y Z x min x-x- x+x+ x max x*x* Другие подобные модели см. в книге

11 Это атрибуты чего? роли; индивидуума; инструмента осуществимость с его помощью определенных маршрутов (полезных для выполнения тех или иных производственных функций) Операционные маршруты и траектории деятельности Операционный маршрут возможные последовательности действий, в каждый момент выполнения деятельности. Траектория реализуемый операционный маршрут Обстановка операционного маршрута все элементы деятельности, которые могут использоваться субъектом для выбора продолжения траектории Область всех возможных операционных маршрутов Траектория (допустимая) Область допустимых маршрутов Целевая область проекта

12 Выяснение отклонений и корректировка траектории Воздействия Вынесенная траектория деятельности менеджера Автокорректировка

13 Определение этапов проекта: последовательное развитие проекта Этап 2 Контрольные точкиНачало проекта Окончание проекта Этап 1 Этап 3Этап 4 Корректировка результатов работ этапа 2 Постановка задачи каждого этапа характеризуется: субъектом-исполнителем; сроками выполнения; выделенными ресурсами; средствами, методами и инструментами; контрольными мероприятиями. Разбиение этапа на локальные этапы, работы, задания. Параллельное выполнение их. Деятельность менеджеров по направлениям Сокращение объема конуса за счет использования более мелких конусов Это всего лишь иллюстративная стратегия, а не решение!

14 Начало проекта Сужение текущей задачи проекта: итеративное наращивание возможностей Окончание проекта Движение (развитие) требований Последняя итерация … Вторая итерация Первая итерация Требования, назначенные к реализации на итерации Реализованные требования Это всего лишь иллюстративная стратегия, а не решение!

15 Жесткие и гибкие стратегии в методологиях программирования Жесткие / тенденция стандарта (СММ, МО США) Жесткие тяжеловесные монументальные Анализ и обобщение Опыт Метод Методика = методология Где и когда их можно применять? Р е ш е н и я Быстрые / agile development Быстрые гибкие шустрые облегченные Agile Manifesto Индивидуумы и взаимодействия важнее процессов и инструментов; Работоспособное ПО важнее обширной документации; Сотрудничество с заказчиком важнее заключения контракта; Готовность к изменениям важнее следования плану.

16 Императивные и креативные деятельности Жесткие методологииБыстрые методологии Предсказуемость проектаНепредсказуемость проекта Детерминированный процессНедетерминированный процесс Выбор стратегии развития проекта Императивные деятельности выполняются в известных ситуациях, в которых могут использоваться известные предписания, регламенты и методы, с тем, чтобы операционные маршруты не приводили к недопустимым траекториям. Креативные деятельности допускают ситуации, в которых известные предписания, регламенты, методы могут не срабатывать, а потому предполагают конструирование новых методов, которые обеспечивают допустимость траекторий операционных маршрутов. Это более высокий уровень знаний и умений! Методологии регламентируют не одну, а комплекс деятельностей, потому говорить строго об императивных или креативных методологиях неправомерно, но … Преимущественно императивныеПреимущественно креативные

17 Сопоставление жесткой и быстрой стратегий в методологиях программирования Жесткие стратегииБыстрые стратегии Ориентация на предсказуемые процессы с хорошо обозначенными целями Осознание того, что процессы разработки в принципе непредсказуемы Распознавание ситуаций и применение готовых методов Распознавание ситуаций и конструирование методов для работы в них Планирование, в котором определяются этапы Соблюдение баланса между параметрами проекта Заказчик внешний по отношению к проекту субъект Заказчик (его представитель) член команды разработчиков Ролевое разделение труда работниковСовместная деятельность работников Дисциплина и подчинениеСамодисциплина и сотрудничество Обезличенный процесс, исполнители которого определяются только по квалификационным требованиям Процесс, ориентированный на максимально полный учет человеческих особенностей исполнителей

18 Технология и творчество Технология какой-либо деятельности это среда поддержки выполнения деятельности, обладающая средствами и инструментами, а также методами их применения, неукоснительное следование которым каким бы то ни было исполнителем с определенной квалификацией, гарантированно обеспечит производство, т.е. получение из предоставляемых ресурсов и материалов продукта-результата, соответствующего целям, в требуемом объеме за известное время и с приемлемым уровнем качества. Жесткие методологии стремление к технологизации, но это заведомо недостижимо для программных проектов!

19 Вопросы и задания Является ли разработка методологии креативным процессом? Можно ли жесткую методологию сделать гибкой? Ответ обосновать. Может ли гибкая методология стать жесткой? Ответ обосновать. Исследовать какую-либо традиционную жесткую методологию с точки зрения ответа на вопрос, какие методики предлагаются для поддержки креативных деятельностей в программных проектах. Выяснить, для какого типа проектов нерационально использовать какую-либо гибкую методологию (например, Extreme Programming).