Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Декомпозиция информационных систем).pdf
Добавлен: 29.04.2023
Просмотров: 479
Скачиваний: 1
ВВЕДЕНИЕ
Рост спроса на программные системы в наше время является следствием того, что по мере удешевления, повышения надежности и увеличения объема производства компьютеров автоматизация труда человека с помощью компьютера становится все более выгодной. Из года в год возрастает сложность и разнообразие систем, получивших в международной научно-технической практике название систем, интенсивно использующих программное обеспечение (Software Intensive Systems, SIS). Для разработок SIS типичны крупномасштабные проекты: десятки или сотни разработчиков, месяцы или годы разработки, огромные денежные средства.
Производство программного обеспечения в наше время является крупнейшей отраслью мировой экономики, в которой заняты миллионы специалистов, непосредственно производящих программные продукты или участвующие в этом процессе.
Накопленный к настоящему времени опыт создания программного обеспечения информационных систем показывает, что это сложная и трудоемкая работа, связанная с масштабами разработки, изменяющимися условиями внешних и внутренних факторов предметной области разработки, требующая высокой квалификации участвующих в ней специалистов.
Целью проектирования информационных систем (ИС) является обеспечение эффективного функционирования систем, а также взаимодействия пользователей и разработчиков ИС. Именно качественное проектирование обеспечивает создание такой системы, которая способна функционировать при постоянном совершенствовании ее технических, программных, информационных составляющих и расширять спектр реализуемых управленческих функций.
При проектировании информационных систем используется 2 подхода: функционально-модульный, являющийся частью более общего структурного подхода и объектно-ориентированный, использующий объектную декомпозицию. При этом структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами.
Актуальность исследования заключается в том, что из существующих подходов к проектированию информационных систем объектно-ориентированный в настоящее время считается наиболее эффективным т.к. оперирует абстракциями реальных объектов и операций. Т.е. при построении модели имеющейся предметной области, выделении бизнес-процессов и пр. строится и модель будущей информационной системы (ИС). К тому же одной из важных особенностей объектно-ориентированного подхода является унифицированность процесса разработки ИС, неотъемлемой частью которого является унифицированный язык моделирования UML.
Данная особенность обеспечивает упорядоченный подход к распределению задач и обязанностей при проектировании ИС, охватывающий весь ее жизненный цикл. Именно поэтому основы объектно-ориентированного подхода, а также принципы унифицированного моделирования широко используются при проектировании автоматизированных информационных систем.
Объектом исследования данной работы является объектно-ориентированный подход к проектированию информационных систем.
Предметом исследования является информационная система.
Цель данной работы является обзор и анализ основных принципов и особенностей объектно-ориентированного подхода, а также его неотъемлемого инструмента унифицированного языка моделирования (UML).
Задачи работы:
1. обзор основных понятий и концепций объектно-ориентированного подхода.
2. Анализ унифицированного процесса разработки информационных систем.
3. Обзор основных структур унифицированного языка моделирования.
4. Обзор основных понятий унифицированного языка моделирования
Данная тематика исследовалась в работах авторов: Баркера Р., Боггса У., Буча Г., Вендрова А.М.
Работа состоит из введения, двух глав и заключения. Введение описывает актуальность выбранной темы, выделяет цель и задачи написания выпускной квалификационной работы.
Глава первая «Теоретические основы объектно-ориентированного подхода» описывает теоретическую базу, на которой основывается объектно-ориентированный подход, рассматривает сущность данного явления. Также первая глава подробно анализирует цели и задачи, процесс реализации объектно-ориентированного подхода.
Вторая глава «Практическая реализация объектно-процессного подхода» рассматривает реализацию объектно-процессного метода на практике.
В главе проанализировано несколько объектов, на практике к которым применяется объектно-процессный метод.
Заключение работы содержит в себе выводы по всей выпускной квалификационной работе.
Глава 1 Теоретические основы объектно-ориентированного подхода
1.1 Декомпозиция информационных систем
Декомпозиция ИС на основе объектно-ориентированного (ОО) подхода обладает, в отличие от функционально-ориентированного подхода, более эффективным поведением информационной системы.
Система является более динамической, а ее предметная область анализируется в качестве объединения объектов, которые могут быть взаимосвязаны между собой сквозь временные рамки.
Сам процесс обработки информации представляет собой связанную последовательность объектов и их взаимозависимости. Отдельно взятая операция по обработке информации является итогом одного взаимоотношения связанных объектов.
Итогом реализации объектно-ориентированного подхода видится формирование большого количества объектных групп, с определенными способами обработки атрибутов.
В случае, если при функциональном подходе информационные и операционные функции и модели формируются автономно друг от друга, лишь изредка соприкасаясь, то при объектно-ориентированном подходе необходимо разрабатывать модели и функции системы одновременно и согласованно друг с другом[1].
Так, совокупность объектно-ориентированных моделей постепенно уточняется, следуя от модели общего представления функциональности информационных систем к модели динамического взаимодействия объектов, на базе которой можно сформировать объектные классы для определенной программно-технической сферы.
Объектно-ориентированный подход, по сути своей, состоит из: объектов; классов; инкапсуляций; наследования и полиморфизма[1].
Так, объект — это предмет, осязаемая сущность или абстракция. Любой объект входит в группу однотипных объектов. Для группы характерны одинаковые свойства объектов:
1. совокупность информации, которая обуславливает атрибуты класса и сопутствующих объектов.
2. Сочетание условий — процессов, которые формируют связь объектов данной группы и внешними объектами.
Инкапсуляция — преднамеренное сокрытие сведений. При таком виде программировании ограничен доступ к атрибутам объектов, за исключением доступа посредством его методов. Внутренняя схема объекта будет сокрыта от внешних воздействий. Объект представляется автономным предметом, который органичен методами[2].
Для того, чтобы объект смог реализовать какую-либо функцию, он должен получить информацию из внешнего источника, которая станет инициатором для реализации метода.
Инкапсуляция способна корректировать влияния на группы объектов без возможных сбоев системы.
Следующая составляющая – наследование — представляет собой механизм формирования классов новые классы, которые формируются, следуя принципу «от общего к частному». Наследование может позволить актуальным классам при сохранении все классы-предшественники, а также включить свои уникальные особенности[9, 201].
Если учитывать программный взгляд на систему, то можно говорить о том, что вновь созданный класс должен состоять из кода и информации, требуемой для новых изменяемых методов.
Наследование позволяет формировать систему классов и может быть результативным средством для того, чтобы вносить изменения и иные дополнения в информационные системы.
Следующая составляющая – полиморфизм. Он включает в себя возможность любого объекта выбрать метод, на базе тех данных, которые могут применяться в сообщении.
Так, любой объект будет реагировать на одно и то же сообщение неодинаково и непредсказуемо.
Полиморфизм может сделать проще начальные тексты программ исходя из позиции снижения количества используемых методов.
Таким образом, объектно-ориентированная декомпозиция представляет собой разложение системы на классы и объекты. Вместе с этим, структурированный смысл системы заключается в ранжировании классов, а реализуется она путем взаимосвязи и взаимозависимости ее объектов.
Такой путь описания сложных систем более простой и соответствующий, нежели тот, который используется в функциональных подходах.
Объектное моделирование реализуется посредством унифицированного языка моделирования Unified Modeling Language (UML), который был разработан ведущими поставщиками ПО Object Management Group (OMG)[2].
UML, по большому счету, представляет собой стандарт для объектной методологии. Язык UML применяется организациями в условиях CASE-технологий, например: Rational Rose, Natural Engineering Workbench и т.д.
1.2 CASE-технологии в информационных системах
В современном мире нет четкого определения понятия CASE (Computer-Aided Software/System Engineering). Суть его состоит в списке задач и функций, которые могут быть решены с применением CASE, а также в системе реализуемых методов и принципов. Так, CASE-технология представляет собой взаимосвязь методом анализа, проектирования, разработки и формирования сложных информационных систем, которая базируется на структуре взаимосвязанных автоматизированных средств.
CASE — в общем виде представляет собой механизм, благодаря которому аналитики, разработчики и программисты могут разрабатывать и проектировать информационные системы, используя платформу вместо графических средств передачи данных и информации[7, 192].
С момента основания CASE-технологии формировались для того, чтобы переступить запреты использования системной методологии проектирования посредством ее автоматизирования и вовлечения средств поддержки.
С учетом этого, CASE не являются автономными технологиями, они направлены на реализацию результативного функционирования текущих методов, а иногда и четкую способность реализации.
Большая часть CASE-систем направлена на информатизацию проектирования программного обеспечения и базируется на принципах структурного и объектно-ориентированного анализов. Такие методологии могут быть реализованы посредством диаграмм и текстов, которые будут описывать различные требования системы, обусловят связи моделей структуры, объяснят работу системы информационных программ.
Подобные методы позволят однозначно и конкретно описать создаваемую систему, начиная с ее общей информации, затем последовательно уточняя и создавая ее ранжированную схему с некоторыми уровнями[11, 30].
CASE может создать корректные товары и сформировать систему их формирования. Главная задача CASE заключается в разделении проектирования программного обеспечения от задач по написанию кодов и иных стадий формирования процесса, а также в том, чтобы сокрыть от разработчиков все нюансы формирования и работы программного обеспечения.
Так, чем большее количество деятельности интегрируется в проектирование из кодирования, тем результативнее будет исход. При использовании CASE-технологий изменяются все этапы жизненного цикла программной системы, при этом наибольшие изменения касаются этапов анализа и проектирования[18, 201].
Наибольшая потребность в использовании CASE испытывается на начальных этапах разработки, а именно на этапах анализа и спецификации требований к ИС. Цена ошибок, допущенных на начальных этапах, на несколько порядков превышает цену ошибок, сделанных на более поздних этапах разработки.
Появлению CASE способствовали:
1. достижения в области методологии программирования, программирование приобрело черты формализованного процесса, а не искусства;
2. подготовка аналитиков и программистов, восприимчивых к концепциям модульного, структурного и объектно-ориентированного программирования;
3. широкое внедрение и постоянный рост производительности ПК, позволяющий эффективно использовать графические средства;
4. внедрение сетевых технологий, позволивших объединить усилия отдельных исполнителей в единый процесс проектирования путем использования разделяемой (общей) базы данных, содержащей необходимую информацию о проекте[18, 230].
Преимущества CASE по сравнению с традиционной технологией оригинального проектирования: