Понятие и метод объектно-ориентированного анализа.
Объектно-ориентированный анализ (ООА) - это метод отождествления важных сущностей реального мира для понимания и объяснения того, как они взаимодействуют между собой.
Большинство современных методов ООА основаны на использовании языка UML. Унифицированный язык моделирования UML (Unified Modeling Language) представляет собой язык для определения, представления, проектирования и документирования программных систем, организационно-экономических систем, технических систем и других систем различной природы. UML содержит стандартный набор диаграмм и нотаций самых разнообразных видов.
Стандарт UML версии 1.1, принятый OMG в 1997 г., содержит следующий набор диаграмм:
· Структурные (structural) модели:
1. диаграммы классов (class diagrams) - для моделирования статической структуры классов системы и связей между ними;
2. диаграммы компонентов (component diagrams) - для моделирования иерархии компонентов (подсистем) системы;
3. диаграммы размещения (deployment diagrams) - для моделирования физической архитектуры системы.
· Модели поведения (behavioral):
1. диаграммы вариантов использования (use case diagrams) - для моделирования функциональных требований к системе (в виде сценариев взаимодействия пользователей с системой);
2. диаграммы взаимодействия (interaction diagrams);
3. диаграммы последовательности (sequence diagrams) и кооперативные диаграммы (collaboration diagrams) - для моделирования процесса обмена сообщениями между объектами;
4. диаграммы состояний (statechart diagrams) - для моделирования поведения объектов системы при переходе из одного состояния в другое;
5. диаграммы деятельности (activity diagrams) - для моделирования поведения системы в рамках различных вариантов использования, или потоков управления.
14. Стадии планирования и разработки требований. Определение системных и функциональных требований.
Этапы разработки программного обеспечения:
1. Планирование: в зависимости от потребностей и выбранной методологии разработки может либо вообще отсутствовать, либо занимать достаточно большую часть разработки. На этом этапе определяются основные задачи, которые должны быть решены в рамках разработки ПО, производится оценка необходимого функционала, техническое обследование объекта автоматизации, оценка финансовых, временных, человеческих, технических и других ресурсов, необходимых для осуществления разработки. Так же определятся, какие будут использованы методы разработки и тестирования.
2. Составление требований: на этом этапе происходит сбор, анализ и формализация требований к разрабатываемому ПО со стороны заказчика.
3. Проектирование: на этом этапе происходит разработка и детализация модели разрабатываемого программного продукта. На основании построенной модели определяется структура и архитектура ПО, организация и взаимодействие модулей и интерфейсов, структура базы данных, строится диаграмма классов и т.д.. Процесс проектирования проводится с учетом методологии, выбранной на этапе планирования. Может быть составлен прототип разматываемого ПО.
4. Разработка: единственный этап, которые не может быть пропущен, вне зависимости от выбранной методологии. На этом этапе происходит преобразования результатов проектирования системы в программный код на используемом языке программирования в соответствии с используемыми стандартами кодирования.
5. Тестирование: этап, не имеющий четко определенного начала. Может начаться еще на этапе составления требований. Чем раньше начнется тестирование тем выше вероятность, что программное обеспечение будет в точности соответствовать требованиям и потребностям заказчика, тем раньше будут выявлены критические ошибки проектирования и разработки и тем дешевле обойдется их исправление.
6. Сопровождение программного обеспечения - на этом этапе основное внимание уделяется внесению изменений в программное обеспечение. Изменения могут быть связаны с доработками по желанию заказчика, устранением ошибок, изменением функционала или среды окружения. Так же осуществляется консультация, обучение и поддержка пользователей.
Системные требования — это описание примерных характеристик, которым должен соответствовать компьютер для того, чтобы на нём могло использоваться какое-либо определённое программное обеспечение. Эти характеристики могут описывать требования как к аппаратному обеспечению (тип и частота процессора, объём оперативной памяти, объём жёсткого диска), так и к программному окружению (операционная система, наличие установленных системных компонентов и сервисов и т. п.). Обычно такие требования составляются производителем или автором ПО.
Для некоторого ПО различают минимальные и рекомендуемые системные требования:
· Минимальные системные требования — это набор условий, необходимых для возможности запуска и работы программного продукта. Однако, наличие минимальных системных требований не отменяет возможность запуска ПО на компьютерах, которые по характеристикам слабее минимальных.
· Рекомендуемые системные требования — набор характеристик, подразумевающих оптимальную работу большей части возможностей продукта. Однако, даже если компьютер и подходит под рекомендуемые системные требования, это не значит высокой производительности ПО, например, в некоторых играх невозможно играть на максимальных настройках графики.
Функциональная спецификация в системотехнике и разработке программного обеспечения — это документ, описывающий требуемые характеристики системы (функциональность). Документация описывает необходимые для пользователя системы входные и выходные параметры (например, программная система).