Файл: «Основные понятия объектно-ориентированного программирования».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 01.04.2023

Просмотров: 72

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

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

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

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

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

1. Аналитическая часть

1.1 Сущность объектно-ориентированного подхода к проектированию информационных систем

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

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


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

С объектно-ориентированной архитектурой также тесно связаны объектно-ориентированные операционные системы. Однако наиболее значительный вклад в объектный подход был внесен объектными и объектно-ориентированными языками программирования: Simula, Smalltalk, C++, Object Pascal.

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

Концептуальной основой объектно-ориентированного подхода является объектная модель. Основными се элементами являются:

  • абстрагирование (abstraction);
  • инкапсуляция (encapsulation);
  • модульность (modularity);
  • иерархия (hierarchy).

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

  • типизация (typing),
  • параллелизм (concurrency),
  • устойчивость (persistence).

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

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

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


1.2 Преимущества и недостатки объектно-ориентированного подхода к проектированию информационных систем

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

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

Достоинства ООП:

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

Недостатки ООП обуславливаются следующим:

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

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


1.3 Обзор программных продуктов для проектирования информационной системы средствами объектно-ориентированного проектирования

Анализ требований и сравнения программных аналогов представлен в таблице 1.

Таблица 1. Сравнение программных аналогов с учетом требований к проектируемой ЭИС

Требования к проектируемой системе

SAP R/3 (SAP ERP)

Oracle E-Business Suite

- статистический расчет потребности в продукции;

+

+

- статистический расчет производства продукции и учет созданной продукции;

+

+

- статистический учет реализованной продукции;

+

+

В вышеперечисленных программных продуктах присутствует избыточный функционал, который компании ОАО «УМПО» не нужен в силу специфики их бизнес-процессов.

Поэтому, например компании совсем не подойдут типовые продукты компании «SAP» или «Oracle» которые являются более типизированными и требуют изменения бизнеса компании-заказчика под свое ПО.

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

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

При выборе системы программирования были рассмотрены такие среды разработки приложений, как: «MS Visual FoxPro v.9.0»; «Microsoft Access v.11»; «1С: Предприятие 8.3».

MS Visual Fox Pro v.9.0

Достоинства данной среды разработки приложений следующие:

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

К недостаткам можно отнести следующее:

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

Microsoft Access v.11

Microsoft Access является полнофункциональной системой управления реляционной базой данных (СУРБД). Она обеспечивает все возможности определения, обработки и управления данными для работы с большими объемами информации.


Для обработки таблиц Access использует мощный язык баз данных – SQL (Structured Query Language – язык структурированных запросов). С помощью SQL можно получить набор данных, который необходим для решения конкретной задачи.

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

Вероятно, наиболее мощным качеством Access является возможность обработки данных из электронных таблиц, текстовых файлов, файлов dBase, Paradox и FoxPro, а также любых баз данных SQL, поддерживающих стандарт ODBC (Open Data Base Connectivity). Это означает, что Access можно использовать для создания Windows-приложений, способных обрабатывать данные как сетевого сервера SQL Server, так и базы данных, размещенной на головном компьютере.

Характеристики языков программирования представлены в таблице 2.

Таблица 2. Сравнительная характеристика языков программирования

Visual Foxpro

Access (VisualBasic)

Принцип обработки кода

Интерпретатор (псевдокомпилятор)

Интерпретатор (псевдокомпилятор)

Язык

DBASE c

с объектами

Basic c Объектами

Система

Закрытая

Закрытая

Создание пользовательских мастеров

-

-

Динамическое создание форм ввода, обработки сообщений

+

+

Модель создания приложения

-

-

Технология

Построители экранов, меню, отчетов (drag-and-drop), классов

Построители экранов, меню, отчетов (drag-and-drop), классов

Вывод из баз данных на печать

Встроенный Report

Встроенный Report

Обработка исключений

Процедура

Процедура

Поддержка CASE-средств

-

+

«1С: Предприятие поддерживает 5 видов СУБД:

  • IBM DB2
  • MS SQL
  • Oracle BD
  • PostgreSQL

Характеристики СУБД представлены в таблице 3.

Таблица 3. Сравнительная характеристика СУБД Microsoft SQL Server, DB2 и Oracle

Признак сравнения

SQL Server

DB2

Oracle

Разработчик

Microsoft

IBM

Oracle Corporation

Язык запросов

Transact-SQL (T-SQL)

Декларативный SQL (SQL DB2)

ANSI SQL и PL/SQL

Протокол передачи данных

Tabular Data Stream (TDS)

TCP/IP, SNA/APPC, NETBIOS, IPX/SPX

TCP/IP, SNA/APPC, NETBIOS, IPX/SPX

Интерфейс взаимодействия приложений с СУБД

Open Database Connectivity (ODBC)

JDBC, SQLJ, ODBS, OLE DB

JDBC, SQLJ, ODBS, OLE DB, VI SAN

Преимущества

поддерживает зеркалирование и кластеризацию БД;

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

включает язык для реализации хранимых процедур и функций;

отличается высокой производительностью

мощный многофазовый оптимизатор SQL DB2 строит эффективный план выполнения запроса;

использование статистического распределения данных в таблицах;

поддержка XML документов;

поддержка реляционных и комплексных данных с помощью объектных расширений;

возможность работы на мультипроцессорных платформах;

поддержка кластеров;

64-битная архитектура памяти;

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

поддержка XML в хранимых процедурах;

отправка SQL-запросов к БД с применением URL-адресов;

средства объектно-ориентированного конструирования;

система оптимизации одновременного доступа;

высокая надежность;

возможность разбиения крупных баз данных на разделы;

наличие универсальных средств защиты информации;

эффективные методы

Преимущества

распараллеливание запросов;

наличие средств для гетерогенного администрирования и обработки данных;

поддержку выполнения распределенных транзакций

максимального повышения скорости обработки запросов;

распараллеливание операций в запросе;

широкий спектр средств разработки, мониторинга и администрирования;

связанные базы данных OLAP;

поддержка большого объема памяти и симметричной многопроцессорной обработки;

поддержка службы единого каталога;

инструментальные средства разработки схем, генерации запросов и кода

Недостатки

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

неполная совместимость T-SQL с ANSI SQL;

проблемы недостаточности программных средств;

зависимость от операционной среды (Windows)

в языке SQL DB2 практически отсутствуют подсказки оптимизатору;

плохо развит язык хранимых процедур;

не имеет собственных средств аутентификации

Для реализации возможностей СУБД Oracle требуется большой объем внедрения, причем специалисты по Oracle одни из самых дорогих.

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