- •Тема 1.1 Программное обеспечение (по): основные понятия и определения. Классификация по. Спецификация по.
- •Тема 1.2 Жизненный цикл программного продукта. Модели жизненного цикла разработки по
- •I.Этап. Разработка алгоритма и программы.
- •II.Этап. Эксплуатация и сопровождение.
- •III.Этап. Завершение жизненного цикла.
- •Тема 1.3 Сопровождение программного обеспечения. Эволюция программных систем. Автоматизированные средства разработки по.
- •Тема 1.4 Анализ предметной области. Определение и разработка требований к программным продуктам. Определение спецификаций требований программного обеспечения.
- •Тема 1.5 Качество по и методы его контроля. Понятие качества. Характеристики качества программных средств.
- •Тема 1.6 Проектирование по и его виды. Понятие архитектуры по. Влияние архитектуры на свойства по.
- •Тема 1.7 Проектирование интерфейса пользователя. Графический и диалоговый режим
- •Тема 1.8 Разработка по. Подходы к разработке по.
- •Тема 1.9 Программирование и стиль. Качество в реализации по
- •Раздел 2. Тестирование и отладка по
- •Тема 2.1 Верификация и аттестация по
- •Тема 2.2 Разработка тестов. Методы проверки и тестирования программ и систем. Тестовое окружение
- •Тема 2.3 Обеспечение надежности по.
- •Тема 2.4 Методы обеспечения надежности на различных этапах жизненного цикла разработки по
- •Тема 2.5 Модульное тестирование. Автоматизация модульного тестирования.
- •Тема 2.6 Интеграционное тестирование. Системное тестирование. Тестирование пользовательского интерфейса.
- •Тема 2.7 Отладка по. Трансляция. Компоновка программы. Выполнение программы с целью определения логических ошибок
- •Раздел 3. . Интеграция системы
- •Раздел 4. Коллективная разработка по
- •Тема 4.1 Категории специалистов занятых разработкой и эксплуатацией программ
Тема 1.4 Анализ предметной области. Определение и разработка требований к программным продуктам. Определение спецификаций требований программного обеспечения.
На этапе анализа разрабатываются пользовательские и системные требования к программной системе, которые должны быть оформлены в виде единого документа – спецификации требований.
Спецификация требований – это собой итоговый набор расположенных по приоритетам требований, который является формальным соглашением заказчика с разработчиком системы.
Спецификация требований – основной документ, описывающий разрабатываемую систему, и она необходима различным группам заинтересованных лиц. Это клиенты и специалисты по продажам, менеджеры проекта, разработчики, пользователи и т.д.
Учитывая важность спецификации и различные группы ее читателей, к ней предъявляются противоположные требования. С одной стороны, она должна быть простой, ясной и понятной пользователю неспециалисту, а с другой, для разработчика, – точной, подробной и формальной. Для учета этих требований спецификация, обычно, состоит из двух частей, первая из которых описывает пользовательские требования, а вторая – системные требования.
Состав спецификации требований
Существует достаточно большое число шаблонов (схем) спецификации требований, отличающихся структурой или способом упорядочения требований. Но каждый из шаблонов требует включения в спецификацию следующей информации.
Введение
Этот раздел должен содержать обзор спецификации, позволяющий читателю разобраться в структуре и принципах ее построения. Здесь определяется специфицируемая далее система или подсистема, указывается ее редакция и версия; перечисляются стандарты, используемые при написании спецификации, а также все документы, на которые есть ссылки в спецификации.
Часто во введении приводят краткое описание концепции системы, перечисляют различные группы пользователей спецификации и приводится рекомендуемая последовательность чтения разделов для них.
Общее описание
В этом разделе должен быть представлен общий обзор продукта и той среды, в которой он будет применяться, предполагаемые пользователи, известные ограничения и зависимости. Обычно общее описание содержит следующую информацию.
Продукт. Здесь указывают особенности продукта или его основные функции, приводят основные группы требований и их взаимосвязь, используя, например, диаграмму потоков данных высокого уровня, диаграмму варианта использования и т.п.
Пользователи. Приводят перечисление классов предполагаемых пользователей и их характеристики.
Окружение. Описывают рабочую среду программной системы: аппаратные средства, операционные системы. Здесь же перечисляют другие программные компоненты, с которыми система должна быть совместима.
Ограничения реализации. Перечисляют все факторы, ограничивающие возможности разработчика, например:
технологии, языки программирования, базы данных, стандарты разработки, которые следует (или не следует) использовать;
ограничения операционной среды, аппаратуры;
ограничения, связанные с продуктами, разработанными ранее;
соглашения, связанные с пользовательским интерфейсом, форматом обмена данными и т.д.
Функции системы
Для каждой функции системы должно быть указано:
название и приоритет;
системные входные и выходные данные, или последовательности «воздействие – реакция»;
детальные функциональные требования;
реакция на ошибки ввода данных или неверные действия пользователя.
Внешний интерфейс
Раздел должен содержать описание логических характеристик каждого пользовательского интерфейса, например:
ссылки на стандарты графического интерфейса, шрифтов, элементов управления и т.п.;
конфигурация экрана, стандартные кнопки и функции навигации;
стандарты отображения сообщений и т.д.
Здесь же описывают характеристики интерфейсов программных и аппаратных компонентов системы, протоколы их взаимодействия. Кроме этого – интерфейсы между системой и другими программными компонентами и интерфейсы передачи информации.
Нефункциональные требования
В этом разделе описывают остальные нефункциональные требования (не относящиеся к уже описанным требованиям к интерфейсу). Это могут быть требования к производительности, атрибуты качества продукта, требования к безопасности, охране труда и т.д.
Кроме перечисленной информации, в спецификацию требований часто включают словарь терминов, которые пользователю необходимо знать для понимания спецификации, список нерешенных проблем, связанных с требованиями и т.д.
