Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции 1-4(АРХИТЕКТУРА).doc
Скачиваний:
4
Добавлен:
04.05.2019
Размер:
3.17 Mб
Скачать

Содержание фазы разработки

  1. системный анализ;

  2. проектирование;

  3. программирование (кодирование);

  4. отладка и тестирование;

Жизненный цикл программного продукта состоит из трех крупных фаз (рис. 1.1):

1) разработка;

2) использование (эксплуатация);

3) сопровождение и продолжающаяся разработка.

Фазы жизненного цикла программного продукта

В фазе разработки программный продукт разрабатывается и выпускается.

В фазе эксплуатации созданный продукт используется на практике конкретными потребителями.

В фазе сопровождения и продолжающейся разработки продукт моди­фицируется и развивается.

Традиционно считается, что самая трудная фаза — первая, поэтому на нее приходится тратить больше всего времени и средств. Однако в больших программах стоимость сопровождения и продолжающейся разработки часто превышает половину суммарных затрат за всю “жизнь” программы.

Фазу разработки обычно разделяют на следующие логические этапы [15, 11]:

1) системный анализ;

2) проектирование;

3) программирование (кодирование);

4) отладка и тестирование;

5) документирование;

6) выпуск.

В ЕСПД описываются следующие формальные этапы работ:

1) техническое задание;

2) эскизный проект",

3) технический проект;

4) рабочий проект;

5) внедрение.

На этапе системного анализа происходит анализ необходимости самого программного продукта, выявляются наиболее общие требование к нему.

В терминах ЕСПД (Единая система программной документации) это этап технического задания.

Результатом системного ана­лиза является выработка спецификации требований на программный про­дукт, содержащая указанные требования в формальном виде. ЕСПД называет такую спецификацию техническим заданием (ТЗ).

Спецификация (ТЗ), полученная на этапе системного анализа, является исходным пунктом в этапе проектирования.

При проектировании общие тре­бования к программному продукту пошагово и итерационно преобразуются в подробный проект, в деталях описывающий будущую структуру программ­ной системы, форматы данных, алгоритмы, интерфейс и т.д. ЕСПД описыва­ет проектирование в этапах эскизного проекта и технического проекта.

Этап кодирования при наличии достаточно детального проекта (каковым является технический проект) является рутинным. Фактически, кодирование — это в некоторой степени механический процесс реализации спроектиро­ванных алгоритмов на конкретном языке программирования с использовани­ем конкретного инструментария. Результатом кодирования являются собст­венно программы как в исходном тексте, так и в бинарном виде, пригодном к исполнению.

Этап отладки и тестирования предназначен для выявления и устранения ошибок в программах. Тестирование есть процесс выявления ошибок и уста­новления соответствия созданного продукта его спецификации. Отладка есть процесс локализации и устранения ошибок. Результатом данного этапа явля­ются отлаженные (насколько возможно) программы, для которых тестирова­нием установлено (опять же, насколько возможно) соответствие специфика­ции.

На этапе документирования к созданной программной системе подготав­ливается пакет документации, разносторонне описывающей будущий про­дукт как с внешней, так и с внутренней стороны. Каждый документ подго­тавливается для конкретного типа читателей: конечных пользователей, сис­темных администраторов, программистов и тд. Сами файлы продукта раз­мещаются на носителях информации (дискетах, компакт-дисках и т.д.) и снабжаются программой установки.

На этапе выпуска продукт проходит испытания по утвержденной методи­ке, после чего поставляется, внедряется или продается.

На проектирование, кодирование и тестирование приходится более 75% стоимости конструирования ПС.

Принятые здесь решения оказывают решающее воздействие на успех реализации ПС и легкость, с которой ПС будет сопровождаться.

Важность проектирования можно определить одним словом — качество. Проектирование — этап, на котором «выращивается» качество разработки ПС. Справедлива следующая аксиома разработки: может быть плохая ПС при хорошем проектировании, но не может быть хорошей ПС при плохом проектировании.

Ироническое изображение процесса разработки ПО

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

Требования к ПО определяют внешние (видимые) свойства программы, рассматриваемой как чёрный ящик.

Определению внутренних свойств системы и детализации её внешних свойств собственно и посвящено проектирование.

В зависимости от класса создаваемого ПО, процесс проектирования может обеспечиваться как «ручным» проектированием, так и различными средствами его автоматизации.

Проектированию обычно подлежат:

  • Архитектура ПО

  • Устройство компонентов ПО

  • Пользовательские интерфейсы

В процессе проектирования ПО для выражения его характеристик используются различные нотации — блок-схемы, ER-диаграммы, UML-диаграммы, DFD-диаграммы, а также макеты.

В понятие продукта разработки включается не только программный код — сюда от­носятся различные артефакты, такие как планы, отчеты, диаграммы.

В русскоязычной практике результат проектирования представляется в виде комплекса документов под названием «Эскизный проект», «Технический проект», в зарубежной — Software Architecture Document, Software Design Document.