Программная инженерия. Теория и практика
Реклама. ООО «ЛитРес», ИНН: 7719571260.
Оглавление
Олеслав Антамошкин. Программная инженерия. Теория и практика
Введение
Теоретический курс
1. Методы и средства программной инженерии
1.1. Введение в программную инженерию
1.2. Технология программирования и ее основные этапы
1.3. Разработка сложных программных систем
1.4. Оценка качества процессов создания программного обеспечения
2. Процесс разработки программного обеспечения
2.1. Понятие процесса разработки программного обеспечения
2.2. Классические модели процесса
2.3. Рабочий продукт. Дисциплина обязательств.Проект
3. Теория управления разработкой программного обеспечения
3.1. Архитектура программного обеспечения
3.2. Множественность точек зрения при разработке программного обеспечения
3.3. Язык UML. Виды диаграмм
3.4. Управление требованиями
3.5. Конфигурационное управление
3.6. Тестирование
3.7. Диаграммные техники в работе со знаниями
4. Средства разработки программного обеспечения
4.1. MSF
4.2. CMMI
4.3. «Гибкие» методы разработки
5. Visual Studio Team System
5.1. Технология Microsoft Visual Studio Team System
5.2. Управление элементами работы
5.3. Конфигурационное управление
5.4. Тестирование
5.5. Поддержка различных моделей процесса
Практикум
Общие рекомендации
Тема 1. Ознакомление с задачей и создание проекта
Тема 2. Работа с системой отслеживания ошибок
Тема 3. Работа с системой контроля версий
Тема 4. Разработка модульных тестов
Тема 5. Создание и конфигурация автоматической сборки
Тема 6. Настройка шаблона процесса
Заключение
Библиографический список
Приложение. Игра «Балда»
Отрывок из книги
Чем программирование отличается от программной инженерии [2]? Тем, что первое является некоторой абстрактной деятельностью и может происходить во многих контекстах. Можно программировать для удовольствия, для того, чтобы научиться (например, на уроках, на семинарах в университете), можно программировать в рамках научных разработок, а можно заниматься промышленным программированием. Как правило, это происходит в команде. При этом необходимо точно понимать, что нужно заказчику, выполнить работу в определенные сроки и результат должен быть нужного качества – того, которое удовлетворит заказчика и за которое он заплатит. Чтобы удовлетворить этим требованиям, программирование «обрастает» различными дополнительными видами деятельности: разработкой требований, планированием, тестированием, конфигурационным управлением, проектным менеджментом, созданием различной документации (проектной, пользовательской и пр.).
Разработка программного кода предваряется анализом и проектированием (первое означает создание функциональной модели будущей системы без учета реализации для осознания программистами требований и ожиданий заказчика; второе – предварительный макет, эскиз, план системы на бумаге). Трудозатраты на анализ и проектирование, а также форма представления их результатов сильно варьируются в зависимости от видов проектов и предпочтений разработчиков и заказчиков.
.....
Сложность разрабатываемого программного обеспечения при использовании подпрограмм с локальными данными по-прежнему ограничивалась возможностью программиста отслеживать процессы обработки данных, но уже на новом уровне. Однако появление средств поддержки подпрограмм позволило осуществлять разработку программного обеспечения нескольким программистам параллельно.
В начале 60-х гг. XX в. разразился «кризис программирования». Он выражался в том, что фирмы, взявшиеся за разработку сложного программного обеспечения, такого, как операционные системы, срывали все сроки завершения проектов. Проект устаревал раньше, чем был готов к внедрению, увеличивалась его стоимость, и в результате многие проекты так никогда и не были завершены.
.....