哈尔滨理工大学

软件与微电子学院

实 验 报 告

(2020-2021第一学期)

课程名称:软件体系结构
班 级:软件18- 1 班
学 号:1814010130
姓 名:张立辉

哈尔滨理工大学软件与微电子学院


实验名称:实验一 某应用系统C/S风格软件体系结构的需求分析、客户端程序处理流程及程序结构设计专 业软件工程
姓 名张立辉学 号1814010130班 级软件18-1

一、实验目的:

1.理解C/S体系结构有数据库服务器、客户应用程序和网络三个主要组成部分。
2.理解客户应用程序的开发应集中于数据显示和分析,数据库服务器的开发应集中于数据管理。
3.理解客户应用程序应提供用户与数据库交互的界面;向数据库服务器提交用户请求并接收来自数据库服务器的信息;利用客户应用程序对存在于客户端的数据执行应用逻辑要求。

二、实验内容:

1.对于某个应用系统,进行软件体系结构的需求分析,说明选用C/S风格的原因,对服务器和客户应用程序进行任务分配。
2.用模块层次图描述客户端软件结构,以说明客户端程序由哪些模块组成,模块与模块之间的调用、被调用和顺序关系等关系。
3.对于某个应用系统的C/S风格客户端程序处理流程进行设计,使用多层DFD图及各UML图,采用图形化的方法描述最主要、关键、核心的处理流程。

三、实验设备及软件环境:

Windows10
Office2016

四、实验过程及结果:

一:系统的总体需求:

本系统主要实现对图书馆图书借阅信息的管理,主要管理读者信息、图书信息、借阅与归还信息、系统用户的信息。
1.普通用户:可以查询图书,查看公告,查询个人信息,预约借书,还书。
2.图书管理员:发布公告,上架新书,下架图书,处理书籍的借阅和异常还书。
3.系统管理员:管理用户和管理员的密码,添加和删除普通用户和图书管理员。

二:用例分析:

系统功能图:
系统功能图

物理图:
物理图

开发视图:
开发视图

E-R图:
E-R图

读者用例图:
读者用例图

管理员用例图:
管理员用例图

系统管理员用例图:
系统管理员用例图

图书信息实体E-R图:
图书信息实体E-R图

操作员信息实体E-R图:
操作员信息实体E-R图

库存信息实体E-R图:
库存信息实体E-R图

数据流图:
数据流图

序列图:
序列图

活动图:
活动图

1.用例名称:查看公告

用例描述:读者查看图书管理员发布的一些公告
前置条件:以用户身份登录
后置条件:无
基本操作流程:
以用户身份登录à进入公告页面
可选流程:
如果密码输入不正确,提示重新输入
如果用户名不正确,提示没有此用户

2.用例名称:查询图书信息

用例描述:由读者进行操作,查询图书馆中有没有该书,如果有,则显示该书的所有信息
前置条件:用户登录系统
后置条件:无
基本流程:
用户登录à输入图书名称à显示相关图书信息
可选流程:
在保存之前,可以取消操作

3.用例名称:预约借书

用例描述:用户登录系统后,根据图书名称查询图书,系统显示图书信息包括库存可借量,库存大于零可预约借书。
前置条件:用户登录,查询图书库存情况,判断可借状态。
后置条件:系统自动录入借阅状态,管理员审核。
基本流程:
用户登录à预约借书à图书管理员处理审核
可选流程:
图书管理员根据图书库存显示同意或者拒绝借书申请。

4.用例名称:还书

用例描述:由图书管理员更改读者的还书信息,包括书名,还书日期等
前置条件:图书管理员登录
后置条件:改变图书的借阅状态
基本流程:
图书管理员登录à读入用户idà读入图书id—>更改读者和图书的信息à保存操作
可选流程:
在保存之前,可以取消操作

5.用例名称:查询个人信息

用例描述: 用户登录,修改个人信息
前置条件:已有用户登录
后置条件:修改完成保存退出
基本流程:用户登录à修改信息à保存退出
可选流程:
在保存之前,可以取消操作

6.用例名称:登录

用例描述: 用户或管理员根据账户密码登录
前置条件:已有账号密码
后置条件:
基本流程:用户登录à输入账号密码à登陆成功或失败
可选流程:
在保存之前,可以取消操作

7.用例名称:修改密码

用例描述:修改用户的密码,包括普通用户,图书管理员和系统管理员
前置条件:登录成功
后置条件:无
基本操作流程:
以普通用户登录—>选择修改密码—>修改成功
以图书管理员登录—>选择修改密码—>修改成功
以系统管理员身份登录à选择修改密码功能à选择用户类型à修改密码
可选操作:保存之前,可以取消操作

8.用例名称:管理普通用户

用例描述:删除和添加普通用户
前置条件:以系统管理员身份登录
后置条件:无
基本操作流程:
以系统管理员登录à进入管理普通用户页面à进行相关操作
可选流程:
在保存之前,可以取消操作

9.用例名称:管理图书管理员:

用例描述:删除和添加图书管理员
前置条件:以系统管理员身份登录
后置条件:无
基本操作流程:
以系统管理员登录à进入管理图书馆管理员页面à进行相关操作
可选流程:
在保存之前,可以取消操作

三:系统体系结构分析:

该系统采用的是C/S软件体系结构:

C/S(Client/Server):即客户端/服务器结构。主要特点是事务处理能力强、交互性强、网络通信量小、利于处理大量数据 。
C/S结构的客户端和服务器端软件程序是相对独立的,用户的程序主要在客户端,服务器端主要提供数据管理、数据共享、数据及系统维护和并发控制等,客户端程序主要完成用户的具体的业务。
(1)优点:具有较强的事务处理能力,可实现复杂的业务流程;可支持个性化显示,实现不同的客户端展示不一样的皮肤效果。
(2)缺点:需要安装客户端进行管理操作,针对不同的操作系统,需要安装不同的版本软件。

B/S(Browser/Server)架构:

浏览器----服务器结构,B/S 要求有操作系统和浏览器就行,与操作系统平台无关(可以实现跨平台),对客户端的计算机电脑配置要求较低。
(1)优点:
分布性强,客户端零维护。只要有网络、浏览器,可以随时随地进行查询、浏览等业务处理。
业务扩展简单方便,通过增加网页即可增加服务器功能。
维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
开发简单,共享性强。
(2)缺点:
个性化特点明显降低,无法实现具有个性化的功能要求。
在跨浏览器上,BS架构不尽如人意。
客户端服务器端的交互是请求-响应模式,通常动态刷新页面,响应速度明显降低(Ajax可以一定程度上解决这个问题)。无法实现分页显示,给数据库访问造成较大的压力。在速度和安全性上需要花费巨大的设计成本。
功能弱化,难以实现传统模式下的特殊功能要求。介绍完B/S架构和C/S架构各自的优缺点后,介绍一下选择C/S架构的原因。因为在本项目中有查询计算模块,而这需要系统极短的响应时间,而B/S架构客户端服务器端的交互是请求-响应模式,通常动态刷新页面,响应速度明显降低(Ajax可以一定程度上解决这个问题)。无法实现分页显示,给数据库访问造成较大的压力。而C/S架构能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器,所以CS客户端响应速度快。

五、总结:

通过本次的实验学习,向数据库服务器提交用户请求并接收来自数据库服务器的信息,对C/S体系风格的使用有了更加深刻的认识,对4+1模型有着更加深刻的认识。对于课程的学习有了起到了一定的促进作用,有了很大的收获。

实验成绩: 指导教师: 年 月 日

最后修改:2021 年 05 月 11 日
如果觉得我的文章对你有用,请随意赞赏