- •1.Предметная область. Прикладные программные системы (пс). Условия создания прикладных программных систем.
- •2.Автоматизированные системы управления и современные прикладные программные системы. Классификация, особенности.
- •3.Информационные системы и системы реального времени.
- •4.Требования к прикладным системам. Характеристика требований.
- •5.Требования к пс: адекватность предметной области; дружественность; возможность модификации.
- •6.Требования к пс: живучесть; защищенность. Проблемы переносимости. Универсальность и специализация.
- •7.Тиражирование прикладных систем. Тиражируемые, индивидуальные, слабо тиражируемые пс.
- •8.Модели жизненного цикла. Их характеристики.
- •9.Модели проектирования – каскадная, поэтапная, спиральная. Их особенности и области применения.
- •10.Планирование работы. Сетевой график.
- •11.Организация коллективной работы. Типы коллективов программистов.
- •12.Условия работы коллектива программистов.
- •13.Роли участников проекта: заказчик, пользователь, разработчик, руководитель, администратор.
- •14.Руководитель проекта, его действия по созданию работоспособного коллектива.
- •15.Профессиональная зрелость коллектива программистов.
- •16.Начальный этап проектирования. Анализ требований. Извлечение информации о предметной области.
- •17.Структурный системный анализ. Методология структурного системного анализа sadt (стандарт idef0).
- •18.Этап проектирования. Проектирование данных, функций, интерфейса, событий, выходных документов.
- •19.Потоки данных и процессы их обработки Диаграммы потоков данных в методологии Гейна-Сарсона.
- •20.Обсуждения: сквозной структурный контроль.
- •21.Принципы и виды отладки программ. Стратегии тестирования. Автономная и комплексная отладка.
- •22.Правила («Заповеди») тестирования.
- •23. Автономная отладка. Восходящее и нисходящее тестирование. Шаги автономного тестирования.
- •24. Комплексная отладка. Тестирование архитектуры, внешних функций, качества, документации, требований.
- •25. Особенности структурного тестирования (белый ящик). Его достоинства и недостатки.
- •26. Функциональное тестирование (черный ящик). Категории выявляемых ошибок.
- •27. Документирование прикладных программных систем. Этапы создания документации для тиражируемых систем.
- •28. Сдача прикладных систем в эксплуатацию.
- •29. Смена систем. Особенности проектирования «второй системы». Тактические приемы смены систем.
- •30. Особенности разработки заказных программных систем.
- •31. Подходы к перепроектированию технологических процессов: реинжиниринг бизнес-процессов (рбп) и асу.
- •32. Перепроектирование технологических процессов: модель управления по функциям и модель горизонтального потока. Цель и средства рбп.
- •33. Перепроектирование технологических процессов: риски. Критика подхода.
- •34. Перепроектирование технологических процессов и информационные технологии.
- •35. Классические и легкие методологии проектирования. Области применения.
- •36. Особенности подхода в методологии экстремального программирования.
- •37. Участники команды разработчиков в экстремальном программировании.
- •38. Экстремальное программирование: ценности, базовые принципы, виды деятельности.
- •39.Двенадцать правил экстремального программирования.
- •40. Риски легких методологий (на примере экстремального программирования).
- •41. Определение безнадежного проекта (бп). Категории бп.
- •42. Причины, порождающие безнадежные проекты.
- •43. Участники безнадежного проекта.
- •44. Отношение руководителя проекта и разработчиков к бп различных типов.
- •45. Оценка сложности проекта. Переговоры. Допустимые компромиссы.
- •46. Стратегии проведения переговоров в бп.
- •47. Человеческий фактор в бп: формирование команды.
- •48. Человеческий фактор в бп: условия работы.
- •49. Человеческий фактор в бп: мотивация, вознаграждение.
- •50. Роли участников команды бп.
41. Определение безнадежного проекта (бп). Категории бп.
Проект безнадежен, если значение какого-то из основных его параметров расходится с нормальным более, чем вдвое. (Э.Йодан, “Путь камикадзе”) К таким параметрам относятся срок выполнения работ, число разработчиков, бюджет и прочие ресурсы, требования к функциям и производительности. Кроме того, безнадежный проект можно оценить по степени риска провала. У безнадежного проекта она более 50%.
Характеристики, влияющие на вероятность провала проекта:
объем.
количество организаций и пользователей, вовлеченных в проект
сложности проекта (в категорию безнадежных, как правило, попадают очень сложные или принципиально невыполнимые проекты)
В зависимости от масштаба БП делятся на:
небольших проектов (до 10 человек, 3-6 месяцев) шанс на успех велик
у средних (20-30 человек, 1-2 года) меньше,
крупные (100-300 человек, 3-5 лет) почти наверняка провалятся
существование гигантских (1000-2000 человек, 7-10 лет) вообще ничем не оправдано.
Существует, однако, другой способ охарактеризовать безнадежные проекты, имеющий наибольшее значение с точки зрения политики. Он представляется в двухмерной системе координат, где горизонтальная ось представляет вероятность успешного завершения проекта, а вертикальная - степень удовлетворенности участников проектной команды в ходе выполнения проекта.
Проекты «Невыполнимая миссия» - (су - высокая, вуз - высокая) В конце концов, их миссия должна закончиться успешно; они убеждены, что сочетание интенсивной работы с профессиональной виртуозностью сделает это возможным.
«Отвратительные» проекты (су – низ, вуз - выс) это такие проекты, в которых участники команды - это жертвенные агнцы, которые будут зарезаны хладнокровным менеджером ради успеха проекта.
1. менеджер проекта нацелен на успех
2. менеджер проекта нацелен на выживание и, вследствие этого, извлечение выгоды из успеха проекта
3. менеджер проекта ради достижения успеха готов, и даже настроен на то, чтобы пожертвовать здоровьем и благополучием участников проектной команды.
«Самоубийственные» проекты (су – низ, вуз - низ) в таких проектах все выглядят несчастными и обреченными. Участники команды и менеджер проекта обычно бывают вынуждены согласиться работать над таким проектом только потому, что альтернатива - увольнение; они с самого начала знают, что нет никаких шансов на успех. Они не могут позволить себе выйти из проекта, у проекта нет владельца, все карты складываются против них...
Проекты «камикадзе» (су - выс, вуз- низ) - такие проекты также обречены на неудачу, но все согласны с тем, что это будет почетный провал, и они впоследствии будут гордиться своей причастностью к проекту.
42. Причины, порождающие безнадежные проекты.
Политика. если это проявление внутрифирменных политических игр, вероятность провала крайне велика (это может быть война между двумя менеджерами в вашей организации, либо проект может быть намеренно провален в качестве мести менеджеру, который наступил не на тот мозоль, да еще в неподходящее время)
неверные представления руководства, руководитель обычно заинтересован в успехе, он может постараться исправить положение (наивность - когда все поголовно в организации бездумно верят, что сложный проект, ничего подобного которому они никогда не делали, можно как-нибудь сделать за девять месяцев, хотя реалистичная оценка его продолжительности - три года)
оптимизм разработчиков, особенно характерен для молодых участников проекта, которые уверены, что любой проект можно сделать за пару вечерков. Если такой оптимист в команде – у него есть все шансы показать, как это делается, если же советчик со стороны – ситуация хуже (наивность - Такие незначительные мелочи, как документирование, отладка, тестирование и проработка пользовательского интерфейса, настолько скучны, что нечего о них и говорить)
менталитет первопроходцев, Менталитет первопроходцев, которые уверены, что никто еще такого не делал, дает им силы выжить в безнадежном проекте, а иногда и победить
волевая интенсификация работ, вам говорят, что вы либо принимаете условия, при которых придется работать по 14 часов 6 дней в неделю, либо уходите из фирмы. Для фирмы такой подход, правда, кончается плачевно: она теряет лучших специалистов.
конкуренция как на рынке, так и в среде разработчиков вследствие появления новых технологий, влияние новых технологий, в основном, сводится к попытке выполнить важный проект на новом средстве, что почти наверняка приведет в срыву сроков.
правительственные решения, как и стихийные бедствия, вынуждают разработчиков за очень короткий срок привести систему в соответствие с ними, иначе – большие потери.
неожиданный кризис, чаще создается искусственно вследствие поздней реакции на обычные явления (например, проблема 2000 года). Так же это может быть, например, неожиданное увольнение ключевых разработчиков, «нормальный» в обычных условиях проект превращается в безнадежный из-за нехватки рабочей силы и потери ключевых интеллектуальных ресурсов.
