- •1 Анализ предметной области
- •Описание предметной области
- •Анализ существующих разработок
- •Обоснование необходимости разработки
- •2. Выбор технологии и среды разработки
- •2.1. Выбор языка и средства разработки
- •Выбор подхода к разработке
- •3 Разработка спецификаций программного обеспечения
- •3.1 Построение диаграмм вариантов использования
- •3.2 Построение диаграмм последовательностей системы
- •5 Проектирование интерфейса пользователя
- •6 Разработка алгоритмов и структур данных для хранения информации
- •7 Тестирование и отладка по
- •7.1 Выбор стратегии тестирования
- •7.2 Разработка тестов
- •7.3 Тестирование и отладка по
- •8 Руководства пользователя и системного программиста
- •Руководства пользователя
- •8.2 Руководство системного программиста
-
Выбор подхода к разработке
Сущность структурного подхода к разработке программного обеспечения заключается в его декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.
Сущность объектного подхода к разработке программных средств, состоит в том, что вся разработка системы основывается на выделении в объектах их взаимосвязей, функций и свойств в тоё предметной области и среде исполнения, для работы в которой предназначается данное программное средство, а также в связи с теми задачами, которое данное программное средство должно решать.
Для разработки был выбран объектно-ориентированный подход потому что, все основные, широко применяемые средства разработки сегодня ориентируются на объектно-ориентированный подход и языком программирования был выбран объектно-ориентированный язык.
А также объектно-ориентированный подход имеет следующие преимущества:
1 Объектная декомпозиция дает возможность создавать программные системы меньшего размера путем использования общих механизмов, обеспечивающих необходимую экономию выразительных средств. Использование объектного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования не только программ, но и проектов, что в конце концов ведет к созданию среды разработки и переходу к сборочному созданию ПО. Системы зачастую получаются более компактными, чем их структурные эквиваленты, что означает не только уменьшение объема программного кода, но и удешевление проекта за счет использования предыдущих разработок.
2 Объектная декомпозиция уменьшает риск создания сложных систем ПО, так как она предполагает эволюционный путь развития системы на базе относительно небольших подсистем. Процесс интеграции системы растягивается на все время разработки, а не превращается в единовременное событие.
3 Объектная модель вполне естественна, поскольку в первую очередь ориентирована на человеческое восприятие мира, а не на компьютерную реализацию.
Объектная модель позволяет в полной мере использовать выразительные возможности объектных и объектно-ориентированных языков программирования.
3 Разработка спецификаций программного обеспечения
3.1 Построение диаграмм вариантов использования
Диаграммы вариантов использования позволяют наглядно представить ожидаемое поведение системы. Диаграмма вариантов использования разработанного программного обеспечения сделана в программе Rational Rose и представлена на рисунке 5.
Рисунок 5 Диаграмма вариантов использования
3.2 Построение диаграмм последовательностей системы
Диаграмма последовательностей системы – графическая модель, которая для определенного сценария варианта использования показывает генерируемые действующими лицами события и их порядок. На рисунках представлены диаграммы последовательностей системы для вариантов использования разработанного ПО.
System1
Нажатие
на кнопку сканирования сети
Сканирование
сети на ip
адреса
Добавление
в список найденных видеоустройств
Вывод
списка видеоустройств
Рисунок – Диаграмма последовательностей системы для варианта использования «Сканирование сети на видеоустройства».
System1
Нажатие
на кнопку обновить
Сканирование сети на ip адреса
Добавление
в список новых найденных видеоустройств
Вывод
обновленного списка видеоустройств
Рисунок – Диаграмма последовательностей системы для варианта использования «Обновление списка видеоустройств».
System1
Ввод
параметра фильтрования
Фильтрация
списка видеоустройств
Вывод
отфильтрованного списка видеоустройств
Рисунок – Диаграмма последовательностей системы для варианта использования «Фильтрация видеоустройств».
System1
Выбор
нужного видеоустройства из списка
Формирование
строки подключения
Вывод
сформированной строки подключения
Рисунок – Диаграмма последовательностей системы для варианта использования «Формирование строки подключения».
4 Проектирование структуры программного обеспечения
Построение диаграммы пакетов
Диаграмма пакетов отображает составные части проектируемой программной системы и связи между ними. На рисунке 16 представлена диаграмма пакетов разработанного программного обеспечения, в таблице 12 – описание назначения его модулей.
Рисунок – Диаграмма пакетов
4.2 Построение диаграмм классов
4.2.1 Контекстная диаграмма классов
Контекстная диаграмма классов представлена на рисунке
Рисунок – Контекстная диаграмма классов
4.2.2 Подробная диаграмма классов
Рисунок – Подробная диаграмма классов
Проектирование состава и структур ПО
Описание методов и полей классов представлены в таблицах
Таблица – Описание полей класса IpAddressData
Название поля |
Тип |
Назначение |
_address |
String |
Ip- адрес видеоисточника |
_port |
String |
Свободные порты видеоисточника |
Таблица – Описание методов класса IpAddressData
Название метода |
Тип |
Назначение |
IpAddressData |
Void |
Добавление новых ip видеоисточников |
Таблица – Описание полей класса ScanService
Название поля |
Тип |
Назначение |
List |
ArrayList<IpAddressData>, т.е. стандартный шаблон ArrayList с классом IpAddressData для инстацирования шаблона |
Ip- адрес видеоисточника |
Таблица – Описание методов класса ScanService
Название метода |
Тип |
Назначение |
ScanNetwork |
Void |
Добавление в список новый видеоисточников с информацией о них |
