ВУЗ: Томский государственный университет систем управления и радиоэлектроники
Категория: Учебное пособие
Дисциплина: Проектирование информационных систем
Добавлен: 21.10.2018
Просмотров: 10739
Скачиваний: 8
6
8.3.1 Организация разработки программного изделия
в фазе исследований ......................................................209
8.3.2 Организация разработки программного изделия
в фазе анализа осуществимости ...................................211
8.3.3 Организация разработки программного изделия
в фазе конструирования (проектирования) .................213
8.3.4 Организация разработки программного изделия
в фазе программирования .............................................214
8.3.5 Организация разработки программного изделия
в фазе оценки..................................................................217
8.3.6 Окончание проекта..........................................................219
8.3.7 Участие группы разработки в фазовых обзорах ..........220
8.4 Организация обслуживания разработки программного
изделия....................................................................................222
8.4.1 Организационная структура группы
обслуживания.................................................................223
8.4.2 Организация обслуживания программного
изделия в фазе исследования ........................................223
8.4.3 Организация обслуживания в фазах анализа
осуществимости и конструирования ...........................224
8.4.4 Организация обслуживания в фазе
программирования и оценки.........................................226
8.4.5 Организация обслуживания в фазе использования .....228
8.4.6 Участие группы обслуживания в фазовых обзорах .....230
8.5 Организация выпуска документации...................................231
8.5.1 Организационная структура группы выпуска
документации.................................................................231
8.5.2 Стандарты и практические руководства.......................233
8.5.3 Организация выпуска документации в фазах
исследований и анализа осуществимости ...................235
8.5.4 Организация выпуска документации в фазах
конструирования и программирования .......................236
8.5.5 Организация выпуска документации в фазах
оценки и использования................................................238
8.5.6 Участие группы выпуска документации в фазовых
обзорах............................................................................239
8.6 Организация испытаний программных изделий ................240
7
8.6.1 Современное состояние методов обеспечения
качества программного изделия...................................241
8.6.2 Организационная структура группы испытаний .........246
8.6.3 Организация испытаний в фазах исследований
и анализа осуществимости............................................249
8.6.4 Организация испытаний в фазах конструирования
и программирования......................................................250
8.6.5 Организация испытаний в фазе оценки ........................251
8.6.6 Организация испытаний в фазе использования ...........254
8.6.7 Участие группы испытаний в фазовых обзорах...........254
Контрольные вопросы.................................................................255
Список литературы ....................................................................257
8
1
ВВЕДЕНИЕ
.
ПРОБЛЕМЫ
СОВРЕМЕННОГО
ПРОГРАММИРОВАНИЯ
Первый
этап
развития
программирования
в
первую
оче-
редь
был
связан
с
накоплением
опыта
в
приобретении
техниче-
ских
(стандартных)
навыков
написания
программ.
Однако
по
мере
развития
средств
вычислительной
техники
и
накопления
этих
навыков
существенно
изменилось
положение.
Возникли
естественные
вопросы
—
продолжаем
ли
мы
делать
ошибки?;
является
ли
сам
процесс
написания
программ
правильным?;
не
возникла
ли
необходимость
в
создании
новых
методов
разра-
ботки
программного
обеспечения?
Ответом
на
эти
вопросы
и
занимается
научная
дисципли-
на
—
методы
(технология)
разработки
программного
обеспече-
ния.
Круг
вопросов,
который
рассматривает
данная
дисциплина,
связан
с
классическими
составляющими
программирования:
−
написанием
спецификаций;
−
проектированием;
−
тестированием
и
−
функционированием
программ.
Практическую
значимость
данной
дисциплины
можно
проиллюстрировать путем сопоставления
состояний
дел
по
раз-
работке
технических
систем
и
больших
программных
систем.
•
В
1958
году
в
США
приступили
к
строительству
Верра
-
цано-Нарроуского
моста.
По
расчетам
инженеров
затра-
ты
на
строительство
определялись
в
размере
325
млн
$,
а
работы
планировалось
завершить
в
1965
году.
Это
са-
мый
большой
подвесной
мост
в
мире.
Работы
по
нему
завершились
в
ноябре
1964
года
в
соответствии
с
про-
ектной
сметой.
•
Приблизительно
в
это
же
самое
время
производилась
разработка
операционной
системы
OS
фирмы
IBM.
По
планам
разработчиков
длительность
разработки
со-
ставляла
5000
человеко-лет.
Но
несмотря
на
все
воз-
можные
принятые
фирмой
меры,
завершилась
на
4
го-
да
позже
планируемого
срока.
9
Возникает
вопрос,
почему
в
технических
системах
воз-
можен
достаточно
точный
прогноз,
тогда
как
при
разработке
программных
систем
он
оказывается
несостоятельным?
Частично
на
этот
вопрос
можно
ответить
следующим
об-
разом
—
инженеру
проще
предусмотреть
возрастающую
слож-
ность
строительства,
вызванную
увеличением
размеров
моста,
чем
разработчику
программного
обеспечения
определить
слож-
ность
программы
большого
размера.
В
настоящем
курсе
мы
будем
рассматривать
методы
и
технические
приемы,
введение
которых
позволит
уменьшить
стоимость
и
повысить
надежность
программ.
В
общем
случае
методы
разработки
программного
обес-
печения
не
есть
программирование,
хотя
программирование
со-
ставляет
важную
ее
часть.
Данный
предмет
также
не
сводится
к
проблеме
изучения
компиляторов
и
операционных
систем,
хотя
они
также
играют
существенную
роль
в
рассматриваемой
тех-
нологии.
Точно
так же
проблемы
электронной
техники,
струк-
туры
ЭВМ
не
являются
предметом
исследований,
хотя
и
их
знание
в
данном
предмете
необходимо.
Методы
разработки
программного
обеспечения
—
это
синтезированная
дисциплина,
в
которой
для
составления
алго-
ритмов
используются
математические
методы,
для
оценки
за-
трат
и
выбора
компромиссных
решений
—
методы
инженерных
расчетов,
для
определения
требований
к
системе,
учета
ситуа-
ций,
связанных
с
потерями,
организации
работы
исполнителей
и
прогнозирования
—
методы
управления.
Все
это
и
будет
пред-
метом
наших
исследований.
10
2
ЭТАПЫ
РАЗРАБОТКИ
ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ
Естественно,
что
отдельный
человек
не
в
состоянии
пол-
ностью
осмыслить
и
построить
программное
обеспечение
боль-
шой
системы.
Для
управления
ходом
разработки
больших
про-
граммных
систем
выделяются
шесть
этапов,
составляющих
цикл
разработки
(цикл
жизни)
программного
обеспечения:
1)
анализ
требований,
предъявляемых
к
системе;
2)
определение
спецификаций;
3)
проектирование;
4)
кодирование;
5)
тестирование:
а)
автономное;
б)
комплексное;
6)
эксплуатация
и
сопровождение.
Рис.
2.1
—
Распределение
затрат
по
этапам
разработки
На
диаграмме
(рис.
2.1)
показано
приблизительное
рас-
пределение
затрат
на
реализацию
отдельных
этапов
разработки.
Рассмотрим
определение
каждого
из
этих
этапов.
Анализ
требований
(10%)
Определение
специ-
фикаций
(10%)
Проектирование
(15%)
Кодирование
(20%)
Автономное
тести-
рование
(25%)
Комплексное
тестирова-
ние
(20%)