您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 综合/其它 > 武汉理工大学软件设计与体系结构实验报告
武汉理工大学学生实验报告书实验课程名称软件设计与体系结构开课学院计算机科学与技术学院指导老师姓名陈明俊学生姓名学生专业班级软件zy13022015—2016学年第1学期学生学号实验课成绩实验课程名称:软件设计与体系结构实验项目名称图书管理系统的架构设计实验成绩实验者专业班级软件zy1302组别同组者实验日期2015年10月23日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)实验目的:以图书管理系统为例,完成系统的架构设计,了解架构设计的过程和方法。实验内容:1采用用例驱动的分析方法,分析需求的主要任务,识别系统中的参与者和用例,写出用例的文本,建立用例模型。2根据1的结果,进一步建立领域模型(类图),完成静态模型的建立。3结合某一种具体的框架(比如Java的JavaEE,Spring等)设计系统的架构,要求采用分层的架构和MVC模式,用包图表达架构。4根据1,2,3的结果设计各层包含的类,接口及其交互(类图,顺序图等),尽可能在设计中体现OO的设计原则,设计模式。5完成图书管理系统的数据库设计。二、实验设计(包括实验方案设计,实验手段的确定,实验步骤,实验过程等,用硬件逻辑或者算法描述)建立领域模型:1、从业务描述中提取名词;2、从提取出来的名词中总结业务实体,区分名词中的属性、角色、实体、实例,形成问题域中操作实体的集合;3、从业务实体集合中抽象业务模型,建立问题域的概念;4、用UML提供的方法和图例进行领域模型设计、确定模型之间的关系。注:实体之间的关系,主要有泛化、依赖和关联,关联又分了一般关联、聚合、组合等数据库设计:1.需求分析阶段:综合各个用户的应用需求2.概念设计阶段:形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)3.逻辑设计阶段:首先将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式;然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图(View),形成数据的外模式4.物理设计阶段:根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。三、主要仪器设备及耗材PC机、MicrosoftVisio第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)实验输入:图书管理系统的功能性需求:1学生持有借书证2图书管理员作为借阅者的代理完成借阅图书,归还图书和查询借阅信息工作3系统管理员完成对系统的维护,对系统的维护主要包括办理借阅证,删除借阅证,添加管理员,删除管理员,添加图书,删除图书,添加标题信息,删除标题信息4图书馆服务的对象扩充到老师和学生,学生又分为博士生,研究生,本科生,专科生等,不同类型的对象可以借阅的图书数量和期限都是不同的。5图书的种类扩充到中外文图书,中外文杂志,论文等。6学生和老师可以通过网络进行预约,查询7超期罚款,各种类型的借出物罚款规则不同(超期时间的规定和罚金都不同)二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)1用例模型(1)用例文本:用例编号:001用例名称:用户登录用例描述:用户登录图书馆管理系统参与者:用户前置条件:图书馆的管理系统正常运行后置条件:用户登录成功基本路径:1.用户进入图书馆的登录页面2.用户输入用户名和密码3.登陆成功扩展点:变异点:4a.用户输入的用户名错误4a2.用户重新输入用户名。4b.用户输入的密码错误4b2.用户重新输入密码。用例编号:002用例名称:查询信息用例描述:学生或图书管理员查询学生借阅的书籍。参与者:学生,图书管理员前置条件:图书馆的主页面正常运行后置条件:如果学生信息无误,则查询成功,否则失败。基本路径:1.学生在图书管理系统上进行查询;2.图书管理员对学生的个人信息进行查询;扩展点:变异点:3a.学生向图书管理员提出申请未通过3a1.用户重新提出申请;3a2.图书管理员重新审核。用例编号:003用例名称:学生借阅图书用例描述:学生携带图书借阅证进行图书的借阅。参与者:学生前置条件:图书馆正常开放后置条件:如果学生的图书借阅证扫描成功,学生进入图书馆借阅,进行图书的借阅等操作;否则,不能借阅图书。基本路径:1.学生携带图书借阅证进入图书馆;2.用户到图书馆查阅相关的图书信息;3.学生向图书管理员提出借阅图书的请求;4.图书管理员检查借阅证的有效性;5.图书管理员检查学生有无超期未还信息;6.图书管理员允许学生借阅图书。7.系统添加借阅信息。扩展点:变异点:2a.学生查阅的图书不存在2a1.学生离开图书馆,或学生搜索其他的图书信息;5a.无法借书5a1.系统弹出学生的图书实际借阅的数量超过图书额定的借阅数量5b.无法借书5b1.系统显示图书证与学生本人信息不符;5c.无法借书5c1.系统显示学生有超期未还得图书;5c2.学生归还未还图书并交罚款;5c3.可以借书。用例编号:004用例名称:学生归还图书用例描述:学生到图书馆归还所借阅的图书参与者:学生前置条件:图书馆正常开放、学生携带图书借阅证及所需还的书。后置条件:如果归还了图书,下次可以正常借书。基本路径:1、学生携带图书借阅证,进入图书馆;2、学生归还图书;3、图书管理员检查学生所借图书的情况;4、系统删除学生的借阅信息。扩展点:3a.图书管理员检查学生借阅的图书是否超期3a1.图书管理员检查学生借阅的图书是否损坏3a2.图书管理员判断学生是否缴纳罚金变异点:3a.学生借阅的图书超期3a1.图书管理员根据规定及图书的超期情况向学生收取相应的罚金;3b.学生借阅的读书已损坏3ab1.图书管理员根据规定及图书的损坏情况向学生收取相应的罚金;用例编号:005用例名称:更新图书信息用例描述:图书管理员对新书上架或者是图书下架进行处理参与者:图书管理员前置条件:图书管理员正常工作后置条件:图书馆可以正常开放基本路径:1.搜集旧书和新书的信息1.对新书贴条形码;;2.把旧书下架3.把新书上架;用例编号:006用例名称:更新学生信息用例描述:超级管理员增加或删除学生的信息参与者:超级管理员前置条件:图书馆开放后置条件:学生的信息没有错误基本路径:1.超级管理员搜集学生信息;2.超级管理员增加或删除学生信息扩展点:变异点:2a.学生信息有误2a1.系统显示无法读出用户信息用例编号:007用例名称:处理还书用例描述:处理学生的还书操作。参与者:图书管理员前置条件:图书馆开放后置条件:图书管理系统正常运行基本路径:1.学生发出还书请求;2.图书管理员扫描图书条形码;3.图书管理员检查图书是否有损坏,若有损坏则要求学生按要求交罚款;4.图书管理员检查图书是否超期归还,若是超期还书则要求学生按要求交罚款;2领域模型根据上述用例模型,经一步建立领域模型,如下图1-2:超级管理员ID名称密码用户ID名称类型学生ID学号姓名身份证号学院专业班级联系方式Email入学日期图书图书ID图书编号书名作者单价出版社出版时间上架时间上架操作员图书类型借阅情况借阅图书ID图书编号书名借书日期借书操作员超期时间超期罚款续借图书管理员ID名称编号性别联系方式Email职位入职日期图1-2领域模型设计3系统架构使用基于SSH框架的三层架构,SSH框架是指Struts+Hibernate+Spring三大开源框架技术,用SSH技术进行开发,能够提高开发效率,层次清晰。Struts实现页面的设计和请求的跳转调用业务逻辑;Hibernate实现对数据的增删改查;Spring通过依赖注入控制对象的生成和事务的处理。Struts对Model、View和Controller都提供了对应的组件。Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架,使用基本的JavaBean来完成以前只可能由EJB完成的事情。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,可以应用在任何使用JDBC的场合,可以在Servlet/JSP的Web应用中使用,完成数据持久化的重任。SSH任务分工如图1-3-3所示:图1-3-3系统架构4系统设计(1)超级管理员模块超级管理员可以对系统进行任何操作,主要包括用户管理,角色管理,功能权限管理,菜单管理。超级管理员功能模块如图1-4-1所示:图1-4-1超级管理员功能模块(2)系统的功能模块此系统主要是为了管理员与用户操作,对超级管理员只是在特殊情况下才登录,超级管理员能对系统进行任何操作,因此在功能设计模块里不细讲超级管理员的功能实现以及页面设计。主要介绍管理员与学生的功能实现与页面设计。图书管理员可以查询、添加、删除、修改的图书信息,借阅信息,系统信息;对学生信息可以进行查询,添加,删除,但不能修改学生信息!学生可以查询图书馆所存的图书,借阅情况以及基本信息的修改。图书馆管理系统功能图如图1-4-2所示:图1-4-2图书馆管理系统功能图(3)系统登录模块在本系统中,首先要考虑的问题就是登录系统,通过登录系统对用户权限的判断,控制不同权限的用户进入不同的面页!超级管理员进行超级管理员页面,管理员进入管理员页面,学生进入学生页面。登录系统流程图如图1-4-3所示:图1-4-3登录模块流程图(4)管理员模块此模块是介绍管理员模块的实现,主要是学生信息管理,图书信息管理,借阅信息管理以及系统信息管理。在相关的流程图中,就不作相应的用户判断,默认为管理员身份登录。进入相应的管理员页面,进行相关的操作。1)学生管理模块本系统对学生管理包括:添加学生信息、修改学生信息、删除学生信息、查询学生信息。在添加学生信息与修改学生信息时,进行相应的验证,主要是必填与唯一性验证。学生信息管理流程图如图1-4-4-5所示:图1-4-4-1学生信息管理流程图2)图书管理模块图书信息管理包括:添加图书信息、删除图书、修改图书信息、查询图书信息。在添加图书信息与修改图书信息时,进行相应的验证,主要是必填与唯一性验证。图书信息管理流程图如图3-5所示:图1-4-4-2图书信息管理流程图在添加图书信息与修改图书信息时,也进行了相应的必填与唯一性验证。主要是图书编号,书名,作者,借阅情况为必填项,图书编号与书号不能重复。3)借阅信息管理模块学生借阅信息的管理,主要是对学生借阅图书以及归还图书登记。并判断有没有超期,如果超期,则进行相应的罚款。借阅信息管理流程图如图1-4-4-3所示:图1-4-4-3借阅信息管理流程图4)系统管理系统管理主要是管理员对图书馆信息、工作人员信息以及工作安排的管理。系统管理模块如图1-4-4-4所示:图1-4-4-4系统管理模块(5)学生模块学生页面主要包括基本信息,图书信息以及借阅信息。下面分别对这三个方面作具体的设计:1)基本信息因为学生信息是以表结构呈现的,表里也含有他人的基本信息。为了防止用户可以看到他人的基本信息。在查看自己基本信息时,需要输入学号与姓名,并且学号与姓名必填。输入正确则会显示信息,输入有误则查出的是空表,没有任何数据。基本信息流程图如图1-4-5-1所示:图1-4-5-1基本信息流程图2)图书信息对学生来说,最关心的问题其实是如何方便的查询到想要借阅的书籍,可以及时的了解到图书的相关信息。对图书的查询主要有三种查询方式:根据图书编号,书名以及图书类型。学生可以根据自己了解的情况任选择一种方式。图书信息流程图如图1-4-5-2所示:图1-4-5-2图书信息流程图3)借阅信息借阅信息管理包括查询借书信息与还书信息。还书时要判断是否超期,若超期,则进行相应的罚款。还可以进行行续借操作。借阅信息流程图如图1-4-5-3所示:图1-4-5-3借阅信息流程图5数据库设计1)超级管理员可以对系统进行任何操作,主要包括角色分配,权限控制,菜单管理,系统管理。超级管理员模块总体E-R图如图1-5-1所示:图1-5-1超级管理员模块总体E-R图2)权限管理总体E-R图如图1-5-2所示:图1-5-2权限管理总体E-R图3)用户管理主要包括管理员管理与
本文标题:武汉理工大学软件设计与体系结构实验报告
链接地址:https://www.777doc.com/doc-2225023 .html