
- •Оглавление
- •9. Тестирование программных продуктов …………………..263
- •10. Отладка программного обеспечения …………………..287
- •11.Составление программной документации …………………..300
- •Предисловие
- •Введение
- •1. Технология программирования. Основные понятия и подходы
- •1.1. Технология программирования и основные этапы ее развития
- •1.2. Проблемы разработки сложных программных систем
- •1.3. Блочно-иерархический подход к созданию сложных систем
- •1.4. Жизненный цикл и этапы разработки программного обеспечения
- •1.5. Эволюция моделей жизненного цикла программного обеспечения
- •1.6. Ускорение разработки программного обеспечения. Технология rad
- •1.7. Оценка качества процессов создания программного обеспечения
- •Контрольные вопросы
- •2. Приемы обеспечения технологичности программных продуктов
- •2.1. Понятие технологичности программного обеспечения
- •2.2. Модули и их свойства
- •2.3. Нисходящая и восходящая разработка программного обеспечения
- •2.5. Стиль оформления программы
- •2.6. Эффективность и технологичность
- •2.7. Программирование «с защитой от ошибок»
- •2.8. Сквозной структурный контроль
- •Контрольные вопросы и задания
- •3. Определение требований к программному обеспечению и исходных данных для его проектирования
- •3.1. Классификация программных продуктов по функциональному признаку
- •3.2. Основные эксплуатационные требования к программным продуктам
- •3.3. Предпроектные исследования предметной области
- •3.4. Разработка технического задания
- •1.Введение
- •2. Основание для разработки
- •3. Назначение
- •4. Требования к программе или программному изделию
- •5. Требования к программной документации
- •4. Требования к программе или программному изделию
- •5. Требования к программной документации
- •1. Введение
- •2. Основание для разработки
- •3. Назначение
- •4. Требования к программе или программному изделию
- •5. Требования к программной документации
- •3.5. Принципиальные решения начальных этапов проектирования
- •Контрольные вопросы и задания
- •4. Анализ требований и определение спецификаций программного обеспечения при структурном подходе
- •4.1. Спецификации программного обеспечения при структурном подходе
- •4.2. Диаграммы переходов состояний
- •4.3. Функциональные диаграммы
- •4.4. Диаграммы потоков данных
- •4.5. Структуры данных и диаграммы отношений компонентов данных
- •4.6. Математические модели задач, разработка или выбор методов решения
- •Контрольные вопросы и задания
- •5. Проектирование программного обеспечения при структурном подходе
- •5.1. Разработка структурной и функциональной схем
- •5.2. Использование метода пошаговой детализации для проектирования структуры программного обеспечения
- •5.3. Структурные карты Константайна
- •5.4. Проектирование структур данных
- •5.5. Проектирование программного обеспечения, основанное на декомпозиции данных
- •5.6. Case-технологии, основанные на структурных методологиях анализа и проектирования
- •Контрольные вопросы и задания
- •6. Анализ требований и определение спецификаций программного обеспечения при объектном подходе
- •6.2. Определение «вариантов использования»
- •Типичный ход событий (окончание)
- •Альтернатива
- •6.3. Построение концептуальной модели предметной области
- •6.4. Описание поведения. Системные события и операции
- •Контрольные вопросы и задания
- •7. Проектирование программного обеспечения при объектном подходе
- •7.1. Разработка структуры программного обеспечения при объектном подходе
- •7.2. Определение отношений между объектами
- •7.3. Уточнение отношений классов
- •7.4. Проектирование классов
- •7.5. Компоновка программных компонентов
- •7.6. Проектирование размещения программных компонентов для распределенных программных систем
- •7.7. Особенность спиральной модели разработки. Реорганизация проекта
- •Контрольные вопросы и задания
- •8. Разработка пользовательских интерфейсов
- •8.1. Типы пользовательских интерфейсов и этапы их разработки
- •8.2. Психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации
- •8.3. Пользовательская и программная модели интерфейса
- •8.4. Классификации диалогов и общие принципы их разработки
- •8.5. Основные компоненты графических пользовательских интерфейсов
- •8.6. Реализация диалогов в графическом пользовательском интерфейсе
- •8.7. Пользовательские интерфейсы прямого манипулирования и их проектирование
- •8.8. Интеллектуальные элементы пользовательских интерфейсов
- •Контрольные вопросы и задания
- •9. Тестирование программных продуктов
- •9.1. Виды контроля качества разрабатываемого программного обеспечения
- •9.2. Ручной контроль программного обеспечения
- •9.3. Структурное тестирование
- •9.4. Функциональное тестирование
- •9.5. Тестирования модулей и комплексное тестирование
- •9.6. Оценочное тестирование
- •Контрольные вопросы и задания
- •10. Отладка программного обеспечения
- •10.1. Классификация ошибок
- •10.2. Методы отладки программного обеспечения
- •10.3. Методы и средства получения дополнительной информации
- •10.4. Общая методика отладки программного обеспечения
- •Контрольные вопросы
- •11. Составление программной документации
- •11.1. Виды программных документов
- •11.2. Пояснительная записка
6.2. Определение «вариантов использования»
Разработку спецификаций программного обеспечения начинают с анализа требований к функциональности, указанных в техническом задании. В процессе анализа выявляют внешних пользователей разрабатываемого программного обеспечения и перечень отдельных аспектов его поведения в процессе взаимодействия с конкретными пользователями. Аспекты поведения программного обеспечения были названы «вариантами использования» или «прецедентами» (use cases).
Примечание. Варианты использования основаны на неформальном описании сценариев функционирования проектируемых программных систем, применяемом многими разработчиками программного обеспечения в 1980-1990 голах.
Вариант использования представляет собой характерную процедуру применения разрабатываемой системы конкретным действующим лицом, в качестве которого могут выступать не только люди, но и другие системы или устройства.
Не следует путать вариант использования с конкретными операциями будущей системы. Каждый вариант использования связан с некоторой целью, имеющей самостоятельное значение, например для текстового редактора Формирование оглавления - это вариант использования, а Связывание заголовков со специальными стилями - операция, которую необходимо выполнить, чтобы стало возможно автоматическое построение оглавления.
В зависимости от цели выполнения конкретной процедуры различают следующие варианты использования:
основные - обеспечивают требуемую функциональность разрабатываемого программного обеспечения:
вспомогательные - обеспечивают выполнение необходимых настроек системы и ее обслуживание (например, архивирование информации и т. п.):
дополнительные - обеспечивают дополнительные удобства для пользователя (как правило, реализуются в том случае, если не требуют серьезных затрат каких-либо ресурсов ни при разработке, ни при эксплуатации).
Вариант использования можно описать кратко или подробно. Краткая форма описания содержит: название варианта использования, его цель, действующих лиц, тип варианта использования (основная, второстепенная или дополнительная) и его краткое описание. Краткое описание варианта использования Выполнение задания системы решения комбинаторно-оптимизационных задач можно представить в следующем виде:
Название варианта Цель Действующие лица Краткое описание
Тип варианта |
Выполнение задания Получение результатов решения задачи Пользователь Решение задачи предполагает выбор задачи, выбор алгоритма, задание данных и получение результатов решения. Основной |
Основные варианты использования обычно описывают подробно, стараясь отразить особенности предметной области разрабатываемого программного обеспечения. Подробная форма, кроме указанной выше информации, включает описание типичного хода событий и возможных альтернатив. Типичный ход событий представляют в виде диалога между пользователями и системой, последовательно нумеруя события. Если пользователь может выбирать варианты, то их описывают в отдельных таблицах. Также отдельно приводят альтернативы, связанные с нарушением типичного хода событий. Ниже представлено подробное описание варианта использования Выполнение задания:
Вариант использования Выполнение задания Типичный ход событий
| |
Действия исполнителя |
Отклик системы |
/. Пользователь инициирует новое задание 3. Пользователь выбирает тип задачи
5. Пользователь выбирает способ задания данных а) Если выбран ввод с клавиатуры, см. раздел Ввод данных б) Если выбран ввод из базы данных, см. раздел Выбор данных из базы 7. Пользователь выбирает алгоритм
9. Пользователь инициирует процесс решения |
2. Система регистрирует новое задание и предлагает список типов задач 4. Система регистрирует тип задачи и предлагает список способов задания данных 6. Система регистрирует данные и предлагает список алгоритмов решения
8. Система регистрирует алгоритм и предлагает начать решение 10. Система проверяет полноту определения задания и запускает подпрограмму решения задачи |