Меню Услуги

Автоматизированная система подбора рецептов с учетом календаря православных постов


Страница:   1   2   3   4


Содержание

  • ВВЕДЕНИЕ
  • 1.1 Характеристика объекта проектирования
  • 1.2 Принципы функционирования системы на базе ПК
  • 1.3 Обзор существующих решений
  • 2.1 Математическое моделирование системных элементов
  • 2.2 Постановка задачи
  • 2.3 Алгоритм поиска рецептов по имеющимся у пользователя в наличии ингредиентам
  • 2.4 Формирование отчетов
  • 3.1 Решения по аппаратно-программному обеспечению
  • 3.2 Концептуальный уровень проектирования
  • 3.3 Логический уровень проектирования
  • 3.4 Физический уровень проектирования
  • 3.5 IDEF0-схема
  • 3.6 Декомпозиция «Как есть»
  • 3.7 Декомпозиция «Как должно быть»
  • 3.8 Структурная схема
  • 3.9 Схема движения данных
  • 3.10 Схема работы системы
  • 4.1 Характеристика программного продукта
  • 4.2 Планирование научно-исследовательской работы
  • 4.3 Нормирование трудоёмкости научно-исследовательской работы
  • 4.4 Расчет сметной стоимости на разработку программного продукта
  • 4.5 Расчёт себестоимости и цены программного продукта
  • 5.1 Анализ опасных и вредных факторов возникающих при работе с компьютером
  • 5.2 Мероприятия по предотвращению и уменьшению воздействия вредных факторов
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ЛИТЕРАТУРЫ

ВВЕДЕНИЕ

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

На земном шаре проживает более 6 миллиардов человек, и все они отличаются друг от друга не только языком, цветом кожи, национальностью, но и вероисповеданием. Слово религия происходит от латинского геligio, что означает «набожность», «святыня», «благочестие».

Определений религии существует более 200, из которых удачным можно назвать данное американским исследователем Б. Иэрхартом: «Религия подобна времени; все чувствуют, что это такое, но не так-то легко ухватить его суть и дать ему точное определение».

Существование религии невозможно без практики, основным и обязательным элементом которой является культ (от латинского — уход, почитание). Вопросы питания в большей или меньшей степени как элементы культа присутствуют во всех религиях. Это пищевые запреты и ограничения (посты), обычаи, традиции и другие предписания. Пищевые предписания в своей основе имеют не только суеверия, но и чисто экономическую основу — необходимость бережного расходования пищевых припасов; соблюдение постепенно вырабатываемых элементарных гигиенические правил имеет жизненное значение [22].

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

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

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

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

В ходе исследования над дипломной работой были определены следующие решения по совершенствованию существующей системы:

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

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

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

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

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

Предмет исследования – автоматизация процесса подбора рецептов с учетом календаря православных постов

В соответствии с объектом, предметом и целью дипломной работы определены следующие задачи:

— разработка структуры базы данных для хранения и обработки данных по рецептам.

К данной программе разработана база данных (БД). БД включает в себя пять отношений. Отношение ингредиенты необходимо, для выбора из него продуктов, имеющихся у пользователя в наличии и для взаимодействия с отношением рецепты. Которое, в свою очередь, связано с отношением посты, для удобства выбора рецептов в тот или  иной пост.

— Разработка алгоритма расчета дат многодневных постов на любой год.

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

— Осуществление поиска рецептов по имеющимся ингредиентам.

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

— Формирование отчета

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

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

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

1.1 Характеристика объекта проектирования

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

Расчет постов производиться следующим образом: по заданному алгоритму рассчитывается православный праздник Пасха. После Пасхи вычисляются остальные посты. До Пасхи идет великий пост 40 дней + 7 дней Страстная Седьмица. Затем отсчитывается пятидесятница (День святой троицы), т.е. со следующего дня от пасхи отсчитывают пятьдесят дней. После этого считается Петров Пост, который всегда заканчивается 12.07, а начинается через неделю после пятидесятницы (7 дней). Существуют и постоянные посты, которые имеют фиксированную дату, к ним относятся: Успенский Пост, который всегда длится с 14.08 по 27.08 (14 дней) и Рождественский Пост всегда с 27.11 по 07.01 (40 дней). Если же человек не получил необходимой информации, то он может воспользоваться любым литературным изданием — купленной книгой или календарем с постами.

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

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

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

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

1.2 Принципы функционирования системы на базе ПК

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

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

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

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

1.3 Обзор существующих решений

Проанализировав рынок программной продукции, были выявлены две наиболее близкие к данному проекту программы:  “Электронная кулинарная книга” и “Православный календарь”.

Программа “Электронная кулинарная книга” содержит в себе каталог рецептов, оценку рецептов, поиск и печать рецептов. Данная программа позволяет пользователям, не имея обширной библиотеки кулинарных книг приготовить блюдо на любой вкус.

Программа “Православный календарь” реализует алгоритмический подход к формированию православного календаря. По соответствующим правилам программа выполняет расчет и формирует текст календаря на день, седмицу, месяц или год. Текст календаря можно просмотреть на экране компьютера, вывести на принтер, сохранить в файл или копировать в буфер обмена Microsoft Windows. Есть возможность поиска и выборки.

Содержание календаря отражает его современное состояние. Это обстоятельство следует учитывать для правильной оценки текста календаря, который программа формирует для прошлых лет. Иногда вследствие совпадений или по иным причинам некоторые празднования или поминовения переходят на другие дни. В большинстве случаев такие переносы запрограммированы, и программа знает о них и их учитывает. Календарь не включает в себя местночтимых святых и храмовые праздники. Уставные знаки поставлены на основании Типикона и указаний Московской патриархии.

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

Программа дает возможность воспроизвести на экране компьютера любой фрагмент Библии и перенести этот фрагмент в другое приложение Windows.

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

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

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

Использование стандартного для приложений Windows интерфейса и встроенная система подсказки делает программу дружественной для пользователя с любым уровнем компьютерной грамотности. Программа Библейский компьютерный справочник занимает менее 7 Мб дискового пространства и требует для работы компьютер с процессором 386SX или более мощным. Программа работает как приложение Windows и включает собственную систему русификации.

Демонстрационная версия программы обладает всеми возможностями Библейского компьютерного справочника, но включает в себя только три книги Библии — Бытие, Книгу пророка Исаии и Откровение ап. Иоанна Богослова (Апокалипсис). Кроме того, с этой версией поставляются только 3 темы из тематического указателя.

Использование демонстрационной версии программы позволяет полностью ознакомиться с ее возможностями. Если Вас заинтересовала программа Библейский компьютерный справочник, обращайтесь по вопросам ее приобретения в фирму CompTek или к местным дистрибьюторам.

“Программа 7000 Years Calendar” показывает для различных местоположений на Земле местное время, дату по выбранному календарю, номер юлианского дня, номер дня в году, число дней в году, местное время восхода и захода Солнца и Луны, даты весеннего и осеннего равноденствия и летнего и зимнего солнцестояния, время и тип солнечных и лунных затмений, горизонтальные координаты Солнца, Луны и планет, а также праздничные и памятные дни многих стран мира и религий: христианство (православие и католицизм), иудаизм, ислам (суниты и шииты). Программа учитывает поправку на летнее время и то обстоятельство, что в ряде календарей   смена даты происходит на заходе или восходе Солнца. Календарь на месяц или на год с перечнем праздничных и памятных дат может быть сохранен в HTML-документ. Программа предназначена для работы под управлением Windows 95/98/ME/NT/2000/XP с установленным Internet Explorer версии 4.0 или выше, инсталлируется и деинсталлируется.

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

2.1 Математическое моделирование системных элементов

2.1.1 Три этапа математизации знаний

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

Узнай стоимость написания такой работы!

Ответ в течение 5 минут! Без посредников!

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

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

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

2.1.2 Математическое моделирование и модель

Математическое моделирование — это теоретико-экспериментальный метод познавательно-созидательной деятельности, это метод исследования и объяснения явлений, процессов и систем (объектов-оригиналов) на основе создания новых объектов — математических моделей.

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

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

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

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

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

2.2 Постановка задачи

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

Моделирование будет проводиться с использование программы, разработанной в среде Delphi 7.

Данную задачу разбиваем на подэтапы:

— расчёты;

— составление математической модели по расчёту;

— вывод результата.

2.2.1 Определение требований

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

Выходные переменные – на выход получаем рассчитанные дни постов на введенный год.

2.2.2 Выбор объекта исследования

В качестве объекта исследования дипломного проекта построим модель функционирования калькулятора по расчёту длительности постов (дат начала и конца). Согласно показаниям и табличным данным вывести результат на печать.

2.2.3 Определение параметров

На этом этапе моделирования необходимо определить экзогенные и эндогенные переменные модели. Также как и в математических схемах моделирования, в данной модели экзогенными переменными будут: совокупность входных воздействий, совокупность внешних воздействий и совокупность собственных или внутренних параметров системы. Эндогенными характеристиками будет совокупность выходных характеристик.

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

Эндогенной переменной будут результаты.

2.2.4 Ожидаемые результаты моделирования

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

2.2.5 Построение концептуальной модели

Модель строим на основании непрерывно – стохастической модели или Q — схемы. Выделяются две основные составляющие, это ввод данных и ее обслуживание.

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

2.3 Алгоритм поиска рецептов по имеющимся у пользователя в наличии ингредиентам

В ходе дипломного проекта для реализации задачи «Осуществление поиска рецептов по имеющимся у пользователя в наличии ингредиентам», применим алгоритм поиска решения в ширину.

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

Узнай стоимость написания такой работы!

Ответ в течение 5 минут! Без посредников!

Здесь используется два списка:

  • open. В списке open содержатся сгенерированные состояния, потомки которых еще не были исследованы. Порядок удаления состояний из списка open определяет порядок поиска.
  • closed. В список closed заносятся уже исследованные состояния.

Поиск в ширину, исследует пространство состояний по уровням, один за другим. И только если состояний на данном уровне больше нет, алгоритм переходит к следующему уровню.

Поиск в ширину осуществляется с использованием списков open и closed, позволяющих отслеживать продвижение в пространстве состояний. Список open, содержит сгенерированные состояния, потомки которых еще не были исследованы. Порядок удаления состояний из списка open определяет порядок поиска. В список closed заносятся уже исследованные состояния.

Первым элементом в список open записываем стартовое состояние. Далее удаляем это состояние, записываем в список closed и проверяем, является ли оно целью. Если это состояние таковым не является, генерируем для него потомков. Эти потомки записываем в список open и т.д. Список open действует как очередь, т.е. данные проверяются в порядке их поступления в список.

Function breadth_first_search;

begin

open : = [start];                                            {инициализация}

closed : = [ ];

while open = [ ]   do                                         {есть состояния}

begin

удалить крайнее слева  состояния из open, скажем X;

if X – цель then return SUCCESS                      {цель найдена}

else begin

сгенерировать потомок Х;

поместить Х в список closed;

исключить потомок Х, если он уже в списке open или closed;      {проверка на цикл}

поместить остальные потомки в правый конец списка open          {очередь}

end;

end;

return FAIL                        {состояний не осталось}

end.

Дочерние состояния генерируются правилами вывода, или другими операциями перехода состояний. На каждой итерации генерируются все дочерние вершины состояния Х и записываются в open. Список open действует как очередь и обрабатывает данные в порядке поступления (или «первый поступил – первым обслужен»). Таким образом, в поиске участвуют состояния, которые находятся в списке open дольше всего, обеспечивая поиск в ширину. Дочерние состояния, которые были уже записаны в списке open или closed, отбрасываются. Если алгоритм завершается из-за невыполнения условий цикла while(open-[ ]), то можно заключить, что весь граф исследован и желаемая цель не достигнута.

2.4 Формирование отчетов

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

Осуществление в программном продукте данной функции происходит благодаря визуальному RAD – приложению Delphi 7. Одним из приложений является процедура Print, которая позволяет форматировать и печатать заданное содержание.


Страница:   1   2   3   4


Узнай стоимость написания такой работы!

Ответ в течение 5 минут! Без посредников!