Смекни!
smekni.com

Разработка корпоративной информационной системы на основе объектно-ориентированного подхода (стр. 1 из 11)

ВОЛЖСКИЙ УНИВЕРСИТЕТ ИМ. ТАТИЩЕВА (ИНСТИТУТ)

КАФЕДРА «Промышленная информатика»

УТВЕРЖДАЮ

Проректор по учебной работе

__________ Никифорова Е.В.

от «____» _________ 2004 г.

РАЗРАБОТКА КОРПОРАТИВНЫХ ИНФОРМАЦИОННЫХ СИСТЕМ НА ОСНОВЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА

Учебное пособие

по дисциплине «Корпоративные информационные системы»

для студентов специальности 071900 «Информационные системы»

дневного и заочного отделения

Тольятти 2004

Куралесова Н.О. Разработка корпоративной информационной системы на основе объектно-ориентированного подхода. Учебное пособие. –Тольятти: Волжский университет им.В.Н.Татищева, 2004

Рецензент: к.т.н., доцент кафедры «Информатика и системы управления»

Трубачева С.И.

Рассмотрено и утверждено на заседании кафедры

«Промышленная информатика»

«___»_______________2004 года

Протокол № ____ от «____» __________ 2004 г.


Содержание

1. Разработка модели автоматизации системы банковского обслуживания

1.1. Анализ требований и предварительное проектирование

1.2. Построение объектной модели

1.2.1. Определение объектов и классов

1.2.2. Подготовка словаря данных

1.2.3. Определение зависимостей

1.2.4. Уточнение атрибутов

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

1.2.6. Усовершенствование модели

1.2.7. Определение подсистем

1.2.8. Интерфейсы и окружения

1.3. Динамическая модель системы или подсистемы

1.4. Функциональная модель подсистемы

1.4.1. Диаграммы потоков данных

1.4.2. Описание операций

1.4.3. Ограничения

2. Конструирование системы

2.1. Разработка архитектуры системы

2.1.1. Разбиение системы на модули

2.1.2. Выявление асинхронного параллелизма

2.1.3. Распределение модулей и подсистем по процессорам и задачам

2.1.4. Управление хранилищами данных

2.1.5. Реализация управления программным обеспечением

2.1.6. Пограничные ситуации

2.1.7. Архитектур прикладных систем

2.2. Разработка объектов

2.2.1. Совместное рассмотрение трех моделей

2.2.2. Разработка алгоритмов, реализующих полученные операции

2.2.3. Оптимизация разработки

2.2.4. Реализация управления

2.2.5. Уточнение наследования классов

2.2.6. Разработка зависимостей

3. Реализация объектно-ориентированного проекта

1. Разработка модели автоматизации системы банковского обслуживания

1.1. Анализ требований и предварительное проектирование

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

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

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

Рисунок 1.1 – Схема объектов автоматизации

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

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

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

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

1.2. Построение объектной модели

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

Для построения объектной модели рассматриваемой системы нам необходимо выполнить:

определение объектов и классов;

подготовка словаря данных;

определение зависимостей между объектами;

определение атрибутов объектов и связей;

организация и упрощение классов при использовании наследования;

дальнейшее исследование и усовершенствование модели.

1.2.1. Определение объектов и классов

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

БМ (банкомат)

Кассир

Программное обеспечение

Банк

Кассовый терминал

Система

Банковская_сеть

Квитанция

Проверка_безопасности

Данные_проводки

Клиент

Служба_ведения_записей

Данные_счета

Компьютер_банка

Счет

Деньги

Консорциум

Цена

Доступ

Пользователь

Центральный_компьютер

Карточка

Проводка

Исследуем этот список, исключая из него имена классов:

избыточные классы: т.к. клиент и пользователь означают одно и то же понятие; для банковской системы более естественно оставить класс клиент;

нерелевантные классы: таким классом является класс - цена (этот класс не имеет непосредственного отношения к работе банковской сети);