文档介绍:设备及巡检系统架构设计说明书版本号:, 包括系统的软件总体架构设计及使用的框架说明,以及基于该架构的开发流程,并作为指导开发人员、测试人员进行系统开发及测试的依据。、分布式的部署结构,明确地分离了表现层和业务逻辑,能够保证应用服务逻辑的一致性和稳定性、结构的开放性、功能的可扩展性和可维护性、开发的可并行性,同时采用一些开源的框架,兼顾了经济性。框架是一种特殊的软件,它为软件开发带来了高度的重用性,是无数软件开发人员的多年项目开发经验的总结。在一个优秀的框架上开发应用,而不是从零开始,可以大量缩短项目的开发周期、降低开发风险、增强应用系统的稳定性。' 7? 系统总体架构图系统总体架构如上图所示,按功能可以分为 公共管理、设备管理、巡检管理、机房出入等模块;系统根据功能特点与业务需求采用基于 web的B/S架构模式,项目基于PHP代码实现,运用CI开源框架,可以运行于Linux和Windows平台;(IE、Google)1Web服务器NginxServer XZXtDTODTODTO0ORMPHPController A DTO V 数据访问层令 DTOV DAOiBaodel数据库OracleJ >OCI操作系统OCIO RedHatLinux从架构图中可以看出系统分为四层:用户层:浏览器表示层:借助html框架及json数据实现业务层:借助PH进行业务流程开发。数据持久层:ORh模型操作数据库为什么采用这样的四层架构?通过成熟的开源产品实现各层,同自己编写代码实现,相比之下能缩短开发周期,且架构所用到的开源产品均有很广泛的用户群,经受过实践的考验,质量和性能更有保障。层与层之间松散耦合,增加代码重用率。各层分工明确,这样也利于团队的明确分工。 系统的总体架构从结构上分为用户层、表示层、业务层、数据访问层以及在层间传递数 据的数据传输对象。下面针对各层加以描述。•用户层用户层作为客户端程序,用来与用户交互,并把来自系统的信息显示给用户。系统的用户层采用的是 IE浏览器作为交互方式。.表示层表示层主要控制页面外观,产生页面逻辑以及对用户输入的数据进行合法性验证。系统中主要包括基于Bootstrap框架的JavaScript脚本及基于CI框架的表单验证。其中JavaScript脚本可以增强用户体验,PHP负责视图的功能,由HTMLPHP程序片断和JSON数据构成。.业务层业务层处理应用的核心业务逻辑。业务逻辑对象把业务 规则、约束、活动和数据结合在一起,Controller负责对这些业务对象的管理。.数据访问层数据访问对象把底层的数据访问操作和上层的商务逻辑分开。CI框架规范定义了Web应用程序的类和文件存放的目录结构。该层次结构由三个层次构成。第一层是上下文,它是一个目录或者是多个目录,用来查找与客户请求关联的Web应用程序。在上下文中存在一个/Application 目录,该目录存放应用程序,它包含MVC三层目录,用来实现系统的业务逻辑。/public包含所有样式文件,js文件和图片。CI框架采用但入口方式访问系统,即入口文件只有一个,通过参数控制(。=控制器名&m方法名)访问不同控制器的方法以打开不同的页面。表1-1系统目录结构表目录名说明/datacenter应用上下文根目录/ss样式表文件,js文件和图片等目录/uploads上传的文件目录/system框架系统目录/downloads可下载的文件存放目录/Application/config系统配置文件目录/controllers业务逻辑层目录(控制器)/models模型层目录(模型)/views视图层目录(视图)[ 目录下的系统PHF文件的结构说明见表1-2表1-*php系统管理模块相关控制器sys*.php公共管理模块相关控制器equipment*php设备模块相关控制器interface*.php接口模块相关控制器check*.php巡检模块控制器room*.,对Model、View和Controller 都提供了对应的实现组件。如下图所示:(Controller)控制器的作用是从客户端接受请求,并且通过模型层和和数据库交互,然后选择执行相应的业务逻辑,然后把响应结果返回到客户端(视图层)。(Model)MVC系统中的Model部分从概念上可以分为两类--系统的内部状态,和改变系统状态的动作。CI为Model部分提供了default对象:所