演示视频:
https://www.bilibili.com/video/BV1gj411p7mK/
3.1架构设计目标
软件架构设计要达到如下的目标:
1.可行性(Feasible)。架构具有可行性是架构设计的基石。
2.可靠性(Reliable)。软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。
3.安全行(Secure)。软件系统所承担的交易的商业价值极高,系统的安全性非常重要。
4.可定制化(Customizable)。同样的一套软件,可以根据客户群的不同和市场需求的变化进行调整。
5.可扩展性(Extensible)。在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展。
6.可维护性(Maintainable)。软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持的花费。
7.可升级性(Scalable)。软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。
8.客户体验(Customer Experience)。软件系统必须易于使用。软件的最终用户很可能是不具有计算机专业技术的人员。
3.2 系统架构设计
下面我们将根据架构设计原则和信息系统原理来建立系统的架构设计模型。将信息系统中比较关心的对象分层,可分为三层:用户界面层、业务层、数据访问层(如下图3-2所示),再把各层中的一些公共部分提出来:权限管理、异常处理,这样得到包图如图3-2-1所示:

图3-2 系统体系架构图
Fig3-2 The Diagram of System Architecture

图3-2-1 包图
Fig3-2-1Package Diagram of Sales Management Model
1.用户界面包
用户界面包的职责是:
(1)与用户的交互,接收用户的各种输入以及输出各种提示信息或处理结果。
(2)对于输入的数据进行数据校验,过滤非法数据。
(3)向业务处理对象发送处理请求。
用户界面包图展开如图3-3所示:

图3-3 用户界面包展开图
Fig3-3 Package Diagram of Users Interface
用户界面包包含的类见图2-4:

图3-4 用户界面类图
Fig3-4 Class Diagram of Users Interface
2.业务逻辑包
业务逻辑包的职责是:
(1)实现各种业务处理逻辑或处理算法。
(2)验证请求者的权限。
(3)向数据访问对象发送数据持久化操作的请求。
(4)向用户界面层返回处理结果。
业务逻辑包图展开如图3-5所示:

图3-5 业务逻辑包图展开
Fig3-5 Package Diagram of Business
业务逻辑包包含的类见图3-6:

图3-6 业务逻辑类图
Fig3-6 Class Diagram of Business
3.数据访问包
数据访问层的职责是:
(1)实现数据的持久化操作。
(2)实现事务处理。
数据访问包图展开如图2-7所示:

图3-7 数据访问包图展开
Fig3-7 Package Diagram of Data Access
数据访问包包含的类见图3-8:

图3-8数据访问类图
Fig3-8 Class Diagram of Data Access
对于每一个业务处理中需要持久化操作的对象都可以对应为一个数据库访问对象,在很多业务处理中需要请求多个数据库访问对象来进行数据的读写操作,而这些操作又必须在同一个事务中,这时需要用同一个数据库连接对象来进行统一的事务处理。这里的数据库连接类的创建用到了单件(Singleton)模式,保证一个类仅有一个实例,一个客户在同一时刻只能用一个数据库连接对象。
3.权限管理包
权限管理的主要职责是:
(1)验证请求者的请求权限。
(2)提供请求者的权限列表。
权限管理包图展开如图3-9所示:

图3-9权限管理包图展开
Fig3-9 Package Diagram of Access Authorization
权限管理包包含的类见图3-10:

图3-10权限管理类图
Fig3-10 Class Diagram of Access Authorization
3.异常处理包
异常处理的职责:
(1)汇报运行时的详细异常信息。
(2)记录异常处理日志。
异常处理包图展开如图3-11所示:

图3-11异常处理包图展开
Fig3-11 Package Diagram of Exception Processing
异常处理包包含的类见图3-12:

图3-12异常处理类图
Fig3-12 Class Diagram of Exception Processing
因为异常处理类型比较多,如:系统异常、数据库异常、业务逻辑异常等,针对不同类型的异常处理方式也容易变,如:显示错误,记录文本日志,记录数据库日志等,所以这里使用了桥接(Bridge)模式来实现,使各部分的变化比较独立。
3.3 系统架构类图
将包图展开,得到类图,它是架构的静态结构图,表达了各个类之间的静态联系。企业客户服务及产品管理系统中的系统架构类图如下图3-13所示。

图3-13 系统架构类图
Fig3-13 Class Diagram of System Architecture
4 系统详细设计
3.1 系统模块设计
4.1.1 登陆
在用户登录界面,在用户名对应的文本框中输入用户名,在密码对应的文本框中输入密码,如果用户名和密码同时与数据库中的用户名和密码相对应,点击“确定”后进入系统的主界面。如果输入的信息不正确,则给出提示。
输入:用户名和密码。
处理:校检字符的有效性。用户要登录本系统需要提供用户名和密码,在这里就是要检验用户是否满足输入的要求,即检验用户名和密码文本框是否为空,若为空,则提示用户输入用户名和密码。检验用户名是否存在或密码是否正确,即是否存在用户输入的用户名,并且密码是否正确。
输出:登录成功,进入用户的系统使用资源页面,不成功则显示错误信息页面。
界面如下图所示:

4.1.2 产品信息管理
管理员进入系统后可以对产品信息进行管理,包括对产品信息的添加、修改、删除的功能。
a) 添加产品的信息操作:
点击添加产品信息按钮。并输入所需添加产品的内容,内容包括产品编号,产品名称,产品单位,生产日期,生产数量,成本金额。
检测所输入的内容是否符合用户数据库表中字段定义。若不符合则提示输入有误。
提示信息添加成功。
更新产品数据库表的信息。
b) 删除产品信息
点击删除按钮来删除产品的相关信息。
根据产品的表中的关键字产品编号删除表中的一切以产品编号为主键的其他字段。执行sql语句delete并且删除相关属性。
更新数据库表的信息。
c)修改产品
点击修改产品按钮。并输入需要修改的内容,内容包括产品编号,产品名称,产品单位,生产日期,生产数量,成本金额。
检验用户输入的内容是否符合数据库表中字段定义。若不符合则提示输入有误。
如果用记录存在,进行修改操作,输入新的字段,并根据数据库表中对应字段的定义检查输入是否合法,如果输入有错误则进行提示。
如果输入正确,执行(UPDATE)SQL语句,更新数据库表中该项目所对应的记录。
提示信息修改成功。
更新数据库表的信息。
界面如图:

本文介绍了IT系统架构设计的关键目标,如可行性、可靠性、安全性等,并详细展示了三层架构模型(用户界面层、业务层、数据访问层)及其组件,以登陆和产品信息管理模块为例,阐述了具体的设计和操作过程。
2308

被折叠的 条评论
为什么被折叠?



