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



ЗНАЕТЕ ЛИ ВЫ?

Определение термина Проектирование ПО (Software design)

Поиск

Проектирование ПО – процесс определения архитектуры, компонентов, интерфейсов,

других характеристик системы и конечного результата.

Область знаний «Проектирование ПО (Software Design)» состоит из следующих

разделов:

– базовые концепции проектирования ПО (Software Design Basic Concepts),

– ключевые вопросы проектирования ПО (Key Issue in Software Design),

– структура и архитектура ПО (Software Structure and Architecture),

– анализ и оценка качества проектирования ПО (Software Design Quality Analysis and

Evaluation),

– нотации проектирования ПО (Software Design Notations),

– стратегия и методы проектирования ПО (Software Design Strategies and Methods).

Базовые концепции проектирования ПО

относятся процессы ЖЦ (стандарт ISO/IEC 12207), процесс проектирования архитектуры с использованием разных принципов (объектного, компонентного и др.) и техник: абстракции, декомпозиции, инкапсуляции и др. Автоматизируемая система декомпозируется на отдельные компоненты, выбираются необходимые артефакты (нотации, методы и др.) программной инженерии и строится архитектура ПО.

К ключевым вопросам проектирования ПОотносятся: декомпозиция на

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

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

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

Базовые элементы Архитектуры ПО

При проектировании структуры ПОиспользуется архитектурный стиль

проектирования, основанный на определении основных элементов структуры –

подсистем, компонентов и связей между ними.

Архитектура проекта – высокоуровневое представление структуры, задаваемое с

помощью паттернов, компонентов и их идентификация. Описание архитектуры

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

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

структур, основанные на проектировании образцов, шаблонов, семействе программ и

их каркасов.

Паттерн – это конструктивный элемент ПО, который задает взаимодействие объектов

(компонентов) проектируемой системы, определение ролей и ответственности

исполнителей. Основным языком задания этого элемента является UML.

Паттерн может быть: структурным, в котором определяются типовые композиции

структур из объектов и классов диаграммами классов, объектов, связей и др.;

поведенческим, определяющим схемы взаимодействия классов объектов и их

поведение диаграммами активностей, взаимодействия, потоков управления и др.;

креативным, отображающим типовые схемы распределения ролей экземпляров

объектов диаграммами взаимодействия, кооперации и др.

Анализ и оценка качества проектирования ПО

включает мероприятия по анализу сформулированных в требованиях атрибутов качества, оценки различных аспектов ПО

– размера и структуры ПО, функций и качества проектирования с помощью

формальных метрик (функционально-ориентированных, структурных и объектно-

ориентированных), а также проведения качественного анализа результатов

проектирования путем статического анализа, моделирования и прототипирования.

Нотации проектирования

позволяют представить артефакты ПО и его структуру, а

также поведение системы. Существует два типа нотаций: структурные, поведенческие

и множество различных их представлений.

Структурные нотации являются графическими, они используются для представления

структурных аспектов проектирования, компонентов и их взаимосвязей, элементов

архитектуры и их интерфейсов. К ним относятся формальные языки спецификаций и

проектирования: ADL (Architecture Description Language), UML (Unified Modeling

Language), ERD (Entity–Relation Diagrams), IDL (Interface Description Language), классы

и объекты, компоненты и классы (CRC Cards), Use Case Driven и др. Нотации

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

диаграммы сущность-связь, компонентов, развертывания, а также структурные

диаграммы и схемы.

Поведенческие нотации отражают динамический аспект поведения систем и их

компонентов. Таким нотациям соответствуют диаграммы: Data Flow, Decision Tables,

Activity, Colloboration, Pre-Post Conditions, Sequence, таблицы принятия решений,

формальные языки спецификации, языки проектирования PDL и др.

33 Стратегия и методы проектирования ПО. Данный раздел знаний представляет

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

стратегиям относятся: снизу-вверх, сверху–вниз, абстракции, паттерны и др.

Функционально–ориентированные (структурные) методы базируются на структурном

анализе, структурных картах, Dataflow-диаграммах и др. Они ориентированы на

идентификацию функций и их уточнение сверху–вниз, после чего проводится

разработка диаграмм потоков данных и описание процессов. В обьектно–

ориентированном проектировании ключевую роль играет наследование, полиморфизм

и инкапсуляция, а также абстрактные структуры данных и отображение объектов [30]

Подходы, ориентированные на структуры данных, базируются на методе Джексона

(Jackson) [8] и используются для задания входных и выходных данных структурными

диаграммами.

Компонентное проектирование ориентировано на использование и интеграцию

компонентов (особенно компонентов повторного использования) и на их интерфейс,

обеспечивающий взаимодействие компонентов; является базисом других видов

программирования, в том числе сервисно-ориентированного, в котором группы

компонентов обеспечивают функциональный сервис. К другим методам относятся:

формальные, точные и трансформационные методы, а также UML для моделирования

архитектурных решений с помощью диаграмм [31].



Поделиться:


Последнее изменение этой страницы: 2017-02-10; просмотров: 168; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.219.107.243 (0.007 с.)