Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции ОДП / Лекция 2 Структурный анализ систем

.doc
Скачиваний:
64
Добавлен:
04.06.2015
Размер:
56.32 Кб
Скачать

Лекция 2

Структурный анализ систем

Содержание

1 Структурный анализ как метод исследования бизнес систем

2 Информационная модель системы

1 Структурный анализ как метод исследования бизнес систем

В основе деятельности по бизнес-моделированию, бизнес-ана­лизу, организации/реорганизации бизнес-процессов лежит цикл реорганиза­ции бизнес-процесса, включающий следующие основные этапы:

  • проведение организационных мероприятий, регламентирующих прове­дение работ по улучшению бизнес-процессов;

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

  • анализ предложений по реорганизации;

  • выбор и аргументация приемлемого варианта;

  • собственно реализация улучшения.

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

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

  • аналитику сложно получить исчерпывающую информацию о бизнес- системе;

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

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

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

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

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

разбиение на уровни абстракции с ограничением числа эле­ментов на каждом из уровней (обычно от 3 до 6 - 7);

ограниченный контекст, включающий лишь существенные на каждом уровне детали;

использование строгих формальных правил записи;

последовательное приближение к ко­нечному результату.

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

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

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

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

  2. Принцип формализации - заключается в необходимости строгого методологического подхода к решению проблемы.

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

  4. Принцип полноты - заключается в контроле на присутствие лишних элементов.

  5. Принцип непротиворечивости - заключается в обоснованности и согласованности элементов.

  6. Принцип независимости данных - заключается в том, что модели данных должны быть проанализированы и спроектированы независимо от про­цессов их обработки.

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

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

2 Информационная модель системы

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

Сущность представляет собой множество экземпляров реальных или аб­страктных объектов (людей, событий, состояний, идей, предметов и т.п.), обладающих общими атрибутами или характеристиками. Любой объект си­стемы может быть представлен только одной сущностью, которая должна быть уникально идентифицирована. При этом имя сущности должно отра­жать тип или класс объекта, а не его конкретный экземпляр (например, АЭРОПОРТ, а не ВНУКОВО).

Отношение в самом общем виде представляет собой связь между двумя и более сущностями. Фактически отношение является ассоциацией между сущно­стями, при которой каждый экземпляр одной сущности ассоциируется с произ­вольным (в том числе и нулевым) количеством экземпляров другой сущности, и наоборот. Именование отношения осуществляется с помощью грамматическо­го оборота глагола {ИМЕЕТ, ОПРЕДЕЛЯЕТ, МОЖЕТ ВЛАДЕТЬ и т.п.).

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

Для идентификации-требований, в соответствии с которыми сущности вовлекаются в отношения, используются связи. Каждая связь соединяет сущ­ность и отношение и может быть направлена только от отношения к сущно­сти. Значение связи характеризует ее тип и, как правило, выбирается из сле­дующего множества: {«О или 1», «О или более», «1», «1 или более», «p:q» ( диа­пазон )}. Пара значений связей, принадлежащих одному и тому же отношению, определяет тип этого отношения. Практика показала, что для моделирования большинства систем достаточно использовать следующие типы отношений:

1) 1*1 (один-к-одному). Отношения данного типа используются, как пра­вило, на верхних уровнях иерархии модели данных, а на нижних уровнях встречаются сравнительно редко;

2) \*п (один-ко-многим). Отношения данного типа являются наиболее часто используемыми;

3) п*т (многие-ко-многим). Отношения данного типа обычно использу­ются на ранних этапах моделирования с целью прояснения ситуации. В даль­нейшем каждое из таких отношений должно быть преобразовано в комбина­цию отношений типов 1 и 2 (возможно, с добавлением вспомогательных сущ­ностей и с введением новых отношений).

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

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

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

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

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

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

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

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

Наличие мини-спецификаций DFD-процессов нижнего уровня позволя­ет преодолеть логическую незавершенность IDF0 (а именно обрыв модели на некотором достаточно низком уровне, когда дальнейшая ее детализация становится бессмысленной) и построить полную функциональную специфи­кацию разрабатываемой системы. Это позволит расширить возможности применения созданной модели (например, ее можно будет использовать для автоматизированного и быстрого обучения новых работников конкретному направлению деятельности).

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

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

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

В заключение необходимо отметить, что рассмотренные разновидности структурного анализа по сути - два приблизительно одинаковых по мощно­сти языка для передачи понимания. И одним из основных критериев выбора является следующий: насколько хорошо каждым из этих языков владеет кон­сультант или аналитик, насколько грамотно он может на этом языке выра­жать свои мысли. Авторам неоднократно приходилось рецензировать как изумительные по стройности и строгости IDF0-модели, так и ни на что не годные модели, выполненные в DFD-технологии.