Создание основных видов диаграмм. Основы проектирования ИС
Порядок проектирования ИС
Первым пунктом алгоритма проектирования информационных систем является постановка задачи, в рамках которой необходимо определить:
- характеристики объекта автоматизации
- определить основную задачу, которую будет реализовывать приложение
- описать бизнес-процессы, которые будут реализованы в приложении
Далее необходимо создать диаграмму вариантов использования, являющуюся самым общим представлением функциональных требований к системе. Она позволяет описать основные процессы, которые необходимо реализовать. Затем полезно составить диаграмму видов деятельности, представляющую собой блок-схему, которая наглядно показывает, как поток управления переходит от одной деятельности к другой. После того, как определены функциональные требования к системе и её границы, следует проанализировать предметную область с целью построения диаграммы классов. Далее полезно описать сценарии, которые необходимо реализовать в приложении, с помощью диаграммы последовательностей. Также сценарии можно описать с помощью диаграммы сотрудничества, позволяющей описать взаимодействие объектов и акцентирующей внимание в первую очередь на организации объектов. Диаграмма состояний определяет последовательность состояний объекта, вызванных последовательностью событий. Эта диаграмма позволит уточнить предметную область, дополнить, при необходимости, диаграмму классов. Диаграмма развертывания является физической диаграммой в языке UML. Она отображает физические взаимосвязи между программными и аппаратным компонентами проектируемой системы.
Постановка задачи на проектирование
Описано в статье Постановка задачи на примере.
Создание диаграммы вариантов использования
Описано в статье Построение диаграммы вариантов использования на примере.
Построение диаграммы видов деятельности
Описано в статье Построение диаграммы видов деятельности на примере.
Построение диаграммы классов
Описано в статье Построение диаграммы классов на примере.
Меню Модель приложения
Для того, чтобы создать новый класс необходимо открыть проект. По умолчанию открыт пункт меню Модель приложения
, являющийся списком всех классов проекта. Затем нужно нажать кнопку Создать класс
.
Стереотипы классов
Сущность
(implementation) – класс, представляющий объект реального мира, экземпляры которого будут храниться в базе данных приложения. Создать пару.
Перечисление
(enumeration) – тип данных, который определяется в виде набора идентификаторов. Создать пару.
Бизнес-класс
(businessserver) – класс, код которого вызывается в процессе изменения экземпляров связанных с ним сущностей.
Тип
(type) – сложный тип данных или объект реального мира, экземпляры которого не будут храниться в базе данных приложения. Целесообразно создавать, если нужны в коде вспомогательные бизнес-объекты, которые не нужно хранить в базе данных.
Typedef
(typedef) - тип данных, который можно сопоставлять вручную с генерируемыми в базу данных или приложение типами данных. Нужен, если не хватает типов по умолчанию.
Интерфейс
(interface) – контракт в виде перечня публичных свойств и методов, которые должны быть реализованы в связанных с ним сущностях или типах.
Внешняя сущность
(external) – класс, который явно не объявлен в модели, но будет доступен в исходном коде, в том числе сущность из другого проекта. При генерации на уровне кода подразумевается, что объявление данного класса содержится во внешней или системной библиотеке. В частном случае подразумевается, что можно указать для внешнего класса ссылку на класс из другого проекта (стадии) во Flexberry Designer. В этом частном случае подразумевается, что класс на уровне кода объявлен в другом солюшене (аддоне), который должен быть подключен разработчиками к основному проекту вручную (например, через NuGet-пакет, созданный на основе другого солюшена; подключение “внешних” библиотек на уровне генерации не подразумевается). Когда это используется: ссылка на класс из других проектов (т.е. стадий) указывается тогда, когда для нескольких проектов есть какие-то общие библиотеки, и классы из неё переиспользуются в разных проектах. Другой вариант - соответствующий внешний класс представляет собой класс из системной библиотеки или любой внешней библиотеки (аддона). Тогда на уровне модели есть возможность поставить связь к внешнему классу и включить его в представление базового класса, а на уровне кода после генерации типом данных для соответствующего свойства будет являться класс, который объявлен в этой “внешней” библиотеке (подключаться она должна вручную разработчиком в проект; если это класс из системной сборки, например, то она уже при первой генерации проекта может быть автоматически уже подключена как вариант).
Приложение
(application) – класс, который хранит общую информацию о генерируемом приложении.
Пользовательская форма
(userform) – класс, представляющий «пустую» форму приложения (вся разметка и логика для неё должна быть сделана полностью вручную разработчиком), которая также может быть добавлена в структуру меню (в “контейнер” класса со стереотипом “application”). Можно использовать в случае, когда на уровне модели приложения необходимы специальные формы, которые ни списковыми, ни формами редактирования не являются (т.е. чтобы, глядя на модель было видно, какие формы в приложении вообще есть).
Слой гео-сервера
(geolayer) – класс, который задает настройку слоя ГИС подсистемы.
Стиль слоя гео-сервера
(geolayerstyle) – класс, который задает настройку слоя ГИС подсистемы.
Сущность с пользовательским стереотипом
(custom) – класс с произвольной семантикой, код которого не будет генерироваться в приложение.
В списке диаграмм автоматически созданные диаграммы для каждого класса.
В поле поиска на форме Модель приложения
ввести наименование (или часть) класса из списка. Отображен класс (или несколько классов), отвечающий заданному условию.
В поле Все типы
выбрать любой из созданных типов. Отображены только классы выбранного типа.
Фильтрация и поиск диаграмм
В пункте меню Диаграммы
расположены все созданные в рамках проекта диаграммы. Они отличаются по типу, имеют уникальные названия. Если список большой, то удобно воспользоваться поиском или фильтрацией.
Для поиска диаграммы нужно в поле Поиск
ввести наименование или часть наименования диаграммы. Список будет отредактирован в соответствии с заданным условием.
Также можно отфильтровать диаграммы по типу. Для этого в выпадающем списке выбрать интересующий тип диаграммы.