Модели системного структурирования, их характеристики.



Структурирование системы

· Система структурируется на несколько подсистем, являющихся относительно независимыми программными компонентами.

Модели структурирования:

· Наиболее часто используются 3 модели системного структурирования (архитектуры):

- -модель хранилища данных

- -модель клиент-сервер

- -многоуровневая модель.

Модель хранилища данных:

· Подсистемы разделяют данные, находящиеся в общей памяти и, как правило, представляющие собой базу данных.

· Модель применима, если основные функции системы связаны с хранением, обработкой и представлением больших объемов данных.

Модель клиент-сервер:

· Решаемые задачи естественно распределяются между инициаторами и обработчиками запросов; возможно изменение внешнего представления данных и способов их обработки.

· Используется для распределенных систем и в большинстве бизнес-приложений.

Многоуровневая модель:

· Имеется естественное расслоение задач системы на наборы подзадач, которые можно решать последовательно

· Компоненты разделяются на несколько уровней таким образом, что компоненты данного уровня могут использовать для своей работы только соседей или компоненты предыдущего уровня.

Понятие модуля и модульного программирования. Преимущества модульного подхода к разработке ПО.

Модульные компоненты

· Одним из основных способов разбиения системы на компоненты являетсямодульная декомпозиция.

· Программное средство представляется как набор программных модулей.

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

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

Модули могут объединяться в пакеты и, далее, в библиотеки.

Модульная декомпозиция

· может осуществляться на основе:

· -модели потока данных

· -модели объектов

· В основе модели потока данных лежит разбиение по функциям.

· Модель объектов основана на сущностях, имеющих собственные наборы данных, состояния и наборы операций.

Задачи, решаемые на стадии детального проектирования.

· На стадии детального проектирования конкретизируются решения архитектурного уровня и производится:

- -разработка иерархии классов и структуры базы данных;

- -построение алгоритмов для отдельных подзадач;

- -поиск и подбор готовых компонентов для реализации некоторых функций системы

Цели и задачи проектирования пользовательского интерфейса.

· Целью интерфейсного проектирование является формирование интерфейса пользователя.

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

Элементы интерфейса

- -набор задач пользователя, которые он решает при помощи системы;

- -используемая системой метафора (например, Рабочий стол в MS Windows®);

- -элементы управления системой;

- -навигация между блоками системы;

- -визуальный дизайн экранов программы;

- -отображаемая информация и ее форматы;

- -устройства и технологии ввода данных;

- -диалоги, взаимодействие и транзакции между пользователем и компьютером;

- -обратная связь с пользователем;

- -поддержка принятия решений в конкретной предметной области;

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

Технический проект

· Результаты детального и интерфейсного проектирования представляются в техническом проекте (Software Design Document).

· Технический проект должен также содержать оценку экономической эффективности системы и перечень мероприятий по подготовке к ее внедрению.

Понятие шаблона. Классификация шаблонов. Стандарт описания шаблонов

Шаблоны проектирования(паттерн, англ. design pattern) — это многократно применяемая архитектурная конструкция, предоставляющая решение общей проблемы проектирования в рамках конкретного контекста.

Преимущества шаблонов:

- -описывают решения целых классов абстрактных проблем;

- -позволяют унифицировать терминологию, названия модулей и элементов проекта;

- -позволяют повторно использовать удачное решение;

- -независимы от применяемого языка программирования.

Шаблоны делятся на:

· Шаблоны анализа(analysis patterns) –представляют собой типовые решения при моделировании сложных взаимоотношений между понятиями некоторой предметной области.

· Архитектурные шаблоны (architectural styles, architectural patterns) представляют собой типовые способы организации системы в целом или крупных подсистем; задают некоторые правила выделения компонентов и реализации взаимодействий между ними.

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

· Идиомы(idioms, programming patterns) являются специфическими для некоторого языка программирования способами организации элементов программного кода, позволяющими решить некоторую часто встречающуюся задачу.

Шаблоны могут применяться на всех стадиях разработки программных систем, способствуя существенному сокращению этих сроков

Описание шаблонов:

1. Имя

· -Позволяет сразу обозначить проблему, пути ее решения и последствия

· -Присваивание шаблонам имен позволяет проектировать на более высоком уровне абстракции

· -С помощью словаря шаблонов можно вести обсуждение с коллегами, упоминать шаблоны в документации, представлять тонкости системы

2. Задача

· -Описание того, когда следует применять шаблон

· -Формулируется задача и ее контекст (например, представить алгоритм в виде объектов)

· -Иногда в описание задачи входит перечень условий, при выполнении которых имеет смысл применять шаблон

3. Решение

· -Описание элементов решения, отношений между ними, функций каждого элемента

· -При этом решение – не конкретный дизайн или реализация, а абстрактное описание задачи и того, как она может быть решена с помощью некоего весьма общего сочетания элементов

4. Результаты

· Результаты - это следствия применения шаблона и разного рода компромиссы

· -Иногда в результатах может быть описан выбор языка и реализации

· -В случае проектирования к результатам относят влияние на степень гибкости, расширяемости и переносимости системы

31. Шаблоны анализа (analysis patterns), их классификация.

Шаблоны анализа (analysis patterns) –представляют собой типовые решения при моделировании сложных взаимоотношений между понятиями некоторой предметной области.

Делятся на шаблоны функционального и объектно-ориентированного анализа.

Используются на этапе анализа (предметной области, системного, требований)


Дата добавления: 2018-05-13; просмотров: 1605; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!