- •ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
- •Требования к программной системе Содержание. Использованные источники
- •Требования к программной системе.
- •Требования к программной системе. Software Requirements.
- •Требования к программной системе.
- •Требования к программной системе. Requirements engineering process
- •Требования к программной системе.
- •Виды требований.
- •Виды требований.
- •Требования к программной системе.
- •Требования к программной системе.
- •Функциональные требования
- •Функциональные требования
- •Функциональные требования
- •Требования к программной системе
- •Не функциональные требования
- •Не функциональные требования
- •Не функциональные требования
- •Не функциональные требования
- •Требования к программной системе
- •Требования к программной системе
- •Требования к программной системе
- •System requirements
- •Требования к программной системе
- •Требования к программной системе
- •Документирование
- •Документирование ГОСТ 24.204-80. Описание постановки задачи.
- •Документирование ГОСТ 34.602-89. Техническое задание на создание АС.
- •Документирование
- •Документирование
- •Документирование
- •Документирование
- •Документирование.
- •Документирование Руководящие принципы при подготовке раздела «Функциональные требования».
- •Документирование Шесть условий…
- •ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
- •Разработка требований. Requirements engineering process.
- •Разработка требований.
- •Разработка требований.
- •Разработка требований.
- •Разработка требований.
- •Разработка требований.
- •Методы выявления и анализа требований
- •Методы выявления и анализа требований
- •Методы выявления и анализа требований
- •Методы выявления и анализа требований Сценарии. Пример (банкомат)
- •Методы выявления и анализа требований.
- •Методы выявления и анализа требований
- •Методы выявления и анализа требований
- •Аттестация требований.
- •Аттестация требований. Методы.
- •ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
- •Управление требованиями. Что это и зачем ?
- •Управление требованиями. Что это и зачем ?
- •Управление требованиями. Эволюция требований
- •Управление требованиями. Выполняемые работы
- •Управление требованиями.
- •Управление требованиями.
- •ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
(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 |