Файл: Моделирование предметной области. Учет предоставленных услуг салоном красоты с помощью UML.pdf

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

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

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

Добавлен: 05.04.2023

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

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

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

ВВЕДЕНИЕ

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

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

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

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

Индустрия красоты вошла прочно в нашу жизнь.

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

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

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

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


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

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

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

Целью данного исследования, является изучение объектно–ориентированной методологии и технологии программирования на примере языка Object Pascal, методов и инструментов построения объектных моделей предметных областей, применение полученных знаний для построения объектной модели предметной области «Учет предоставленных услуг салоном красоты».

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

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

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

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

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


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

предметный язык программирование модель

«Термины «объектно-» и «ориентированный» в современном смысле этих слов появились в MIT в конце 1950 начале 1960 годов. В среде специалистов по искусственному интеллекту термин «объект» мог относиться к идентифицированным элементам (атомы Lisp) со свойствами (атрибутами). Алан Кэй позже писал, что понимание внутреннего устройства Лиспа оказало серьезное влияние на его мышление в 1966 г. Другим ранним примером ООП в MIT был Sketchpad созданный Иваном Сазерлендом в 1960-61. В глоссарии подготовленного в 1963 г. технического отчета, основанного на его диссертации о Sketchpad, Сазерленд определяет понятия «объект» и «экземпляр» с концепцией классов на основе «мастера» или «определения», хотя все эти термины относились к графическому представлению объектов.

В ранней MIT-версии ALGOL AED-0 структуры данных («плексы» на диалекте Алгола) напрямую были связаны с процедурами, которые впоследствии были названы сообщениями, методами или функциями-членами.

Объекты, как формализованный концепт появились в программировании в 1960-х в Simula 67, модернизированной версии Simula I, языка программирования, ориентированного на дискретно-событийное моделирование. Авторы Simula — Оле-Йохан Даль и Кристен Нюгорд из Норвежского компьютерного центра в Осло. Simula разрабатывалась под влиянием SIMSCRIPT и предложенной Чарльзом Хоаром концепцией записей-классов. Simula включала в себя понятие классов и экземпляров (или объектов), а также подклассов, виртуальных методов, сопрограмм и дискретно-событийное моделирование как часть собственной парадигмы программирования. В языке использовался автоматический сборщик мусора, который был изобретен ранее для функционального языка Lisp. Simula использовалась тогда преимущественно для физического моделирования. Идеи Simula оказали серьезное влияние на более поздние языки, такие как Smalltalk, варианты Lisp (CLOS), Object Pascal, и C++.

Язык Smalltalk, который был изобретен в компании Xerox PARC Аланом Кэем (Alan Kay) и некоторыми другими учеными, фактически навязывал использование «объектов» и «сообщений» как базиса для вычислений. Создателей Smalltalk вдохновляли некоторые идеи Simula, но Smalltalk разрабатывался как полностью динамичная система, в которой классы могут создаваться и изменяться динамически, а не только статически как в Simula. Smalltalk и ООП с его помощью были представлены широкой аудитории в журнале Byte magazine в августе 1981.


В 1970-х Smalltalk Кэя сподвиг сообщество Lisp внедрить в язык объектно-ориентированные техники, которые были представлены разработчикам с помощью Lisp машины.

Эксперименты с различными расширениями Lisp в конечном итоге привели к созданию Common Lisp Object System (CLOS, части первого стандартизованного объектно-ориентированного языка, ANSI Common Lisp), который органично включал в себя как функциональное, так и объектно-ориентированное программирование и позволял расширять себя с помощью протокола Meta-object protocol. В 1980 было несколько попыток дизайна архитектур процессоров, которые включали бы в себя аппаратную поддержку работы с объектами в памяти, но все они были безуспешны. В качестве примеров можно привести Intel iAPX 432 и Linn Smart Rekursiv.

Объектно-ориентированное программирование развилось в доминирующую методологию программирования в начале и середине 1990 годов, когда стали широко доступны поддерживающие ее языки программирования, такие как Visual FoxPro 3.0, C++, и Delphi. Доминирование этой системы поддерживалось ростом популярности графических интерфейсов пользователя, которые основывались на техниках ООП. Пример тесной связи между динамической библиотекой GUI и объектно-ориентированного языка программирования можно найти посмотрев на фреймворк Cocoa на Mac OS X, который был написан на Objective-C, объектно-ориентированом расширении к С, основанном на Smalltalk с поддержкой динамических сообщений. Инструментарии ООП повлияли на популярность событийно-ориентированного программирования (хотя, эта концепция не ограничивается одним ООП). Некоторые даже думали, что кажущаяся или реальная связь с графическими интерфейсами – это то, что вынесло ООП на передний план технологий.

В ETH Zürich, Никлаус Вирт и его коллеги тоже исследовали такие предметы, как абстрация данных и модульное программирование, хотя эти подходы широко использовались и в 60-х и ранее. Modula-2 вышедшая в 1978 включала оба эти подхода, а ее последователь Oberon имел собственный подход к объктно-ориентированности, классам и прочему, непохожий на подход Smalltalk и совсем не похожий на подход C++.

Возможности ООП добавлялись во многие языки того времени, включая Ada, BASIC, Fortran, Pascal и другие. Их добавление в языки, изначально не разрабатывавшиеся для поддержки ООП часто приводило к проблемам с совместимостью и поддержкой кода.

Позднее стали появляться языки, поддерживающие как объектно-ориентированный подход, так и процедурный вроде Python и Ruby. Пожалуй, самыми коммерчески успешными объектно-ориентированными языками можно назвать Visual Basic.NET, C# и Java. И .NET и Java демонстрируют превосходство ООП.»


«SIMULA I (1962-65) и Simula 67 (1967) — два первых объектно-ориентированных языка программирования. Simula 67 включала в себя большую часть концепций объектно-ориентированного программирования: классы и объекты, подклассы (наследование), виртуальные функции, безопасные ссылки и механизмы, позволяющие внести в программу коллекцию программных структур, описанных общим заголовком класса (префиксные блоки).

Алан Кэй из Xerox PARC использовал Simula как платформу для его разработки Smalltalk (первых версий языка в 1970-х), расширяя объектно-ориентированное программирование с помощью интеграции пользовательского интерфейса и интерактивного исполнения. Бьерн Страусструпп начал разработку C++ (в 1980-х) by привнеся основные концепции Simula в С.»

Получается, что первым ООП языком была Simula. Но первым «чистым» ООП языком был именно Smalltalk. «Чистым» иногда называют ООП язык, все типы которого являются или могут быть прозрачно представленными классами.

Объектно-ориентированное программирование – парадигма, научный подход к программированию, который разрабатывался не в вакууме, а большой группой ученых. Вклад Кэя в ООП неоценим, но говорить, что ООП – целиком и полностью его изобретение будет несправедливо по отношению ко многим другим ученым, работавшим как вместе с ним, так и отдельно. Кэй действительно когда-то говорил, “I didn't like the way Simula I or Simula 67 did inheritance (though I thought Nygaard and Dahl were just tremendous thinkers and designers). So I decided to leave out inheritance as a built-in feature until I understood it better.” Как вы понимаете, монополия на изобретение ООП им не заявлялась.

Говорить, что в ООП нет наследования (и всяких прочих современных штучек) и что те, кто его туда привнес извратили смысл и суть ООП, это все равно, что говорить, что геометрия Лобачевского извратила геометрию, изобретенную Евклидом и ее срочно нужно переименовать в «шарометрию» или «гиперболометрию», чтобы грязные руки неофитов не смели касаться святого. Геометрия Римана – вообще тогда от сатаны, а бозонную струнную теорию нельзя преподавать в университетах потому, что это не то, что описывал Габриэле Венециано и его коллеги.

1.2 Язык UML и его специфика

UML – это ун’ифицированный графический язык моделирован’ия для описан’ия, визуализации, п’роектирован’ия и документирован’ия ОО систем. UML п’ризван поддерживат’ь п’роцесс моделирован’ия ПС на основе ОО подхода, орган’изовыват’ь взаимосвяз’ь концептуал’ьных и п’рограммных понятий, отражат’ь п’роблемы масштабирован’ия сложных систем. Модели на UML испол’ьзуются на всех этапах жизненного цикла ПС, начиная с бизнес-анализа и заканчивая соп’ровожден’ием системы. Разные орган’изации могут п’рименят’ь UML по своему усмотрен’ию в зависимости от своих п’роблемных областей и испол’ьзуемых технологий.