Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Введение в программную инженерию

ПРОЕКТИРОВАНИЕ ПРОГРАММНЫХ СИСТЕМ

Основы проектирования

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

Целью проектирования является определение внутренних свойств системы и детализации ее внешних (видимых) свойств на основе выданных заказчиком требований к ПС (исходных условий задачи). Процесс проектирования — инженерная деятельность в рамках ЖЦ ПП, в рамках которой анализируются требования и создается описание внутренней структуры ПС, которое является основой для его дальнейшего конструирования.

В зависимости от сложности создаваемого ПП процесс проектирования может обеспечиваться как «ручным» проектированием, так и различными средствами его автоматизации. В процессе проектирования ПС также могут использоваться различные графические средства: блок-схемы, ER-диаграммы, UML-диаграммы, а также макеты.

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

ER-диаграммы используются при высокоуровневом проектировании БД.

UML-диаграммы (UML, Unified Modeling Language — унифицированный язык моделирования) — графическое описание процесса моделирования в области разработки ПО.

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

Роли участников процесса проектирования. При проектировании должны быть задействованы определенные люди, которые примут участие в анализе и разработке программного проекта. Участникам проекта принято назначать роли — функции, которые они будут выполнять в проекте. В зависимости от квалификации и величины проектной команды один человек может совмещать различные роли (например, если программу пишет один разработчик, то он может совместить их все). Для осуществления процесса проектирования выделяют следующие основные роли:

  • • заказчик;
  • • руководитель проекта;
  • • системный администратор;
  • • администратор базы данных;
  • • системный архитектор;
  • • архитектор базы данных;
  • • бизнес-аналитик;
  • • аналитик (системный аналитик);
  • • тестировщик.

Заказчиком является лицо, которому нужно разрабатываемое ПО. В качестве заказчика может выступать один человек, группа людей либо какое-либо предприятие, юридическое лицо. Заказчик определяет требования к разрабатываемому программному продукту, которые влияют на то, каким будет конечный результат разработки.

Руководитель проекта управляет процессом разработки ПП. Он отвечает за выполнение всех задач в срок перед заказчиком, обеспечивает взаимодействие всех участников программного проекта, контролирует процесс выполнения.

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

Администратор базы данных обеспечивает непрерывность работы сервера базы данных, контролирует его работу. При проектировании выступает в качестве консультанта по требованию к серверу базы данных, а также к системе управления базой данных, необходимой для программного продукта.

Системный архитектор проектирует архитектуру всего программного продукта в целом и более детально производит проектирование самого приложения, не вдаваясь в подробности проектирования базы данных.

Архитектор базы данных проектирует укрупненную структуру базы данных. Более детальная проработка архитектуры базы данных производится на этапе конструирования ПО.

Бизнес-аналитик описывает требуемое поведение системы с точки зрения конечных пользователей. Например, с точки зрения пользователя, покупка выбранного товара будет заключаться в щелчке левой кнопкой мыши по кнопке «Купить» и заполнении данных банковской карты. С точки зрения разработчика, данное действие будет заключаться в получении события щелчка левой кнопкой мыши по кнопке «ЫпВиу», вызове формы «бгтВиу» и проверке заполненных полей.

Аналитик (системный аналитик) пишет технические задания для разработчиков. В зависимости от проекта технические задания могут быть различной степени детализации — от подробных, по которым разработчикам остается только закодировать написанное ТЗ на выбранном языке программирования, до общих, которые требуют дополнительного проектирования (проработки структуры таблиц, классов, методов и пр.).

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

Для каждого программного продукта набор ролей будет различным. Например, при разработке интернет-магазина могут потребоваться все перечисленные роли, а при разработке мобильного приложения может быть достаточно заказчика, руководителя проекта, системного архитектора и системного аналитика.

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Пред   СОДЕРЖАНИЕ   След >
 

Популярные страницы