Содержание
- 2. ПОНЯТИЕ ПРОГРАММНОЙ ИНЖЕНЕРИИ Чем программирование отличается от программой инженерии? Программирование является некоторой абстрактной деятельностью и может
- 3. Разработка программного кода предваряется анализом и проектированием (первое означает создание функциональной модели будущей системы без учета
- 4. Предпосылки появления программной инженерии Программная инженерия (или технология промышленного программирования) как некоторое направление возникло и формировалось
- 5. Повторное использование кода (модульное программирование) Проблема. На первых этапах становления программной инженерии было отмечено, что высокая
- 6. Сложность таких комплексов оценивалась следующими показателями: Большой объем кода (миллионы строк) Большое количество связей между элементами
- 7. Продолжение кризиса программирования Несмотря на то, что программная инженерия достигла определенных успехов, перманентный кризис программирования продолжается.
- 8. 19 % проектов полностью провалились и были аннулированы до завершения. Результаты анализа успешности программных проектов за
- 9. Основные понятия Программирование — процесс отображения определенного множества целей на множество машинных команд и данных, интерпретация
- 10. Программный продукт — совокупность программ и сопроводительной документации по их установке, настройке, использованию и доработке. Согласно
- 11. Процесс разработки ПО — совокупность процессов, обеспечивающих создание и развитие программного обеспечения. Модель процесса разработки ПО
- 12. Хронология развития программной инженерии 1958 г. - всемирно известный статистик Джон Тьюкей (John Tukey) впервые ввел
- 13. Guide to the Software Engineering Body of Knowledge (SWEBOK), IEEE 2004 Version - Руководство к Своду
- 14. Структура и содержание SWEBOK Согласно SWEBOK 2004, программная инженерия включает в себя 10 основных и 7
- 15. Первые пять областей знаний
- 16. Вторые пять областей знаний
- 17. Связанные дисциплины Дополнительные области знаний включают в себя: Computer engineering — разработка компьютеров. Computer science —
- 19. Программная инженерия использует достижения информатики, тесно связана с системотехникой, часто предваряется бизнес-реинжинирингом. Информатика (computer science) –
- 20. Системотехника (system engineering) объединяет различные инженерные дисциплины по разработке всевозможных искусственных систем – энергоустановок, телекоммуникационных систем,
- 21. ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНОГО ПРОДУКТА Методологическую основу любой инженерии составляет понятие жизненного цикла (ЖЦ) изделия (продукта) как
- 22. В общем случае, жизненный цикл определяется моделью и описывается в форме методологии (метода). Модель или парадигма
- 23. Классический жизненный цикл Классический жизненный цикл разработки ПО - старейшая парадигма процесса разработки ПО (автор Уинстон
- 24. Содержание основных этапов. Системный анализ - задает роль каждого элемента в компьютерной системе, взаимодействие элементов друг
- 25. Проектирование состоит в создании представлений: архитектуры ПО; модульной структуры ПО; алгоритмической структуры ПО; структуры данных; входного
- 26. Сопровождение ПО состоит в повторном применении каждого из предшествующих шагов (этапов) жизненного цикла к существующей программе
- 27. Макетирование Проблемы Заказчик - не может сформулировать подробные требования по вводу, обработке или выводу данных для
- 28. Макетирование основывается на многократном повторении итераций, в которых участвуют заказчик и разработчик. Макетирование
- 29. Последовательность действий при макетировании
- 30. Сбор и уточнение требований к создаваемому ПО. Разработчик и заказчик встречаются и определяют все цели ПО,
- 31. Для быстрого получения работающего макета разработчик часто идет на определенные компромиссы: используются не самые подходящие языки
- 32. Стратегии конструирования ПО Существуют 3 стратегии конструирования ПО: однократный проход (водопадная стратегия) — линейная последовательность этапов
- 33. Характеристики стратегий конструирования ПО в соответствии с требованиями стандарта IEEE/EIA 12207.2
- 34. Инкрементная модель Инкрементная модель является классическим примером инкрементной стратегии конструирования Она объединяет элементы последовательной водопадной модели
- 35. Каждая линейная последовательность здесь вырабатывает поставляемый инкремент ПО. Пример. ПО для обработки слов в 1-м инкременте
- 36. Быстрая разработка приложений Модель быстрой разработки приложений (Rapid Application Development) — второй пример применения инкрементной стратегии
- 37. RAD-модель обеспечивает экстремально короткий цикл разработки. RAD — высокоскоростная адаптация линейной последовательной модели, в которой быстрая
- 38. моделирование обработки. Определяются преобразования объектов данных, обеспечивающие реализацию бизнес-функций. Создаются описания обработки для добавления, модификации, удаления
- 39. Применение RAD имеет свои недостатки, и ограничения. 1. Для больших проектов в RAD требуются существенные людские
- 40. Спиральная модель Спиральная модель — классический пример применения эволюционной стратегии конструирования. Спиральная модель (автор Барри Боэм,
- 41. Спиральная модель: 1 — начальный сбор требований и планирование проекта; 2 — та же работа, но
- 42. Интегрирующий аспект спиральной модели очевиден при учете радиального измерения спирали. С каждой итерацией по спирали (продвижением
- 43. Достоинства спиральной модели: 1) наиболее реально (в виде эволюции) отображает разработку программного обеспечения; 2) позволяет явно
- 44. Компонентно-ориентированная модель
- 45. Компонентно-ориентированная модель является развитием спиральной модели и тоже основывается на эволюционной стратегии конструирования. В модели конкретизируется
- 46. Тяжеловесные и облегченные процессы В XXI веке потребности общества в программном обеспечении информационных технологий достигли экстремальных
- 47. Таким образом, в современной инфраструктуре программной инженерии существуют два семейства процессов разработки: семейство прогнозирующих (тяжеловесных) процессов;
- 48. ХР-процесс Экстремальное программирование (eXtreme Programming, XP) — облегченный (подвижный) процесс (или методология), (Кент Бек, 1999). ХР-процесс
- 49. Большинство принципов, поддерживаемых в ХР (минимальность, простота, эволюционный цикл разработки, малая длительность итерации, участие пользователя, оптимальные
- 50. Структура «идеального» ХР-процесса.
- 51. Исследование (exploration) — это поиск новых требований (историй, задач), которые должна выполнять система. Блокировка (commitment) —
- 52. Вторая — седьмая реализации образуют период сопровождения, характеризующий природу ХР-проекта. Каждая итерация длится две недели, за
- 53. Модели качества процессов конструирования В условиях жесткой конкуренции, очень важно гарантировать высокое качество процесса конструирования ПО.
- 54. В зрелой компании работают ясные процедуры управления проектами и построения программных продуктов. Оценки длительности и затрат
- 55. Пять уровней зрелости модели СММ
- 56. Уровень 1 (Начальный) означает, что процесс в компании не формализован. Он не может строго планироваться и
- 57. Уровень 4 (Управляемый). С переходом на управляемый уровень в компании принимаются количественные показатели качества как программных
- 58. Управление проектами. Определения и концепции Управление проектами, лишь одна из 17 областей знаний программной инженерии, и
- 59. В силу масштабности содержания проекта либо, например, разнородности его составных частей (например, программно-аппаратный комплекс шифрования данных)
- 60. Любая оценка качества должна базироваться на измерениях и количественно выражаемых результатах измерений. измерений. Требования к качеству
- 62. Скачать презентацию