Файл: Анализ и оценка средств реализации объектно-ориентированного подхода к проектированию экономической информационной системы».pdf
Добавлен: 02.04.2023
Просмотров: 319
Скачиваний: 1
Введение
Ещё совсем недавно, никто и подумать не мог, что наступит то время, когда компьютер будет решать столько задач, что станет важной частью жизни человека, и будет приносить пользу в огромных количествах. Но сам по себе компьютер ничто. Для того что бы он был полезен, нужно поставить перед ним задачу, и что немаловажно сделать это нужно правильно. В этом нам помогают различные способы по проектированию программного обеспечения (ПО). В начале 70-х гг. 20 века был отмечен кризис программирования (software crisis). Выражалось тем, что масштабные проекты стали выполнятся с существенными задержками или с перерасходом средств на разработку. При этом достаточно большое количество программ не обладали требуемыми функциональными возможностями, в следствие чего их качество не устраивало потребителей. Это стимулировало проведение ведущими зарубежными аналитиками множества аналитических исследований, но результаты их были не слишком обнадеживающие. В заданный срок на тот момент были завершены только 16% проектов. Из остальных проектов примерно 53% сданы заказчику с существенным опозданием или разработчике превысили запланированные расходы. Чаще всего причинами неудач являлись нечеткая или неполная формулировка требований к ПО, неудовлетворительное планирование, недостаточное вовлечение пользователей в работу над проектом и т.п. Исходя из этого потребовался существенно новый подход к проектированию ПО. Этим подходом стал объектно–ориентированный, который в короткие сроки завоевал огромную популярность. Объектно-ориентрованный подход полностью устраняет те недостатки, с которыми ранее столкнулись разработчики ПО. Вот почему, целью курсовой работы является раскрытие современных методов и средств проектирования, в частности в объектно-ориентированном подходе к проектированию ПО.
Глава 1: Структура объектно-ориентированного подхода
Структурный подход к разработке является классическим и предполагает последовательную реализацию следующих этапов разработки:
· анализа предметной области,
· проектирования,
· создания программных модулей,
· объединения модулей в единую систему,
· тестирования,
· внедрения.
Сущность структурного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые, в свою очередь, делятся на подфункции, подразделяемые на задачи и т. д. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.
Однако эта технология не лишена некоторых недостатков. В соответствии с классическим подходом основное внимание должно уделяться информации, с которой работает система. Разработчик спрашивает пользователей, какая информация им нужна, проектирует БД для хранения этой информации, создает экранные формы для ее вывода, встраивает возможность распечатывать отчеты. Иначе говоря, разработчик «фокусируется» на самой информации, а тому, что с ней делать, т. е. поведению системы уделяется меньше внимания. Такой подход называется «ориентированным на данные (data centric)», он применялся при разработке тысяч различных систем много лет. Он неоценим при проектировании БД и систем обработки информации, но при разработке бизнес-приложений возникают проблемы, главная из которых состоит в том, что требования к системе могут меняться со временем. Система, ориентированная на данные легко приспосабливается к изменениям БД, однако изменить деловые правила или поведение такой системы значительно труднее.
Это обусловлено тем, что на основе информации о структуре БД генерируется клиентское приложение. Поскольку БД должна быть обязательно нормализована, данные хранятся в таблицах БД не всегда в той же форме, в которой они должны появляться на экранных формах. Другими словами, если код приложения генерируется не на основе описания предметной области, невозможно построить эффективное приложение со сложной бизнес-логикой.
Вторым недостатком структурного подхода является большая вероятность обнаружения ошибок на последнем этапе разработки, например этапе тестирования. В случае обнаружения ошибки необходимо вернуться на тот этап, где она допущена, и заново пройти все последующие этапы.
Для решения этой проблемы и были созданы объектно-ориентированныеметоды разработки ИС, при применении которых внимание уделяется как информации, так и поведению, что позволяет создавать гибкие системы, допускающие изменение их поведения и/или содержащейся в них информации. Эти методы основаны на использовании объектно-ориентированного программирования(ООП).
Объектно-ориентированное программирование– это новая методология, созданная во второй половине 1980-х гг. Она позволяет решить проблему появления новых акцентов в программировании, обусловленных распространением персональных компьютеров в мелком и среднем бизнесе, в котором вычислительные и расчетно-алгоритмические задачи уступили первое место задачам обработки и манипулирования данными. ООП предполагает представление программы как набора взаимодействующих объектов,наделенных определенным поведением и реакцией на изменение внешних условий. В то время как классический процедурно-ориентированный стиль программирования направлен на представление программы в виде множества поочередно вызываемых процедур.
Объектно-ориентированные методы разработки основаны на объектно-ориентированной концепции или, как часто говорят, парадигме. Парадигма – теория (или модель, тип постановки проблемы), принятая в качестве образца решения исследовательских задач. Объектно-ориентированная парадигма – способ описания приложений, при котором приложение предварительно делится на множество маленьких кусочков или объектов относительно независимых друг от друга. Готовое приложение можно затем создать, сложив эти объекты вместе. Преимуществом такого решения является возможность разработки компонентов только один раз с последующим многократным их использованием для создания абсолютно различных по назначению систем.
Снижение риска в объектно-ориентированной технологии достигается за счет реализации технологии итерационной разработки, когда используется спиральная модель жизненного цикла разработки. Разработка состоит из ряда этапов (итераций), которые в дальнейшем приводят к созданию информационной системы. Каждая итерация может приводить к созданию фрагмента или новой версии и включает все необходимые этапы: этапы выработки требований, анализа, проектирования, реализации и тестирования. Поскольку тестирование проводится на каждой итерации, риск снижается уже на начальных этапах жизненного цикла.
Указанные преимущества могут быть реализованы только при правильном проектировании систем в соответствии с принципами инкапсуляции, наследования и полиформизма.
Инкапсуляция – это, во-первых, процесс объединения в один объект данных и действий (операций), осуществляемых над ними, или, иначе говоря, поведения системы в процессе обработки этих данных. Во-вторых, инкапсуляция предполагает введение ограничений на последствия изменений, вносимых в систему. Эти ограничения вводятся за счет скрытия внутренней информации, когда доступ к объекту возможен только опосредованно – через его операции (характеризующие взаимодействие объекта с внешней средой) и свойства (атрибуты). Операции и свойства объекта представляют собой интерфейсобъекта.
Наследование – это механизм, позволяющий создавать новые объекты, основываясь на уже существующих объектах. Наследование позволяет выделить свойства, операции и события одного объекта и приписать их другому объекту, иногда с модификацией. Порождаемый объект-потомок (child) наследует свойства порождающего, родительского объекта (parent). Например: если «Автомобиль» –некий родительский объект, то «Легковой автомобиль» –объект-потомок, которому присущи все свойства объекта «Автомобиль».
Полиформизм – это возможность порождаемых объектов, создаваемых на основе родительских объектов, изменять свою реакцию на одни и те же воздействия при различных внешних условиях. Иными словами, полиформизм – это способность объектов выбирать операцию на основе данных, принимаемых в сообщении из внешнего мира или от другого объекта.
Полиформизм можно также определить как свойство некоторых объектов принимать различные внешние формы в зависимости от обстоятельств, т. е. действия, выполняемые одноименными методами, могут отличаться в зависимости от того, к какому классу относится тот или иной метод. Например, операция «Выключить» имеет разный смысл и результат, будучи применена к разным классам – «Автомобилю», «Свету в комнате» или «Компьютеру».
Фундаментальным понятием ООП является Объект, представляющий собой некую сущность реального мира или концептуальную сущность с четко определенными границами и значением для системы. Объект может быть чем-то конкретным, например студент Иванов или кассовый аппарат № 4, или концептуальным, например банковская операция, торговый заказ, зачетная сессия или ставка прибыли.
Каждый объект имеет три характеристики: состояние, поведение и индивидуальность.
Состояние – одно из условий, в котором объект может находиться, меняется во времени и определяется атрибутами и отношениями между объектами.
Поведение определяет, как объект реагирует на запросы других объектов и что может делать сам объект. Поведение реализуется с помощью наборов операций для объекта. В системе регистрации успеваемости объект Студенты группы № 1 может иметь операции перевести на следующий курс или направить на экзамен.
Индивидуальность означает, что каждый объект уникален, даже если его состояние аналогично состоянию другого объекта. Например, студент Иванов и студент Петров – два объекта в системе регистрации успеваемости. Хотя они оба являются студентами группы № 1, каждый из них уникален.
Класс – фундаментальное понятие ООП, представляющее собой описание группы объектовс общими свойствами(атрибутами), поведением(операциями), определяющим взаимодействие объектов с внешней средой, а также отношениямис другими объектами и семантикой. Т. о. класс – шаблон для создания объекта. Каждый объект является экземпляром конкретного класса и не может быть экземпляром нескольких классов. Например, класс Студенты группы № 1 может определяться следующими характеристиками:
· атрибуты – время экзамена, место проведения экзамена;
· операции – получить время экзамена, получить аудиторию для проведения экзамена, сдавать экзамен.
Студент Петров и студент Иванов – это объекты, принадлежащие классу Студенты группы № 1. Каждый из них имеет значения атрибутов и доступ к операциям, определенным классом Студенты группы № 1.
В соответствии с традиционным подходом данные располагаются в базе данных, а поведением занимается собственно приложение. Объектно-ориентированный подход предполагает объединение некоторого количества данных и поведения, обрабатывающего эти данные. Мы берем немного данных и немного поведения, а затем инкапсулируем все это в некоторую структуру, называемую классом.
1.1 Подходы к проектированию информационных систем
Важнейшим фактором успешной деятельности предприятия является умение его руководства чувствовать рынок и ориентироваться на него. Перед любой компанией стоят две основные задачи: уметь заботиться о себе и видеть окружающую действительность. “Заботиться о себе” — значит наводить порядок в технологиях деятельности, процедурах документооборота, организационно-штатной структуре. Одним из механизмов решения задачи наведения порядка является постановка на предприятии методологии управленческого учета, применение которого даст ответы на вопросы: “что”, “где”, “когда”, “как”, “почему”, “сколько”, “в чем причина” и т.д. Наведение порядка на предприятии приведет к повышению внутренней эффективности предприятия. Однако успешная внутренняя жизнь предприятия — это необходимое, но не достаточное условие выживания, а тем более для занятия ведущих позиций на рынке. Чтобы повысить внешнюю эффективность, следует адаптироваться к требованиям окружающего мира, потребностям рынка, научиться управлять поставщиками и заказчиками. Возможность правильно и своевременно реагировать на внешнюю среду позволяет стратегически мыслить.
В последнее время отчетливо проявляется тенденция перехода от детального управления внутренней деятельностью к управлению заказчиками и поставщиками. Конкурентоспособность компании все больше зависит от способности создавать и углублять взаимоотношения с другими компаниями (партнерами, конкурентами, заказчиками или поставщиками). Причинами этого являются:
расширение экономического пространства, на котором функционируют предприятия;
появление нового стратегического ресурса — информации;