3.系统设计

在对系统进行全面分析后,我们开始使用UML对系统进行设计,构造BMS系统的设计模型,包括类图、包图、顺序图(实现模型)、组件图和部署图等的绘制,回答了“怎么做”的问题。具体设计工作如下:

3.1 体系结构设计

BMS采用多层Java EE设计方案,考虑到系统的扩展性,定义了抽象的数据访问层,系统体系结构图如图3-1所示:

图3-1 BMS体系结构图

在图3-1中,BMS系统一共包含五层,其中表示层使用JSP来实现,控制层使用Servlet实现,Servlet将调用业务逻辑层中的方法实现具体业务功能,如果业务功能在实现过程需要访问数据库,则调用数据访问层中的数据库操作方法,为了保证系统的扩展性,我们定义了抽象的数据访问层,业务逻辑层针对抽象数据访问层编程,而将具体数据访问类类名存储在配置文件中,使用XML格式的文件作为配置文件,提高系统的可扩展性。具体实现方案如图3-2所示:

图3-2 数据访问层扩展实现方案

3.2 类图

类图是一个面向对象系统最核心的设计图之一,BMS的主要功能包括bug管理和人员信息管理,针对这两个主要功能模块,我们绘制了两个类图,图3-3对用户信息管理进行建模,图3-4对bug信息管理进行建模。

为了更好地描述各种不同的类,我们使用了彩色UML建模方式,不同类型的类使用不同的颜色来表示,如使用红色表示数据传输类DTO,使用粉红色表示JSP界面类,使用绿色表示Servlet控制类,使用蓝色表示业务逻辑类BO,使用浅蓝色表示数据访问接口IDAO,使用橙色表示数据访问类DAO。

图3-3 用户信息管理部分类图

 

图3-4 bug信息管理部分类图

文章 出处:http://blog.csdn.net/lovelion/article/details/17362455

最新文章

  1. [原]openstack-kilo--issue(七):虚拟机怎么通外网,外网怎么ping通虚拟机
  2. hibernate常见错误
  3. Android应用增量更新
  4. Ubuntu环境下nutch2.2.1集成HBase0.94.25
  5. JS如何获取iframe内html的body值
  6. CCI_chapter 13C++
  7. Hibernaate事务管理
  8. C++模板:读入优化
  9. JS函数可以再添加属性(包括方法)
  10. python 数据可视化 -- 真实数据的噪声平滑处理
  11. python代码风格指南:pep8 中文版
  12. linux中open函数使用
  13. Python内置类型(6)——生成器
  14. 3.网络编程-tcp的服务器简单实现
  15. 小程序for循环嵌套
  16. BZOJ 3993 [SDOI2015]星际战争 | 网络流 二分答案
  17. linux alias使用
  18. 关于 ExpressRoute 的虚拟网络网关
  19. 微信小程序 功能函数 获取验证码*
  20. deepin系统无线网络卡死或者极慢的解决方案

热门文章

  1. LOJ6503. 「雅礼集训 2018 Day4」Magic(容斥原理+NTT)
  2. Training set,Gallery set 和Probe set的区别
  3. TransactionScope小例
  4. [转] docker基础知识之挂载本地目录
  5. iptables 深入分析
  6. 腾讯云(Linux)安装.net core sdk2.1、net core runtime2.1
  7. flask之--钩子,异常,上下文,flask-script,模板,过滤器,csrf_token
  8. 认识HTML中表格、列表标签以及表单控件
  9. scrapy安装和框架内容
  10. 记录树莓派静态IP修改