Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры1.doc
Скачиваний:
2
Добавлен:
18.04.2019
Размер:
2.32 Mб
Скачать

1.2.Начало 70-х годов - “software crisis” (кризис по)

Проблемы:

  • отставание от графика

  • превышение сметы расходов

  • разработанный продукт не обладает требуемыми функциональными возможностями

  • низкая производительность ПО

  • качество ПО не устраивает потребителей

  • затраты на сопровождение ПО в крупных организациях составляют от 60% до 80% суммарных затрат по стадиям ЖЦ ПО

Программная инженерия (software engineering) - совокупность инженерных методов и средств создания ПО Фундаментальная идея программной инженерии: проектирование ПО является формальным процессом, который можно изучать и совершенствовать

Этапы становления и развития программной инженерии:

      • 70-е и 80-е годы - систематизация и стандартизация процессов создания ПО (на основе структурного подхода)

      • 90-е годы – начало перехода к сборочному, индустриальному способу создания ПО (на основе объектно-ориентированного подхода)

Программная инженерия – способ гарантировать выполнение требований заказчика

  • Системы должны создаваться в короткие сроки и соответствовать требованиям заказчика на момент внедрения

  • Качество ПО должно быть высоким

  • Разработка ПО должна быть осуществлена в рамках выделенного бюджета

  • Системы должны работать на оборудовании заказчика, а также взаимодействовать с имеющимся ПО

  • Системы должны быть легко сопровождаемыми и масштабируемыми

3.Категории современных проектов

  • небольшие проекты - проектная команда - менее 10 человек, срок от 3 до 6 месяцев

  • средние проекты - проектная команда - от 20 до 30 человек, протяженность проекта 1-2 года

  • крупномасштабные проекты - проектная команда - от 100 до 300 человек, протяженность проекта - 3-5 лет

  • гигантские проекты - армия разработчиков от 1000 до 2000 человек и более (включая консультантов и соисполнителей), протяженность проекта от 7 до 10 лет

4. Проблемы сегодняшнего дня

  • недопонимание потребностей пользователей

  • неумение справиться с изменяющимися требованиями

  • программное обеспечение трудно сопровождать

  • позднее обнаружение серьезных ошибок в проекте

  • неудовлетворительное качество ПО

  • низкая производительность ПО

  • плохая управляемость командой разработчиков и процессом разработки

Основная причина всех проблем - разработка ПО на сегодняшний день является почти чистым ремеслом и выполняется методом проб и ошибок

  • Разработка ПО изначально является проектированием и не имеет признаков строительства или производства

  • Разработчики не строят ПО – они его проектируют

  • Конечный результат проектирования – код на языке высокого уровня – является чертежом ПО

Другие причины возможных неудач (по данным Standish Group и Rational Software)

  • нечеткая и неполная формулировка требований к ПО, недостаточное управление требованиями

  • частое изменение требований и спецификаций

  • недостаточное вовлечение пользователей в работу над проектом

  • отсутствие необходимых ресурсов

  • неудовлетворительное планирование

  • отсутствие грамотного управления проектом

  • недостаточная поддержка со стороны высшего руководства

  • высокая сложность создаваемых систем

  • нестабильная архитектура

  • недостаточное тестирование

  • новизна используемой технологии для организации

  • высокий риск, связанный с «каскадным» подходом