Язык описания разработки программных продуктов с помощью объектного подхода UML

Марта

Понятие интерфейса.

 

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

В С# для опр-я интерфейса класса введены спец классы – интерфейсы.

Интерфейсы подобны абстрактным классам, но в отличии от них :

1. Ни при каких условиях не поддерживают реализацию методов (нет тела).

2. По умолчанию в интерфейсе устанавливается спецификация public.

3. Все методы интерфейса явл-ся абстрактными, т.к. чистыми виртуальными ф-ми.

4. Для интерфейсов в С # разрешено множественно наследование.

 

Синтаксис объялвения интерфейса :

interfacename

{

// методы

}

Н-р:

interface lnfs

{

void frn (int z);

int maxin (int a , int b);

}

 

Кроме методов интерфейсы могут содержать св-ва, индексаторы и события.

interface lnf

{

int Propr{get; set;} //Св-во

string this [int index] {get; set}

}

После объявления интерфейса он может быть реализован с помощью класса. Для этого класс, реализующий интерфейс, обр-ся путем наследования от интерфейса.

class class_name : interface_name

{

// тело класса

}

Множественное наследование интерфейсов:

classclass_name : interface_name1, .. , interface_nameN

{

… // тело класса

}

Смешанноенаследование:

class class_name : class_base, interface_name1, .., interface_nameN

{

… //Тело класса

}

 

Новый интерфейс можно получить с помощью наследования путем порождения его из одного или нескольких интерфейсов:

interface name: interface_name1 [,…, interface_nameN]

{

: //методы

}

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

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

Спецификация разрабатываемого программного обеспечения при использовании UML объединяет несколько моделей. Это логическая модель, модель реализации, модель использования, модель процессов и модель развертывания.

 

Всего UML предлагает 9 диаграмм, входящих в различные модели. Диаграммы:

1. Вариантов использования

2. Классов

3. Пакета

4. Последовательности действий

5. Кооперации

6. Деятельности

7. Состояния объекта

8. Компонентов

9. Размещения

Диаграммы вариантов использования

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

Его нельзя путать с конкретными операциями системы. Каждый вариант использования связан с некоторой целью, имеющий самостоятельное задание, например для текстового редактора формирование оглавление – это вариант использования, а связывания заголовков со специальными стилями, это конкретная операция. В зависимости от цели выполнения конкретной процедуры различают следующие варианты использования:

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

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

3. Дополнительные, обеспечивающие дополнительные удобства для пользователя.

Вариант использования можно описать кратко или подробно. Краткая форма описания содержит название варианта использования, цель, действующие лица, тип варианта использования и краткое описание.

Краткое описания варианта использования Выполнение задания

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

 

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

Основными понятиями диаграмм вариантов использования.

1. Действующее лицо – внешняя по отношению к по сущность, которое взаимодействует с ним с целью получения и представления какой либо информации.

2. Вариант использования – некоторое очевидное для действующего лица процедура, решающая его конкретную задачу

3. Связь – взаимодействие действующих лиц и соответствующих вариантов использования

 

 


 

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

Расширение применяют, если имеется два подобных варианта использования, различающиеся наличием в одном из них некоторых дополнительных действий. В этом случаи дополнительные действия определяют как отельный вариант использования, который связан с основным вариантом связью типа – расширения.

Пример:

 


 

Диаграммы классов

Диаграмма классов – это центральное звено метода оо методов разработки по. UML предлагает использовать три уровня диаграмм классов в зависимости от степени их детализации.

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

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

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

Класс понимают как совокупность общих признаков заданной группы объектов предметной

Вставить лекцию (2 пару!)