您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 软件工程课程设计小case
沈阳理工大学课程设计专用纸No1沈阳理工大学摘要【摘要】随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。而大型的超市系统功能过于强大而造成操作繁琐降低了小超市的工作效率。虚拟超市购物系统由DELPHI+ACCESS实现,主要包含以下几个模块:登录模块、购物管理模块、用户管理模块、货物管理模块、数据备份模块等。从而,实现对购物及客户信息等实现动态、及时的管理。全文共分六部分:第一部分主要是可行性研究;第二部分主要是系统需求分析;第三部分主要是总体设计;第四部分是主界面及购物管理模块的设计及编码;第五部分主要是软件测试;第六部分是对课程设计的总结。【关键词】虚拟超市购物系统,购物车,DELPHI,ACCESS沈阳理工大学课程设计专用纸No2沈阳理工大学目录摘要-――――――――――――――――――――1第1章可行性研究――――――――――――――3第2章系统需求分析―――――――――――――42.1系统功能结构―――――――――――――――42.2系统数据库设计和状态图――――――――――52.3数据流图―――――――――――――――――62.4数据字典―――――――――――――――――7第3章总体设计―――――――――――――――83.1设计思想―――――――――――――――――83.2设计原则―――――――――――――――――83.3功能划分―――――――――――――――――9第4章窗体设计及编码(主界面及购物模块)――104.1主界面设计――――――――――――――――104.2购物管理模块设计―――――――――――――10第5章软件测试―――――――――――――――145.1模块测试―――――――――――――――――145.2整体测试―――――――――――――――――17第6章课程设计总结―――――――――――――17参考文献-――――――――――――――――――18沈阳理工大学课程设计专用纸No3沈阳理工大学第1章可行性研究可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的。经济可行性:超市有能力承担系统开发费用。开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投资。对于本系统的开发者来说,其主要投资还是在人力和物力两个方面。如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业借阅大部分的额外开支。同时软件就其它产品来说,属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金支持。所以,在系统的开发过程中,企业完全有能力承担开发费用。技术可行性:在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的超市对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够掌握。运行可行性:本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个虚拟超市购物系统采用友好的交互界面,简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的数据流图,建立数据字典。沈阳理工大学课程设计专用纸No4沈阳理工大学第2章系统需求分析2.1系统功能结构虚拟超市购物系统,实现两个方面的需求,分别是商品购买者和购物系统管理人员。商品购买者的需求是查询购物系统所存的商品、个人购买情况及个人信息的修改;购物系统管理人员的功能较为复杂,包括对购买者、商品信息进行管理和维护等。商品购买者可直接查看商品情况,如果商品购买者根据本人用户名和密码登录系统,还可以进行本人购物情况的查询和维护部分个人信息。一般情况下,商品购买者只应该查询和维护本人的购物情况和个人信息。购物系统管理人员功能的信息量大,数据安全性和保密性要求很高。本功能实现对商品信息、购买者信息管理和查看及维护。购物系统管理员可以浏览、添加、删除商品的基本信息;浏览、添加、删除、修改用户信息,但不能添加、删除和修改购买信息。整个虚拟超市购物系统的功能结构如图2-1所示:图2-1系统的功能结构图沈阳理工大学课程设计专用纸No5沈阳理工大学2.2系统数据库设计图2-2虚拟超市购物系统ER图利用ACCESS2003进行数据库的设计,ER图如图2-2所示,其基本表如下:用户表(sysuser),见表2-1:表2-1用户表中文字段名英文字段名字段类型主键/外键用户名Name文本P密码Passward文本性别Sex文本电子邮件Email文本用户组group文本商品表(commodity),见表2-2:表2-2商品表中文字段名英文字段名字段类型主键/外键编号ID文本P沈阳理工大学课程设计专用纸No6沈阳理工大学名称Name文本P/F库存数量Amount数字售价price货币购物车表(cart),见图2-3:表2-3购物车表中文字段名英文字段名字段类型主键/外键商品名称Name文本P购买数量amount数字P/F状态图见图2-3:图2-3状态转换图2.3数据流图数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。虚拟超市购物系统的系统模型,如图2-4所示:沈阳理工大学课程设计专用纸No7沈阳理工大学图2-4虚拟超市购物系统的系统模型功能级数据流图,见图2-5:图2-5功能级数据流图2.4数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。一般说来,数据字典应该由对下列4类元素的定义组成:(1)数据流(2)数据流分量(即数据元素)(3)数据存储(4)处理沈阳理工大学课程设计专用纸No8沈阳理工大学购物单的数据字典如下:名字:购物单别名:购物信息描述:客户已购买的货物列表。定义:购物单=商品名称+购买数量位置:购物车第3章总体设计此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括:浏览、添加、删除商品、购物车、用户维护等功能;后台管理是提供给管理员的,其中包括:货物管理、用户管理等。3.1设计思想(1)系统分成几个相对独立的模块,但这些模块都进行集中式管理。(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有较强的可操作性和扩展性。(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。3.2设计原则为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:(1)合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如产品进货、销售等工作。(2)实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。(3)准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如:类型匹配,长度不超限等)。沈阳理工大学课程设计专用纸No9沈阳理工大学(3)易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。(5)源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。(6)优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。(7)安全性原则:可以为该系统的用户设置用户权限。3.3功能划分整个虚拟超市购物系统的功能结构如图3-1所示:图3-1系统的HIPO图构成模块如下:登录模块根据用户名判断用户组,根据用户组设定用户权限。购物管理模块购物车,添加到购物车、清空购物车、确认购买(普通用户)。沈阳理工大学课程设计专用纸No10沈阳理工大学用户管理模块用户信息查询、修改,用户列表、添加、删除(管理员)。货物管理模块商品列表、添加、删除(管理员)。数据备份模块数据备份、数据恢复。帮助模块帮助信息。第4章窗体设计及编码(主界面及购物模块)4.1主界面设计主要用到的控件有TMainMenu和TStatusBar,除了关联到新窗体外基本没有什么事件,在任务栏的第一部分显示“虚拟超市购物系统”,代码如下:procedureTmain.FormCreate(Sender:TObject);beginStatusBar1.Panels[0].Text:='虚拟超市购物系统';end;4.2购物管理模块设计共设计了两个窗体,一个添加货物窗体和一个购物车窗体。添加货物窗体用到了一个TComboBox控件,使用该控件的代码如下:procedureTForm8.FormShow(Sender:TObject);begincombobox1.Clear;edit1.Clear;withdm.ADOQuery1do沈阳理工大学课程设计专用纸No11沈阳理工大学beginclose;sql.Clear;sql.Add('select*fromcommodity');open;whilenoteofdobegincombobox1.Items.Add(fieldbyname('name').AsString);next;end;first;end;combobox1.ItemIndex:=0;end;图4-1添加货物流程图沈阳理工大学课程设计专用纸No12沈阳理工大学添加货物窗体的流程图如图4-1所示,响应添加事件的代码如下:procedureTForm8.Button1Click(Sender:TObject);beginwithdm.ADOQuery1dobeginclose;sql.Clear;sql.Add('insertintocart(name,amount)values(:a,:b)');parameters.ParamByName('a').Value:=trim(combobox1.Text);parameters.ParamByName('b').Value:=strtoint(trim(edit1.Text));execsql;end;showmessage('货物添加成功!');close;withdm.ADOQuery2dobeginclose;sql.Clear;sql.Add('selectnameas[货物名称],amountas[购买数量]');sql.Add('fromcart');open;end;end;沈阳理工大学课程设计专用纸No13沈阳理工大学图4-2购物车流程图购物车的流程图如图4-2所示,响应购买事件的代码如下:procedureTForm7.Button3Click(Sender:TObject);beginwithdm.ADOQuery1dobeginclose;sql.Clear;sql.Add('selectcart.amountfromcommodity,cart');沈阳理工大学课程设计专用纸No14沈阳理工大学sql.Add('wherecommodity.name=cart.name');sql.add('andcommodity.amount=cart.amount');open;ifRecordC
本文标题:软件工程课程设计小case
链接地址:https://www.777doc.com/doc-153234 .html