




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 系 专业 班 学号 姓名 密封线试卷类型: A 苏州科技学院 软件设计与体系结构 试题使用专业年级软件外包1311-1312 考核方式: 考查 共 1 页题号一合计得分内容:一、自选一个软件项目,软件项目类型不限。采用面向对象技术进行分析和设计,在设计环节必须使用设计模式,要求至少使用4种设计模式。设计文档中应包括:需求分析、每个类的类图、类之间的相互关系,使用了哪些设计模式,遵循了哪些面向对象设计原则。每位同学必须独立完成,设计结果以打印文档的方式提交,文档格式可参考毕业设计文档格式。软件设计与体系结构非卷面试题设计题目 书籍订购系统院 系 电子与信息工程学院专 业 计算机科学与技术学生姓
2、名 闫自立 学生学号任课教师 倪 启 东目录第1章 绪论11.1 引言系统意义11.2 系统简介11.3 主要研究内容1第2章 需求分析12.1 总体需求12.2 用户群体描述1第3章 概要设计13.1 总体功能模块设计13.2 模块功能概要设计13.2.1 会员用户信息管理模块13.2.2 书籍信息管理模块13.2.3订单管理14.1 复合模式14.2 简单工厂模式14.3 组合模式14.4 观察者模式14.5 迭代器模式14.6 适配器模式1第5章 面向对象设计原则15.1 单一职责原则15.2 开闭原则15.3 Liskov里氏替换原则15.4 接口分离原则14
3、第1章 绪论1.1 引言系统意义图书订购系统网站应该能够为用户和读者提供充足的书源和图书快捷方便上架与查询的方法,但是一直以来消费者必须到书店去选择图书、商家使用传统的方式对书籍进行管理,这种模式有着诸多的缺点不足,如:效率低下、查询困难、不能及时准确获取想要的有效图书信息。因此根据书店、出版社之、读者三者之间相互需求互补,将读者需求、书店购买、出版商销售业务管理纳入图书订购系统网络管理,方便消费者订购自己想要的图书以及得到相关的图书信息、方便书店的书籍定购与出版社的书籍市场销售、出版数量决定,提高书店与出版社的购书和卖书工作效率,更好的方便信息交流。1.2 系统简介书籍信息是本系统的重要组成
4、部分用户可以通过书籍的种类或者书店等条件查看自己感兴趣的书籍,便于用户在选择书籍的时候能够更加得心应手。书籍订购系统的功能是系统管理员添加店铺并授权给店铺,使得店铺可以添加自己的书籍,普通用户可以使用浏览器或者移动端进行书籍的检索、查看书籍信息并且可以查看已经购买的用户对本书籍的评价。除了这个查看功能之外,作为书籍订购软件,旗下拥有大量的会员,会员可以对自己喜爱的书籍进行下单 ,支付。图书订购系统注册者可以对自己买得到的书籍进行评价打分(包括可以评价书籍的内容价格质量、书店的服务态度环境、物流时间价格服务态度等)。1.3 主要研究内容利用Java开发制作一个前台页面,用于展示书籍的信息与书店的
5、信息,让用户可以进行根据类别查询书籍信息,收藏或下单购买。在后台可以通过Web窗体的相关控件来实现,适当的添加SQL Server数据库,这样可以简便的完成后台管理的操作。从用户信息管理的视角看,主要是用户注册之后审核用户信息的录入,密码,修改,查询。从书籍信息管理的视角看,主要是书籍信息的录入,删除,修改,查询。从书籍订单信息管理的视角看,主要是订单信息的录入,删除,修改,查询。第2章 需求分析2.1 总体需求书籍管理系统的设计与开发所要达到以下的总目标要求,即主要要实现功能:1、 会员登录功能:会员在前台页面根据用户名与密码实现安全登录,没有注册的用户可以通过手机号或者邮箱进行验证注册,然
6、后可以登录系统。2、 书籍查询功能:游客与会员可以通过书籍的类别(书名、价格、出版社、书籍作者、书籍类型、语言等关键字)进行查询,用户可以得到书籍的名称、价格、出版日期、库存等信息。3、 书籍添加:系统管理员分配书店用户权限(不同的权限可以使用不同的功能),用户可以推荐图书然后书店可以添加读者订购热度高的,质量好书籍,系统管理员在审核成功将会发布到系统上。4、 订单管理:会员可以搜索自己想买的书籍,添加到自己的购物车中,会员可以选择购物车中的图书在线付款购买下单。5、 收藏功能:用户可以对自己喜欢的书籍与店铺加入收藏夹,每次打开收藏夹就可以查看到。6、 系统操作主要流程开始注册用户登陆在线图书
7、订购系统游客(未注册用户)判断浏览书店、出版社信息,搜索并查询图书信息等判断用户角色书店用户添加图书业务出版社用户处理销售业务结束系统用户基础信息管理系统基础信息管理2.2 用户群体描述1、游客游客可以通过前台的页面浏览书籍与书店的信息,如果浏览到中意的书籍可以进行收藏或者下单购买,游客就必须进行登录。2、会员会员拥有游客的一切功能,查看书籍与店铺的信息。会员在登录成功之后可以实现店铺与书籍的收藏,会员在找到书籍的时候可以实现下单、付款,当然用户发现自己买错书的时候也可以实现退单的功能。会员也可以实现订单评价功能,当用户在收到自己购买的书籍的时候可以对本次订单进行评价。如果购买的书籍与自己看到
8、的不符合,会员可以实现申请退单。3、书店管理员书店管理员需要向本公司提出申请,在书店管理员的申请成功后,将会得到系统管理员赋予自己的权限:销售书籍、添加书籍等功能。用户添加销售的书籍需要通过管理员的审核。4、系统管理员系统管理员对申请店铺的书店进行审核成功之后,将会授予该店铺售书的权限,当然系统管理员也会对书店销售的书籍进行审核,以确保书籍的质量。图 2.2 用户群体图第3章 概要设计3.1 总体功能模块设计图3.1 系统总体模块图3.2 模块功能概要设计3.2.1 会员用户信息管理模块该模块会员使用账号密码登录,新会员需要注册,注册后个人信息就会保存到数据库中,系统管理员审核通过后会员合格,
9、会员可以修改自己的密码、修改查看完善个人信息,上传头像,可以查看书籍信息、收藏、购买书籍。如图3.2.1图3.2.1 会员功能图3.2.2 书籍信息管理模块该模块书店当管理员添加书籍时填写:书籍名称、类型、价格、封面图片、出版时间、出版商、书籍库存,同时还要上传书籍的目录图片便于会员查看。图3.2.3 书籍信息图3.2.3订单管理在该模块中,会员用户在选择好自己喜欢的书籍的时候,可以进行下订单(会员已经登录,否则登陆)。在书店发送订单之前,用户可以修改订单上快递的信息,如收货人,手机号,地址。当然如果会员觉得订单下达出错的时候,用户可以申请退单。图3.2.2 订单管理图第4章 系统所用到的设计
10、模式4.1 复合模式图4.1复合模式4.2 简单工厂模式简单工厂模式属于类创建型模式。简单工厂模式就是根据参数的不同返回不同的类的实例。简单工厂模式特地定义了一个工厂类创建其他类的实例,被创建的实例一般都是相同的父类派生而来。图 4.2简单工厂模式在上图中,Factory是工厂类,负责实现创建所有实例的功能。工厂类可以被直接调用以创建所需的对象实例。用户使用系统,系统根据用户所分配到的权限调用UserFactory创建用户实例:游客、会员、书店管理员与系统管理员,根据不同的类别的用户,系统将会分配不同的权限与功能。 4.3 组合模式组合模式有时候又叫做部分整体模式, 它使我们属型结构的问题中,
11、模糊了解了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素。组合模式可以优化实现递归和分级数据结构,当表示对象的部分整体层次结构或忽略组合对象与单个对象的不同时,然后可以无差别统一地使用组合结构中的对象。图 4.3组合模式在上图中,OrderFlock是订单集合类,用户调用registerObserver函数添加新的订单;调用deleteObserver函数删除废弃的订单 ;调用notifyObservers函数使用迭代器依次获取订单的信息;调用pay函数用户对订单在线付款。4.4 观察者模式在观察者模式中,目标实例管理所有依附它的观察者实例,并且主动在它的状态改变时发出
12、通知,经常透过呼叫各观察者所提供的函数来实现。观察者模式经常用在实现事件处理系统的情况。图 4.4观察者模式在上图中, 将会对每个订单的支付事件进行监测,获取每张订单的支付功能。4.5 迭代器模式聚合对象拥有两个职责:一是存储内部数据;二是遍历内部数据。从依赖性看,存储内部数据为聚合对象的根本功能,属于相互依存、互不可少、同时存在关系;而后者既可以是可变化的,又是可分离的。因此可以将遍历行为专门地抽象为一个迭代器,特别用以实现遍历聚合内部数据对象功能,这是迭代器模式的最基本属性。迭代器模式(Iterator Pattern)提供了一种方法来访问聚合对象中各个元素,而不用暴露这个对象的内部表示,
13、其别名为游标(Cursor)。它是一种对象行为型模式。图 4.5迭代器模式图在上图中,用户调用notifyObservers,ArrayList集合将会使用迭代器Iterator遍历订单信息。4.6 适配器模式适配器模式用以把一个类的接口改变为希望的另一种接口,实现因接口不匹配而无法适应在一起工作的类能在一起工作。s图 4.6适配器模式在上图中,当系统用户使用order方法的时候,将使用addShopUser的方法;当书店用户调用order的方法的时候,将会使用addBooks的方法。第5章 面向对象的设计原则5.1 单一职责原则总体目标为:一个类只做一个职责,只有极少的外面实例能够改变它的状
14、态。可以看做低耦合、高内聚在面向对象原则方面的扩展,职责引起变化,提高内聚性来减少降低耦合度。职责和引起改变的原因相关,职责依赖、相互之间产生影响,最终破坏其内聚性和耦合度。 基本的单一职责,有极少的函数,不为类具体或不相关的功能函数,以保证实体只有一个引起它变化的原因。5.2 开闭原则其核心思想是:软件功能可以扩展但是不能随便修改变化。主要实现在:(1) 对外扩展开放,需求增加或变化,允许对现行代码进行扩展,满足新情况;(2) 对修改封闭,表示类在设计结束后,能够自己运行,而不需要对其有其他改变。开放封闭原则总体目标是面对抽象编程,而不是不对具体实现编程,因为抽象是稳定的,具体的实现需求是变化的。5.3 Liskov里氏替换原则其核心思想是:子类可以用作基类。表现为对继承复用的规则,在子类能够被当做基类时,才实现系统在运行时识别子类,实现了继承复用。建立在对抽象和多态建立在继承的基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小导管注浆施工工艺流程图
- 2025年陶瓷分离膜及功能隔膜项目申请报告模板
- 《彩色的梦》课件 部编人教版二年级下册
- 《职业素养》课件 模块5-8 绿色技能 -职业发展素养
- 汽车传感器与检测技术电子教案:流量传感器工作原理
- 创伤性脊柱脊髓损伤康复治疗专家共识
- 商场员工关系管理制度
- 咖啡书屋公司管理制度
- 安徽省安庆、池州、铜陵三市2022-2023学年高二下学期化学期末检测试题(含答案)
- 仓库公司推广活动方案
- 万达集团管理制度汇编-项目管理制度
- 比较中国的单一制和美国的联邦制
- GB/T 4457.2-2003技术制图图样画法指引线和基准线的基本规定
- GB/T 28270-2012智能型阀门电动装置
- 医院搬迁方案
- “化危为安”线上讲堂第70期 加强化工过程安全管理 实现安全治理模式向预防转型
- 威索WM系列燃烧机调试步骤
- 软土地基处理新技术课件
- 幼儿园精选优质公开课:中班音乐游戏-快乐的小青蛙(第十届)
- 2022年天津市南开区小升初数学试卷
- (100+170+100)m变截面三向预应力连续刚构桥挂篮悬臂浇筑法施工方案49页
评论
0/150
提交评论