家庭食谱管理系统设计与实现_第1页
家庭食谱管理系统设计与实现_第2页
家庭食谱管理系统设计与实现_第3页
家庭食谱管理系统设计与实现_第4页
家庭食谱管理系统设计与实现_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEv-题目:家庭食谱管理系统设计与实现PAGE8摘要在信息技术发展的今天,利用计算机技术和数据库技术管理餐饮食谱信息在世界各国已非常普及。为了实现餐饮食谱信息管理的自动化现实,如何在足够的餐饮食谱信息中快速高效的提供一份适合自己家庭宴会的食谱信息,成了一个逐渐热门的话题。本文从餐饮行业中简化一个家庭食谱管理系统,利用所学软件工程知识,数据库知识及数据结构知识进行开发,锻炼自己的软件开发能力[13]。家庭食谱管理系统是一个典型的数据库开发应用程序,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性、完整性、数据安全性好的数据库。而对于后者则要求应用程序具有完备、容易使用等功能特点。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成家庭食谱管理的全过程,包括菜谱管理、食谱随机生成。经过使用证明,本文所设计的家庭食谱管理系统可以基本满足家庭餐饮选材管理方面的需要本系统后端数据库采用ACCESS2003作为数据库,前端开发工具使用VisualBasic6.0。本系统具有用户使用简单、界面直观等优点,可以帮助使用者更快更准的掌握菜谱信息,在很大程度上提高了家庭食谱选菜管理的效率。在系统的设计与开发过程中力求做到系统的稳定性、可重用性和可扩充性。全文分为前言、技术与原理、需求建模、架构设计、模块设计、部署与应用、结论共七章。主要阐述了架构设计(重点在数据库设计)的技术及应用,讨论了结构化生命周期法与原型法两种开发方法相结合的技术。关键词:计算机技术;数据库技术;家庭食谱管理系统;ACCESS2003;VisualBaisc6.0AbstractIntoday'sinformationtechnologydevelopment,theuseofcomputertechnologyanddatabasetechnologymanagementcateringrecipeinformationhasbeenverypopularintheworld.Inordertoachievefoodrecipeinformationmanagementautomationreality,howtoprovidefortheirownfamilyrecipeinformationafastandefficientpartyfoodrecipesinenoughinformation,andgraduallybecomeahottopic.Thisarticlefromthefoodandbeverageindustrytosimplifyafamilyrecipemanagementsystem,usinglearningsoftwareengineeringknowledge,knowledgedatabaseanddatastructureknowledgefordevelopment,exercisetheirsoftwaredevelopmentcapability.Familyrecipemanagementsystemisatypicaldatabaseapplicationdevelopment,whichmainlyincludestheestablishmentandmaintenanceaswellasfront-endapplicationdevelopmentbackgrounddatabaseintwoways.Theformerrequireddataconsistency,integrity,datasecuritydatabase.Forthelatterrequiresanapplicationwithcomplete,easytouseandotherfeatures.Theentiresystemfromthesimple,user-friendly,flexible,practicalandsafetyrequirements,thecompletionofthewholeprocessofmanagementoffamilyrecipes,includingrecipesmanagement,recipesrandomlygenerated.ThroughtheuseofprovenfamilyrecipesdesignedhereinmanagementsystemcanbasicallymeettheneedsofthefamilydiningselectionmanagementThesystemusesACCESS2003asthedatabaseback-enddatabase,front-enddevelopmenttoolVisualBasic6.0.Thesystemhasasimpleuserinterfaceandintuitive,etc.,canhelpusersfasterandmoreaccurateinformationtomasterrecipes,familyrecipeshasgreatlyimprovedtheefficiencyofselectedfoodmanagement.Soughtinthedesignanddevelopmentprocessofthesystemtoachievesystemstability,reusabilityandscalability.Paperisdividedintoanintroduction,technologiesandtheories,requirementsmodeling,databasedesign,

architecturedesign,

module

designand

deployment,Conclusionsevenchapters.Mainlyonthearchitecturedesign(withemphasisondatabasedesign)technologiesandapplications,discussthestructureofthelife-cyclemethodandprototypedevelopmentapproachofcombiningtwokindsoftechnology.Keywords:Computertechnology;databasetechnology;familyrecipemanagementsystem;ACCESS2003;VisualBaisc6.0目录TOC\o"1-3"\h\u10059摘要 ii20195Abstract iii21573第一章前言 1146041.1项目背景和意义 1121921.2研究与开发现状分析 146341.3项目的目标和范围 3146481.4论文的结构简介 313481第二章技术与原理 568222.1需求分析 581152.2可行性分析 6275722.3开发工具VB6.0概述 7137322.4数据库ACCESS概述 8203922.5数据库访问技术ADO 921783第三章需求建模 12229233.1功能性需求概述 1282813.2领域模型 13225613.3用例模型 13128383.1.1总用例图 13282053.1.2用例例表 14126113.1.3食谱生成用例 1416942第四章架构设计 174734.1系统架构及原理 17104334.2业务用例的实现 1727534.3数据库设计 1918604.3.1E-R图 19302454.3.2数据库 2022645第五章模块设计 21205065.1菜谱管理模块 21192305.1.1菜谱管理模块程序流程图 21151395.1.2菜谱管理模块算法描述 22294585.1.3菜谱管理的页面设计 24291195.2食谱生成模块 2517865.2.1食谱生成模块程序流程图 25177755.2.2食谱生成算法描述 26148035.2.3食谱生成页面设计 263793第六章部署与应用 28299576.1系统部署图 28245266.2硬件环境 2883116.3软件环境 2840676.4页面展示 2820500第七章结论 3015379致谢 3110901参考文献 32PAGE29-前言项目背景和意义近年来,随着人民的生活水平的不断提高,家庭聚会持续增长,对于众多的菜谱信息,如何依据客人数目,快速的选定一桌菜,成了人们逐渐关注的话题。当今世界已进入了在计算机信息管理领域中激烈竞争的时代,应用计算机已经变得十分普遍了,如同我们离不开的自行车、汽车一样。我们应该承认,谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能够在各种竞争中立于不败之地。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。越来越多的管理人员意识到信息管理的重要性。作为计算机应用的一部分,使用计算机对餐饮企业信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。本系统我们选择目前市场上价格比较低廉的数据库服务器产品:MicrosoftAccess2003。而前台开发工具采用VB6.0,利用其可视化的开发环境、丰富的控件资源,快速开发出了家庭食谱管理信息系统应用程序。研究与开发现状分析建立一个管理信息系统,是一项复杂的软件工程的实施。近30多年来,软件工程发展成为新科学,至今已经成为IT产业的重要支柱。一开始,人们往往使用手工作坊式的软件开发方法,靠个人的力量编写各种小型程序;但是随着计算机硬件技术的飞速发展,计算机软件在各个领域中的作用日益突出,那种多年来被人们沿用的手工作坊式的开发方法,已经在软件产品的质量、成本及开发时间等方面无法满足需求。1968年,美国首先提出了“软件工程”这一概念,通过对程序中使用GOTO语句的讨论,导出了结构化程序设计的思想,之后人们普遍重视软件需求规格说明书和系统设计在软件开发中的作用。80年代,软件工程思想得到了系统的归纳和整理,提出了许多新的工程方法,比如生命周期法、快速原型法等。进入90年代,非结构化或半结构化的、可视化的、面向对象的方法不断涌现,使软件开发方法得到了较大的发展。结构化生命周期法是一种传统的管理信息系统开发方法,其基本思想是把整个系统开发过程分成若干个阶段,每个阶段进行若干活动,每项活动应用一系列标准、规范、方法和技术,完成一个或多个任务,形成符合给定规范的产品。采用结构化生命周期法来开发管理信息系统时,应遵循的主要原则:(1)、用户参与的原则(2)、“先逻辑后物理”的原则(3)、“自顶向下”的原则(4)、工作成果描述(主要指文档)标准化的原则快速原型法是80年代发展起来的,旨在缩短开发周期,提高开发效率和用户对系统的满意程度。其基本思想是在系统开发的初期,尽快构造出系统的原型,使用户能及早地运行这个系统原型,通过使用它、熟悉它,受到启发并取得经验,然后对系统的目标和功能提出更精确、具体的要求,研制人员据此逐渐修改和完善原型,使它满足用户的需求,最后完成系统的开发。该方法大大提高了系统开发效率,弥补了结构化生命周期法开发来所用的时间长的缺陷。通常采用原型法需要以下四个阶段:(1)、明确用户的基本要求;(2)、研制系统的原型;(3)、使用、评价系统原型;(4)、修改和完善原型。本系统总体上采用结构化生命周期法进行系统规则、系统分析和系统设计,但在系统实施阶段采用原型法。项目的目标和范围目前市场有很多餐饮食谱管理系统,但是大多都是面向酒店食堂的。面向家庭的餐饮食谱管理系统,系统还很少,本文以面向家庭食谱管理出发,通过录入食谱,然后随机调用食谱,生成一个合适家庭菜谱管理系统。采用微软的ACCESS作为数据库管理系统;本系统是基于ACCESS的管理信息系统,数据库在系统中占有非常重要的地位,其设计是实现整个系统的基础。由于菜谱信息管理工作所需数据的复杂性,在数据库中应合理建立数据表来存储就业指导管理工作所必需的各种数据,包括菜谱信息等。另外,合理建立这些数据表之间的联系,以构建一个完整高效的后台数据库。本系统主要采用以下三种研究方法[6]:资料法:通过互联网、图书馆及相关书籍收集并整理有关家庭菜谱信息管理的现状、发展方向、面临的内外部环境等资料;调查研究法:了解一些流行的的家庭菜谱管理软件,找出一些合理的共性,明确家庭成员的信息需求,并分析出家庭菜谱信息管理的需求;实验研究法:对系统各功能模块进行编码设计,测试各功能模块,完善该系统;本系统最终的完成效果主要由两个部分组成——前台食谱生成和后台食谱管理两部分。前台用于生成家庭用食谱;后台用于食谱管理,包括食谱添加、食谱删除、食谱修改等。论文的结构简介本论文旨在设计和开发一个家庭食谱管理系统。论文共分为七章,从项目开发背景、相关技术原理、需求建模、架构设计、模块设计及部署应用和项目总结等方面进行了详尽的阐述。各章大体内容如下::前言,包括项目背景和意义、研究与现状分析、项目的目标和范围以及论文的结构简介,阐明了项目来源、系统开发的动机、意义和可行性,界定了项目的目标和范围,简介了论文结构。:技术与原理,首先进行了需求分析和可行性分析,并且主要描述了系统所使用的相关技术和原理,简要介绍了数据库ACCESS的使用,以及ADO数据库访问等技术原理。:需求建模,主要是提取项目的功能性需求概述,用系统领域模型、系统用例图和用例表进行简单的描述,并且对系统的核心用例购买结算进行详细用例分析并画出活动图。:架构设计,主要是系统架构设计,描述系统各部分的组成以及各部分之间的通讯机制。:模块设计,对系统主要模块进行详细设计。:部署与应用,利用系统部署图说明系统的部署,描述了系统的运行环境,并选择若干典型界面说明系统的重要I/O。:结论,总结在设计和开发系统过程中工作的优点和不足之处,并提出系统的改进方案和前景展望。

技术与原理需求分析需求分析是设计数据库的起点,需求分析的结果是准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。在需求分析阶段要完成的任务是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑近乎可能的扩充和改变,不能仅按当前应用需求来设计数据库。根据科研项目申请管理系统的特点,性能需求如下(1)数据精确度查询时应保证查全率,所有相应域包含查询关键字的记录都应能查到。查询时应保证查准率,查到的记录应与给定的单项或组合查询条件完全匹配。统计的结果准确、可靠;计算指标具有较高的可信度。(2)时间特性一般操作的响应时间应在1秒以内。(3)适用性 适用性强,能满足一般学校的要求。(4)正确性要求发布的软件达到用户的预期目标,运行时基本无错误。(5)可靠性在一般的情况下,不会出错。(6)运行效率对于项目和专家信息的检索、统计、分析、输出等操作,具有较高的效率,几乎不需要用户的等待。(7)数据完整性要求能在用户权限分配适当,避免数据管理失误。(8)易使用性要求能尽量为用户的使用提供方便。(9)可维护性要求本软件在运行中发现错误时,能快速、准确对其进行定位、诊断和修改。(10)可测试性设计时尽可能减少测试本软件的各项功能所需的工作量。(11)可复用性设计时应采取模块化的方法进行设计,对系统内各模块接口尽可能达到高内聚、低耦合的程度,以提高各模块的复用性。(12)安全保密性要求提供身份验证,只允许通过身份验证的用户使用本软件。(13)可理解性对于本软件提供的各种菜单命令,各种信息提示,应易于用户理解可行性分析现在,市场上可以选购的应用开发产品很多,流行的也有数十种。在目前市场上这些众多的程序开发工具中,有些强调程序语言的弹性与执行效率;有些则偏重于可视化程序开发工具所带来的便利性与效率的得高,各有各的优点和特色,也满足了不同用户的需求。然而,语言的弹性和工具的便利性是密不可分的,只强调程序语言的弹性,却没有便利的工具作配合,会使一些即使非常简单的界面处理动作,也会严重地浪费程序设计师的宝贵时间;相反,如果只有便利的工具,却没有弹性的语言作支持,许多特殊化的处理动作必需要耗费数倍的工夫来处理,使得原来所标榜的效率提高的优点失去了作用。本设计我将采用结构化的方法,以VisualBasic6.0作为系统前台应用程序开发工具,ACCESS2003作为后台数据库,通过VisualBasic6.0中的Data控件使两者进行连接从而进行系统软件开发。经济可行性分析中最重要的内容之一是成本——效益分析。对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本——效益分析要估计出研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较[14]。本系统无论从开发成本,相关材料等各方面看都具备经济可行性。开发成本低,相关书籍都可以在图书馆借到,需求分析相对简单,只需与指导老师进行交流,充分了解工作需求、研究步骤,而无须多少经费,并且在开发过程中只需要一台PC机,并不需要别的大型设备。而且在本系统投产后,可以充分提高相关人员的工作效率,用很低的成本就可实现较大的效益。从这几方面说,本系统具备经济可行性。在本系统的操作阶段,该系统的使用并不困难,使用系统的工作人员,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识,并不需要特别的技术能力,只需要花费较少的时间去了解学习它,即可做到熟练操作使用。所以系统在操作上是可行的。开发工具VB6.0概述VisualBasic是使用Basic语言进行可视化程序设计的开发工具,英文Visual的原意是“可视化”、“视觉化”。VisualBasic是一种开发工具,而不仅仅是一种语言,用VisualBasic可开发出应用于数学计算、数据库管理、客户/服务器、Internet的应用软件[2]。VisualBasic采用的是事件驱动编程机制,用户只要写出简短的程序片段,就可以完成所需的操作。VisualBasic同时采用图形工作环境,通过图形对象来设计应用程序,用户可以很方便地设计出具有Windows风格图形界面的应用软件[3]。1.VisualBasic是可视的Visual这一英文单词的意思是“可视的”、“视觉的”,VisualBasic在这里是指“可视化程序设计”。可视化程序设计使用了可视化工具,可以直接看到作出来的图形、界面,比如一个菜单、一个对话框。而用户需要编写的只是实现诸如程序计算、逻辑判断等的那部分程序代码,简短的程序写起来既容易又很少出错。可视化设计工具把Windows界面设计的复杂性“封装”起来,用户不必为界面设计编写程序代码,只需利用系统提供的工具,在屏幕上画出各种对象,并设置对象的属性即可。“可视化程序设计”为用户制作具有Windows风格的应用程序提供了简化编程难度的有效方法。2.VisualBasic是面向对象的面向对象的程序设计方法(OOP,Object-OrientedProgramming)是把程序和数据封装起来作为一个对象,并且为为一个对象设置所需要的属性。这些图形对象的建立不必用语句来描述,而是用工具画在界面上,这样非常方便快捷。直观的、图形丰富的工作坏境,已是当前所有应用程序必须具备的共同点,利用面向图形对象的程序设计方法设计应用程序,可使图形对象的建立变得十分简单[8]。3.VisualBasic采用事件驱动编程机制VisualBasic的编程机制是:当单击(或双击)一个对象时,该对象将会出发一个事件,该事件又通过一个程序段来响应,从而实现指定的操作,这就是所谓的事件驱动机制。事件驱动机制是一种适用于图形用户界面(GUI)的编程方式。4.数据库管理功能在VisualBasic应用程序中,可直接建立Access格式的数据库或访问Access中的数据,并可以进行数据存储和检索。VisualBasic还能编辑和访问如FoxPro、Paradox等外部数据库。VisualBasic提供开放式数据链接功能(OpenDataBaseConnectivity),可直接访问或通过建立连接的方式使用并操作后台大型网络数据库。数据库ACCESS概述Access是Microsoft出品的一种性能优良的桌面数据库管理系统,在单机环境下且数据记录不是很多(20万条以下)时,它的性能不亚与大型数据库,因此,在用户数量不多、并发要求不是很高的场合下,用Access作为后台数据库是既经济又能保证性能的选择[7]。它界面友好,操作简单,功能全面,使用方便,不仅具有众多传统数据库软件所具有的功能,同时还进一步增强了网络功能[1]。自从1992年发布以来,Access已逐步成为桌面数据库领域的佼佼者,吸引了众多国内外用户,备受欢迎。它具有如下优点:(1)存储方式简单,易于维护管理Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb或.accdb)的数据库文件中,便于用户的操作和管理(2)面向对象Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。(3)界面友好、易操作。Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。(4)集成环境、处理多种数据信息Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。(5)Access支持ODBC(开发数据库互连,OpenDataBaseConnectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用[5][11]。(6)支持广泛,易于扩展,弹性较大能够将通过链接表的方式来打开EXCEL文件、格式化文本文件等,这样就可以利用数据库的高效率对其中的数据进行查询、处理。还可以通过以Access作为前台客户端,以SQLServer作为后台数据库的方式(如ADP)开发大型数据库应用系统。总之,Access是一个既可以只用来存放数据的数据库,也可以作为一个客户端开发工具来进行数据库应用系统开发;即可以开发方便易用的小型软件,也可以用来开发大型的应用系统[12]数据库访问技术ADOADO是由Microsoft且开发的最新数据库访问编程接口[4]。毫无疑问.ADO是Microsoft提供的众多数据访问API中使用最广的一种。ADO本质上就是一个OLEDB提供者,提供了在应用程序级上对OLEDB数据源的访问能力。ADO是一个OLE自动化服务器,大多数支持OLE的升发环境和脚本环境都可以访问该服务器。ADO还是许多Microsoft开发工具的标准组件[9][10],并随之一起发布.这些开发工具包括VisualStudio.NETVisualStudioEnterpriseEdition1和6VisualBasicEnterpriseEdition45和6VisualInterDev6MicrosoftOffice2000DevetoperEditionSQLServer2000 ADO还是许多Microsoft开发工具的标准组件,并随之一起发布.VisualBasicADO应用程序。它创建和使用了多个ADO对象。ADO对象框架负责调用适当的OLEDB提供者。如果ADO应用程序使用了ODBC的OLEDB提供者,那么就会相应地用到MSDASQLOLEDB提供者。如果ADO应用程序使用的是SQLServer的OLEDB提供者,则会用到SQLOLEDB提供者。当程序使用ODBC的OLEDB提供者时,ADO将装载msdasql.dll,再由该动态链接库装载ODBC驱动程序管理器。ODBC的OLEDB提供者将ADO发出的OLEDB调用映射成对应的0DBC调用,之后再传递给ODBC驱动程序管地器。 ODBC驱动程序管地器负责装载正确的ODBC驱动程序。特别需要注意的是:ODBC驱动程序为了与访问目标数据库的远程IPC(InterprocessCommunication)服务器进行通信,一般采用一种网络进程间通信(IPC)的方法来实现,如命名管道(NamedPipe)、TCP/IP套接字或者SPX等。本地SQLServer的OLEDB提供者不使用任何附加的中间层。当使用SQLserver的OLEDB提供者时,ADo加载sqloledb.dll,由该动态链接库装载并使用适当的网络IPC方法与数据库进行通信。IPC客户端端组件通过所用的网络协议来与相应的服务器端IPC建立通信这接。网络协议负责发送和接收IP数据流。常用的网络协议有:TCP/IP和IPX等.与其他的数据访问对象模型类似,ADO也是采用层次对象框架S实现的。但是ADO比DAO(数据访问对象)和RDO(远程数据库对象)框架更为简单。Connection、Recodset和Command对象是ADO对象模型的三个主要对象。Connetion对象代表与远程数据源的连接,它除了负责建立与数据源的连接之外,还负责控制事务的范围。Connection对象与Recordset和Command对象相互关联。Recordset对象代表从数据源返回的结果集。ADoRecordset对象可以便用一个打开的Connection对象,也可以自己建立与目标数据源的连接。Recordset对象允许用户查询和更新数据。每个Recordset对象包括了一个Field对象集合。集合中的每一个Field对象代表Recordset中的—列数据。Command对象用于发布命令和参数化的SQL语句。Command对象还可以用来调用存储过程和执行SQL语句,SQL查询的结果返回给Recordset。ADORecordset对象类似,Command对象既可以使用打开的connection对象,也可以自己建立与目标数据源的连接。Command对象包含了一个Parameters集合,集合中的每个成员部是一个Parameter对象,它代表Command对象所使用的参数。如果一个Command对象用寸—执行一条参数化的SQL语句。那么每一个Parameter对象代表SQL语句中的一个参数。Conncection对象的下面就是Errors集合。集合中的每一个Error对象包含了ADO对象框架中的对象包含的一条错误信息。Connection,Command,Recordset和Field对象包含了一个Properties集合。集合中的每一个Property对象都可以用于设置或获取对象的不同属性[16]。Connection,Recordset和Command对象是ADO对象框架最常用的三种对象,除此之外,ADO还包含Record和Stream对象。Record村象用来表示Recordset对象中的一条记录。它也可以表示层次树结构的名字空间,或者表示具有层次结构的事物,如文件系统中的文件夹和文件,电子邮件系统中的目录和消息等。Stream对象用于读或写面向流的数据,如XML文档或者二进制对象等。ADO框架似乎与DAO和RDO的层次结构很相似,其实不然。所有主要的ADO对象(如:Connection,Command和Recordset)都可以在自己的实例中创建其他的对象而无须通过高层对象。这一点与其他的数据访问对象框架不同。这也使得ADO对象框架更为灵活。例如,ADO对象框架允许在不请求Connection对象实例的情况下打开和访问Recordset对象。这种无需初始化高层对象就可以直接访问每个对象的能力使ADO比其它的对象框架工作起来更加简单[17]。需求建模本章采用UML技术对家庭食谱管理系统进行需求建模。首先概述系统的功能性需求,得出其领域模型,并描述系统主要用例,对其中的食谱生成用例进行详细的建模,通过用例描述和系统顺序图进行需求分析。功能性需求概述系统的主要功能包括:菜谱管理和食谱生成。本系统依据食谱管理以及生成的分类,又分为四个子模块。其中,菜谱管理模块包括菜谱信息的增加、修改、删除三个模块;食谱生成模块为独立模块。菜谱管理菜谱管理菜谱添加菜谱修改菜谱删除图3-1菜谱管理功能结构图食谱生成食谱生成食谱输出数量输出图3-2食谱生成功能结构图领域模型领域模型是对领域内的概念类或者现实世界中对象的可视化表示,在本系统中,有现实世界中的对象如菜谱类。如图3-3所示菜谱菜谱编号菜名分类做法图片图3-3家庭食谱管理系统领域图用例模型3.1.1总用例图菜谱管理菜谱管理食谱生成管理员图3-4家庭食谱管理系统用例图3.1.2用例例表本节用表格的形式简单描述系统全部的用例,如表3-1所示:表3-1:系统用例表用例编号用例名称描述参与者UC01菜谱管理菜谱增加、修改和删除管理员UC02菜谱生成食谱生成、数量输出管理员3.1.3食谱生成用例食谱生成用例如表3-2所示:表3-2:食谱生成用例表用例编号:UC02用例名称:食谱生成范围:家庭食谱管理系统级别:用户目标主要参与者:管理员涉众及其关注点:.管理员:希望系统能够快速根据就餐人数生成食谱及各类菜的数量。前置条件:系统中要有足够多的菜谱供选择后置条件:输入就餐人数。主成功场景:1.用户运行系统。2.进入食谱生成界面。3.输入就餐人数。4.快速生成食谱及数量。扩展:输入就餐人数,在菜单足够多的情况下,多次生成,每次生成的食谱不一定相同。随机设定生成食谱特殊需求:无发生频率:随意未解决问题:无食谱生成活动图用户用户系统进入系统进入食谱生成输入就餐人数判定菜单是够足够显示食谱添加菜谱或修改人数否是图3-5食谱生成活动图架构设计系统架构及原理本系统主要面向家庭用户使用,采用的是单机结构。在用户输入足够多的菜谱的情况下,输入就餐人数,系统将自动显示食谱和菜的数量。用户用户家庭食谱管理系统输入人数显示食谱图4-1系统架构业务用例的实现本系统通过顺序图来展现主要的业务用例。下面将介绍菜谱管理和食谱生成用例的实现过程。菜谱管理用例的实现步骤说明如下:用户点击进入系统,进入菜谱管理界面,在界面上输入菜谱信息,点击添加按钮,系统将菜谱信息添加到数据库中;在界面上选择菜谱信息,点击修改按钮,系统将菜谱信息修改到数据库中;在界面上选择菜谱信息,点击生成按钮,系统将菜谱信息从数据库中删除;菜谱管理的顺序图如图4-2所示:添加添加修改删除显示1.1添加1.1.1执行1.2修改1.2.1执行1.3删除1.3.1执行图4-2菜谱管理顺序图食谱生成用例的实现步骤说明如下:用户点击进入系统,进入食谱生成界面,在界面上输入就餐人数,点击生成按钮,系统将食谱信息显示到界面中食谱生成的顺序图如图4-3所示:输入人数输入人数显示2.1输入2.1.1执行图4-3食谱生成顺序图数据库设计数据库是数据的集合,用于描述一个或多个相关组织的活动REF数据库\h\r[15]。E-R图概念模型的最常用的表示方法是实体-联系方法(Entity-RelationApproach,简称E-R方法)。E-R方法是用E-R图来描述某一组织的信息模型。E-R图中包含了实体、关系和属性等三种基本成分,通常用矩形框代表实体,用连接相关实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,并用直线把实体(关系)与其属性连接起来。实体联系图:简称为E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。与此有关的概念有:1、实体:是观念世界中描述客观事物的概念。2、属性:指实体具有的某种特性,用来描述一个实体。3、联系:可分为两类:一是实体内部的联系,一是实体之间的联系。菜谱菜谱编号菜名分类做法图片图4-4菜谱ER图数据库建立数据库,首先确定数据库中要保存什么样的数据信息,然后设计数据库,建立由子段组成的表,字段里定义要存储的数据的类型。建好数据库的结构后,数据库就能在纪录里存储数据。提前设计数据库,一个重要的原因就是效率问题,如果数据库中的纪录达到了10000条以上的话,那么效率就是建立数据库头等要考虑的事情了;另外,设计数据库的一个指导原则是把子段与不在同一表中的同类数据相联系,数据存在不同的表中,并不意味着不能一起使用它们,相反,当需要的数据横跨关系数据库中两个或更多的表时,能够使用“关系”访问数据。本系统采用了ACCESS2003数据库,下面对在本系统中使用的数据库表格建立做一下介绍。打开ACCESS2003软件,数据库中包含若干个表,表是数据库中用来存放数据的地方。在新建数据库之后,出现数据库面板,在次面板上选择“使用设计器创建表选项”,按照如下表结构设计数据使用表。通过对系统ER图进行分析,得到数据库设计如下:用于储存菜谱的基本信息。见表4-1所示:表4-1:表的样例字段名类型大小编号数字8菜名文本30分类文本10做法备注16图片OLE对象模块设计(另起页)菜谱管理模块菜谱管理模块,用于实现菜谱管理的功能,包括菜谱信息的增加、修改、删除三个模块。菜谱管理模块程序流程图管理员管理员删除菜谱修改菜谱添加菜谱菜谱管理模块验证有效性执行显示结果图5-1菜谱管理流程图菜谱管理模块算法描述添加菜谱代码:图5-2添加菜谱代码修改菜谱代码:图5-3修改菜谱代码删除菜谱代码:图5-4删除菜谱代码菜谱管理的页面设计菜谱管理模块的页面设计如图5-6示。在主界面(图5-5)点击“菜谱管理”按钮,进入图5-6所示界面,在该界面上上面为菜谱详细信息,右上为操作按钮,下面为菜谱列表信息。在上面录入菜谱详细信息,点击“添加”按钮,即可把菜单信息录入数据库,同时下面列表显示刚添加的菜谱信息。点击菜谱列表的数据,对应的数据就显示在上面的菜谱详细信息。同时修改和删除按钮变的可以点击。点击修改,就可以把修改后的菜谱信息修改成功。点击删除就可以把选择的菜谱信息从数据库中删除。点击上一页和下一页可以来回滚动页面。图5-5系统主界面图5-6菜谱管理界面食谱生成模块食谱生成模块,用于实现根据用餐人数生成食谱的功能。食谱生成模块程序流程图用户用户系统进入系统进入食谱生成输入就餐人数判定菜单是够足够显示食谱添加菜谱或修改人数否是图5-7菜谱管理界面食谱生成算法描述图5-8食谱生成算法食谱生成页面设计在主界面上(图5-5)点击“食谱随机生成”按钮,进入图5-9所示界面,输入就餐人数,点击生成按钮,就会在下面随机生成食谱和相应的分类菜的数量。图5-9食谱生成界面部署与应用系统部署图本系统采用单机结构,数据库和程序都在本机上运行。系统部署如图6-1所示。家庭食谱管理系统家庭食谱管理系统数据库用户图6-1:系统部署图硬件环境系统开发的硬件环境如下:(1)处理器:奔腾IV以上,256MB以上(2)内存:512MB,内存越大,速度越快(3)硬盘:20G (4)鼠标:任意能用光电鼠标软件环境系统开发的软件环境如下:1.操作系统:Windows

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论