Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
42
Добавлен:
01.06.2015
Размер:
1.64 Mб
Скачать

ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

(Software engineering)

Учебный курс

очного обучения по специальностям 230105 «Программное обеспечение вычислительной техники и автоматизированных систем»

010503 «Математическое обеспечение и администрирование информационных систем»

Л Е К Ц И Я

2.1

кафедры МОП ЭВМ

8 семестр

Требования к программной системе.

Software

Requirements.

В.В.Хашковский, к.т.н., доц. каф. МОП ЭВМ ТРТУ

Д.П.Калачев, доц., к.т.н., доц. каф. МОП ЭВМ

ТРТУ

Требования к программной системе Содержание. Использованные источники

Понятия требований к программе. Функциональные и нефункциональные требования. Пользовательские и системные требования. Формализация и стандартизация описания требований. Документирование. Техническое задание на разработку программы. Разработка и анализ технического задания. Управление требованиями.

1.Иан Соммервилл. Инженерия программного обеспечения, 6-е издание. Пер. с англ. – М.: Изд. дом «Вильямс», 2002.

2.Орлов С.А. Технологии разработки программного обеспечения: Учебник. – СПб.: Питер, 2002.

3.Брауде Э. Технология разработки программного обеспечения. – СПб.: Питер, 2004

4.Managing Software Requirements: A Use Case Approach, Second Edition. By Dean Leffingwell, Don Widrig. Publisher : Addison Wesley.Pub Date : May 05, 2003

5.Семейство стандартов ГОСТ 34. Информационная технология. Комплекс стандартов на автоматизированные системы.

6.Семейство стандартов ЕСПД. ГОСТ 19. Единая система программной документации.

7.Семейство стандартов ГОСТ Р ИСО/МЭК. Программная инженерия.

© 2005, В.В.Хашковский, Д.П.Калачев.

2

Требования к программной системе.

Цели изучения

To introduce the concepts of user and system requirements. Знать почему для записи этих требований используются разные способы.

To describe functional and non-functional requirements. Понять в чем их различие.

To explain techniques for describing system requirements. Основанные на структурированном естественном языке и на языке программирования.

To explain how software requirements may be organised in a requirements document. Получить понятие о стандартах на документирование требований.

© 2005, В.В.Хашковский, Д.П.Калачев.

3

Требования к программной системе. Software Requirements.

Что ?

Требование - это условие (ограничение или возможность),

которому должна соответствовать система.

Зачем ?

Добиться одинакового понимания с заказчиками и пользователями того, что должна делать система

Дать разработчикам полное понимание требований к

системе

Определить границы системы

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

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

Определить пользовательский интерфейс, базируясь на

потребностях и целях пользователей

© 2005, В.В.Хашковский, Д.П.Калачев.

4

Требования к программной системе.

Requirements engineering process

The requirements themselves are the descriptions of the system services and constraints

on the system’s operation and development that are generated during the requirements engineering process

Feasibility

study

Feasibility

report

Отчет об исследованиях или

Обзор продукта или

Внешнее описание ПС

Requirements

elicitation and

analysis

Requir ements specification

System models

Модель

User and system

requirements

системы

 

Пользовательск ие и системные

Requirements

validation

Спецификац

ия

требований

(Техническое

задание)

Requirements document

© 2005, В.В.Хашковский, Д.П.Калачев.

5

Требования к программной системе. Requirements engineering process

Requirements engineering process:

Предварительные исследования Feasibility study

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

Формирование и анализ требований Requirements

 

elicitation and analysis

 

Формируются путем изучения существующих аналогичных систем,

 

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

 

заказчиками, анализа задач и т.п.

Специфицирование требований Requirements

 

specification

 

Перевод всей информации собранной на предыдущих этапах в

 

документ …

Аттестация и утверждение требований

 

Requirements validation

 

Проверяется выполнимость, согласованность и полнота.

© 2005, В.В.Хашковский, Д.П.Калачев.

6

Требования к программной системе.

Виды требований

User requirements - Пользовательские требования

описание на естественном языке (плюс поясняющие диаграммы) функций, выполняемых системой, и ограничений, накладываемых на нее

System requirements - Системные требования

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

Software specification - Проектная системная спецификация

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

© 2005, В.В.Хашковский, Д.П.Калачев.

7

Виды требований.

Пример. Definitions and specifications

Определение пользовательских требований

ПО должно предоставлять средство доступа к внешним файлам, созданным в других программах

Спецификация системных требований

Пользователь должен иметь возможность определить тип внешних файлов

Для каждого типа файла должно иметься средство применимое к данному типу файла

Внешний файл определенного типа должен иметь соответствующую пиктограмму

Пользователь должен иметь возможность переопределить пиктограмму

При выборе пользователем пиктограммы к соответствующему файлу должно применяться стандартное для файлов данного типа файлов средство

© 2005, В.В.Хашковский, Д.П.Калачев.

8

Виды требований.

Requirements readers

Для кого пишутся требования:

Пользовательские:

Менеджеры и специалисты заказчика

Конечные пользователи

Менеджеры субподрядных организаций

Разработчики системной архитектуры

Системные:

Конечные пользователи

Специалисты заказчика

Разработчики системной архитектуры

Разработчики системы

Проектная системная спецификация

Специалисты заказчика (возможно)

Разработчики системной архитектуры

Разработчики системы

© 2005, В.В.Хашковский, Д.П.Калачев.

9

Требования к программной системе.

Функциональные и не функциональные требования

Функциональные требования Functional requirements

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

Нефункциональные требования Non-functional requirements

Описывают характеристики системы и ее окружения, а не поведение системы. Здесь также может быть приведен перечень ограничений, накладываемых на действия и функции, выполняемые системой. Они включают временные ограничения, ограничения на процесс разработки системы, стандарты и т.д.

Требования предметной области Domain requirements

Характеризуют ту предметную область, где будет эксплуатироваться система. Эти требования могут быть функциональными и нефункциональными

© 2005, В.В.Хашковский, Д.П.Калачев.

10

Соседние файлы в папке Материал Курса