Введение

Начальный этап проектирования программного обеспечения

Высокоуровневый дизайн (HLD) описывает архитектуру, которая будет использована для разработки системы. Архитектурная схема предоставляет общий обзор всей системы, определяя основные компоненты, которые будут разработаны для продукта, и их интерфейсы. В HLD могут использоваться нетехнические или умеренно технические термины, понятные администраторам системы. В отличие от него, низкоуровневый дизайн детализирует логическое проектирование каждого из этих элементов для использования инженерами и программистами. Документация HLD должна охватывать планируемую реализацию как программного, так и аппаратного обеспечения.

Цель

Предварительное проектирование: На начальных этапах разработки системы необходимо определить масштаб проекта и выявить потенциально рискованные или трудоемкие элементы. Обзор проектирования: По мере реализации проекта необходимо предоставить общее представление о том, как различные подсистемы и компоненты системы взаимодействуют между собой. В обоих случаях высокоуровневое проектирование должно представлять собой полное видение всей системы, разбитое на более мелкие, легко понимаемые части. Чтобы минимизировать затраты на сопровождение в процессе разработки и детализации низкоуровневого проектирования, целесообразно разрабатывать высокоуровневое проектирование только в той степени, которая необходима для решения поставленных задач.

Проектный документ высокого уровня

Проектный документ высокого уровня, или HLDD, детализирует текущее описание проекта, предоставляя достаточную информацию для разработки. Этот документ включает в себя высокоуровневую диаграмму архитектуры, отображающую структуру системы, включая аппаратное обеспечение, архитектуру базы данных, архитектуру приложений (слои), потоки данных приложений (навигация), архитектуру безопасности и технологическую архитектуру.

Обзор конструкции

Дизайн высокого уровня предоставляет общий обзор системы, продукта, услуги или процесса. Такой обзор способствует совместимости между взаимодействующими компонентами. Дизайн на самом высоком уровне должен кратко описывать все платформы, системы, продукты, услуги и процессы, от которых он зависит, а также любые важные изменения, которые необходимо в них внести. Помимо этого, следует кратко рассмотреть все существенные коммерческие, юридические, экологические, связанные с безопасностью, охраной труда и технические риски, а также любые проблемные вопросы и допущения. Цель состоит в том, чтобы вкратце упомянуть все области работы, четко определить ответственность за более детальную разработку и одновременно стимулировать эффективное взаимодействие между различными проектными командами. В настоящее время большинство проектов высокого уровня требуют участия ряда экспертов, представляющих различные профессиональные области. Наконец, в дизайне высокого уровня необходимо идентифицировать все типы конечных пользователей, а каждый участвующий в разработке проект должен уделять должное внимание пользовательскому опыту.