1、云南大学硕士研究生论文XX系统的分析与设计分类号 TP31 密级 公开 UDC 编号 硕士研究生学位论文题 目 XX系统的分析与设计 学院(所、中心) 软件学院 专业名称 软件工程 研究生姓名 学号 导师姓名 职称 年 月独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。除了文中特别加以标注和致谢的地方外,论文中不包含其他人或集体已经发表或撰写过的研究成果,对本文的研究做出贡献的集体和个人均已在论文中作了明确的说明并表示了谢意。研究生签名: 日 期: 论文使用和授权说明本人完全了解云南大学有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交学
2、位论文和论文电子版;允许论文被查阅或借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。 (保密的论文在解密后应遵循此规定)研究生签名: 导师签名: 日 期: 本人及导师同意将学位论文提交至清华大学“中国学术期刊(光盘版)电子杂志社”进行电子和网络出版,并编入CNKI系列数据库,传播本学位论文的全部或部分内容,同意按中国优秀博硕士学位论文全文数据库出版章程规定享受相关权益。研究生签名: 导师签名: 日 期: 摘要 论文首先介绍了XX系统的研究背景,对所需要解决的问题进行了概述,讨论了项目的研究意义与重要性,阐述了系统开发方法和相关技术;论文提出了系统的设计目标,对
3、系统进行了详细的需求分析,包括业务需求、功能需求、数据需求和非功能需求,给出了系统的业务流程图、用例图和概念类图,进行了用例描述;在系统设计中,对系统进行了总体设计与模块设计,包括XX等功能模块,给出了模块设计的功能结构图(包图)、类图、顺序图(协作图)和处理流程图,详细阐述了设计内容,进行了界面设计,并使用实体类图、E-R图和数据库表结构对数据库进行了详细设计;论文最后对研究的内容进行了总结,阐述了本人的主要工作,指出了论文存在的不足,并对进一步的工作进行了展望。关键词:XXXX;UML建模;数据建模Abstract Keywords: 目录 第一章 引言1.1 项目背景与问题概述1.1.1
4、 项目背景随着科学技术的进步和社会经济的发展,信息化进程已经成为一种必然的趋势。近年来,由于信息化在多个领域取得了巨大的成就,为国家的经济建设和社会发展做出了不可估量的贡献。因此,人们认识到,作为国家信息化和社会信息化的重要组成部分之一的商业信息化,已然成为了促进社会经济发展的一个增长点,也是推动商业发展的重要手段。商业信息化已经被越来越多的企业和商家所关注。世界电子商务的快速度发展,同时B2B、B2C、C2C等一系列的结构快速度发展,这些都需要网上商城来支持,少则自己开个商店,大则阿里巴巴等电子商务,这些都成就了商城系统的出现,正因为网上电子商务的安全性与稳定性的要求高,所以对商城系统也需要
5、有一个严格的考验。因此,开发一个基于web的动态网上购物系统,对发展电子商务无疑是十分迫切的。1.1.2 问题概述在信息技术日新月异的今天,随着新技术、新功能的演变,开发一个XXX系统有着多种技术手段来实现。如何根据具体需求采用合适的技术来实现,是很多软件开发者正在考虑的问题。不少商家、公司只制作一个或几个产品介绍的页面,要修改资料,需要对网页重新修改,客户却又不能网上下定单,需要通过多种步骤才能与商家取得联系,其弊端是显见的,首先是低效率、数据的严重冗余,其次是维护困难。显然由这些简单链接的页面构成的网站在数据的共享性、人机的交互性以及网站维护性上都是很现实的问题。此外,现有的电子商务系统普
6、遍存在着.问题,一直得不到解决。1.2 国内外研究与应用现状1.3 研究的意义与重要性第二章 需求分析软件需求过程是整个软件开发初始阶段,对软件的品质具有决定性的作用。软件需求工程研究如何理解和说明用户对所开发软件的要求和期望。需求就是以一种清晰、简明、一致且无二义性的方式对一个待开发系统中的各个方面有意义的陈述的集合4。需求必须是完整的,足以使设计师和工程师来开发一个使客户满意的软件制品。IEEE软件工程标准词汇表(1997年)中定义需求为5:(1) 用户解决问题或达到目标所需的条件或能力(Capability);(2) 系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或
7、能力;(3) 一种反映上面(l)或(2)所描述的条件或能力的文档说明。软件需求包括三个不同的层次:业务需求、用户需求和功能需求(也包括非功能需求)6。2.1 业务需求业务需求(business requirement)是客户对软件制品目标的高层次要求。2.1.1. 业务描述(一) 能够实现商品展示、商品检索、商品选择、网上订货、网上支付和商品发货等功能,对网上购物的全过程进行管理(二) 实现对网上购物过程中产生的所有业务数据的管理,如订货单、支付记录、发货信息的管理与维护(三) 具有配套的系统后台管理维护功能,能够对商品信息、用户信息、系统日志等信息进行管理与维护,并能够进行对应的级别管理(四
8、) 响应速度合理,安全性较高(五) 系统运行稳定,并且应易于维护2.1.2. 主要业务流程(一)商品展示活动图图2.1 商品展示活动图(二)商品选购活动图图2.2 商品选购活动图(三)货款支付活动图图2.3 货款支付活动图(四)发货管理活动图图2.4 发货管理活动图(五)退货管理活动图图2.5 退货管理活动图2.2 功能需求功能(function)是刻画系统行为、特别是系统与环境关系的重要概念。用户需求(User Requirement)描述了待开发的软件必须完成的任务。功能需求(Functional Requirement)定义了必须实现的软件功能,使得用户通过这些功能完成他们的任务,从而满
9、足业务需要。2.2.1 角色分析以下从网上购物系统的实际需求分析,系统涉及到以下角色:表2 角色划分表角色职责或功能客户(买家)系统主要参与者,进行商品选购、商品退货、货款支付等卖家系统主要参与者,进行商品发货、订单管理、商品管理、统计查询等系统管理员管理和维护整个系统的用户组织结构,负责对用户、角色、用户级别的增、删、改、查等管理。2.2.2 业务功能以下从业务角度出发,给出了系统的总体用例图,包含商品选购、网上订货、贷款支付、商品发货、退货管理、订单管理和发货信息等用例,如下图所示:图2.6 系统总体用例图2.2.2.1 商品选购图2.7 商品选购用例图表2-1 商品选购用例描述描述项说明
10、用例名称商品选购标识符*YL01用例描述描述了买家使用本系统销售管理子系统进行商品选购的整个过程参与者表客户(买家)优先级1状态*进行中前置条件用户已登录系统后置条件系统给出操作成功提示基本操作流1.用户在系统主页上选择商品分类,进入商品列表查看界面或在搜索框中要购买商品关键信息进行检索,提取符合条件的商品列表;2.找到所需商品后点击“查看详细信息”按钮,进入商品详细信息查看页面;3.确定购买后,设置购买数量,点击界面上的“放入购物车”按钮;4.根据需要,点击“继续购物”按钮,返回主界面继续选购其他商品;可选操作流1用户将选购商品放入购物车后,不继续选购其他商品,进入购物车中确认商品信息,确认
11、无误后,点击结算按钮,进入支付界面。2. 用户将选购商品放入购物车后,可以进入购物车删除已放入商品。被泛化用例表该用例的特化用例列表被包含用例表无被扩展用例表无修改历史记录*暂无问题*暂无决策*暂无频率*暂无表2-2 商品信息获取用例描述描述项说明用例名称商品信息获取标识符*YL02用例描述描述了买家使用本系统进行商品信息获取的过程参与者表客户(买家)优先级2状态*进行中前置条件用户已登录系统后置条件系统显示所获取商品信息基本操作流1.用户在系统主页上选择商品分类,进入商品列表查看界面。2.输入关键字,进入关键字相关商品列表查看界面。可选操作流无被泛化用例表无被包含用例表商品选购被扩展用例表无
12、修改历史记录*暂无问题*暂无决策*暂无频率*暂无表2-3 购物车管理用例描述描述项说明用例名称购物车管理标识符*YL03用例描述描述了买家使用本系统进行购物车管理的整个过程参与者表客户(买家)优先级2状态*进行中前置条件用户已登录系统后置条件系统给出操作成功提示基本操作流1.用户在系统商品列表页面选择某一商品2.点击“加入购物车”按钮3.将商品加入购物车可选操作流1用户可同时选择多种商品再点击“加入购物车”按钮,同时加入多种商品 被泛化用例表无被包含用例表商品选购被扩展用例表无修改历史记录*暂无问题*暂无决策*暂无频率*暂无2.2.2.2 货款支付2.2.2.3 订单管理2.2.2.4 发货管
13、理2.2.2.5 退货管理2.2.2.6 商品管理2.2.2.7 统计查询2.2.2.8 用户管理2.2.2.9 日志管理2.2.2.10 系统角色管理2.2.2.11 用户级别管理2.3 数据需求图2.8 系统概念类图如上图所示,经过分析后得知系统中所需的类和各类之间的关系如上图所示。图中后台管理界面类提供对系统角色、系统用户、用户级别、系统日志、商品类别的维护工作。购物界面类提供对商品信息、购物车、订单、支付记录、发货记录、退款申请的各类操作。2.3.1 商品选购图2.16 商品选购类图缩略表示2.3.2 货款支付2.3.3 订单管理2.3.4 发货管理2.3.5 退货管理2.3.6 商品
14、管理2.3.7 统计查询2.3.8 用户管理2.3.9 日志管理2.3.10 系统角色管理2.3.11 用户级别管理第三章 系统设计任何工程项目,在生产之前必须要作设计,软件工程项目也一样,在软件编码前也必须先进行软件设计。软件设计是软件开发的关键步骤,直接影响软件的质量。如果说在软件需求分析阶段已经完全弄清楚了软件的各种需求,就较好地解决了所开发的软件“做什么”的问题,并已在软件需求说明书中详尽和充分地阐明了这些需求,那么下一步就要着手对软件系统的功能结构、数据结构和用户界面等进行设计,即软件设计阶段要解决“怎么做”的问题,并最终通过“设计模型图”来反映设计的结果。3.1 总体设计系统功能架
15、构设计定义软件系统各主要部件及成分之间的关系。图3.1 系统总包图如上图3.1所示,系统一共分为两个子系统,网上购物子系统和后台管理子系统。其中,网上购物子系统又分为商品选购、货款支付、订单管理、发货管理、退货管理、商品管理、统计查询共7个模块。后台管理子系统又分为用户管理、日志管理、系统角色管理和用户级别管理共4个模块。3.2 功能模块设计3.2.1 商品选购3.2.1.1 功能结构设计使用UML包图给出子功能架构,例如图3.2 商品选购包图“商品选购”功能主要目的是为买家提供购买卖家提供的商品的功能;此外,该功能还负责将用户选中的商品放入购物车,对购物车进行管理。因此,商品选购模块主要涉及
16、商品信息获取以及购物车管理两个子模块。其中商品信息获取模块主要分为检索商品和查看商品详细信息两个组成部分。购物车管理又分为将商品放入购物车和将商品从购物车移除两个部分。3.2.1.2 类图设计图3.3 商品选购类图如上图所示,商品选购类图中一共有6个类,其中:商品选购界面类主要负责响应页面发出的商品信息获取请求,负责购物车的维护;购物车管理类是购物车管理主功能类;商品信息获取类主要负责根据各类格式或条件获取商品的信息以及对商品类型的管理;商品信息类是商品信息实体类,具备单元信息维护功能;商品类别类是商品类别实体类,具备单元信息维护功能;购物车记录类是购物车实体类,具备单元信息维护功能。3.2.
17、1.3 顺序图设计图3.4 商品选购顺序图图3.5 商品信息获取顺序图图3.6 购物车管理顺序图3.2.1.4 核心处理流程设计在上述顺序图3.4中,“根据关键字搜索商品”和“添加购物车记录”这两个方法还可以进一步细化,将在3.2.1.3中利用活动图进行进一步的细化说明,如图3.7和图3.8。图3.7根据关键字搜索商品活动图图3.8添加购物车记录活动图在上述顺序图3.5中,“根据商品ID获取商品对象实体”这个方法还可以进一步细化,将在3.2.1.3中利用活动图进行进一步的细化说明,如图3.9。图3.9根据商品ID获取商品对象实体活动图在上述顺序图3.6中,“将商品从购物车删除”这个方法还可以进
18、一步细化,将在3.2.1.3中利用活动图进行进一步的细化说明,如图3.10。图3.10将商品从购物车删除活动图3.2.2 货款支付3.2.2.1 功能结构设计3.2.2.2 类图设计3.2.2.3 顺序图设计3.2.2.4 核心处理流程设计3.2.3 订单管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.2.3.1 功能结构设计3.2.3.2 类图设计3.2.3.3 顺序图设计3.2.3.4 核心处理流程设计3.2.4 发货管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.2.4.1 功能结构设计3.2.4.2 类图设计3.2.4
19、.3 顺序图设计3.2.4.4 核心处理流程设计3.2.5 退货管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.2.5.1 功能结构设计3.2.5.2 类图设计3.2.5.3 顺序图设计3.2.5.4 核心处理流程设计3.2.6 商品管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.2.6.1 功能结构设计3.2.6.2 类图设计3.2.6.3 顺序图设计3.2.6.4 核心处理流程设计3.2.7 统计查询1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.
20、4.3.4.5.3.4.6.3.4.7.3.2.7.1 功能结构设计3.2.7.2 类图设计3.2.7.3 顺序图设计3.2.7.4 核心处理流程设计3.2.8 用户管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.4.7.3.4.8.3.4.9.3.2.9.1 功能结构设计3.2.9.2 类图设计5.6.7.7.1.7.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.4.7.3.4.8.3.4.9.3.2.9.13.2.9.23.2.9.3 顺序图设计3.2.9.4 核心处理流程设计3.2.9 日志
21、管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.4.7.3.4.8.3.4.9.3.4.10.3.2.10.1 功能结构设计3.2.10.2 类图设计3.2.10.3 顺序图设计3.2.10.4 核心处理流程设计3.2.10 系统角色管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.4.7.3.4.8.3.4.9.3.4.10.3.4.11.3.2.11.1 功能结构设计3.2.11.2 类图设计3.2.11.3 顺序图设计3.2.11.4 核心处理流程设计3.2.11
22、 用户级别管理1.2.3.4.4.1.4.2.3.4.1.3.4.2.3.4.3.3.4.4.3.4.5.3.4.6.3.4.7.3.4.8.3.4.9.3.4.10.3.4.11.3.4.12.3.2.12.1 功能结构设计3.2.12.2 类图设计3.2.12.3 顺序图设计3.2.12.4 核心处理流程设计3.3 数据库设计3.3.1 主要实体类关系图图3.51 网上购物管理信息系统实体类关系图图3.52 日志管理实体类关系图3.3.2 主要数据库表设计(1)商品类别保存商品类别的基本信息。表3-26 商品类别表字段名数据类型长度主键否商品类别IDGuid主键商品类别名称nvarchar
23、(20)20否(2)商品信息保存商品的基本信息。表3-27 商品信息表字段名数据类型长度主键否商品IDGuid主键商品名称nvarchar(150)150否单价int否库存量int否描述信息nvarchar(255)255否商品照片Binary否商品类别nvarchar(50)50否商品状态nvarchar(10)10否(3)购物车记录保存购物车记录的基本信息。表3-28 购物车记录表字段名数据类型长度主键否购物车记录IDGuid主键购物车所有者IDGuid否商品IDGuid否购买数量int否创建日期Datetime否商品总额int否(4)订单项保存订单项的基本信息。表3-29 订单项表字段名
24、数据类型长度主键否订单项IDGuid主键订单IDGuid否商品IDGuid否购买数量int否商品总额int否(5)订单保存订单的基本信息。表3-30 订单表字段名数据类型长度主键否订单IDGuid主键客户IDGuid否订单总额int否下单日期Datetime否支付状态nvarchar(10)10否发货状态nvarchar(10)10否结单日期Datetime否(6)用户信息保存用户的基本信息。表3-31 用户信息表字段名数据类型长度主键否用户IDGuid主键用户名nvarchar(10)10否用户编号nvarchar(20)20否密码nvarchar(20)20否电子邮件nvarchar(50
25、)50否手机号码nvarchar(50)50否座机号码nvarchar(50)50否发货地址nvarchar(255)255否性别bit1否(7)退货申请表保存退货申请的基本信息。表3-32 退货申请表字段名数据类型长度主键否退货申请IDGuid主键订单IDGuid否处理日期Datetime否申请人IDGuid否问题描述nvarchar(255)255否反馈结果nvarchar(255)255否退货申请状态nvarchar(10)10否退货申请提交日期Datetime否(8)支付记录保存支付记录的基本信息。表3-33 支付记录表字段名数据类型长度主键否支付记录IDGuid主键订单IDGuid否
26、支付方式nvarchar(10)10否支付记录状态nvarchar(10)10否支付时间Datetime否支付总额int否支付人IDGuid否(9)商品发货记录保存发货记录的基本信息。表3-34 商品发货记录表字段名数据类型长度主键否发货记录IDGuid主键订单IDGuid否发货日期Datetime否发货记录状态nvarvhar(10)10否货运公司名称nvarvhar(50)50否物流信息nvarvhar(255)255否运单号nvarvhar(20)20否(10)系统日志保存系统日志的全部内容。表3-35 系统日志表字段名数据类型长度主键否日志记录IDGuid主键操作人IDGuid否日志操
27、作类型Nvarchar(20)20否操作时间Datetime否描述用户操作的详细信息Nvarchar(255)255否第四章 总结与展望4.1 总结随着社会信息化发展与综合化发展趋势,XXX系统已成为各大企业和商家的重点。本文从网上购物的实际工作需求出发,详细的阐述了需求分析、系统设计、数据库设计的全过程。提出了XXXX的软件架构,分别运用XXXXXX设计实现了XXX系统。本文所做的主要工作有如下几方面:1.2通过系统的整体设计与开发过程,不仅使我深入的了解XXXXXXXX,而且也使我学到了XXXXXXXXXX。除此之外,由于此次负责需求分析的过程,使我对软件工程中需求工程的理论知识有了更深的
28、认识,对于如何诱导用户需求和与用户沟通有了更深入的体会,受益匪浅。4.2 进一步的工作虽然,本文完整的设计了XXXX系统。但是系统的整体设计中仍然存在不少问题。1. Web应用程序缓存技术。XXX统由于用户群体基数大,访问量大,同时使用人数多,因此采取何种缓存技术更有利于提高系统的性能将是需要讨论的问题之一。附录参考文献1234 Jackson M. Software Requirements & Specifications: A Lexicon of Practice, Principles and Prejudices. Harlow: Addison-Wesley, 1995.5 IE
29、EE STD. IEEE Recommended Practice for Software Requirements Specifications. IEEE STD 830-1998(Jun 25), P2063.6 Gerald Kotonya and Ian Sommerville. Requirements Engineering: Process and Techniques. John Wiley&Sons, 1998.致谢我研究生阶段的学习生活即将结束。回顾以往,各位老师的教育指导和同学们的关怀照顾一直陪伴在我的学习、工作和生活中,我走出的每一步都有他们的帮助。在此,我要向他们表示我诚挚的谢意!值此本论文最终完成之际,我首先要深深地感谢我的导师XX教授。XXXXXXXXXXXXXXXXXXX。其次,今日论文的完稿,还多承蒙一样对我进行悉心指导的XXXX老师。XXXXXXXXXXXXXXXXXXXXXX 。再次,非常感谢XXXXXXXXXXXXX,在此我表示深深的谢意。 最后,感谢我的家人和朋友对我的支持和帮助。XXXXXXXXXXXXXXX。