Файл: Моделирование предметной области «Учет продаж» с помощью UML (Основные понятия объектно-ориентированного подхода).pdf

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

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

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

Добавлен: 01.04.2023

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

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

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

ВВЕДЕНИЕ

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

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

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

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

Цель исследования: разработать автоматизированную информационную систему (АИС) предприятия для автоматизации отдела продаж.

Для достижения цели данного исследования поставлены следующие задачи:

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

Объектом исследования настоящей курсовой работы является объектно–ориентированная методология проектирования.

Предметом исследования настоящего исследования являются объектная модель предметной области «Учет продаж» и её основные свойства.

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

В процессе написания курсового проекта использовались следующие методы исследования:

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

1. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОЙ МЕТОДОЛОГИИ

Основные понятия объектно-ориентированного подхода

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

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

Важными понятиями программирования являются процедурно-ориентированное программирование и объектно-ориентированное программирование.

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

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

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

Между ООП и процедурно-ориентированным программированием существуют два важных различия:

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

Абстракция – это выделение существенных характеристик объекта, которые отличают его от всех других объектов, четко определяя его концептуальные границы.

Класс – это совокупность объектов, имеющих общие свойства и поведение.

Поведение – характеристика того, как один объект воздействует на другие объекты или изменяется сам под их воздействием. Поведение влияет на способ изменения состояний объекта.

В основе объектно-ориентированной технологии программирования лежат «три кита»: инкапсуляция, наследование и полиморфизм.

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

Наследование (inheritance) – это процесс, посредством которого один процесс может приобретать свойства другого.

Полиморфизм (polymorphism) – это свойство, которое позволяет одно и то же имя использовать для решения двух и более схожих, но технически разных задач. Целью полиморфизма является использование одного имени для задания общего класса действий.

Модульность – система состоит из независимых компонент – модулей, для которых определены программные интерфейсы, их взаимодействие.

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

Параллелизм – свойство нескольких абстракций одновременно находиться в активном состоянии, т.е. выполнять некоторые операции.

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

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

    1. Понятие объект

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

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


  1. методом – это функция или процедура, которая реализует возможные с объектом действия;
  2. событием – это средство взаимодействия объектов друг с другом. Объекты генерируют заданные события и выполняют действия в ответ на заданные события. События – это аналог сообщений, которые получают и отправляют объекты;
  3. состоянием – каждый объект всегда находится в определенном состоянии, которое характеризуется набором свойств объекта. Под воздействием событий объект переходит в другие состояния. При этом объект может сам генерировать события при переходе в другое состояние;
  4. свойством – признак, некоторое отдельное качество (параметр) объекта.

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

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

Средства реализации объектно-ориентированной технологии программирования

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

Любое программирование осуществляется по одному из четырех принципов:

  • принцип модульности
  • принцип «от общего к частному»
  • принцип пошаговости
  • принцип структурирования

Модульное программирование. Принцип модульности формулируется как требование разработки программы в виде совокупности модулей (функций). При этом разделение на модули должно носить не механический характер, а исходить из логики программы:

  1. размер модуля должен быть ограничен;
  2. модуль должен выполнять логически целостное и завершенное действие;
  3. модуль должен быть универсальным, то есть по возможности параметризованным: все изменяемые характеристики выполняемого действия должны передаваться через параметры;
  4. входные параметры и результат модуля желательно передавать не через глобальные переменные, а через формальные параметры и результат функции.

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


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

  • простой последовательности действий;
  • конструкции выбора или оператора if;
  • конструкции повторения или цикла.

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

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

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

Структурное программирование. Структурное программирование - модульное нисходящее пошаговое проектирование алгоритма и структур данных.

Объектно-ориентированный подход к программированию включает в себя 3 основные компоненты:

  • объектно-ориентированный анализ (ООА),
  • объектно-ориентированное проектирование (ООД),
  • объектно-ориентированное программирование (ООП).

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

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

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