- •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. Роли участников команды бп.
37. Участники команды разработчиков в экстремальном программировании.
Заказчик – начальные сведенья о предметной области, тестирование. Заказчик должен входить в состав рабочей команды – это верное правило для хорошей разработки, и одно из двеннадцати правил XP. Важно, чтобы поддерживалась связь заказчика с разработчиком, чтобы разработчик всегда имел четкое представление о желаниях заказчика.
Пользователь – эксплуатация. В XP система рано вводится в эксплуатацию, поэтому роль пользователя важна в процессе разработки системы. Пользователь выявляет недостатки системы, которые исправляются в последующих версиях.
Разработчик – кодирование, тестирование. Согласно правилам XP разработчики работают парами за одним компом, что обеспечивает дополнительный контроль (с эффективностью этого можно поспорить). Храбрость – это его естественное свойство. Храбрость нужна, чтобы решиться на крупные переделки почти готового проекта, чтобы отказаться от кода и сделать его заново, чтобы реализовать несколько вариантов функции, а потом ненужные выбросить. Разработчик, как и заказчик, также пишет тесты.
Руководитель – анализ требований, проектирование. При проектировании выбирается наиболее простой путь. Тем самым в ХР исключаются «закладки на будущее».
Администратор – координация проекта.
Важной ценностью XP является коммуникация, общение участников проекта междй собой. Нередко проблемы в проекте возникают из-за того, что заказчик не сообщил важные сведения, или программист не уведомил о существенных изменениях, или руководитель проекта не задал разработчику важный вопрос.
Каждый участник проекта является владельцем не только им написанного кода, но всего кода системы. Это нужно для гибкости при внесении изменений в чужие модули.
38. Экстремальное программирование: ценности, базовые принципы, виды деятельности.
Ценности (определяют общий подход к стилю работы в методологии. ХР)
коммуникация, (заказчик, руководитель, разработчик и прочее)
простота, (в проект включается та реализация, которая наиболее проста и точно отвечает текущему состоянию задачи)
обратная связь (обеспечивает точные данные о состоянии системы, раннее включение системы в эксплуатацию. Дальнейшая работа заключается в выпуске следующих версий. Таким образом достигается ранняя обратная связь с заказчиком)
храбрость ( решиться на крупные переделки почти готового проекта, чтобы отказаться от кода и сделать его заново, чтобы реализовать несколько вариантов функции, а потом ненужные выбросить.)
Базовые принципы (имеют количественную оценку)
быстрая обратная связь ( знать именно текущее состояние разрабатываемой системы)
приемлемая простота (требует, чтобы программист думал о решении сегодняшней, а не завтрашней задачи)
постепенное изменение (проблему следует решать путем небольших шагов, избегая масштабных изменений)
приемлемое изменение (возможностью такой его реализацией, которая не препятствует дальнейшей работе)
качественная работа.
Виды деятельности
кодирование
тестирование
слушание (деятельность, в ходе которой разработчик получает информацию от заказчика или от своих коллег)
проектирование (средство зафиксировать желание заказчика и собственные размышления по поводу выполняемой работы)
