Как составить описание предметной области

Описание предметной области

2012, June 13

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

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

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

Описание предметной области – Примеры

Примеры неудачных определений

Главная ошибка – давать определения неизвестных слов при помощи других неизвестных слов или однокоренных слов.

Итератор – это чистая абстракция, то есть все, что ведет себя как итератор и есть итератор.

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

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

Примеры правильных определений

Технико-экономическое обоснование (ТЭО) – документ, который доказывает, что проект технически возможен и экономически выгоден. ТЭО – это документ-идея.

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

Пример правильных определений без создания специального раздела

Прежде чем начать предлагаю разобраться в понятиях “жизнь” и “существование”.

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

Жизнь – деятельность человека как личности. Не учитывая сложностей социальной философии, предположу что, жизнь – это развитие, созидание, свобода действий…

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

Описание предметной области – Пример с диаграммой

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

Описание предметной области

Для лучшего понимания предметной области диаграмма дополняется описанием.

Заказчик

Атрибут Тип Описание
Название Строка (30)* Сокращенное наименование заказчика
Юр. название Строка (70)* Юридическое наименование заказчика
Контакты Текст* Контактные лица и контактная информация
Дополнительно Текст Дополнительная информация о заказчике

Продукт

Экземпляр

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

Атрибут Тип Описание
Тип Тип Экземпляра* Тип экземпляра (см. ниже)
Размещение Строка (100)* URL экземпляра
Дополнительно Текст Дополнительная информация

Описание предметной области и определение цели проектирования

Описание предметной области проектируемой
информационной системы выполняется в
произвольном стиле на естественном
(русском) языке. Цель этого раздела
заключается в том, чтобы в результате
неформализованного описания были
понятны проблемы предметной области.
Например: «База данных предназначена
для хранения данных о приобретенных
библиотекой книгах, информации о
местонахождении отдельных экземпляров
(переплетов) каждой книги и сведений об
абонентах. Для ведения библиотечных
каталогов, организации поиска требуемых
изданий и библиотечной статистики в
базе должны храниться сведения, большая
часть которых размещается в аннотированных
каталожных карточках и т.д.».

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

Должны
быть указаны границы предметной области,
например технологические аспекты
функционирования объекта исследования
(или другие). Например: «Технология
работы библиотеки реализуется через
ее комплектование книгами,
справочно-библиографическое и абонементное
обслуживание».

Рекомендуется
сформулировать семантические условия
(бизнес-правила), определяющие
функционирование предметной области.
Например: «абонент библиотеки однозначно
идентифицируется его шифром», «абонентами
могут быть сотрудники и студенты»,
«экземпляр книги идентифицируется его
инвентарным номером».

Желательно
описать алгоритмы выполнения тех или
иных операций исполнителей конкретных
видов работ или действий.

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

Анализ предметной области и инфологическое проектирование

В
разделе «Функциональная модель предметной
области» должны быть приведены результаты
функционального моделирования предметной
области учебной базы данных, выполненного
в среде BPwin. Словесные
описания особенностей функционирования
предметной области должны сопровождаться
изображениями контекстной диаграммы
предметной области, диаграмм декомпозиции,
иерархической схемы функций (Node
Tree-диаграммы BPwin)
(рис. 4-6), а также сводными таблицами
(табл. 1 и 2) описаний работ (функций) и
стрелок (данных).

Р
ис.
4. Пример контекстной диаграммы предметной
области “Библиотека”

Рис. 5. Пример диаграммы декомпозиции
предметной области “Библиотека”


Рис.
6. Пример иерархической диаграммы функций
предметной области “Библиотека”

Таблица 1

Описание работ

Имя
работы

Номер
работы

Описание
работы

Работа
библиотеки

А0

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

Комплектование
библиотеки и хранение новых книг

A1

Комплектование
библиотеки предполагает приобретение
новых книг, их хранение и списание

Справочно-библиографическое
обслуживание

A2

Справочно-библиографическое
обслуживание предполагает занесение
сведений о книгах в каталог и поиск
книг в каталоге

Абонементное
обслуживание

A3

Абонементное
обслуживание, в том числе:

1)
запись на абонемент

2)
поиск книг в каталоге

3)
оформление заявки в хранилище

4)
выдача книг

5)
прием возвращенных книг

Комплектование
библиотеки

A11

Комплектование
библиотеки предполагает приобретение
новых книг и списание пришедших в
негодность. При комплектовании каждому
экземпляру книги присваивается
инвентарный номер

Хранение
книг

A12

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

Занесение
в каталог

A21

Вновь
приобретенные книги регистрируются
в каталоге

Библиографический
поиск

A22

По
запросу абонента осуществляется поиск
информации о книге в каталоге

Запись
на абонемент

A31

Посетители
библиотеки могут быть записаны в
качестве ее абонентов

Поиск
книг

A32

Поиск
сведений о книге выполняется по заявке
абонента

Выдача
книг

A33

Затребованные
книги при наличии их в хранилище могут
быть выданы

Оформление
заявки

A34

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

Возврат
книг

A35

Выданные
книги подлежат возврату и размещению
их в хранилище

Таблица 2

Описание стрелок

Имя
стрелки

Описание
стрелки

Абоненты

Абоненты
– это зарегистрированные клиенты
библиотеки. После регистрации они
приобретают права законных пользователей

Бюджет

Бюджет
регламентирует все виды работ в
библиотеке

Возвращенные
книги

Возвращенные
на абонемент книги размещаются в
хранилище

Выданные
книги

Выданные
книги – это один из вариантов книг на
выходе и один из вариантов поступления
книг

Запрос

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

Зарегистрированные
книги

Статус
зарегистрированной приобретает книга
после ее занесения в каталог. После
регистрации в каталоге зарегистрированная
книга поступает на хранение

Затребованные
книги

При
наличии свободного экземпляра по
заявке затребованная книга поступает
на абонемент

Заявка

При
наличии свободного экземпляра книги
оформляется заявка на ее получение
во временное пользование

Книги
на входе

Источники
книг на входе библиотеки:

1)
новые поступления

2)
возвращенные книги

Книги
на выходе

Книги
на выходе‑это:

1)
зарегистрированные, но не востребованные
книги

2)
выданные книги

3)
списанные книги

Новые
книги

Новые
книги – это один из вариантов поступления
книг в библиотеку

Персонал

Сотрудники
библиотеки

Посетители

Библиотеку
могут посещать клиенты, не являющиеся
ее абонентами

Правила
пользования

Правила
пользования распространяются только
на справочно-библиографическое и
абонементное обслуживание

Списанные
книги

Книги,
пришедшие в негодность, подлежат
списанию. Это один из вариантов книг
на выходе

Справка

Справка
– это результат справочно-библиографического
поиска по запросу абонента

Учтенные
книги

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

Хранимые
книги

Книги,
поступившие на хранение либо после
присваивания им инвентарного номера,
либо после их регистрации в каталоге

В разделе «Информационная модель
предметной области» должны быть приведены
результаты разработки информационной
модели предметной области в терминах
модели «сущность-связь», выполненной
в среде ERwin (т.н. Logical
Model) [10]
(рис. 7).

В
разделе «Спецификации сущностей»
следует для каждой сущности указать:

  • имя;

  • описание.

Результаты
удобно свести в таблицу типа приведенной
ниже (табл. 3). При построении таблицы
следует воспользоваться возможностями
ERwin для формирования
отчетов (по команде Tasks/Generate
Reports).

Таблица 3

Спецификации
сущностей

Имя
сущности

Описание
сущности

Абонемент

История
выдач и возврата книг. Содержит сведения
о том, кому, кем, что и когда было выдано
или возвращено

Абонент

Содержит
информацию об абонентах библиотеки

Зарегистрированная
книга

Содержит
информацию о книге, зарегистрированной
в каталоге

Персонал

Содержит
информацию о сотрудниках библиотеки

Сотрудник

Сотрудник,
являющийся абонентом библиотеки

Студент

Студент,
являющийся абонентом библиотеки

Хранимая
книга

Содержит
информацию о наличии экземпляров
свободных книг

В
разделе «Спецификации атрибутов» для
каждого атрибута указать:

  • имя сущности;

  • имя атрибута;

  • описание;

  • первичный ключ;

  • внешний ключ;

  • имя домена (тип).

Результаты удобно свести в таблицу типа
приведенной ниже (табл. 4). При построении
таблицы следует воспользоваться
возможностями ERwin для
формирования отчетов (по команде
Tasks/Generate
Reports).

Рис. 7. Пример информационной
модели предметной области “Библиотека”


Таблица 4

Спецификации атрибутов сущностей

Имя
сущности

Имя
атрибута

Описание
атрибута

Первичный
ключ

Внешний
ключ

Домен
(тип)

Абонемент

что
выдано

Инвентарный
номер книги на абонементе – компонент
первичного ключа и ключ связи с
сущностью “Хранимая книга”

Да

Да

String

дата1

Дата
начала этапа истории книги, компонент
первичного ключа

Да

Нет

Datetime

дата2

Дата
конца этапа истории книги

Нет

Нет

Datetime

кому
выдано

Шифр
абонента, которому выдана или кем
возвращена книга, – внешний ключ связи
с сущностью “Абонент”

Нет

Да

String

кто
выдал

Код
сотрудника, выдавшего или принявшего
книгу, – внешний ключ связи с сущностью
“Персонал”

Нет

Да

String

Абонент

шифр

Уникальный
шифр абонента – ключ сущности

Да

Нет

String

фио

Фамилия,
имя, отчество абонента

Нет

Нет

String

телефон

Телефон
абонента

Нет

Нет

String

тип

Категория
абонента

Нет

Нет

String

Зарегистрированная
книга

номер

Учетный
номер зарегистрированной в каталоге
книги – ключ сущности

Да

Нет

String

автор

Автор

Нет

Нет

String

название

Название

Нет

Нет

String

год
издания

Год
издания

Нет

Нет

Number

Персонал

код

Учетный
номер служащего – ключ сущности

Да

Нет

String

фио

Фамилия,
имя, отчество

Нет

Нет

String

должность

Должность

Нет

Нет

String

руководитель

Учетный
номер служащего – руководителя

Ключ
рекурсивной связи сущности “Персонал”
самой с собой

Нет

Да

String

Продолжение
табл. 4

Имя
сущности

Имя
атрибута

Описание
атрибута

Первичный
ключ

Внешний
ключ

Домен
(тип)

Сотрудник

шифр

Уникальный
шифр абонента – первичный ключ сущности
“Сотрудник” и внешний ключ связи
с сущностью “Абонент”

Да

Да

String

должность

Должность
сотрудника

Нет

Нет

String

звание

Ученое
звание сотрудника

Нет

Нет

String

степень

Ученая
степень сотрудника

Нет

Нет

String

Студент

шифр

Уникальный
шифр абонента – первичный ключ сущности
“Студент” и внешний ключ связи с
сущностью “Абонент”

Да

Да

String

специальность

Специальность,
по которой учится студент

Нет

Нет

String

Хранимая
книга

инв_номер

Уникальная
характеристика экземпляра книги –
ключ сущности

Да

Нет

String

какой
книги экземпляр

Учетный
номер зарегистрированной в каталоге
книги – внешний ключ связи с сущностью
“Зарегистрированная книга”

Нет

Да

String

наличие

Признак
наличия экземпляра книги в книгохранилище
(есть/нет)

Нет

Нет

Number

В разделе «Спецификации связей» следует
для каждой связи в иерархии агрегации
указать:

  • имя;

  • имена связываемых
    сущностей;

  • описание;

  • тип
    (идентифицирующая/неидентифицирующая);

  • Null-значение
    внешнего ключа (разрешено/запрещено);

  • кардинальность
    (1:1 или 1:N или M:N);

Результаты
удобно свести в таблицу типа приведенной
ниже (табл.5). При построении таблицы
следует воспользоваться возможностями
ERwin для формирования
отчетов (по команде Tasks/Generate
Reports).

Для
связей в иерархии обобщения указать:

  • тип связи
    (полная/неполная);

  • дискриминатор
    категорий-подтипов;

  • имя сущности-супертипа;

  • описание
    сущности-супертипа;

  • кардинальность
    (семантику) связи;

  • описание связи;

  • имя сущности-подтипа;

  • описание
    сущности-подтипа.

Результаты
удобно свести в таблицу типа приведенной
ниже (табл.6). При построении таблицы
следует воспользоваться возможностями
ERwin для формирования
отчетов (по команде Tasks/Generate
Reports).

Таблица 5

Спецификации связей в иерархии агрегаций

Имя
связи «отец-сын»

Имя
связи «сын-отец»

Имя
отцовской сущности

Имя
сыновьей сущности

Описание
связи

Тип
связи

Null
внешнего ключа

Кардиналь-ность
связи

Получил
на

Абонент

Абонемент

Абонент
получает или возвращает книгу на
абонемент

Неидентифи-цирующая

Not
Null

1
: 0,1,N

(один-ко-многим)

Представлена

Зарегистри-рованная
книга

Хранимая
книга

Зарегистрированная
в каталоге книга представлена в
книгохранилище

Неидентифи-цирующая

Not
Null

1
: 0,1,N

(один-ко-многим)

Руководит

Подчиня-ется

Персонал

Персонал

Один
сотрудник руководит другим или
подчиняется другому сотруднику

Неидентифи-цирующая

Null

0,1
: 0,1,N

(один-ко-многим)

Выдал
на

Персонал

Абонемент

Сотрудник
библиотеки выдает или принимает книгу
на абонементе

Неидентифи-цирующая

Not
Null

1
: 0,1,N

(один-ко-многим)

Выдана
на

Хранимая
книга

Абонемент

Хранимая
книга выдается или возвращается на
абонемент

Идентифици-рующая

Not
Null

1
: 0,1,N

(один-ко-многим)

Таблица 6

Спецификации связей в иерархии обобщения

Тип
связи

Дискрими-натор
категорий

Сущность-супертип

Описание
сущности-супертипа

Кардиналь-ность
связи

Описание
связи

Имя
сущности-подтипа

Описание
сущности-подтипа

Неполная

тип

Абонент

Содержит
информацию об абонентах библиотеки

Is
a

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

Студент

Студент,
являющийся абонентом библиотеки

Неполная

тип

Абонент

Содержит
информацию об абонентах библиотеки

Is
a

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

Сотрудник

Сотрудник,
являющийся абонентом библиотеки

В разделе «Ограничения ссылочной
целостности» следует, с учетом
семантических условий (бизнес-правил),
действующих в предметной области, для
каждой связи указать правила, которые
управляют корректирующими запросами
как со стороны отцовской сущности, так
и со стороны сыновьей:

  • вставка в отцовской;

  • обновление в
    отцовской;

  • удаление в отцовской;

  • вставка в сыновьей;

  • обновление в
    сыновьей;

  • удаление в сыновьей.

Результаты
удобно свести в таблицы типа приведенных
ниже (табл. 7 и 8). При построении таблиц
следует воспользоваться возможностями
ERwin для формирования
отчетов (по команде Tasks/Generate
Reports).

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

  1. Представить список
    абонентов данной категории.

  2. Представить все
    данные об абоненте, заданном его шифром.

  3. Представить список
    экземпляров книг, имеющихся в наличии
    в хранилище, по фамилии автора и названию.

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

  5. Представить список
    книг, взятых и не возвращенных конкретным
    абонентом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

В качестве предметной области выбрано коммерческое предприятие «Мебель под заказ», которое занимается производством мебельной продукции под заказ. Информационная система (ИС) данного коммерческого предприятия занимается обслуживанием процесса производства.

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

Технологический процесс предприятия предусматривает последовательность выполнения шагов на различных стадиях изготовления заказанной продукции.

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

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

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

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

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

Материалы с этого участка передаются в участок покрытия изделий, в котором изделия покрывают лаками разных сортов в зависимости от желаемого заказчиком цвета. Достижение желаемого цвета изделия зависит от количества слоев покрытия, а также от сорта лака.

Покрытые изделия передаются на участок сушки, где происходит этап просушивания изделий.

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

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

Автоматизированная информационная система «Мебель под заказ» предназначена для быстрой и качественной обработки, учета и контроля информации, задействованной в данной предметной области.

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

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

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

В соответствии с предметной областью система строится с учетом следующих особенностей:

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

Выделим базовые сущности данной предметной области, которые образуют структуру проектируемой ИС.

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

Цех. Атрибуты цеха — код участка, название, номер участка, код оборудования.

Поставщик. Атрибуты поставщиков — код поставщика, объем поставки, дата поставки, наименование поставки, наименование поставщика, адрес, телефон.

Сырье. Атрибуты сырья — код сырья, наименование, ед изм (л, шт., кг), количество, гарантия, стоимость_ед.

Детали. Атрибуты детали — код детали, название, размер, номер участка.

Изделия. Атрибуты изделия — код изделия, название, номер участка, размер, количество.

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

Сушка. Атрибуты сушки — номер участка, наименование изделия, количество.

Сборка. Атрибуты сборки — номер сборки, номер участка, наименование изделия, наименование крепежного изделия, наименование фурнитуры, количество крепежного изделия, количество фурнитуры.

Контроль качества. Атрибуты контроля качества — номер проверки, деталь, изделие, продукция, ГОСТ.

Сотрудник. Атрибуты сотрудников — код сотрудника, ФИО, дата рождения, данные паспорта, адрес, телефон.

Заказ. Атрибуты заказа — код заказа, наименование продукции, количество, дата заказа.

Реализация. Атрибуты реализации — номер реализации, объем, дата реализации, вид продукции, номер выпуска, цена за единицу продукции.

Система создается для обслуживания следующих групп пользователей:

  • • руководство предприятия;
  • • начальники участков;
  • • поставщики;
  • • заказчики;
  • • сотрудники отделов.

Функциональные возможности:

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

Готовые запросы:

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

Выбор СУБД и других программных средств. Анализ информационных задач показывает, что для реализации требуемых функций подходят почти все СУБД для ПЭВМ (Oracle, Clipper, MS SQL Server, MS Access и др.). Все они поддерживают реляционную модель данных и предоставляют разнообразные возможности для работы с данными.

Для построения моделей данных предметной области на логическом и физическом уровнях наиболее предпочтительным является средство концептуального моделирования — CASE.

Описание предметной области

Описание предметной области

2012, June 13
Станислав

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

Роберт Т. Киосаки

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

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

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

Описание предметной области — Примеры

Примеры неудачных определений

Главная ошибка — давать определения неизвестных слов при помощи других неизвестных слов или однокоренных слов.

Итератор — это чистая абстракция, то есть все, что ведет себя как итератор и есть итератор.

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

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

Примеры правильных определений

Технико-экономическое обоснование (ТЭО) — документ, который доказывает, что проект технически возможен и экономически выгоден. ТЭО — это документ-идея.

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

Пример правильных определений без создания специального раздела

Прежде чем начать предлагаю разобраться в понятиях «жизнь» и «существование».

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

Жизнь — деятельность человека как личности. Не учитывая сложностей социальной философии, предположу что, жизнь — это развитие, созидание, свобода действий.

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

Описание предметной области — Пример с диаграммой

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

Описание предметной области

Для лучшего понимания предметной области диаграмма дополняется описанием.

Заказчик

Атрибут Тип Описание
Название Строка (30)* Сокращенное наименование заказчика
Юр. название Строка (70)* Юридическое наименование заказчика
Контакты Текст* Контактные лица и контактная информация
Дополнительно Текст Дополнительная информация о заказчике

Продукт

Экземпляр

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

Описание предметной области.

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

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

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

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

Таким образом, цель данной работы – разработка регламента выполнения процесса «Складской учет».

Для достижения поставленной цели необходимо выполнить следующие задачи:

  • описать предметную область;
  • осуществить постановку задачи;
  • выбрать средства для моделирования бизнес–процессов;
  • реализовать моделирование бизнес–процессов «как есть»;
  • предложить мероприятия по улучшению бизнес–процессов;
  • смоделировать бизнес–процессы «как должно быть»;
  • подвести итог проделанной работы.

Объект исследования – бизнес-процесс «Складской учет», а предмет – процесс разработки регламента выполнения бизнес-процесса «Складской учет».

Методологической и теоретической базой исследования выступают труды таких авторитетных авторов и исследователей вопроса моделирования и регламентации бизнес-процессов как Елиферова В. Г., Хаммера М., Тельнова В. И. и др.

ГЛАВА 1. Построение бизнес–процессов «как есть»

Описание предметной области. Постановка задачи

Склад – это здания, сооружения и разнообразные устройства, предназначенные для приемки, размещения и хранения поступивших товаров, где выполняются работы по приемке, подсортировке, хранению, фасовке, отпуску товаров [11].

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

  • подсортировочно–распределительные склады предназначены для накопления текущих запасов товаров. Сюда относят склады оптовых торговых баз и розничных организаций. Основная функция таких складов заключается в приемке товаров по количеству и качеству, подсортировке и подготовке товаров к отпуску и отправке в розничную торговую сеть. Товар хранится на таких складах непродолжительное время;
  • транзитно–перевалочные склады служат для хранения грузов в связи с перегрузкой товара с одного вида транспорта на другой. Обычно размещаются на железнодорожных станциях или водных пристанях. Здесь происходит приемка грузов, краткосрочное хранение и отправка грузов тарными местами;
  • склады гарантированного хранения обеспечивают срочное, ответственное хранение товаров различных товаровладельцев;
  • транспортно–экспедиционные склады – это структуры, создаваемые в основном на узловых станциях крупных магистралей;
  • склады–отели обеспечивают срочное ответственное хранение товаров в местах с ограниченным числом товаровладельцев;
  • склады сезонного хранения осуществляют обработку и хранение товаров сезонного хранения (картофель, овощи);
  • накопительные склады принимают от промышленных предприятии мелкие партии товаров, а затем направляют их в районы потребления в виде более крупных партии [3].

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

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

Склады составляют основной комплекс сооружений предприятий оптовой торговли, а также значительную часть материально–технической базы розничной торговли. Однако в розничных предприятиях должны храниться лишь текущие запасы товаров, гаран­тирующие бесперебойность процесса продажи [11].

Большинство складов выполняют следующие основные функции:

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

На небольших складах практически все операции технологического процесса могут осуществляться одной группой работников.

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

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

Приемка товаров – это установление фактического количества, качества и комплектности товаров, а также определение отклоне­ний и вызвавших их причин.

Поступление товаров на торговый склад и их приемка регламен­тируется:

  • Гражданским кодексом РФ;
  • Положением о поставках товаров народного потребления;
  • Инструкцией «О порядке приемки продукции производственно–технического назначения и товаров народного потребления по количеству»;
  • Инструкцией «О порядке приемки продукции производственно–технического назначения и товаров народного потребления по качеству»;
  • стандартами и техническими условиями; уставами отдельных видов транспорта, а также договорными обязательствами поставщиков и покупателей товаров[22].

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

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

Общие виды работ, осуществляемых при выполнении этой операции:

  • подготовительные мероприятия по приемке товаров;
  • проверка целостности вагонов, контейнеров или упаковки;
  • разгрузка;
  • перемещение в зону приемки;
  • распаковка;
  • приемка товаров по количеству;
  • приемка товаров по качеству;
  • определение мест хранения [11].

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

Поставки товаров и материальных ценностей на склад реализуются благодаря договорам, заключаемым с подходящими поставщиками. Представители поставщика должны в установленный срок произвести привоз оговоренного количества и ассортимента товаров. Далее на складе производится проверка целостности упаковки товара, после чего – распаковка, приемка товаров по количеству и качеству, и, наконец, распределение по складу и по отделам организации [11].

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

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

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

От рациональной организации входной информации производственного предприятия, способов сбора, регистрации, передачи, хранения и обработки информации, ее состава и своевременного получения зависят оперативность и эффективность управления производственными процессами, в частности, при осуществлении складского учета. Таким образом, исходной информацией для бизнес–процесса «Складской учет» являются:

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

Результатная информация отображает результаты выполнения процесса, и в процессе «Складской учет» выражается следующими документами:

  • приходная накладная;
  • товарная накладная;
  • счет – фактура;
  • журнал по приходу;
  • журнал по расходу;
  • ведомость по остаткам на складе;
  • результат поиска документа по дате;
  • результат поиска документа по поставщику;
  • результат поиска документа по клиенту;
  • результат поиска документа по номеру.

Для рассмотрения на примере был выбран отчет по результатам выполнения запроса на поиск документа по тому или иному параметру, форма которого изображена на Рисунке 1.

Рисунок 1. Форма отчета

Роли сотрудников, принимающих участие в решении поставленной задачи, рассмотрены в Таблице 1.

Таблица 1

Роли сотрудников в решении задачи

Код сотр

Должность

% участия

% ответств

Выбор средства для моделирования бизнес–процессов

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

В целом выделяют два подхода к моделированию.

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

К этому блоку относится методология IDEF; инструментом, реализующим данную методологию, является BPWin.

  1. Объектно–ориентированный подход предполагает использование объектов – сущностей, обладающих идентичностью, состоянием и поведением. Модель в данном случае представляет собой всестороннее описание объекта исследования – кроме описания собственно бизнес–процесса, в ней содержится описание: организационной структуры предприятия, структуры информационных систем, операционных и регламентирующих документов. При моделировании в соответствии с объектно–ориентированным подходом создается единая база данных объектов модели, благодаря этому появляется возможность отслеживания взаимосвязей между объектами и безызбыточности построенной модели [14].

Методологии, поддерживающие объектно–ориентированный принцип: методология Aris (группа продуктов IDS Sheer «Aris») и методология UML (продукт Rational Rose). Методология UML в основном ориентирована на разработку программного обеспечения, Aris используется для описания бизнес–процессов предприятия.

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

В России для моделирования и анализа бизнес–процессов достаточно широко используются следующие средства моделирования: Rational Rose, Oracle Designer, AllFusion Process Modeler (BPWin) и AllFusion ERwin Data Modeler (ERWin), ARIS, Power Designer. За рубежом, помимо упомянутых, активно используются такие средства, как System Architect, Ithink Analyst, ReThink и др [19]

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

  • устойчивое положение продукта на рынке (срок его существования, программа развития продукта, система отчетов о проблемах, совокупность применений и др.);
  • распространенность продукта (количество проданных лицензий, наличие, размер и уровень деятельности пользовательской группы);
  • доступность поддержки поставщика. Такие услуги могут включать телефонную «горячую линию», техническую и консультационную поддержку через представителя поставщика в России;
  • доступность обучения. Обучение может проводиться на территории представителя поставщика в России, пользователя или где–либо в другом месте;
  • доступность материалов по продукту. Они могут включать компьютерные учебные материалы, учебные пособия, книги, статьи, информацию в Интернете, демоверсии [4].

Из приведенного перечня инструментальных средств для более подробного анализа выделим те программные продукты, которые удовлетворяют указанным критериям. В этом случае в рамки нашего дальнейшего рассмотрения попадают BPWIn/ERWin, Oracle Designer, Rational Rose, Power Designer, ARIS, по которым ниже представлено более подробное описание.

BPWin и ERWin компании Computer Associates International, Inc. (CA) входящейв пятерку ведущих производителей программного обеспечения, предлагая средства моделирования, резервного копирования, управления инфраструктурой предприятия (сетями, серверами и т. д.), информационной безопасности, business intelligence и т. д. Пакет BPWin основан на методологии IDEF и предназначен для функционального моделирования и анализа деятельности предприятия. Методология IDEF, являющаяся официальным федеральным стандартом США, представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта какой–либо предметной области. Функциональная модель IDEF0 отображает функциональную структуру объекта, то есть производимые им действия и связи между этими действиями [10].

  • поддерживает сразу три стандартные нотации – IDEF0 (функциональное моделирование), DFD (моделирование потоков данных) и IDEF3 (моделирование потоков работ). Эти три основных ракурса позволяют описывать предметную область наиболее комплексно;
  • позволяет оптимизировать процедуры в компании;
  • полностью поддерживает методы расчета себестоимости по объему хозяйственной деятельности (функционально–стоимостной анализ, ABC);
  • позволяет облегчить сертификацию на соответствие стандартам качества ISO9000;
  • интегрирован с ERwin (для моделирования БД), Paradigm Plus (для моделирования компонентов ПО) и др.;
  • интегрирован со средством имитационного моделирования Arena;
  • содержит собственный генератор отчетов;
  • позволяет эффективно манипулировать моделями – сливать и расщеплять их;
  • имеет широкий набор средств документирования моделей, проектов [16].

Пакет ERWin – это средство концептуального моделирования БД. Используется при моделировании и создании баз данных произвольной сложности на основе диаграмм «сущность – связь». В настоящее время ERWin является наиболее популярным пакетом моделирования данных благодаря поддержке широкого спектра СУБД самых различных классов. Возможности ERWin:

  • поддерживает методологию структурного моделирования SADT и следующие нотации: стандартную нотацию IDEFlx для ER–диаграмм моделей данных, нотацию IE и специальную нотацию, предназначенную для проектирования хранилищ данных – Dimensional;
  • поддерживается прямое (создание БД на основе модели) и обратное (генерация модели по имеющейся базе данных) проектирование для 20 типов СУБД: настольные, реляционные и специализированные СУБД, предназначенные для создания хранилищ данных;
  • интегрирован линейкой продуктов Computer Associates для поддержки всех стадий разработки ИС, CASE–средствами Oracle Designer, Rational Rose, средствами разработки и др.;
  • позволяет повторно использовать компоненты созданных ранее моделей, а также использовать наработки других разработчиков;
  • возможна совместная работа группы проектировщиков с одними и теми же моделями (с помощью AllFusion Model Manager);
  • позволяет переносить структуру БД (не сами данные!) из СУБД одного типа в СУБД другого;
  • позволяет документировать структуру БД [14].

Oracle Designer компании Oracle. Набор инструментальных средств Oracle Designer предлагает интегрированное решение для разработки прикладных систем корпоративного уровня для Web– и клиент/серверных приложений. Oracle Designer участвует в каждой фазе жизненного цикла разработки программного обеспечения – от моделирования бизнес–процессов до внедрения. Применение единого репозитория делает возможным использование любых его компонент для быстрой разработки масштабируемых, кросс–платформных распределенных приложений. Задачей Oracle Designer являются сбор данных о потребностях пользователей и автоматизация построения гибких графических приложений. Oracle Designer используется не только для создания приложений, но и для ведения учета изменений, которые неизбежно происходят при эксплуатации системы. Графические модели определений проекта, интегрированные с многопользовательским репозиторием, существенно облегчают работу с Oracle Designer [7].

Инструментальные средства построены на базе общепринятых методик, охватывающих весь жизненный цикл разработки и позволяющих пользователям осуществлять построение моделей привычным для их организации способом. Это обеспечивает гибкость и открытость подхода к разработке программного обеспечения за счет использования только тех частей продукта, которые требуются в данной задаче. В рамках процесса разработки обеспечивается поддержка методов RAD, JAD, информационного проектирования, водопадного метода (waterfall), итеративного метода и др. Пользуясь этими принципами, можно добиться успешного баланса организационных потребностей и технологических возможностей и даже эффективно управлять риском, связанным с частыми неизбежными и важными изменениями как в одной, так и в другой области. Средства концептуального моделирования Oracle Designer включают в себя:

  • ER–диаграммы (диаграммы информационной структуры предметной области, представляемой в виде объектов и их взаимосвязей);
  • диаграммы функциональной иерархии, описывающие функции, которые выполняет система;
  • диаграммы потоков данных, циркулирующих на предприятии [7].

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

Финальная часть разработки проекта – автоматическая генерация серверных компонентов – возможна не только для сервера БД Oracle, но и для СУБД Microsoft SQL Server, DB/2, Sybase и ряда других. Любые изменения бизнес–процессов могут быть внесены в модели, и тут же будет сгенерировано модифицированное приложение, основывающееся уже на новых схемах ведения бизнеса. При этом все разработанное ранее будет сохранено и войдет в новый проект. Огаск Designer автоматически создает отчеты, которые содержат всю информацию о проекте и могут быть использованы как набор документов, отражающих текущее состояние проекта [7].

Rational Rose компании IBM. IBM Rational Rose входит в состав пакета IBM Rational Suite и предназначен для моделирования программных систем с использованием широкого круга инструментальных средств и платформ. Rational Rose является одним из ведущих инструментов визуального моделирования в программной индустрии благодаря полноценной поддержке языка UML и многоязыковой поддержке командной разработки. Инструмент полностью поддерживает компонентно–ориентированный процесс создания ИС. Любые участники проекта – аналитики, специалисты по моделированию, разработчики и др. – могут использовать модели, построенные в Rational Rose, для большей эффективности создания конечного продукта. Для бизнес–аналитиков средство Rational Rose дает возможность детально описать и проанализировать бизнес–процессы данной предметной области. Системные аналитики, используя указанные описания, смогут разработать необходимый функционал ИС, который максимально удовлетворит запросы заказчика.

Для архитекторов средство Rational Rose будет полезно при создании мощной и гибкой архитектуры системы. Для аналитиков, специализирующихся в области разработки баз данных, Rational Rose даст возможность визуально проектировать и генерировать базы данных любого размера. Таким образом, можно создавать базы данных Microsoft SQL Server, Oracle, Sybase, SQL Anywhere, IBM DB2 и любые другие, которые поддерживают возможность запуска скриптов стандарта ANSI SQL. Любые модели, создаваемые с помощью данного средства, являются взаимосвязанными: бизнес–модель, функциональная модель, модель анализа, модель проектирования, модель базы данных, модель компонентов и модель физического развертывания системы. Есть возможность по созданию шаблонов архитектурных решений, позволяющих использовать опыт, накопленный в предыдущих проектах [3].

Существуют расширения Rational Rose, которые позволяют выполнять скелетную (round–trip) разработку ИС, создаваемых на базе языков C/C+ +, Java, Smalltalk, Ada, Object Pascal (Borland Delphi) и др. Таким образом, можно сгенерировать каркас программного кода на любом из указанных языков или выполнить процедуру обратного проектирования, что позволяет сформировать модель на базе существующего кода. Есть возможность публикации модели в Интернете, которая служит основой для объединения работы удаленных команд разработчиков. Интеграция Rational Rose с Rational RequisitePro позволяет на базе визуальной модели разработать полный набор требований, которые необходимо реализовать при создании конечного продукта. Интеграция Rational Rose с Rational TestManager дает возможность создавать сценарии тестирования на базе визуальной модели. Интеграция Rational Rose с Rational ClearCase позволяет поставить на версионный контроль модель целиком или по частям. Интеграция Rational Rose с Rational SoDA позволяет автоматизировать процесс создания документов и отчетов по визуальной модели [3].

PowerDesigner компании Sybase. Компания Sybase со дня своего основания традиционно является ведущим поставщиком информационных технологий на мировой рынок финансовых институтов: технологии Sybase используют 90 % компаний мирового рынка ценных бумаг, 60 % мировых банков и 68 % компаний Wall Street. С 1996 года, когда открылся офис в Москве, Sybase активно работает в России и других странах СНГ. В апреле 2002 года открылись офисы компании в Санкт–Петербурге и Киеве. Офисы Sybase в Москве, Санкт–Петербурге и Киеве обеспечивают всестороннюю работу с клиентами, включая поставки технологий, оборудования, разработку законченных решений, обучение пользователей, полнофункциональную техническую поддержку и услуги консалтинга [22].

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

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

  • моделирование бизнес–процессов: PowerDesigner позволяет нетехническим специалистам компании разрабатывать и моделировать бизнес–процессы, ориентируясь на бизнес–задачи и опираясь на известные им термины, используя простую и интуитивно понятную графическую нетехническую модель;
  • моделирование данных: PowerDesigner позволяет разрабатывать и генерировать схему БД посредством двухуровневого (концептуального и физического) моделирования реляционной БД, поддерживающего классические методики проектирования баз данных. Имеет также встроенные средства моделирования хранилища данных;
  • объектное моделирование: PowerDesigner предлагает законченную технологию анализа и проектирования систем с использованием стандарта UML (диаграммы бизнес–процессов, последовательности выполнения, классов и компонентов). На основе диаграммы классов PowerDesigner автоматически осуществляет генерацию и реинжиниринг кода для популярных инструментальных сред, таких как JavaTM (включая EJB 2.0), XML, Web Servicies, C+ +, PowerBuilder, Visual Basic и др., посредством настраиваемого генератора;
  • репозиторий масштаба предприятия: Enterprise–версия PowerDesigner содержит функциональность репозитория класса предприятия. Репозиторий позволяет всем членам вашей команды легко просматривать модели и другую информацию, а также осуществлять обмен ими. Репозиторий обладает высокой масштабируемостью и поддерживает систему безопасности, основанную на роли пользователя, контроль версий, поиск и возможности составления отчетов [22].

ARIS компании IDS Scheer AG. В настоящее время наблюдается тенденция интеграции разнообразных методов моделирования и анализа систем, проявляющаяся в форме создания интегрированных средств моделирования. Одним из таких средств является продукт, носящий название ARIS, разработанный германской фирмой IDS Scheer. Компания IDS Sheer AG основана в 1984 г. Основное направление – программное обеспечение и консалтинг. В настоящее время компания обслуживает 4000 клиентов в 50 странах мира через сеть своих представительств и партнеров [2].

Качество решений IDS Scheer было подтверждено в июне 2005 года золотой медалью Международной познаньской ярмарки, на которой награждаются только лучшие продукты. А также в июле 2005 года, когда на мировом рынке была представлены программные продукты ARIS 7 с абсолютно новыми Web–продуктами; все они имеют общую черту – интуитивно понятный и выразительный интерфейс. Система ARIS представляет собой комплекс средств анализа и моделирования деятельности предприятия. Ее методическую основу составляет совокупность различных методов моделирования, отражающих разные взгляды на исследуемую систему. Одна и та же модель может разрабатываться с использованием нескольких методов, что дает возможность использовать ARIS специалистам с различными теоретическими знаниями и настраивать его на работу с системами, имеющими свою специфику. Методика моделирования ARIS основывается на разработанной профессором Августом Шером теории построения интегрированных ИС, определяющей принципы визуального отображения всех аспектов функционирования анализируемых компаний. ARIS поддерживает четыре типа моделей, отражающих различные аспекты исследуемой системы:

  • организационные модели, представляющие структуру системы – иерархию организационных подразделений, должностей и конкретных лиц, связи между ними, а также территориальную привязку структурных подразделений;
  • функциональные модели, содержащие иерархию целей, стоящих перед аппаратом управления, с совокупностью деревьев функций, необходимых для достижения поставленных целей;
  • информационные модели, отражающие структуру информации, необходимой для реализации всей совокупности функций системы;
  • модели управления, представляющие комплексный взгляд на реализацию бизнес–процессов в рамках системы [2].

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

Процесс моделирования можно начинать с любого из них, в зависимости от конкретных условий и целей, преследуемых разработчиками. Модели в ARIS представляют собой диаграммы, элементами которых являются разнообразные объекты – «функция», «событие», «структурное подразделение», «документ» и т. п. Между объектами устанавливаются разнообразные связи. Каждому объекту соответствует определенный набор атрибутов, которые позволяют ввести дополнительную информацию о конкретном объекте. Значения атрибутов могут использоваться при имитационном моделировании или для проведения стоимостного анализа. Таким образом, по результатам выполнения этого этапа возникает набор взаимосвязанных моделей, представляющих собой исходный материал для дальнейшего анализа.

Стоит отметить несколько особенностей системы ARIS. Первая – семейство программных продуктов ARIS ориентировано на процессное описание. Основная бизнес–модель ARIS – eEPC (extended Event–driven Process Chain – расширенная модель цепочки процессов, управляемых событиями). По существу, модель eEPC расширяет возможности IDEF0, IDEF3 и DFD, обладая всеми их достоинствами и недостатками. Вторая особенность – в системе ARIS есть внутренняя база данных, которая позволяет проверять модель на непротиворечивость, целостность, проводить верификацию модели. В других продуктах это отсутствует. Третья особенность: ARIS – единственная система, ориентированная на описание бизнеса, где присутствуют различные взгляды на бизнес–систему, которую мы можем оценить и рассмотреть с разных сторон, чего нет в других программных продуктах. В течение последних пяти лет ARIS уверенно лидирует среди средств моделирования. [2]

Укажем основное предназначение каждого рассматриваемого продукта из множества его применений:

  • для моделирования баз данных больше подходят инструменты Erwin, Power Designer и Rational Rose;
  • для моделирования компонентов разрабатываемых приложений больше подходят Oracle Designer, Power Designer и Rational Rose;
  • для моделирования бизнес–процессов больше подходят BPwin, ARIS и Rational Rose.

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

Моделирование бизнес–процессов «как есть»

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

Вход бизнес–процесса – продукт, который в ходе выполнения процесса преобразуется в выход.

Вход всегда должен иметь своего поставщика. К входам процесса могут относиться: сырье, материалы, документация, информация, персонал, услуги и т.д.

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

Выход (продукт) процесса всегда имеет потребителя. В случае если потребителем является другой процесс, то для него этот выход является входом. Выход (продукт) процесса также может использоваться в качестве ресурса при выполнении другого процесса. К выходам процесса могут относиться: готовая продукция, документация, информация (в том числе отчетная), персонал (для процесса «Обеспечение кадрами»), услуги и т.д.

Ресурс бизнес–процесса – материальный или информационный объект, постоянно используемый для выполнения процесса, но не являющийся входом процесса [14].

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

Входы, выходы и ресурсы рассматриваемого бизнес–процесса изображены на Рисунке 2.

Рисунок 2. Входы, выходы и ресурсы бизнес–процесса

Схема управления бизнес–процессом «Складской учет» представлена на Рисунке 3.

Рисунок 3. Схема управления процессом

На рисунках 4–6 изображены схемы подпроцессов, включенных в состав процесса «Складской учет».

Рисунок 4. Схема подпроцесса «получить товары/материалы»

Рисунок 5. Схема подпроцесса «Зафиксировать приход в журнале»

Рисунок 6. Схема подпроцесса «Заполнить и подписать все документы»

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

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

ГЛАВА 2. Построение бизнес–процессов «как должно быть»

Предлагаемые мероприятия по улучшению бизнес–процессов

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

Улучшение бизнес–процессов – инструмент, который может быть использован в организации на любом уровне: и менеджером, собравшимся изменить сравнительно несложный процесс внутри своего отдела, и представителем высшего руководства, цель которого – внедрить новую инициативу в масштабах компании, чтобы улучшить продуктивность работы организации в целом [19].

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

Планирование. Здесь необходимо выбрать бизнес–процесс, который следует усовершенствовать, определиться с задачами и масштабами изменений, собрать команду.

Анализ. Тщательно изучить бизнес–процесс, который нужно усовершенствовать.

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

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

Внедрение. Внесение необходимых изменений.

Непрерывное совершенствование. Регулярная оценка эффективности выбранного процесса и при необходимости внесение дополнительных изменений [20].

Для процесса «Складской учет» необходимо внести следующие изменения:

  • автоматизация учета остатков на складе;
  • автоматизация составления заявки на закупку;
  • автоматизация внесения информации о приходе;
  • автоматическое формирование счета–фактуры;
  • автоматическое заполнение накладных.

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

Моделирование бизнес–процессов «как должно быть»

На нижеследующих изображениях будут представлены схемы управления бизнес–процессом, схемы подпроцессов, а также ресурсы, входы и выходы процесса «Складской учет», которые являются желаемым результатом после осуществления улучшения бизнес–процессов.

Рисунок 8. Входы, выходы и ресурсы бизнес–процесса после улучшения

Рисунок 9. Схема управления процессом после улучшения

Рисунок 10. Схема подпроцесса «Получить товары/материалы» после улучшения

Рисунок 11. Схема подпроцесса «Зафиксировать приход в журнале» после улучшения

Рисунок 12. Схема подпроцесса «Заполнить и подписать все документы» после улучшения

Во второй главе работы были разработаны рекомендации по улучшению реализации задач бизнес-процесса «Складской учет». Общим для всех предложенных мероприятий является их характер, а именно – необходимость автоматизации большинства выполняемых рутинных операций. Также во второй главе были разработаны схемы бизнес-процесса «Складской учет», уже регламентированные с учетом произведенных изменений, которые приведут подавляющее число ежедневных операций в электронный вид. Так как одним из ресурсов бизнес-процесса являются показатели эффективности и продуктивности труда, то со временем после внедрения предложенных мероприятий станет возможным отслеживание реальных результатов внедрения.

ЗАКЛЮЧЕНИЕ

В ходе выполнения работы была достигнута поставленная цель, а именно – разработан регламент выполнения процесса «Складской учет». Для разработки регламента выполнения процесса была выбрана среда ERwin, достаточно функциональная для поставленной цели.

Для того чтобы достичь поставленной цели были выполнены следующие задачи:

  • описана предметная область;
  • осуществлена постановка задачи;
  • выбрано средство для моделирования бизнес–процессов;
  • реализовано моделирование бизнес–процессов «как есть»;
  • предложены мероприятия по улучшению бизнес–процессов;
  • смоделированы бизнес–процессы по ситуации «как должно быть».

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

Помимо всего прочего, при проведении исследования на практике были подкреплены ранее полученные знания о моделировании бизнес-процессов – получены практические навыки разработки регламента бизнес-процесса и его подпроцессов, а также работы с программой Erwin.

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

  1. Бондарева, Н. А. Бизнес–процесс в конкурентном окружении рынка образовательных услуг / Н. А. Бондарева. – М.: Университет, 2014. – 315 c.
  2. Веселова, О. С. Внедрение централизованных информационных систем как способ реинжиниринга бизнес–процессов операторов связи / О. С. Веселова. – М.: Университет, 2016. – 459 c.
  3. Гусынина, И. Контроллинг бизнес–процессов промышленного предприятия / И. Гусынина, М. Чувашлова. – М.: LAP Lambert Academic Publishing, 2017. – 176 c.
  4. Елиферов, В. Г. Бизнес–процессы: Регламентация и управление. Гриф МО РФ / В. Г. Елиферов. – М.: ИНФРА–М, 2017. – 719 c.
  5. Исаев, Р. А. Банк 3.0: стратегии, бизнес–процессы, инновации. Монография / Р. А. Исаев. – М.: ИНФРА–М, 2017. – 766 c.
  6. Кеворков, В. В. Маркетинг. Регламент бизнес–процесса / В. В. Кеворков. – Москва: Машиностроение, 2016. – 832 c.
  7. Куликов, Г. Г. Методика интеграции информационно–поисковых и корпоративных информационных систем на основе системных моделей бизнес–процессов / Г. Г. Куликов. – М.: Университет, 2014. – 230 c.
  8. Кэмп, Р. С. Легальный промышленный шпионаж. Бенчмаркинг бизнес–процессов: технологии поиска и внедрение лучших методов работы ваших конкурентов / Р. С. Кэмп. – М.: Баланс–Клуб, 2016. – 416 c.
  9. Маклаков, С. В. Моделирование бизнес–процессов с AIIFusion Process Modeler / С. В. Маклаков. – М.: Диалог–Мифи, 2016. – 240 c.
  10. Миротин, Л. Логистический менеджмент бизнес–процессов материалопотоков / Л. Миротин. – М.: LAP Lambert Academic Publishing, 2018. – 236 c.
  11. Репин, В. Бизнес–процессы. Моделирование, внедрение, управление / В. Репин. – М.: Манн, Иванов и Фербер, 2017. – 851 c.
  12. Рыбаков, М. Ю. Бизнес–процессы: как их описать, отладить и внедрить. Практикум. / М. Ю. Рыбаков. – М.: Михаил Рыбаков, 2016. – 392 c.
  13. Самуйлов, К. Е. Бизнес–процессы и информационные технологии в управлении современной инфокоммуникационной компанией / К. Е. Самуйлов, А. В. Чукарин, Н. В. Яркина. – М.: Альпина Паблишер, 2016. – 512 c.
  14. Сухойван, Е. Документирование бизнес–процесса поиска и подбора персонала / Е. Сухойван. – М.: LAP Lambert Academic Publishing, 2014. – 949 c.
  15. Теличенко, В. И. Информационное моделирование технологий и бизнес–процессов в строительстве / В. И. Теличенко, А. А. Лапидус, А. А. Морозенко. – М.: Издательство Ассоциации строительных вузов, 2015. – 144 c.
  16. Тельнов, Ю. Ф. Инжиниринг предприятия и управление бизнес–процессами. Методология и технология. Учебное пособие для студентов магистратуры. Гриф УМЦ «Профессиональный учебник»: моногр. / Тельнов Юрий Филиппович. – М.: Юнити–Дана, 2015. – 185 c.
  17. Тихонов, С. Имитационное моделирование бизнес–процессов / С. Тихонов, Г. Угольницкий. – М.: LAP Lambert Academic Publishing, 2017. – 176 c.
  18. Фёдоров, И. Г. Адаптация онтологии Бунге–Ванда–Вебера к описанию исполняемых моделей бизнес–процессов / И. Г. Фёдоров. – М.: Университет, 2017. – 913 c.
  19. Хаммер, М. Быстрее, лучше, дешевле. Девять методов реинжиниринга бизнес–процессов / М. Хаммер. – М.: Альпина Паблишер, 2016. – 353 c.
  20. Чистов, Д. В. Анализ бизнес–процессов при разработке инвестиционных проектов: моногр. / Д. В. Чистов. – М.: Университет, 2014. – 513 c.
  21. Шеер, А-В. Бизнес–процессы. Основные понятия. Теория. Методы / А-В. Шеер. – М.: Просветитель; Издание 2–е, перераб. и доп., 2014. – 152 c.
  22. Шеер, А-В. Моделирование бизнес–процессов / А-В. Шеер. – М.: Серебряные нити, 2015. – 219 c.

При копировании любых материалов с сайта evkova.org обязательна активная ссылка на сайт www.evkova.org

Сайт создан коллективом преподавателей на некоммерческой основе для дополнительного образования молодежи

Сайт пишется, поддерживается и управляется коллективом преподавателей

Telegram и логотип telegram являются товарными знаками корпорации Telegram FZ-LLC.

Cайт носит информационный характер и ни при каких условиях не является публичной офертой, которая определяется положениями статьи 437 Гражданского кодекса РФ. Анна Евкова не оказывает никаких услуг.

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

Время на прочтение
8 мин

Количество просмотров 5.1K

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

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

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

Скорее всего, проблема кроется в том, что мы привыкли так делать. Существующая индустрия разработки, инструменты, УЯП сверхвысокого уровня, рынки обучения, найма и продвижения достались нам по наследству. А ещё есть страх машинерии, которая должна связывать все наши компоненты и поддерживать масштабирование, из-за которого мы порой забываем об императиве предметной области и превращаем себя в леммингов, занимающихся обслуживанием вспомогательных механизмов.

Всё это – тот монолит, который мы пытаемся масштабировать хотя бы на наше настоящее и надеемся, что будущее придёт и превратит ком грязи в карету. Но так не бывает! Мы сами должны это сделать. Мы и есть будущее!

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

Начинаем с описания предметной области

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

Как это не банально, но язык описания предметных областей должен обладать семантикой описания предметных областей. Только в этом случае можно будет действительно удобно формировать модель предметной области, не отвлекаясь на второстепенные конструкции. Фокусироваться на декомпозиции предметной области на взаимодействующие подобласти, а не продумывать механизмы связи между ними. Таких семантик может быть много, но для начала выберем одну из достаточно универсальных техник манипуляции предметными областями – Domain Driven Design (DDD) [1, 2].

Позже мы вернёмся к вопросу выбора семантики. Очевидно, выбор будет зависеть от конкретной предметной области, но точно не от инфраструктуры и архитектуры программного обеспечения (ПО) и не от наличия на рынке программистов на конкретном УЯП!

После выбора семантики описания предметной области можно определить синтаксис, который наилучшим образом её отражает. В итоге получится язык, который можно условно назвать Domain Driven Language (DDL). Далее будет приведён пример кода на этом языке. Но сначала давайте посмотрим, как это может работать.

На рисунке 1 приведена условная схема формирования информационной системы (ИС) на базе описания предметной области с использованием DDL.

Рисунок 1. Схема формирования информационной системы из описания предметной области с использованием DDL

Рисунок 1. Схема формирования информационной системы из описания предметной области с использованием DDL

Ключевым моментом является формирование из описания предметной области на DDL «чистой» семантики [3], которая на самом деле может являться набором стандартизированных JSON-документов и фрагментов кода на каком-либо УЯП, на основе которых, плюс заготовки для конкретной архитектуры, собирается ИС.

Условно названная «DevOps»-команда формирует компоненты архитектуры и инфраструктуры. Это сродни формированию библиотек компонент для различных сред работы приложения и в идеале может выполняться совершенного независимо от предметной области. Нужно лишь соблюдать соглашения о формате «чистой» семантики, не зная о её содержимом.

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

Некоторые новые возможности

Первое, что может спросить frontend-разработчик: «где же разработка пользовательского интерфейса»? Впрочем, это касается и остальных компонентов архитектуры: неужели пользователи будут довольствоваться автоматически генерируемыми неотёсанными версиями компонентов вроде интерфейса пользователя и других важных частей, которые вручную можно сделать гораздо более красивыми, удобными и оптимальными?

Конечно нет. В смысле действительно есть возможность на основе «чистой» семантики автоматически генерировать и интерфейс пользователя, и структуру базы данных, но никто не запрещает это делать вручную. Особенно в критических местах. Для этого случая можно дополнить схему разработки из рисунка 1 группой UI-дизайнеров, которые формируют важные элементы пользовательского интерфейса. Однако эти и другие группы желательно размещать под «чистой» семантикой.

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

Ещё одной особенностью подхода является возможное формирование расширений семантики DDL для учёта каких-то особенностей конкретной предметной области. Для этого можно использовать расширенную трактовку контрактного программирования [4].

Да много чего ещё может появиться интересного при таком подходе. В качестве ещё одного примера можно привести раннюю диагностику проблем в рамках семантики DDL, которая гораздо строже семантики любого УЯП. Это означает, что многие потенциальные проблемы, которые невозможно диагностировать при формировании кода на УЯП, будут подсвечиваться редактором при вводе описания модели предметной области на DDL, причём с учётом расширенных контрактов [4].

Рассмотрим простой пример

В качестве примера можно рассмотреть модель предметной области заказа в интернет-магазине – пример весьма канонический, знакомый и «любимый» многими. На рисунке 2 приведён скрин описания заказа на прототипе DDL в интегрированной среде разработки системы SIMODO [5, 6].

Рисунок 2. Пример описания агрегата «Заказ» на прототипе DDL в интегрированной среде разработки системы SIMODO

Рисунок 2. Пример описания агрегата «Заказ» на прототипе DDL в интегрированной среде разработки системы SIMODO

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

Было бы крайне любопытно посмотреть на описание ваших предметных областей на этом языке, возможно, с использованием некоторых расширений (в виде модулей или дополнений в синтаксис языка), которые покажутся необходимыми. Это помогло бы в разработке языка. Можно предложить и свой синтаксис DDL.

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

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

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

Рисунок3. Пример описания модели динамического объекта и запуска моделирования в интегрированной среде разработки системы SIMODO

Рисунок3. Пример описания модели динамического объекта и запуска моделирования в интегрированной среде разработки системы SIMODO

Приведённый пример показывает, что можно использовать несколько языков, каждый из которых описывает свой участок предметной области. На рисунке 4 приведён фрагмент схемы из рисунка 1, который показывает более эффективное формирование модели предметной области, т.к. часть модели формируется специалистом собственноручно (безусловно, при этом может использоваться собственный ПОЯ, не обязательно только язык дифференциальных уравнений).

Рисунок 4. Применение ПОЯ при формировании модели предметной области

Рисунок 4. Применение ПОЯ при формировании модели предметной области

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

Может показаться, что данный подход неоправданно сложный, т.к. необходимо поддерживать довольно большое количество ПОЯ. И не безосновательно. Однако почти любой новый подход бывает сложным. И на этот счёт разработан метод автоматизации разработки языков с использованием единой операционной семантики и расширений для интерпретаторов семантических дополнений [3].

Заключение

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

Одним из решений, предлагаемых для реализации данного подхода, является создание инструмента, автоматизирующего разработку языков для предметных областей, в том числе для DDD, как предметной области автоматизации предметных областей. Такой инструмент в настоящее время разрабатывается на кафедре ИУ6 МГТУ им. Н.Э. Баумана.

Библиографические ссылки

  1. Эванс Э. Предметно-ориентированное проектирование (DDD): структуризация сложных программных систем.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2011. – 448 с.

  2. Вернон В. Реализация методов предметно-ориентированного проектирования. : Пер. с англ. – СПб. Ж ООО «Диалектика». 2019. – 688 с.

  3. Иванова Г.С., Фетисов М.В., Малкина Т.А., Ралдугина А.В. Унификация работы с предметно-ориентированными языками и открытая программная архитектура в адаптивной системе имитационного моделирования // Динамика сложных систем. 2021.  T. 15. № 3. С. 36−47. DOI: 10.18127/j19997493-202103-03

  4. Ivanova G.S., Fetisov M.V. The concept of contract management in the base language of the adaptive modeling system. [Электронный ресурс]. URL: https://summa.stu.lipetsk.ru/assets/Final_programm.pdf (дата обращения: 05.12.2021).

  5. Иванова Г.С., Жильцов А.И., Фетисов М.В., Чулин Н.А., Юдин А.Е. Адаптивная система моделирования. – Автоматизация. Современные технологии, номер 11 за 2020 год, стр. 500.

  6. SIMODO/stars в репозитории МГТУ им. Н.Э. Баумана. [Электронный ресурс]. URL: https://bmstu.codes/lsx/simodo/stars (дата обращения: 05.12.2021).

Часть материалов и статей ещё не обработана или являются платными.

Анализ предметной области. Основные понятия системного и структурного анализа.

Анализ предметной области

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

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

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

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

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

Анализ деятельности крупной организации, такой, как банк с сетью региональных отделений, нефтеперерабатывающий завод или компания, производящая автомобили, дает огромные объемы информации. Из этой информации надо уметь отбирать существенную, а также надо уметь находить в ней пробелы — области деятельности, информации по которым недостаточно для четкого представления о решаемых задачах. Значит, всю получаемую информацию надо каким-то образом систематизировать. Для систематизации сбора информации о больших организациях и дальнейшей разработки систем, поддерживающих их деятельность, применяется схема Захмана (автор — John Zachman) или архитектурная схема предприятия (enterprise architecture framework).

Схема Захмана

Таблица 1. Схема Захмана. Приведены примеры моделей для отдельных клеток.

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

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

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

  • Самый крупный — уровень организации в целом, рассматриваемой в ее развитии совместно с окружением, уровень общего планирования ее деятельности. Этот уровень содержит долговременные цели и задачи организации как цельной системы, основные связи организации с внешним миром и основные виды ее деятельности.

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

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

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

Схема деятельности компании в нотации Йордана-ДеМарко

Рисунок 1. Схема деятельности компании в нотации Йордана-ДеМарко.

Часто для описания поведения сложных систем и деятельности крупных организаций используются диаграммы потоков данных (data flow diagrams). Эти диаграммы содержат 4 вида графических элементов: процессы, представляющие собой любые трансформации данных в рамках описываемой системы, хранилища данных, внешние по отношению к системе сущности и потоки данных между элементами трех предыдущих видов.

Используются несколько систем обозначений для перечисленных элементов, наиболее известны нотация Йордана-ДеМарко (Yourdon-DeMarco) и нотация Гэйна-Сарсона (GaneSarson), обе предложенные в 1979 году. Рис. 1 показывает диаграмму потоков данных, которая описывает деятельность компании, управляющей небольшим магазином. Эта диаграмма изображена в нотации Йордана-ДеМарко: процессы изображаются кружками, внешние сущности — прямоугольниками, а хранилища данных — двумя горизонтальными параллельными линиями. На Рис. 2 изображена та же диаграмма в нотации Гейна-Сарсона: на ней процессы — прямоугольники со скругленными углами, внешние сущности — прямоугольники с тенью, а хранилища данных — вытянутые горизонтально прямоугольники без правого ребра.

Схема деятельности компании в нотации Гэйна-Сарсона

Рисунок 2. Схема деятельности компании в нотации Гэйна-Сарсона.

Процессы на диаграммах потоков данных могут уточняться: если некоторый процесс устроен достаточно сложно, для него можно нарисовать отдельную диаграмму, описывающую потоки данных внутри этого процесса. На ней показываются те элементы, с которыми этот процесс связан потоками данных, и составляющие его более мелкие процессы и хранилища. Таким образом, возникает иерархическая структура процессов. Обычно на самом верхнем уровне находится один процесс, представляющий собой систему в целом, и набор внешних сущностей, с которыми она взаимодействует.
На Рис. 3 показана возможная детализация процесса «Управление персоналом».

Детализация процесса "Управление персоналом"

Рисунок 3. Детализация процесса “Управление персоналом”.

Диаграммы потоков данных появились как один из первых инструментов представления деятельности сложных систем при использовании структурного анализа. Для представления структуры данных в этом подходе используются диаграммы сущностей и связей (entityrelationship diagrams, ER diagrams), изображающие набор сущностей предметной области и связей между ними. И сущности, и связи на таких диаграммах могут иметь атрибуты. Пример такой диаграммы представлен на Рис. 4.

Модель сущностей и связей

Рисунок 4. Модель сущностей и связей.

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

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

Однако диаграммы вариантов использования несут несколько меньше информации по сравнению с соответствующими диаграммами потоков данных: на них процессы и хранилища в соответствии с принципом объединения данных и методов работы с ними объединяются в варианты использования, и остаются только связи между вариантами использования и действующими лицами (аналогом внешних сущностей). Для представления остальной информации каждый вариант использования может дополняться набором разнообразных диаграмм UML — диаграммами деятельностей, диаграммами сценариев, и пр. Обо всех этих видах диаграмм будет рассказано в лекции, посвященной архитектуре программного обеспечения.

Основные понятия системного анализа

  • Задачи структурного системного анализа
  • Истоки структурного моделирования
  • Идеи и принципы ССА
  • Другие принципы ССА
  • Инструментарий ССА
  • Принципы построения ИС

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

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

Задачи структурного системного анализа

В менеджменте перед ССА ставятся следующие задачи:

  • описать существующее положение вещей (объект управления), т.е. построить так называемую модель “как есть” (“AS-IS”);
  • предложить новые решения по структуре управления или технологии выполнения бизнес-процессов, т.е. построить модель “как должно быть” (“ТО-ВЕ”). При этом предприятие рассматривается в качестве сложной бизнес-системы, функционирующей на основе определенного множества бизнес-процессов. Задачей реорганизации является перевод предприятия в некоторое целевое состояние, характеризующееся, как правило, качественно более высоким уровнем организации работы за счет:
    • повышения эффективности бизнес-процессов;
    • создания организационной структуры, направленной на поддержку выполнения бизнес-процессов;
    • создания информационной системы поддержки выполнения бизнес-процессов.

При создании ИС специалисты сталкиваются с задачами: построить модель “как есть” объекта автоматизации и спроектировать информационную систему модель “как должно быть”.
Таким образом, модель “как есть”, построенная и менеджером, и специалистом по ИС, будет одинаковой, а модели “как должно быть” будут различными по причине использования разных профессиональных инструментов решения проблем: у менеджеров – за счет структурной реорганизации или реорганизации бизнес-процессов, у специалистов по ИС за счет автоматизации. Но поскольку нельзя автоматизировать существующий беспорядок, то автоматизации должна предшествовать работа по реорганизации, а, с другой стороны, реорганизация даст наибольший эффект, если она будет проведена с использованием современных ИС.

В процессе ССА рассматриваются функциональные, информационные и динамические модели, а также модели функционально-стоимостного анализа (АВС-модели).

Истоки структурного моделирования

В основе ССА лежит графическое представление исследуемого или проектируемого объекта.
Основы современных методов структурно-функционального анализа и моделирования сложных систем были разработаны в трудах профессора Массачусетского технологического института Дугласа Росса, который впервые использовал понятие “структурный анализ” в конце 60-х годов. О дальнейшем развитии идеи описания сложных объектов с помощью относительно небольшого набора типовых элементов свидетельствовало появление методологии структурно-функционального моделирования и анализа сложных систем (SADT), которая постоянно совершенствовалась и широко использовалась для эффективного решения целого ряда проблем (управление финансами и материально-техническим снабжением крупных фирм; разработка программного обеспечения АСУ телефонными сетями; долгосрочное и стратегическое планирование деятельности фирм; проектирование вычислительных систем и сетей и др.).

Идеи и принципы ССА

Главная задача ССА описание работы сложной системы с должной точностью и полнотой, которое должно быть доступно как специалисту аналитику, проектировщику и программисту, так и заказчику (конечному пользователю системы). В этом заключается наибольшая трудность. В частности, системный аналитик сталкивается со следующими взаимосвязанными проблемами:

  • Аналитику сложно получить исчерпывающую информацию для оценки требований к системе с точки зрения заказчика.
  • Заказчик, в свою очередь, не имеет достаточной информации о проблеме (реорганизации предприятия и бизнес-процессов или построении ИС) и поэтому не может судить о том, что является выполнимым, а что нет.

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

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

Методы ССА основаны на следующих принципах, помогающих преодолеть сложности, возникающие при описании систем:

  • расчленение систем на части “черные ящики”;
  • иерархическая организация этих “черных ящиков”;
  • использование графических средств.

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

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

Второй важной идеей, лежащей в основе структурных методов, является идея иерархии.

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

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

Другие принципы ССА

Методология ССА строится на общих (базовых) принципах. Но существуют также и другие принципы, без учета которых не возможно проведение ССА:

  • формализации (необходимость строго методического подхода к решению проблемы);
  • абстрагирования (выделение существенных с некоторых позиций аспектов системы и отвлечение от несущественных с целью представления проблемы в упрощенном общем виде);
  • “упрятывания” (скрытие несущественной на конкретном этапе информации каждая часть “знает” только необходимую ей информацию);
  • концептуальной общности (следование единой философии на всех этапах ЖЦ: структурный анализ структурное проектирование структурное тестирование);
  • непротиворечивости (обоснованность и согласованность элементов);
    логической независимости (концентрация внимания на логическом проектировании для обеспечения независимости от физического проектирования).

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

Классы моделей ССА:

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

Инструментарий ССА

В качестве компьютерного инструмента ССА используются CASE-средства.

CASE-cpедcmвa – комплекс средств автоматизации для анализа, проектирования, разработки и сопровождения сложных систем.

В основе CASE лежат такие понятия, как методология, метод, нотация и средство.

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

Метод – процедура или техника описания компонентов объекта исследования, программного обеспечения или ИС.

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

Средства – инструментарий для поддержки и усиления методов.

Принципы построения ИС.

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

В процессе проектирования совершенствуются как организация основной деятельности экономического объекта (производственной, хозяйственной), так и организация управленческих процедур.
Массовое проектирование АИС потребовало разработки единых теоретических положений, методических подходов к их созданию и функционированию. ИС создаются в соответствии с техническим заданием., являющимся исходным документом для проектирования ИС.
Основополагающие принципы создания АИС: системности, развития, совместимости, стандартизации и унификации, эффективности.

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

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

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

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

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

Принцип единого информационного пространства:

  • пространственная распределенность пользователей;
  • функционирование ИС в режиме реального времени;
  • расширенные глобальные телекоммуникационные возможности;
  • внутрисистемная информационная связанность;
  • множественность интерфейсов; виртуальность и однородность их технической реализации;

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

Принцип надежности, защищенности и безопасности:

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

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

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

Для реализации перечисленных требований и обеспечения структурной и функциональной полноты интегрированной АИС необходима реализация проекта с соблюдением ряда принципов проектирования:

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

Принцип первого руководителя предусматривает:

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

Принцип новых задач – поиск постоянного расширения возможностей системы, совершенствование процесса управления, получение дополнительных результатных показателей с целью оптимизировать управленческие решения. Это может сопровождаться постановкой и реализацией при использовании ЭВМ и других технических средств новых задач управления.

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

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


Рассмотренные базовые принципы дополняются не менее важными организационно-технологическими, без которых невозможна разработка новых информационных технологий. Наиболее применяемые организационно-технологические принципы создания АИТ:

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

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

Пример описания предметной области “Фитнесс-центр”

Программа для фитнес-центра по распределению фитнес – расписания и контроля его соблюдения

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

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

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

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

Клиент, отправивший заявку, но не получивший ответа, видит список своих заявок с результатами (в том числе с указанием причины при отказе) и количеством дней ожидания ответа. Получив план тренировок, клиент видит экран с 2 вкладками: план тренировок (дата-список упражнений через запятую) и сегодняшний перечень индивидуальных занятий. Для последней выводится список: вид упражнения, количество повторов и Checkbox, позволяющий отметить выполнения, упражнения. Несмотря на это, упражнение не будет засчитано системой до тех пор, пока клиент не укажет показатель своего пульса во время выполнения упражнения. Сверху выводится сегодняшний прогресс (по количеству выполненных упражнений) в процентах с графическим отображением.

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

Контрольные вопросы

  1. Что такое “CASE-cpедcmвa”
    Перечислите понятия, лежащие в основе CASE
  2. Назовите основополагающие принципы создания АИС
  3. Назовите базовые принципы проектирования
  4. Назовите организационно-технологические принципы создания АИТ

Добавить комментарий