Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Принципы проектирования программных систем

Принципы проектирования программных систем — это принципы, заложенные в основу процесса создания программного обеспечения.

Введение

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

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

Принципы проектирования программных систем

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

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

ER-диаграммы применяются при осуществлении высокоуровневого проектирования баз данных.

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

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

«Принципы проектирования программных систем» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ

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

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

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

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

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

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

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

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

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

Функции системного аналитика и тестировщика понятны из их названий.

Дата написания статьи: 22.09.2022
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot