- •1 Анализ предметной области
 - •Описание предметной области
 - •Анализ существующих разработок
 - •Обоснование необходимости разработки
 - •2. Выбор технологии и среды разработки
 - •2.1. Выбор языка и средства разработки
 - •Выбор подхода к разработке
 - •3 Диаграмма классов
 - •4 Разработка алгоритмов и структур данных для хранения информации
 
- 
	
Выбор подхода к разработке
 
Сущность структурного подхода к разработке программного обеспечения заключается в его декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.
Сущность объектного подхода к разработке программных средств, состоит в том, что вся разработка системы основывается на выделении в объектах их взаимосвязей, функций и свойств в тоё предметной области и среде исполнения, для работы в которой предназначается данное программное средство, а также в связи с теми задачами, которое данное программное средство должно решать.
Для разработки был выбран объектно-ориентированный подход потому что, все основные, широко применяемые средства разработки сегодня ориентируются на объектно-ориентированный подход и языком программирования был выбран объектно-ориентированный язык.
А также объектно-ориентированный подход имеет следующие преимущества:
1 Объектная декомпозиция дает возможность создавать программные системы меньшего размера путем использования общих механизмов, обеспечивающих необходимую экономию выразительных средств. Использование объектного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования не только программ, но и проектов, что в конце концов ведет к созданию среды разработки и переходу к сборочному созданию ПО. Системы зачастую получаются более компактными, чем их структурные эквиваленты, что означает не только уменьшение объема программного кода, но и удешевление проекта за счет использования предыдущих разработок.
2 Объектная декомпозиция уменьшает риск создания сложных систем ПО, так как она предполагает эволюционный путь развития системы на базе относительно небольших подсистем. Процесс интеграции системы растягивается на все время разработки, а не превращается в единовременное событие.
3 Объектная модель вполне естественна, поскольку в первую очередь ориентирована на человеческое восприятие мира, а не на компьютерную реализацию.
Объектная модель позволяет в полной мере использовать выразительные возможности объектных и объектно-ориентированных языков программирования.
3 Диаграмма классов
Рисунок – Подробная диаграмма классов
Описание методов и полей классов представлены в таблицах 1-4.
Таблица 1 – Описание полей класса IpAddressData
Название поля  | 
		Тип  | 
		Назначение  | 
	
_address  | 
		String  | 
		Ip- адрес видеоисточника  | 
	
_port  | 
		String  | 
		Свободные порты видеоисточника  | 
	
Таблица 2 – Описание методов класса IpAddressData
Название метода  | 
		Тип  | 
		Назначение  | 
	
IpAddressData  | 
		Void  | 
		Добавление новых ip видеоисточников  | 
	
Таблица 3 – Описание полей класса ScanService
Название поля  | 
		Тип  | 
		Назначение  | 
	
List  | 
		ArrayList<IpAddressData>, т.е. стандартный шаблон ArrayList с классом IpAddressData для инстацирования шаблона  | 
		Ip- адрес видеоисточника  | 
	
Таблица 4 – Описание методов класса ScanService
Название метода  | 
		Тип  | 
		Назначение  | 
	
ScanNetwork  | 
		Void  | 
		Добавление в список новый видеоисточников с информацией о них  | 
	
