精华内容
下载资源
问答
  • Offer——企业级项目中分层的含义与依据及多态的优势  关于以上两点,由于项目经验较少,自己不是很明白,特整理如下。常见分层架构模式三层架构 3-tier architecture  微软.net 体系推荐的分层结构,因此...

    #剑指Offer——企业级项目中分层的含义与依据及多态的优势
      关于以上两点,由于项目经验较少,自己不是很明白,特整理如下。
    ##常见分层架构模式
    ###三层架构 3-tier architecture
      微软.net 体系推荐的分层结构,因此早期在ASP编码的系统中被广泛应用,同时也被其他语言广泛借鉴。
    ####表现层, Presentation layer(PL)
      主要负责数据的输入接口和输出。输入指在WEB、客户端或为外界提供的API的数据请求接口;输出则是Web界面、客户端输出、API的数据输出。页面模版、 对外API数据格式化、Request接受 、Output推送、 Commander操作都在这一层。
    ####业务逻辑层, Bisiness Logic Layer(BLL)
      主要负责从原始数据到结果数据的中间过程。系统中最关键、中重要的一层。也被称作领域层(Domain Layer),领域中所有对象的逻辑关系和功能实现算法都在这一层中。业务逻辑、服务等处于这一层。
    ####数据访问层, Data Access Layer(DAL)
      主要是对原始数据的操作层(CRUD操作),为业务逻辑层或表示层提供数据服务。数据源包括,数据库、文件、网络存储系统、其他系统开放的API、程序运行上下文环境等等。许多框架中的ORM 、 Active Record 、 Dao 类或库都处于这一层。
    ##三层架构总结
      三层架构能较好的满足大部分的业务场景,实现高内聚、低耦合。不同层次之间逻辑解耦或者隔离,变为弱依赖,每层的逻辑内聚。从层次角度看,使系统有了较好的可扩展性。
      三层架构的不足有:
      业务逻辑复杂度高的系统,业务逻辑层将变得庞大臃肿,为了解决这个问题,四层架构/多层架构被人提出。不关注表现层的实现。
    ##四层架构 4-tier architecture
      四层架构和三层架构极为类似,分为表示层、服务层、业务逻辑层、数据访问层。除了服务层,其他三层和三层架构的三层几乎一致,而服务层,是对三层架构中业务逻辑层的再细分,以解决业务逻辑层经常出现的臃肿的问题。
      四层架构是Java EE(J2ee) 推荐的分层架构,尤其是Java spring+Struct+hibernate(SSH)组合的框架 将Dao层、 Service层,做了明确的定义和规范。由于SSH框架被广泛使用,其他框架,包括其他语言的框架(比如PHP)也都借鉴SSH,因此在这些框架里能看到Dao类、Service类的抽象定义。
    ###服务层, Service Layer
      在三层架构中,把业务逻辑层的上层逻辑分离出来,组成服务层。服务层往往是逻辑的表示层,即向上层(表示层)提供逻辑的外观。事务控制、安全检查、事务脚本等可以置入业务层(参考Martin fowler 的《企业应用的架构模式》)
    ##四层架构总结
      四层架构是三层架构的发展或进化。服务层的出现让三层架构的业务逻辑层不再变得臃肿。
    四层架构和三层架构都存在一个不足,就是不强调前端的实现。当面对需要个性化定制界面、复杂用户交互、页面之间有依赖关系时,需要更好的解决方案。
    ###MVC 模式
      MVC 模式最主要包括三部分,Model View Controller(模型-视图-控制器)。相比于三层架构或者四层架构,MVC最突出的优点是前端控制的灵活性。如果MVC的两部分,View和Controller剥离出来,实际上是一种叫前端控制器模式的设计模式。
      MVC 的缺点很明显,将前端以外逻辑都放到 Model里,随着业务增多,Model将越来越难以维护。
      MVC 并不适合称作一种分层架构,更适合称为一种复合的设计模式。有人还将MVC模式归类为前端架构。
      为什么MVC模式被广泛的采用? 笔者是这样认为的:

    • MVC模式最适合新闻门户网站、展示类网站,此类网站业务逻辑往往较为简单。
    • MVC模式最适合产品初创时被使用,因为项目初期逻辑简单,
      使用MVC模式产品能快速成型,可以尽早投放市场进行试验(多数可能会被淘汰),这样就降低了试验成本。(如果产品有潜力,中后期随着业务增多和变得复杂,系统必然面临重构压力。)
    • MVC模式最适合产品原型的实现(注重前端)。

    ##其他分层架构
      除了三/四层架构,MVC模式,还有很多架构模式,但这些多是与三/四层架构、MVC模式类似,或是在他们之上进行扩展和改造。比如 MVVM (Model-View-ViewModel)、MVP、DDD架构模式等。
    ###关于分层的总结
    分层的思想或目的
    高内聚
    低耦合
    增强系统的可扩展性
    增强系统的可维护性
    ####分层的优点

    • 开发人员可以只关注整个结构中的其中某一层;
    • 可以很容易的用新的实现来替换原有层次的实现;
    • 可以降低层与层之间的依赖;
    • 有利于标准化;
    • 利于各层逻辑的复用;
    • 结构更加的明确;
    • 在后期维护的时候,极大地降低了维护成本和维护时间。

    ####分层的缺点

      相比于分层的优点,分层的缺点显得微不足道。

    • 使用分层虽然增多了代码量,但清晰的架构和代码复用却降低了开发成本、维护成本。
    • 分层虽然在逻辑上增多了代码的调用、增多了逻辑分支,降低了性能,但是这部分降低的性能与系统中真正的性能瓶颈(存储IO、网络IO、高层次的语言)相比,显得实在渺小。
    • 分层有时会导致级联的修改,但这种情况是可以通过面向接口的设计或者使用中介者模式、门面模式、适配器模式等设计模式解决。

    ##如何设计分层架构

    • 软件的发展都是遵循着从简单到复杂的过程,软件架构也是一个迭代的过程,是一个循序渐进,不断完善的过程。简而言之,不断地重构。
    • 借鉴或者直接使用Java EE(j2me)的分层规范,并使用dao、service等类的命名。
    • 层与层之间交互部分,要遵循面向接口设计的原则,不吝舍使用设计模式。
    • 分层的选择要平衡成本和风险,使收益最大化。
    • 业务逻辑不要局限于四层架构或三层架构,依据领域业务特点可更细地划分层次。

    ##多态
      多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,就是同一种事物表现出的多种形态。
      编程其实就是一个将具体世界进行抽象化的过程,多态就是抽象化的一种体现,把一系列具体事物的共同点抽象出来, 再通过这个抽象的事物, 与不同的具体事物进行对话。
      对不同类的对象发出相同的消息将会有不同的行为。比如,你的老板让所有员工在九点钟开始工作, 他只要在九点钟的时候说:“开始工作”即可,而不需要对销售人员说:“开始销售工作”,对技术人员说:“开始技术工作”, 因为“员工”是一个抽象的事物, 只要是员工就可以开始工作,他知道这一点就行了。至于每个员工,当然会各司其职,做各自的工作。
      多态允许将子类的对象当作父类的对象使用,某父类型的引用指向其子类型的对象,调用的方法是该子类型的方法。这里引用和调用方法的代码编译前就已经决定了,而引用所指向的对象可以在运行期间动态绑定。再举个比较形象的例子:
      比如有一个函数是叫某个人来吃饭,函数要求传递的参数是人的对象,可是来了一个美国人,你看到的可能是用刀和叉子在吃饭,而来了一个中国人你看到的可能是用筷子在吃饭,这就体现出了同样是一个方法,可以却产生了不同的形态,这就是多态!
    ###多态的作用

    • 1.应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承
    • 2.派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。 //多态的真正作用;
    • 3.可替换性。多态对已存在的代码具有可替换性。
    • 4.可扩充性。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际 上新加子类更容易获得多态功能。
    • 5.接口性。多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。
    • 6.灵活性。它在应用中体现了灵活多样的操作,提高了使用效率。
    • 7.简化性。多态简化了对应用软件的代码编写和修改过程,尤其在处理大量对象的运算和操作时,这个特点尤为突出和重要。值得注意的是,多态并不能够解决提高执行速度的问题,因为它基于动态装载和地址引用,或称动态绑定。
    ![这里写图片描述] (https://img-blog.csdn.net/20160927195300348) ![这里写图片描述] (https://img-blog.csdn.net/20160927195313061) ![这里写图片描述] (https://img-blog.csdn.net/20160927195322748)
    展开全文
  • 项目开发过程中什么是开发环境、测试环境、生产环境、UAT环境、仿真环境? 最近在公司项目开发过程中总用到测试环境,生产环境和UAT环境等,然而我对环境什么的并不是很理解它的意思,一直处于开发阶段,出于好奇,...

     

            项目开发过程中什么是开发环境、测试环境、生产环境、UAT环境、仿真环境?
            最近在公司项目开发过程中总用到测试环境,生产环境和UAT环境等,然而我对环境什么的并不是很理解它的意思,一直处于开发阶段,出于好奇,本人搜集了自己所了解的一些知识分享给各位,如果有不齐全的地方,请在评论下方留言!
            一、开发环境:开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告。通俗的讲,项目尚且在编码阶段,我们的代码一般在开发环境中,不会在生产环境中,生产环境组成:操作系统 ,web服务器 ,语言环境。
             
            二、测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。通常指项目测试,修改bug阶段。
             
            三、生产环境:是指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。通俗的讲,项目数据前端后台已经跑通,部署在服务器上之后,有客户使用,访问,就是网站正式运行了。
             
            三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通常说的真实环境。
            执行步骤:开发完成,测试环境测试,保证程序没有问题后,再上传到生产环境中。
             
            四、UAT环境:UAT,(User Acceptance Test),用户接受度测试 即验收测试,所以UAT环境主要是用来作为客户体验的环境。
             
            五、仿真环境:顾名思义,是和真正使用的环境一样的环境(即已经出售给客户的系统所在环境,也成为商用环境),所有的配置,页面展示等都应该和商家正在使用的一样,差别只在环境的性能方面。
             
            系统内部集成测试(System Integration Testing) :SIT
            用户验收测试(User Acceptance Testing) :UAT
            SIT在前,UAT在后,UAT测完才可以上线。
            SIT是集成测试,UAT是验收测试。从时间上看,UAT要在SIT后面,UAT测试要在系统测试完成后才开始。从测试人员看,SIT由公司的测试员来测试,而UAT一般是由用户来测试。
            

    展开全文
  • 环境信息化是政府信息化建设的重要组成... 本文开发一套系统应用于环境企业的差异化表单填报与用户权限分配的实际场景,可以有效提升系统的管理与业务数据的汇总和分析。 本文完成的主要工作如下: 1.通过对当前业界

     本科生毕业论文(设计)

    Undergraduate Graduation Thesis(Design)

     

     

     

    题目Title:环境企业表单权限分配填报数据  

              系统设计与实现                

    院 系 

    School (Department)数据科学与计算机学院 

    专 业

    Major   软件工程  

    学生姓名

    Student Name                   

    学 号

    Student No.                   

    指导教师(职称)

    SupervisorTitle):       

     

     

    时间:2016年  4 月 19 日

    Date:  Month    Day    Year


    表一:毕业论文(设计)开题报告

    Form 1: Research Proposal of Graduation Thesis (Design)

     

    论文(设计)题目

    Thesis (Design) Title环境企业表单权限分配填报数据系统设计与实现

    (简述选题的目的、思路、方法、相关支持条件及进度安排等)

    Please briefly state the research objective, research methodology, research procedure and research schedule in this part.

    1选题的目的及背景

        随着经济发展进入新常态,生态文明建设和环境保护也迈入新常态,这其中,环境信息化无疑是重要的一环。通过调查、检查,初步摸清环保行业信息安全现状。本课题着重研究Java Web应用开发,使用整合现有的开源框架,构建一套完整的从数据到控制到业务再到视图的平台。结合数据的优势,针对环境企业的复杂业务,实例开发一个添加系统用户和企业用户的便捷管理用户;通过设置用户的角色来给不同的用户分配不同数据报表来填报数据的电子办公;系统审核用户可以查看填报的数据来审核数据的系统。

    2 设计思路,设计方法

        本系统采用MVC体系结构,本系统采用MVC架构设计,把模型层分为业务层和持久层,总共四层。分层结构很好地满足了系统的可维护性、安全性和稳定性,应用MySQL作为后台数据库管理系统进行开发, 本机上同时用作数据服务器和应用服务器。

    3 相关支持条件

        广东新康博思信息技术有限公司作为广东省环境监控中心信息中心的技术支持,拥有丰富的数据,本课题依据这些数据进行分析;

        中山大学图书馆提供国内外本课题有关的书籍,期刊,论文等资料。通过这些资料了解国内外发展现况,为研究提供新思路;

        熟练掌握Java,Javascript 等编程语言,可以通过编程来实现微信查询数据中心信息系统。

    Student Signature:                         Date:

     

    指导教师意见

    Comments from Supervisor

     

     

    1.同意开题       2.修改后开题                 3.重新开题

    1.Approved(   )   2. Approved after Revision (  )   3. Disapproved(  )

                           

     

    Supervisor Signature                          Date:

     

     

     

    表二:毕业论文(设计)过程检查情况记录表

    Form 2Process Check-up Form

     

    指导教师分阶段检查论文的进展情况(要求过程检查记录不少于3次)

    The supervisor should check up the working process for the thesis(design)and fill up the following check-up log. At least three times of the check-up should be done and kept on the log.

     

     

    第1次检查(First Check-up:

     

    学生总结

    Student Self-summary

     

    调研分析业务需求,业务逻辑还是有点复杂和无序的。技术储备方面,经常去看论坛写小例子,有所累积,不过有些问题还是问了熟悉的同事可以少走一些弯路。目前纠结选择mybatis还是hibernate,两者各有所长各有所短。

    目前着手开始写系统的需求分析,发现自己学过的系统分析与设计这门可都用上了,但是还是会有一些不清楚的关系和流程不能确认,需要巩固加以应用。有时候在编辑论文是会有时候找不到正确的修饰语,可能是这方面还是有点缺少练习的原因。

     

    指导教师意见

    Comments of Supervisor

    多阅读优秀论文和资料,了解本领域中外著名学术期刊,并下栽至少50篇论文。

    记录参考文献,注意避免学术抄袭等问题。

     

                                                      2016-01-13

    2次检查(Second Check-up):

     

    学生总结

    Student Self-summary

     

        实验进入实质的编码阶段,在编码时常碰见异常或bug,多困了老师同学们还有我的同事们的帮忙,目前实验进行的还算可以,不过,规划工作量的话,还有论文需要完成,所以时间还是相当进步的。

        论文结构完成了前面的需求分析和设计,由于实验的进行了中,后面的部分可能要非常加紧。在阅读了大量的文献后,在编辑论文的时候的速度明显比之前快了很多,这里确实感谢老师的指导建议。目前的任务就是马上把实验做完,然后尽快完成论文。

     

    指导教师意见

    Comments of Supervisor

    设计毕业论文架构,撰写大纲;尽早设计、实现、完成相关实验。

    要求:数据真实、可靠。

    需提交源代码。

                                                     2016-03-13

     

     

     

    3次检查(Third Check-up):

     

    学生总结

    Student Self-summary

        由于没有备份数据,在数据库异常崩溃后没法及时恢复,导致极大的滞后的工作量。还好的是其他人有备份的老版本,在更换整合架构的数据库后,系统的稳定性比以前好多了。实验完成后,论文的编辑工作就十万火急了。然后在编辑的时候发现同学都在讨论文本格式的相关事宜。我通过自我审查,发现问题还真是不少,不过再统一格式的要求下,论文的结构和主体更加凸显了。

     

    指导教师意见

    Comments of Supervisor

    撰写规范的毕业论文,认真阅读毕业论文规范,这是形式审查,“形式”上的问题,希望同学们自己能够解决好。

                                                         2016-04-13

    4次检查

    Fourth Check-up

     

    学生总结

    Student Self-summary

    论文的内容完成,并根据老师的修改意见在内容和格式上再编辑,对有不足的地方及时改正。按照中山大学毕业论文写作与印制规范针对论文的格式进行修改,进一步完成论文的格式。和同学沟通交流论文在修改中正确的方法。

    这次论文是大学最后一次课程设计,也是重要的对大学知识的总结,是一次刻骨铭心的记忆,也在这样的经历中学习和收获。

     

    指导教师意见(Comments of Supervisor):

    从内容、结构、语言以及规范等方面做深入细致的检查,也请同学们结合互查。

    每个同学需总结你在毕业论文过程中的收获、问题。

                                                     2016-04-30

     学生签名(Student Signature):                  日期(Date:

     

    指导教师签名(Supervisor Signature):            日期(Date:    

     

    总体完成情况

    (Overall Assessment

     

    指导教师意见Comments of Supervisor

     

     

     

     

    1、按计划完成,完成情况优(Excellent): ( )

    2、按计划完成,完成情况良(Good): ( )

    3、基本按计划完成,完成情况合格(Fair):( )

    4、完成情况不合格(Poor): ( )

     

    指导教师签名(Supervisor Signature):

    日期(Date:

     

    表三:毕业论文(设计)答辩情况登记表

    Form 3: Thesis Defense Performance Form

     

    答辩人
    Student Name

     

     

    专 业

    Major

     

    论文(设计)题目

    ThesisDesign) Title

     

    答辩小组成员

    Committee Members

     

    答辩记录

    Records of Defense Performance

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    记录人签名(Clerk Signature):               日期(Date:

     

     

     

     

    学术诚信声明

     

    本人所呈交的毕业论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料均真实可靠。除文中已经注明引用的内容外,本论文不包含任何其他人或集体已经发表或撰写过的作品或成果。对本论文的研究作出重要贡献的个人和集体,均已在文中以明确的方式标明。本毕业论文的知识产权归属于培养单位。本人完全意识到本声明的法律结果由本人承担。

     

     

    本人签名:                     日期:               

     

     

    Statement of Academic Integrity

    I hereby acknowledge that the thesis submitted is a product of my own independent research under the supervision of my supervisor,  and that all the data, statistics, pictures and materials are reliable and trustworthy,  and that all the previous research and sources are appropriately marked in the thesis, and that the intellectual property of the thesis belongs to the school. I am fully aware of the legal effect of this statement.

     

     

    Student Signature:                  Date

     


    [摘  要]

     

        环境信息化是政府信息化建设的重要组成部分,深入推进环境信息化建设是国家信息化发展的客观要求,是建设服务型政府的重要手段,是实现环境管理科学决策和提升环境监管效能的基本保障。对于一套兼容并包的信息管理系统,不同的类型的企业机构有相对应的属性业务表单,需要对建立的表单建立关联关系,并且系统的用户有填报、审核及管理的多重功能。

        本文开发一套系统应用于环境企业的差异化表单填报与用户权限分配的实际场景,可以有效提升系统的管理与业务数据的汇总和分析。

        本文完成的主要工作如下:

        1.通过对当前业界主流的开源框架进行分析和比较,最终确定了以Spring Framework为核心容器,Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,Activit为工作流引擎,BootStrap实现表现层的选型方案,并完成框架的整合实际进行开发。

        2.通过广泛阅读相关资料,调研对比企业信息管理系统设计思路,运用合适的设计模式和设计原理及基于组件的开发技术完成了框架的应用整合与实现任务,并以框架的业务为例展示了功能的单元测试的过程。

        3.通过系统的调研,针对环境企业的实际应用环境,结合企业在实际的生产加工中涉及到的污染物,有针对的说设计各类数据表并符合实际应用的数据关联。

        本文通过高效稳定的MVC架构,提供针对环境企业业务的表单与权限管理、持久化支持、精致界面等,为环境企业信息化管理提供了一个开发实例。

     

    [关键词]:  MVC; Web应用; 环境信息化; 权限管理


    [Abstract]

     

        Environmental information is an important part of government information construction, further promote environmental information construction is the objective requirements of national development and an important means of building a service-oriented government it is to achieve the environmental management of scientific decision-making and improve environmental regulatory efficiency basic protection. For an inclusive information management systems, different types of organizations have a corresponding property business forms, we need to establish a form of associate relations, and the user has to fill the system, the multiple functions of audit and management.

        Reporting system used in this paper to develop a business environment differentiated form and user rights assignments actual scene, can effectively enhance the aggregation and analysis of data management and business systems.

        Main work done as follows:

        1. Adoption of the current industry mainstream open-source framework for analysis and comparison, to finalize the Spring Framework as the core container, Spring MVC is Model View Controller, MyBatis data as accessing layer, Apache Shiro as the privilege authorization layer, Ehcahe as the frequently used data cache, Activit as the workflow engine, BootStrap as selection program to achieve performance level, and the actual completion of the integration framework for development.

        2. The relevant information through extensive reading, research comparing enterprise information management system design concept, the use of suitable design principles and design patterns and complete application integration and implementation framework of the mandate of the technology component-based development, and shows an example of the operational framework process functional unit tests.

    3. Through systematic research, practical application environment for enterprise environments, combined with enterprise involved in the actual production and processing of pollutants, there are various types of data for the design of said table and in accordance with the data associated with practical application.

        Through efficient and stable MVC architecture, form and provide rights management for enterprise business environment, persistence support, and other refined interface for enterprise information management environment provides a development instance.

     

    [Keywords] : MVC; Web application; Environment information; Rights management


    目   录

    摘要

    Abstract

    第一章 前言 1

    1.1 项目的背景和意义 1

    1.2 研究开发现状分析 1

    1.3 项目的目标和范围 2

    1.4 论文结构简介 3

    第二章 技术与原理 4

    2.1需求设计阶段 4

    2.1.1 UML图的设计与制作 4

    2.2 编码测试阶段 5

    第三章  环境企业表单权限分配填报数据系统的需求分析 8

    3.1 系统需求概述 8

    3.1.1 系统总体需求 8

    3.1.2 系统主要需求 8

    3.2 系统管理员需求分析 10

    3.2.1 添加企业用户管理场景 11

    3.3 企业用户需求分析 12

    3.3.1 数据填报场景 12

    3.4 地方审核员需求分析 13

    3.4.1 数据回退场景 13

    3.5 领域建模 14

    第四章 环境企业表单权限分配填报数据系统架构设计 16

    4.1 设计系统架构 16

    4.1.1 B/S架构设计 16

    4.1.2 基于MVC模式的架构设计 17

    4.2 用例的实现 17

    4.2.1系统管理员用例的实现 17

    4.2.2 企业用户用例的实现 18

    4.2.3 地方审核员用例的实现 19

    4.3 数据库设计 20

    第五章 环境企业表单权限分配填报数据系统的模块设计 24

    5.1 系统管理员功能模块的实现 24

    5.1.1 企业用户的添加 24

    5.2 系统功能模块的实现 26

    5.3 企业用户填报功能模块的实现 27

    5.3.1 企业用户的填报数据 27

    第六章 部署与应用 29

    6.1 系统的部署 29

    6.2 文件结构 29

    6.2.1源码目录 30

    6.2.2 数据资源目录 30

    6.2.3 发布目录 31

    6.3 系统运行结果 31

    6.3.1 系统管理员的界面 31

    6.3.3 企业用户的界面 32

    6.3.3 地方审核员的界面 32

    第七章 总结与展望 34

    7.1 总结 34

    7.2 展望 34

    参考文献 35

    致谢 36

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    第一章 前言

    1.1 项目的背景和意义

        科技发展,新技术不仅颠覆了传统产业,更改变了人们原有的生产生活方式。随着中国环境问题的逐渐严峻,资源的日渐紧缺,节能环保正成为一个越来越重要的战略性行业。作为国家整个信息化的重要组成部分,环境信息化是推进生态环境治理体系和治理能力现代化的内在要求和重要支撑。在2014年12月28日召开的全国环境信息中心主任工作会议上,“整合、共享、畅通”成为与会代表谈论最多的词汇。

        随着经济发展进入新常态,生态文明建设和环境保护也迈入新常态,这其中,环境信息化无疑是重要的一环。环境保护部信息中心还不断深化电子政务建设与业务应用,提升环境信息服务能力,加强政府网站建设与管理,推动信息公开和政务互动。在信息安全保障方面也有所突破,通过调查、检查,初步摸清环保行业信息安全现状。信息化工作离不开“一把手”的重视,近两年各地纷纷成立信息化领导小组,统领环境信息化工作。在北京,由市环保局局长担任信息化工作领导小组组长,信息化工作办公室设在信息中心,实现了全局环境信息化建设规划制定、项目立项、系统开发、应用推广、运维保障等工作归口管理。

        环境信息化是一项全局性、长期性的工作,在推进环境信息化的建设过程中,必须站在环境保护业务全局的高度统一领导、统筹规划,必须采取战略管理的思想、方法和途径,才能保持信息化建设创新发展、均衡发展和可持续发展。

    1.2 研究开发现状分析

    中国的环境保护信息化工作起步于上世纪80年代中期,20多年来,环保信息化与环保事业一起发展。现在移动互联、物联网、云计算等新技术的快速发展为环保信息化应用提供了良好的技术契机,同时各级环保主管部门对环保信息化工作重要性的认识逐步提高,逐年增加建设资金投入,建设进程明显加快。

    环境信息化的开展日益成为环境建设的重要组成部分,随着认识水平的不断提高以及计算机技术的日新月异,环境信息化建设的难点已经显现,领导和管理人员在在认识上应当予以重视和深化。[1]

    中国环保信息化市场,在现阶段是一个政策推动型的市场,有着鲜明的“政策市”特色。在未来随着环保管理的细化,必将启动一个源自企业环保信息化需求的“企业市”。2014年初,中央网络安全和信息化领导小组成立,将网络安全和信息化提到了前所未有的高度。这意味着我国网络安全与信息化管理体制机制正在发生深刻的变化,这个新框架不仅预示我国新的信息化战略和网络强国战略被提上议事日程,而且也预示信息技术和网络技术的竞争将有新的突破。

        由于管理可以实现促进会计的目的,帮助决策者实现企业的变革,详细的填报制度建设是以满足企业发展的需要,特别是对于现代的一个发展目标的企业,最大的在资本运作模式的企业价值。[2]系统的数据填报管理势必促进企业想环保方向发展。

    1.3 项目的目标和范围

         该项目以环境企业信息化为中心,设计的目标用户是围绕着环境企业在数据填报过程中的职责分为已下三类:企业用户、地方审核员、系统管理员。

    企业用户在实际应用有会根据其生产或处理的物品,分为石油化工厂、电镀厂、印染厂、水泥厂、钢铁厂、陶瓷厂、污水处理厂、规范化畜禽养殖场及未划分出的记为其他类别。上述分类将为系统的差异化表单处理提供了应用场景,在对用户分配所属类型时,也是确定其访问除了基表(基本信息表、生产概括表、废水排放表、废气排放表等)以外的有针对性的专表的权限。

    本文的数据填报审核系统以数据填报功能为主,权限分配功能和表单分配功能为辅。

    数据填报功能:

    数据填报功能的范围包括企业用户在阅览数据填报模块、输入数据、保存数据和数据上传事件。

    数据填报功能目标是企业用户使用登录名和密码成功登录系统后,其在数据填报模块下可见的表单,其中包括基表(基本信息表、生产概括表、废水排放表、废气排放表等)和企业用户建立的角色分配的专表,完成数据填报并可以保存上传到系统成功。

    权限分配功能:

    权限分配功能的范围包括系统管理员添加用户过程中选择的用户类型的事件。

    权限分配功能的目标是系统的三类用户在登录系统时,其可见的和可操作的表单受到限制,以保护系统的安全性。

    表单分配功能:

    表单分配功能的范围包括系统管理员添加用户和添加企业名录的过程中可多选的用户角色的事件。

    表单分配功能的目的是企业用户可以在数据填报增加其相关的专表,可以极大的避免了系统表单的冗余。

    1.4 论文结构简介

    此论文包括前言、技术与原理、需求建模、架构设计、模块设计、部署与应用、结论、致谢、参考文献等。其中技术与原理包括需求设计阶段需要的UML图的设计和制作以及以Spring Framework为核心容器,Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,Activit为工作流引擎,BootStrap实现表现层的选型方案技术。需求建模时采用面向对象的方法,分别对总体需求以及三大场景(填报、审核、管理)的需求进行建模与分析。在架构设计的部分,详细介绍了服务器端的架构,描述了部分业务用例的实现,并用ER图展示了数据库的设计。模块设计部分介绍了类的使用。部署与应用部分除了部署图外,还详细介绍了典型页面的输入与输出。最后是结论、致谢以及本文的参考文献。

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    第二章 技术与原理

    2.1需求设计阶段

    2.1.1 UML图的设计与制作

        统一建模语言(Unified Modeling Language)是一种通用的可视化面向对象建模语言,它提供了多种图元。[3]为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。UML为编写系统蓝本提供了一个标准化方法,还包括诸如业务过程和系统功能这类的抽象概念。[4]

    统一建模语言(UML)是一种用来对真实世界物体进行建模的标准标记,这个建模的过程是开发面向对象设计方法的第一步。UML是在Booch、OMT、OOSE等面向对象的方法及其它许多方法与资料的基础上发展起来的。

    UML表示法集中了不同的图形表示方法,剔除了其中容易引起的混淆、冗余或者很少使用的符号,同时添加了一些新的符号。其中的概念来自于面向对象技术领域中众多专家的思想。UML从考虑系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、序列图、协作图、构件图、部署图等9种图。这些图从不同的侧面对系统进行描述。系统模型将这些不同的侧面综合成一致的整体,便于系统的分析和构造。尽管UML和其它开发工具还会设计出许多派生的视图,但上述这些图和其它辅助性的文档是软件开发人员所见的最基本的构造。其中:

        UML用例图与OOSE中的用例图类似。

        UML的类图综合了OMT、Booch等面向对象方法中的类图。

        UML状态图是对David Harel所提出状态图的改进。

        UML活动图的基本语义和状态图大致相同,它类似于许多方法(包括面向对象技术之前的一些方法)中的工作流图。

        UML的协作图是通过对Booch方法的对象图、Fusion方法的对象交互图以及其它一些方法中的相关图表改造而成的。

        UML的构建图和部署图是在Booch方法中的模块和进程图(处理关系图、处理器图)的基础上发展起来的。

        UML的开发者们是在设计一种语言(尽管只是一种图形化语言),因此必须在简明(所有元素一律用方框和文字表示)和繁琐(为每个元素设计单独的符号)之间权衡。尽管如此,UML中还是增添了衍型和扩展机制等一些新的元素,因为这些元素在其它建模语言的实践中已经被证明是非常有用的。

    Astah Professional 功能强大,支持 UML1.4中所有图和主要的图形,元模(Meta Model)及属性,全面满足您建模所需,还集成了思维导图,工程合并,协作开发等十余项特色功能,以及许多方便用户的贴心实用的功能。

    2.2 编码测试阶段

    2.2.1 Spring Framework

    Spring Framework是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一书中的代码,最初由 Rod Johnson 和 Juergen Hoeller等开发。Spring Framework 提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。

    Spring是由Rod Johnson 创建的一种开源框架,该框架以IoC(Inversion of Control)和AOP(Aspect-Oriented Programming)为基础。[5]通过基本的JavaBean完成以前只能有EJB完成的工作,同时Spring框架不仅集成了对Hibemate和其他O/R mapping数据访问的解决方案。[6]

    IoC(Inversion of Control)控制反转,对象创建责任的反转,在spring中BeanFacotory是IoC容器的核心接口,负责实例化,定位,配置应用程序中的对象及建立这些对象间的依赖。XmlBeanFacotory实现BeanFactory接口,通过获取xml配置文件数据,组成应用对象及对象间的依赖关系。

    AOP主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。

    2.2.2 Spring MVC

    Spring MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助简化开发。

    Spring Web MVC也是服务到工作者模式的实现,但进行可优化。前端控制器是DispatcherServlet;应用控制器其实拆为处理器映射器(Handler Mapping)进行处理器管理和视图解析器(View Resolver)进行视图管理;页面控制器/动作/处理器为Controller接口(仅包含ModelAndView handleRequest(request, response) 方法)的实现(也可以是任何的POJO类);支持本地化(Locale)解析、主题(Theme)解析及文件上传等;提供了非常灵活的数据验证、格式化和数据绑定机制;提供了强大的约定大于配置(惯例优先原则)的契约式编程支持。Spring框架是围绕DispatcherServlet来设计的,DispatcherServlet负责转发请求给相应的应用程序。[7]

    2.2.3 MyBatis

    MyBatis 本是apache的一个开源项目iBatis,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)。

    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。

    把Mybatis的功能架构分为三层:

    (1)API接口层:提供给外部使用的接口API,开发人员通过这些API接口更加方便的对数据库进行操纵。[8]接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。

    (2)数据处理层:负责具体的SQL查找、SQL解析和执行,实现数据库记录和Java实体进行映射。[8]它主要的目的是根据调用的请求完成一次数据库操作。

    (3)基础层:负责配置文件加载,数据库连接管理,事务管理和缓存处理,这些作为数据处理层的支撑。[8]这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。

     MyBatis的需要充分利用了Java的现有知识和权力的最简单的方法和SQL还提供了强大的功能,使数据持久性实现简单。 Java持久性与MyBatis的3是一个实用的,实践指南,为您提供了一系列明确的一步一步的练习,这将有助于你了解如何MyBatis的工作原理以及如何使用它为您的实际应用需求。[9]

    2.2.4 Apache Shiro

    Apache Shiro是Java的一个安全框架。对比Spring Security,它简单,可能没有Spring Security做的功能强大。Apache Shiro 与Spring Security相比,使用比较简洁易懂的认证换授权方式,能够快速地嵌入到信息系统中,减少了开发的难度,降低了开发成本。[10]

    2.2.5 Ehcahe

    Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。

    2.2.6 Activit

         Activiti的是一个轻量级的工作流和业务流程管理(BPM)平台定位于商务人士,开发人员和系统管理员。其核心是一个Java的超高速和稳定的BPMN2的流程引擎。它是开源的,在Apache许可证下发布。 Activiti的运行在任何Java应用程序,一个服务器上,在群集上或在云中。它与Spring完美结合,显得十分轻巧,基于简单的概念。

    2.2.7 BootStrap

    Bootstrap,来自 Twitter,是目前很受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。

     

     

     

     

     

     

    第三章 环境企业表单权限分配填报数据系统的需求分析

    3.1 系统需求概述

    设计与实现环境企业表单权限分配填报数据系统,是希望通过开发对环境企业的信息化数据录入与管理的各个功能模块,形成一套实用的企业信息化数据统计工具,来满足日益复杂的信息管理平台,达到提升工作效率的目的。

    3.1.1 系统总体需求

    系统包括三个主要的业务场景,分别是添加用户、填报数据、审核数据。通过主要的三个业务场景,来给系统添加众多的企业并未其分配企业用户,其企业用户可以通过其登录名和密码登录系统来查看企业的基表和专表并填报数据,其企业用户可以保存数据并上传数据通知审核员。系统的审核员可以登录系统查看待办事务,可以审核数据是否返回进行修改。三个业务场景把环境企业信息化的业务流程集中到系统中,方便了系统中不同分工的用户可以清晰的找到其需要的工作事务,极大的方便了信息管理中的工作,提升了办事效率。

    3.1.2 系统主要需求

    从系统管理员需求的角度出发,环境企业表单权限分配填报数据系统主要的功能模块包含6项,分别是个人信息管理、用户管理、数据填报、数据审核管理、数据保存以及企业任务分配管理。对应的系统用例图如图1所示。

     

    图 1系统用例图(系统管理员)

    从企业用户的角度出发,环境企业表单权限分配填报数据系统则有2项主要的功能模块,分别是填报数据和上传数据,其填报数据包含填报基表数据和填报专表数据以及完成后的保存数据。对应的系统用例图如图2所示。

     

     

    图 2 系统用例图(企业用户)

    从地方审核员出发,环境企业表单权限分配填报数据系统则有4项主要的功能模块,分别是查看待办事务、设置企业填报任务、数据回退和统计填报进度统计,其统计填报进度包含按行政区域统计和按行业类别统计。对应的系统用例图如图3-3所示。

     

    图 3 系统用例图(地方审核员)

    3.2 系统管理员需求分析

    本节将对环境企业表单权限分配填报数据系统中,系统管理员视角的主要功能模块进行需求分析,并对相应的核心用例及业务流程进行描述。

    3.1 

    3.2 

    3.1.1 添加企业用户管理场景

    本系统的企业用户的基本信息包含姓名、登录名、邮箱、移动电话所属地级市、所属行政区、职位、部门微信号。为了确保每个企业至少有一个企业用户与之对应,需要在创建好的企业名录的企业下,添加企业用户。

    其中,添加和修改用户信息的用例描述如表格 1所示。

    表格 1 添加企业用户的用例描述表

    用例名称

    添加企业用户

    参与者

    系统管理员

    简单描述

    系统管理员添加新的添加企业用户

    前置条件

    1.系统管理员已进入“环保大检查一企一档”页面

    基本事件流

    1.系统管理员点击“数据审核”按钮,进入“企业名录管理”页面;

    2.页面显示企业名称查询和企业名称列表,企业名称列表其中包括污染源编码、企业类型、地市和区县;

    3.在“企业名称”文本框输入关键字,点击“查询”按钮;

    4.点击查询出的企业名称,进入“企业基本信息”页面;

    5.点击“添加企业用户”按钮,进入添加用户页面,其中包括:

      (1)“登录名”文本框;

      (2)“姓名”文本框;

      (3)“移动电话”文本框;

      (4)“邮箱”文本框;

      (5)“市”地市选项栏;

      (6)“区”区县选项栏;

      (7)“职位”文本框;

      (8)“部门”文本框;

    6.系统管理员在其中录入信息和选择选项。

    7.系统管理员点击“保存”按钮,新企业用户添加完成,系统进行操作成功提示;

    8.系统自动返回“企业基本信息”页面,用例结束。

    其他事件流

    系统管理员在“添加企业用户”页面中点击“取消”和“关闭”按钮,则不添加任何用户,并且系统将自动返回“企业基本信息”页面

    异常事件流

    系统管理员提交的数据存在问题,系统进行相应提示,并停留在“用户添加”页面,等待系统管理员重新填写并保存

    后置条件

    新企业用户添加到系统中

        引发异常事件流的条件有以下几项:

    (1)用户登录名已存在;

    (2)用户登录名没有填写。

    3.3 企业用户需求分析

    本节将对环境企业表单权限分配填报数据系统中,企业用户视角的主要功能模块进行需求分析,并对相应的核心用例及业务流程进行描述。

    3.1 

    3.2 

    3.3.1 数据填报场景

    本系统的企业用户的基表包含封面、企业基本信息、履行环保制度情况、企业生产概况、废水排放情况、废气排放情况、固体废物处理情况、治理设施运行情况、环境应急管理九个表单,每张表单分别要求填报与表单相关的信息。企业的专表由系统管理员添加用户的时候根据其用户的用户角色的分类进行分配专表。例如用户角色为印染厂的用户,系统为其分配一张“印染行业专表”专表;用户角色为石油化工厂的用户,系统为其分配一张“涉VOCs(石化)专表”专表;用户角色为火电厂的用户,系统为其分配一张“火电行业专表”专表。

    企业用户在每张表单填报数据时,可以保存数据,方便其分步完成所有表单的填报工作。在填报数据时,页面对需要解释的文本框进行注释提示用户。

    用户在完成其基表内所有的表单的填报工作和专表的填报工作后,点击数据上传可以完成其数据填报任务。

    其中,企业用户填报数据的用例描述如表格 2所示。

    表格 2 企业用户填报数据的用例描述表

    用例名称

    企业用户填报数据

    参与者

    企业用户

    简单描述

    企业用户根据其分配的填报任务完成填报工作

    前置条件

    1.企业用户已进入“环保大检查一企一档”页面

    基本事件流

    1.企业用户点击“数据填报”按钮,进入“企业数据填报”页面;

    2.页面显示数据填报基表列表,其中包括封面、企业基本信息、履行环保制度情况、企业生产概况、废水排放情况、废气排放情况、固体废物处理情况、治理设施运行情况、环境应急管理九个表单;

    3.点击“封面”按钮,进入“环保大检查‘一企一档’表及填报说明”页面,其中包括:

      (1)“重点源单位名称(盖章)”文本框;

                                                        续表格 2

    基本事件流

      (2)“重点源企业编码”文本框;

      (3)“法人代表人”文本框;

      (4)“填表人”文本框;

      (5)“申报时段”选项框;

      (6)“申报时间”选项框;

    4.企业用户在其中录入信息和选择选项。

    5.企业用户点击“保存”按钮,封面信息保存完成,系统进行操作成功提示;

    6.点击“企业基本信息”按钮,进入“企业基本信息”页面,其中包括详细地址、地理位置、联系方式、流域去向文本框。根据每个文本框的不同注释填报,重复上述第4个和第5个事件流;

    7.企业用户在完成基表九格表单数据填报和其分配的专表的数据填报保存后,左侧有个“企业数据上报”按钮;

    9.系统管理员点击“上传”按钮,数据填报完成,系统进行操作成功提示;

    8.系统自动返回“数据填报”页面,用例结束。

    其他事件流

    系统管理员在“填报数据”任一页面中点击“取消”按钮,则不记录录入的数据,并且系统将自动返回页面未录入数据的情况。

    异常事件流

    企业用户的数据存在问题,系统进行相应提示,并停留在填报页面,等待企业用户重新填写并保存

    后置条件

    企业用户完成填报数据,上传后在其审核员的审核列表可见“已提交”。

     引发异常事件流的条件有以下几项:

        (1)企业用户录入的数据不符合注释信息;

    (2)企业用户有文本框没有录入数据。

    (3)有表单的没有保存。

    3.4 地方审核员需求分析

    本节将对环境企业表单权限分配填报数据系统中,地方审核员视角的主要功能模块进行需求分析,并对相应的核心用例及业务流程进行描述。

    3.1 

    3.2 

    3.4.1 数据回退场景

    本系统的地方审核员在历史数据查询中可以浏览所以企业用户的数据填报任务的完成程度,对已完成数据上传提交的用户数据进行审核。对不符合标准的填报进行数据回退,并反馈其回退原因。

    地方审核员对填写的表单查看,对不符合了填报注释但是不符合业务逻辑的数据进行要求重新填报。

    其中,地方审核员数据回退的用例描述如表格 3所示。

    表格 3 地方审核员数据回退的用例描述表

    用例名称

    地方审核员数据回退

    参与者

    地方审核员

    简单描述

    地方审核员对不和服业务逻辑的数据回退

    前置条件

    1地方审核员已进入“环保大检查一企一档”页面

    基本事件流

    1.地方审核员点击“数据审核”按钮,进入“企业数据审核”页面;

    2.地方审核员点击“历史数据查询”按钮,在点击“审核回退”按钮,进入“审核回退”页面,页面包括企业名称查询和审核数据列表,审核数据列表其中包括企业名称、企业类型、任务名称、下达时间、截止时间和状态。

    3.在“企业名称”文本框输入要查看的企业名称,点击“查询”按钮;

    4.点击企业名称查看提交的表单详情;

    5.关闭表单详情,在这条的左侧的选项框勾选;

    6.点击“回退”按钮,系统弹出“审核操作”页面,页面包括以下内容:

      (1)审核状态;

      (2)审核意见;

      (3)审核人电话;

    7.地方审核员填写审核操作页面内容,点击“保存”按钮,数据回退完成,系统进行操作成功提示;

    8.系统自动返回“审核回退”页面,用例结束。

    其他事件流

    系统管理员在“审核操作”页面中点击“取消”按钮,则不回退提交的数据,并且系统将自动返回“审核回退”页面。

    异常事件流

    企业用户的数据没有提交,系统进行相应提示,并停留在“审核回退”页面。

    后置条件

    企业用户在待办事务可见回退意见。

       引发异常事件流的条件有以下几项:

          (1)企业用户的数据没有提交。

    3.5 领域建模

        根据上述三个用例分析描绘领域模型,如图4所示。

     

    图 4 系统概念类图

     

     

     

     

     

     

     

     

     

    第四章 环境企业表单权限分配填报数据系统架构设计

    4.1 设计系统架构

    环境企业表单权限分配填报数据系统采用B/S架构,即浏览器/服务器架构。系统的各模块则采用Web应用项目中常用的MVC模式进行构建。

    5.1 

    4.1.1  B/S架构设计

    B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器服务器安装SQL ServerOracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。本系统同样采用了优秀的B/S框架,设计的系统的架构设计如图5所示。

     

    图 5 “环境大检查一企一档”包图

        B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。②维护和升级方式简单。B/S 结构的软件只需要管理服务器就行了。[11]

    4.1.2  基于MVC模式的架构设计

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

    本系统采用MVC架构设计,把模型层分为业务层和持久层,总共四层。分层结构很好地满足了系统的可维护性、安全性和稳定性,如图6所示。

     

    图 6 “环境大检查一企一档”包图

        在MVC模式中,模型是核心,是系统的数据模型,同时也对系统数据抽象,通过对数据处理模型系统,不关心的具体形式数据存储,而封装在该层系统的业务规则和业务流程。视图是系统为用户提供交互界面。视图是负责受理用户的请求并作简单处理时,业务处理的处理到模型层,而模型层的处理结果被显示给用户。

    4.2 用例的实现

    本节将分别对系统管理员视角以及企业用户视角的部分功能模块中的典型用例的实现进行描述。

    5.2 

    4.2.1系统管理员用例的实现

    在系统管理员添加企业用户的用例中,通过Spring Servlet来处理页面的请求,用户发送请求——>DispatcherServle,再HandlerMapping将会把请求映射为HandlerExecutionChain对象,DispatcherServlet——>HandlerAdapter,HandlerAdapter将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器;HandlerAdapter——>处理器功能处理方法的调用,HandlerAdapter将会根据适配的结果调用真正的处理器的功能处理方法,完成功能处理;在业务处理相关的方法中,读取企业名录的现有的用户,获取userid(),在登录名不重复的情况可以把新的用户更新到企业名录下addUserinfoDao.update(addUserinfo)。View会根据传进来的Model模型数据进行渲染,返回控制权给DispatcherServlet,由DispatcherServlet返回响应给用户,到此一个流程结束。

    用例的时序图如图7所示。

     

    图 7 系统管理员添加企业用户用例时序图

    4.2.2 企业用户用例的实现

          从页面的请求到处理类的途径和上面的系统管理员的途径相同。在处理类中,通过超类的findPage(page, firmBasicinfo)加载页面表单。请求保存数据时通过saveFirmBasicinfo方法,保存表单数据。在通过cpdFirmBasicinfoChildDao.saveChildList(list)加载到当前的页面上。

    用例的时序图如图8所示。

     

    图 8 企业用户填报数据用例时序图

    4.2.3 地方审核员用例的实现

    从页面的请求到处理类的途径和上面的系统管理员的途径相同。在处理类中,通过findList(String companyid,String issuedstate)加载页面表单。请求数据回退通过insertCpdTaskFlowlog()方法。再通过insertOrUpdate()加载到当前的页面上。

    用例的时序图如图9所示。

     

    图 9 地方审核员数据回退用例时序图

    4.3 数据库设计

     本节将分别对系统的数据库的关联表单的设计进行说明,数据库内各表之间的关联关系有ER图展示,系统的内具体建表由表格展示。

    系统的ER图如图10所示。

     

    图 10 系统数据库ER

    根据上述ER图,设计数据表的清单如下所示:

    企业用户的模型根据实体关系构建,包含的键值如表格4所示。

    表格 4 企业用户数据表cpd_userinfo

    主键/外键

    字段

    类型

    字段说明

     

    id

    varchar(36) NOT NULL

    用户编码

     

    eid

    varchar(36) NULL

    企业编码

    主键

    uid

    varchar(100) NULL

    用户登录名

     

    name

    varchar(50) NULL

    姓名

     

    passwd

    varchar(100) NULL

    密码

     

    mobile

    varchar(100) NULL

    移动电话

     

    email

    varchar(100) NULL

    电子邮箱

     

    weixin

    varchar(45) NULL

    微信号

                                                                 续表格 4

     

    keyid

    varchar(30) NULL

    数字证书编码

     

    logo

    varchar(300) NULL

    头像

     

    roletype

    varchar(36) NULL

    角色类型

     

    regionid

    varchar(12) NULL

    行政区划

     

    district

    varchar(50) NULL

     

    city

    varchar(50) NULL

     

    level

    varchar(50) NULL

    级别

     

    usertype

    int(11) NULL

    用户类型(1:环保用户, 2:企业用户)

     

    title

    varchar(100) NULL

    职位

     

    department

    varchar(300) NULL

    部门

     

    ounit

    varchar(300) NULL

    单位

     

    sortorder

    varchar(45) NULL

    排序

     

    epicid

    varchar(60) NULL

    环保编码

     

    status

    varchar(36) NULL

    状态

     

    ldapsync

    varchar(36) NULL

    LDAP同步

     

    enabled

    varchar(36) NULL

    有效

     

    usrid

    varchar(36) NULL

    用户

     

    utime

    datetime NULL

    更新时间

        系统用户的模型根据实体关系构建,包含的键值如表格5所示。

    表格 5 系统用户数据表sys_user

    主键/外键

    字段

    类型

    字段说明

    主键

    id

    varchar(64) NOT NULL

    编号

     

    company_id

    varchar(64) NOT NULL

    归属公司

     

    office_id

    varchar(64) NOT NULL

    归属部门

     

    login_name

    varchar(100) NOT NULL

    登录名

     

    password

    varchar(100) NOT NULL

    密码

     

    no

    varchar(100) NULL

    工号

     

    name

    varchar(100) NOT NULL

    姓名

     

    email

    varchar(200) NULL

    邮箱

     

    phone

    varchar(200) NULL

    电话

     

    mobile

    varchar(200) NULL

    手机

     

    user_type

    char(1) NULL

    用户类型

     

    photo

    varchar(1000) NULL

    用户头像

     

    login_ip

    varchar(100) NULL

    最后登陆IP

     

    login_date

    datetime NULL

    最后登陆时间

     

    login_flag

    varchar(64) NULL

    是否可登录

     

    create_by

    varchar(64) NOT NULL

    创建者

     

                                                             续表格 5

     

    create_date

    datetime NOT NULL

    创建时间

     

    update_by

    varchar(64) NOT NULL

    更新者

     

    update_date

    datetime NOT NULL

    更新时间

     

    remarks

    varchar(255) NULL

    备注信息

     

    del_flag

    char(1) NOT NULL

    删除标记

    企业基本信息的模型根据实体关系构建,包含的键值如表格6所示。

    表格 6 企业基本信息数据表cpd_company_baseinfo

    主键/外键

    字段

    类型

    字段说明

     

    id

    int(12) NOT NULL

     

    主键

    CompanyID

    varchar(50) NULL

    企业ID

     

    CompanyName

    varchar(255) NULL

    企业名称

     

    OrganizingCode

    varchar(255) NULL

    组织机构代码

     

    ICBLRNumber

    varchar(50) NULL

    工商营业执照注册号

     

    Province

    varchar(12) NULL

    (自治区、直辖市)

     

    Area

    varchar(12) NULL

    地区(市、州、盟)

     

    County

    varchar(12) NULL

    (区、市、旗)

     

    OuntrySide

    varchar(12) NULL

    ()

     

    Street

    varchar(12) NULL

    ()、门牌号

     

    IndustryType

    varchar(8) NULL

    所属行业,行业类型

     

    ScaleCode

    int(11) NULL

    企业规模(1 大型,2 中型,3 小型,4 微型)

     

    WasteWaterOutNO

    varchar(100) NULL

    废水排放口数量

     

    WasteWaterOutFw

    varchar(100) NULL

    废水各排放口流量(升/秒)

     

    exhaustGasOutNO

    varchar(100) NULL

    废气排放口数量

     

    WasteWaterOutHt

    varchar(100) NULL

    废气各排放口高度(米)

     

    CreateDate

    datetime NULL

    创建时间

     

    TaskId

    int(11) NULL

    任务ID

    待办事务任务的模型根据实体关系构建,包含的键值如表格4所示。

    表格 7 待办事务任务数据表cpd_task_flow

    主键/外键

    Field

    Type

    Comment

     

    id

    int(12)NOTNULL

     

     

    taskid

    int(8) NULL

    任务id

     

    taskname

    varchar(100) NULL

    企业填报提醒名称

     

    companyid

    varchar(50) NULL

    企业id

     

    industrycate

    varchar(255) NULL

    行业类别

     

    taskbegindate

    datetime NULL

    下达时间

     

    taskenddate

    datetime NULL

    填报截止时间

                                                             续表格 7

     

    issuedstate

    varchar(255) NULL

    调查任务下发状态 0:未下达 1:已下达

     

    reportingstatus

    varchar(255) NULL

    企业填报状态 0:未提交 1:审核中 2:审核通过 3:区县审核退回 4:地市审核退回 5:省级审核退回

     

    districtaudit

    varchar(255) NULL

    区级审核状态 0:待审核 1:审核通过 2:回退

     

    municipalaudit

    varchar(255) NULL

    市级审核状态 0:待审核 1:审核通过 2:回退

     

    provincialaudit

    varchar(255) NULL

    省级审核状态 0:待审核 1:审核通过 2:回退

     

    createdate

    datetime NULL

    调查任务创建时间

     

    checktabelid

    varchar(32) NULL

    检查表id

     

    userid

    varchar(64) NULL

    下达用户id

     

     

     

     

     

     

     

     

     

     

     

     

    第五章 环境企业表单权限分配填报数据系统的模块设计

    5.1 系统管理员功能模块的实现

    本节将选取环境企业表单权限分配填报数据系统中系统管理员的主要功能模块,对实现过程进行描述,并展示相应的用户界面。

    6.1 

    5.1.1 企业用户的添加

    类AddBaseinfoService是用于添加用户的整合类,其中包括了与企业用户添加相关的实例方法。

    表格 8 系统管理员模块目录中的AddBaseinfoService类的方法说明

    方法

    用途

    参数

    findList(addBaseinfo)

    按关键词查询企业

    企业名录

    save(addBaseinfo)

    保存添加的企业用户

    企业名录

    update(addBaseinfo)

    用户添加到对应的企业名录,更新对应企业的用户信息

    企业名录

    其中,save(addBaseinfo)方法的核心部分算法流程描述如图11所示。

     

    图 11 save(addBaseinfo)方法核心部分算法流程图

    “添加企业用户”界面如图12所示。系统管理员可通过该界面对企业名录添加用户,则可以进入“企业基本信息”界面查看和修改企业用户,如图13所示。

     

    图 12 “添加企业用户”界面

     

    图 13 “查看企业名录信息下的用户”界面

    5.2 系统功能模块的实现

    功能权限控制应用在以下场景:访问功能授权,查看权限,审核权限。

    5.2.1 给方法添加权限标志

    @RequiresPermissions("sys:submodule:user:view")

    @RequiresUser

    5.2.2 菜单中设置权限标志。

    5.2.3 判断权限:

    SecurityUtils.getSubject().isPermitted("sys:user:edit");

    5.2.4 视图中控制按钮(shiro.tld):

    <shiro:hasPermission name="sys:user:edit">

    <input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/> 

    </shiro:hasPermission>

    <!-- 任何一个符合条件的权限 -->

    <shiro:hasAnyPermissions name="sys:user:view, sys:user:edit,">

    <input id="btnSubmit" class="btn btn-primary" type="submit" value="返 回"/> 

    </shiro: hasAnyPermissions>

     

    5.3 企业用户填报功能模块的实现

    本节将选取环境企业表单权限分配填报数据系统中企业洪湖的主要功能模块,对实现过程进行描述,并展示相应的用户界面。

    7.1 

    5.3.1 企业用户的填报数据

    类FirmBasicinfoService是用于添加用户填报数据的整合类,其中包括了与企业用户填报数据相关的实例方法。

    表格 9 企业用户模块中的FirmBasicinfoService类的方法说明

    方法

    用途

    参数

    saveFirmBasicinfo(list, firmBasicinfo)

    保存企业信息的更新信息

    需要更新基本信息,企业基本信息

    updateFirmBasicinfo(updateList, firmBasicinfo)

    更新到企业信息的列表

    更新基本信息列表,企业基本信息

    getFirmBasicinfoChildList(companyid)

    获取子表

    企业ID

    “企业用户填报数据”界面如图14所示。企业用户可通过该界面对企业的待办的填报数据进行填写和保存,如图15所示。

     

    图 14 “填报数据保存”界面

     

    图 15 “查看企业名录信息下的用户”界面

     

     

     

     

     

     

     

     

     

     

     

    第六章 部署与应用

    6.1 系统的部署

        环境企业表单权限分配填报数据系统的架构设计的确定已经极大的方便的系统的部署和应用。系统的部署图如图16所示。

     

    图 16 系统部署图

        系统部署的具体步骤如下:

        1.运行Maven目录下的settings.bat文件,用来设置maven仓库路径,并按提示操作(设置PATH系统变量、配置Eclipse)。

    2.配置MySQL数据库,设置数据源:src/ main/ resources/ jeesite.properties

        3.配置Server(Tomcat)作为发布的web服务器。

        4.系统内安装浏览器,要求是现代浏览器,本系统对IE6和IE8下,页面显示受影响。

        5.访问工程:http://localhost:8080/ScpsPlatForm_A/a?login  用户名:admin  密码:admin。此用户名和密码为系统管理用户。

    6.2 文件结构

    本节将对系统中的主要文件夹进行说明以介绍系统的代码结构。

    6.2.1源码目录

    在src/ main/ java/ com/ suncompass/ systems 目录中,主要编写有关系统业务层和控制层的代码。其中common/ 目录中编码有关Spring对象类和Bean实体类定义和实现,MyBatis的数据持久层在persistence/ 目录下定义。modules/ 目录下有针对系统的实体类的定义与实现,在interceptor/ 目录下有数据访问层的相关类。其中详细的目录配置如表格10所示。

    表格 10 源码目录

    src.main.java.com.suncompass.systems

    系统业务层和控制层

     ├ common

    公共模块存放目录

     │├ beanvalidator

    实体Bean验证相关类

    │├ mapper

    各种Object到Xml、Object到Json的映射转换类

    │├ persistence

    持久层相关类

    │├ security

    安全相关类

    │├ service

    业务层相关类

    │├ servlet

    公共servlet相关类

    │├ utils

    各种操作小工具类

    │└ web

    模型控制器层相关类

    └ modules

    JeeSite内置功能模块存放目录

       ├ act

    Activiti工作流引擎目录

       ├ cms

    内容管理模块目录

       ├ gen

    Web版本代码生成器目录

       ├ sys

    系统核心模块存放目录

       │├dao

    系统数据访问层相关类

       │├entity

    系统实体相关类

       │├ interceptor

    系统模块拦截器相关类

       │├ service

    系统业务处相关类

       │├ web

    系统模型控制器层相关类

       │├ utils

    系统模块的工具类

       └ cpd

    企业用户核心模块存放目录

          ├dao

    数据访问层相关类

          ├entity

    实体相关类

          ├ service

    系统业务处相关类

          └ web

    系统模型控制器层相关类

    6.2.2 数据资源目录

      在src/ main/ resource目录中,主要编写有关数据源的系统配置和日志配置,针对不同的数据库来源有简单的配置和缓存配置,其中针对Spring的数据访问要加入相关文件。其中详细的目录配置如表格11所示。

     

     

    表格 11 数据资源目录

    src.main.resource

     

    ├act

    Activiti工作流引擎相关文件(部署文件、bpmn)

    ├cache

    Ehcache缓存配置存放目录

    ├mappings

    Mybatis Sql映射文件存放目录

    ├jeesite.properties

    系统配置属性文件

    ├spring-*.xml

    Spring相关文件

    └log4j.properties

    Log4j日志配置属性文件

    6.2.3 发布目录

        在src/ main/ webapp/ 目录下存放网页渲染的脚本是视图文件,在WEB-INF目录下存放请求映射的视图布局和素材文件。

    表格 12 Web服务器发布目录

    src.main.webapp

     

    ├static

    静态文件存放目录(JS、CSS、前端插件类库等)

    ├└ compressor.bat

    JavaScrpt和CSS文件压缩脚本

    ├ userfiles

    用户上传文件目录

    └ WEB-INF

    WEB应用安全目录,通过映射访问相关文件。

     ├├ tags

    Tags标签存放目录

     ├├ views

    视图文件目录

      │├ error

    系统异常映射相关页面

     │├ include

    视图相关包含文件

     │├ layouts

    视图布局相关文件

     │└ modules

    内置核心功能模块视图相关文件

     │  ├ act

    Activiti模块视图相关文件

     │  ├ cms

    内容管理模块视图相关文件

     │  ├ gen

    代码生成模块视图相关文件

     │  └ sys

    系统管理模块视图相关文件

     ├ ckfinder.xml

    CKfinder配置文件

     ├ decorators.xml

    Decorator配置文件

     └ web.xml

    Web配置文件

    6.3 系统运行结果

    6.3.1 系统管理员的界面

        系统管理员在系统的权限是很全的,可以管理系统用户和企业用户,可以对系统设置,可以测试填报数据以及审核数据。其登录系统的页面如图17所示。

     

    图 17 系统管理员页面

    6.3.2 企业用户的界面

        企业用户在登录系统可见待办事务模块和数据填报模块,根据任务完成数据填报和上传工作。其登录系统的页面如图18所示。

     

    图 18 企业用户页面

     

    6.3.3 地方审核员的界面

        地方审核员在系统中可以待办事务和数据审核模块,其可以统计填报进度、设置填报任务、审核数据决定是否回退数据。其登录系统的页面如图19所示。

     

    图 19 地方审核员页面

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    第七章 总结与展望

    7.1 总结

    本文是在结合众多开源框架的一项贴近生活和工作的实例项目,系统的设计几乎完成了立项时的目的。本文的环境信息化的管理系统,不仅优化了系统的业务和数据分离的开发矛盾,还为同行业的开发提供了一次不错的整合的应用。

    本文的主要工作有:

    (1)总结了环境信息化趋势的时代下,同比对系统的开发的还可以做到更加有效和安全。而且这是不仅方便办公的业务系统,还可以把技术很好地应用到其他领域。

    (2)使用MVC框架思想对本文所设计的系统进行架构设计。通过Spring整合MyBatis和Activit以及Bootstrap,完成了持久层的数据访问到容器管理各层的组件,使各个技术通力合作的为一个系统协作。

    (3)在系统的建立业务时,充分的调研实际需求,提炼使用频率极高的用例,并且结果业务逻辑,实现了系统的多元和稳定。实现了用户管理、角色管理、数据填报、数据审核及待办事务管理的多个功能。为系统的用户提供了一个可以继续扩展的优秀的系统框架的实例。

    7.2 展望

       由于开发的有些需要去试错,系统的开发的工作的进展还是可以在详细了解各种框架后进一步提升,具体如以下几点:

        1. 随者移动互联网的迅速发展,手机和平板等小尺寸的屏幕的办公成为一种诉求就是一种极大的需求。本文使用了;流行的Bootstrap框架但是没有做优化,在小屏幕的体验不是很好。

        2. 系统的可移植性很强,可以考虑移植到类似的业务填报中继续发挥余热,也就需要根据新的需求和业务修改基于相同框架设计的系统。

        3. 系统的可以添加的功能还用很多,根据需求添加一些实用的比如待办事务的手机短信的绑定可以有利于事务的提醒,比如用户自定义表单来节省开发成本等。

     


    参考文献

    [1] 陆炜.环境信息化建设发展思路初探[C].2011中国环境科学学会学术年会论文集,2011第三卷:648-651.

    [2]  Zhang Xianzhi, Cui Ying.An Innovative System of Internal Reports based on Capital Operation Mode in Chinese Enterprises[C].第七届(2015)金融风险与公司金融国际研讨会论文集,2015.

    [3] 韩德帅,杨启亮,邢建春.一种软件自适应UML建模及其形式化验证方法[C].软件学报,2015201504期:730-746.

    [4] 施杰,唐秀英,张毅杰,施骏.基于Web的设备管理系统UML建模[N].云南农业大学学报(自然科学),2013201301期:145-150.

    [5] Johnson R.Spring Framework Reference Documentation[EB/OL].http: / /wwwspring-frameworkorg / do- cumentation,2014-08.

    [6] 李洋,孙永维,许冰,王英双.基于Ajax,Struts,HibernateSpringJ2EE架构[N].吉林大学学报(信息科学版)2011201106期:576-584.

    [7] 黎吾鑫,王新.基于Extjs+Spring MVCWeb系统框架及应用研究[N].云南农业大学学报(自然科学),20132013S2期:110-115.

    [8] 荣艳冬.关于Mybatis持久层框架的应用研究[J].信息安全与技术,2015201512月:86-88.

    [9] K.Siva Prasad Reddy.Java Persistence with MyBatis 3[M].Birmingham:Packt Publishing, 2013.

    [10] 杨运平,吴智俊.Apache Shiro安全框架在技术转移服务系统中的应用[J].计算机与现代化,2014201403期:158-160.

    [11]  李云云.浅析B/SC/S体系结构[J].科学之友(Friend of Science Amateurs),2011201101期:6-8.

     

     

     

     

     

     

     

     

     

    致谢

    感谢我的父母对我的教育的支持和鼓励。感谢我的导师衣杨副教授的指导和教育,老师不仅给予了学术上的知识,还努力用言传身教的方式教育同学在社会上的为人处事之礼。感谢广东新康博思信息科技有限公司提供的数据支持,感谢实习的同事的指教和帮助,包括陈慧灿、吴亚洲、符绳鹏、陈红,有他们的帮助和辅导,提供我解决问题的方法。感谢同学们讨论总结的纲要,感谢身边的人的帮助和支持。

     

     


    毕业论文(设计)成绩评定记录

    Grading Sheet of the Graduation Thesis (Design)

     

     

    指导教师评语

    Comments of Supervisor:

    本文设计实现了一个环境企业表单权限分配填报数据系统,作者首先广泛阅读了相关资料,调研对比企业信息管理系统,基于面向对象方法论,选用了合适的设计模式和设计原理及基于组件的开发技术完成了框架的应用整合与实现任务,并以框架的业务为例展示了功能的单元测试的过程。完成了软件生命周期中的需求、设计、实现、测试四个主要阶段的任务。

     

    本文内容比较充实,技术路线基本合理,表达基本规范

    成绩评定

    Grade

      

     

    指导教师签名

    Supervisor Signature                        Date:

     

    答辩小组或专业负责人意见

    Comments of the Defense Committee

     

     

     

     

     

    成绩评定

    Grade

      

     

    签名(章):                                 Date:

    Signatures of Committee Members(Stamp)          

     

    院系负责人意见

    Comments of the Academic Chief of School

     

     

     

    成绩评定

    Grade

     

    签名(章)                                    

    Signature(Stamp)                           Date:

     

    展开全文
  • [size=16px][b]1、申请使用,预置环境,开启企业主机安全防护[/b][/size] [img=https://img-bbs.csdn.net/upload/202012/09/1607500570_788955.png][/img] [size=16px][b]2、使用风险预防>漏洞管理功能,选择一...
  • 一、五种环境 1、开发环境(DEV):开发环境是程序猿们专门用于开发...3、生产环境(PROD):是正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这...

    一、五种环境

    1、开发环境(DEV):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告。

    2、测试环境(UAT):一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。

    3、生产环境(PROD):是指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。

    三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通常说的真实环境。

    4、UAT环境:UAT,(User Acceptance Test),用户接受度测试 即验收测试,所以UAT环境主要是用来作为客户体验的环境。
    5、仿真环境:顾名思义是和真正使用的环境一样的环境(即已经出售给客户的系统所在环境,也成为商用环境),所有的配置,页面展示等都应该和商家正在使用的一样,差别只在环境的性能方面。

    二、测试阶段

    软件开发中,完整测试环境包括:UT、IT、ST、UAT
    UT = Unit Test 单元测试
    IT = System Integration Test 集成测试
    ST = System Test 系统测试
    UAT = User Acceptance Test 用户接受测试(俗称:验收测试)

    1、重点了解——UT(单元测试,Unit Test):
    单元测试任务包括:
    1)、模块接口测试;
    2)、模块局部数据结构测试;
    3)、模块边界条件测试;
    4)、模块中所有独立执行通路测试;
    5)、模块的各条错误处理通路测试。;

    2、IT(集成测试,Integration Test):
    也称系统集成测试(System Integration Test)或结合测试,集成测试阶段是以黑盒法为主,在自底向上集成的早期,白盒法测试占一定的比例,随着集成测试的不断深入,这种比例在测试过程中将越来越少,渐渐地,黑盒法测试占据主导地位。

    3、ST(系统测试,System Test):
    从技术角度看,系统测试是整个测试阶段的最后一步,所有的开发和测试在这一点上集中表现为生成一个具有一定功能的软 件系统。
    该阶段主要对系统的准确性及完整性等方面进行测试。
    主要进行:
    功能确认测试、运行测试、强度测试、恢复测试、安全性测试等。
    系统测试的测试人员由测试组成员(或质量保证人员)或测试组成员与用户共同测试。在整个系统开发完成,即将交付用户使用前进行。在这一阶段,完全采用黑盒法对整个系统进行测试。

    4、UAT(验收测试,User Acceptance Test):
    验收测试是向未来的用户表明系统能够像预定要求那样工作。
    经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。

    一个项目的开始从设计开始,而一个项目的成功则从测试开始。一套良好的测试体系可以将系统中绝大部分的致命Bug解决在系统上线之前。测试系统的完善和成熟也是衡量一个软件企业整体水平的重要指标之一,测试往往被忽视,因为它对可以的隐性、对软件开发企业不产生直接的效益,但是它却是软件质量的最终保障,乃至项目能否成功的重要因素!

    展开全文
  • 随着移动网络、云计算、物联网等新兴技术迅猛发展,全球数据呈爆炸式增长,标志着我们迎来又一伟大时代——大数据时代,它的到来在不知不觉中改变着人们的生活方式和思维方式,而它对企业产生的影响也更为深远。...
  • 销售利润率是每单位销售收入所产生的利润,其计算公式为: 销售利润率 = 净利润/销售收入 一般来说,其他条件不变时,销售利润率越高越好。但当其他条件可变时,销售利润率低也并不总是坏事。因为如果总体销售收入...
  • 什么是EPR(企业资源计划系统)

    千次阅读 2010-07-20 11:33:00
    企业资源计划系统,是建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。 <br /> 下 面,将会用很简单很生活化的例子来向你解释: <br />什么是EPR! ...
  • 市场营销学3——市场营销环境

    千次阅读 2012-12-10 11:24:15
    营销环境影响企业生存和发展的 企业营销管理职能外部的各种因素和力量。也就是说,营销环境企业的生存空间,是营销活动的基础与条件。 企业的营销活动,即受到企业内部条件的约束,又受到企业外部条件约束。...
  • 首先说windows和Linux系统在企业的服务器中都是有使用的,关于一个企业是选择windows作为服务器系统还是Linux作为服务器系统还是要看企业对于服务器的需求和一些技术上的需要。 1、简要说一下windows系统和Linux...
  • 因为平台这个词过于宽泛了,为了能让大家理解我在说什么,我先定义一下本篇文章上下文下我所说的前台和后台各指什么: *  前台:由各类前台系统组成的前端平台。每个前台系统就是一个用户触点,即企业的最终用户...
  • 什么是中台?企业为什么要建中台?从数据中台到AI中台。 白发川 CMKT咨询圈 前天 https://mp.weixin.qq.com/s/cwtaHltF53yzV7zjZAah8g?from=groupmessage&amp;isappinstalled=0 作者:王健 来源:健荐(微信号: ...
  • 企业管理复习题库

    万次阅读 2020-09-23 07:17:37
    1、企业管理:人们在一定的生产方式和文化背景下,依照一定的管理原理、原则和方法,对企业的人力、财力、物力等各种资源及其经济活动过程进行有效的计划、组织、领导和控制,以取得最佳经济效益的过程 ...
  • 企业架构(Enterprise Architecture),简称EA。是企业事业信息管理系统中具有体系的、普遍性的问题而提供的通用解决方案,更确切的说,是基于业务导向和驱动的...一、什么是企业  企业架构中所企业并不...
  • OBM,ODM,OEM分别指什么

    千次阅读 2017-07-01 09:56:21
    什么是OEM?OEM(Original Equipment Manufactuce,原始设备生产商)。 是在社会化分工、专业化利益驱动下产生的,其基本含义是:按原单位(品牌单位)委托合同进行产品开发和制造,用原单位商标,由原单位销售或经营...
  • Qt 环境搭建(Visual Studio)

    万次阅读 多人点赞 2015-11-16 23:34:03
    经常有人问我编写Qt程序时使用什么IDE,其实这个真的很难回答(各有所长),只能说看个人爱好了,因为我两个都用,而且两个都很喜欢(比较多情吧O(∩_∩)O~)!下面将进行Qt Creator与Visual Studio比较,大家可以...
  • KVM虚拟化环境高可用方案探讨

    千次阅读 2015-06-30 13:50:53
    KVM是成熟的开源虚拟化解决方案,将其部署于企业生产环境,其高可用性也是必须要仔细考虑的问题。高可用性(High Availability)是系统提供不间断服务的能力,也就是尽可能的减少系统停止服务的时间。KVM虚拟化环境也...
  • 谷歌企业文化建设分析

    千次阅读 2017-12-05 17:09:35
    简要分析谷歌作为一家科技巨头的企业文化。
  • 软件环境、硬件环境、开发工具

    万次阅读 2017-09-07 16:18:19
    软件环境、硬件环境、开发工具  软件环境:一般包括数据库(mysql,sqlserver,oracle,db2),运行的中间件,即应用服务器,如tomcat,jetty,jboss,weblogic,webphere,以及运行的操作系统环境,如windows,unix...
  • 如何搭建测试环境

    千次阅读 多人点赞 2021-01-08 16:03:54
    什么是测试环境 测试环境为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称,简而言之,测试环境=硬件+软件+网络+数据准备+测试工具。 硬件:测试必需的服务器、客户端、网络连接等...
  • 企业上云完整流程

    千次阅读 2018-12-06 10:28:46
    企业上云”是指企业通过高速互联网络,将企业的基础系统、业务、平台部署到云端,利用网络便捷地获取计算、存储、数据、应用等服务,有利于降低企业信息化建设成本,构建互联网创新发展生态。 “企业上云”步骤...
  • 也谈软件公司的企业文化

    千次阅读 2011-08-22 16:31:03
    上周六给公司同事做了《软件公司的企业文化发展与案例》的讲座,从企业文化的概念、构成、产生、发展到美国日本企业文化案例... 那么,什么是企业文化?企业文化是指企业在一系列市场经济的实践活动中,逐步形成的全
  • 企业为何要上云?

    千次阅读 2019-04-24 11:43:09
    什么是企业上云 “企业上云”是指企业通过便捷的利用网络资源,实现管理、业务等方面的数据化转型,旨在重构企业的核心竞争力,最大限度创造企业价值。 企业为何要上云 第一,云服务器的成本比较低。云服务器采用的...
  • 低代码平台是一种能够帮助企业快速交付业务应用的平台。自2000年以来,低代码市场一直充斥着40+大大小小的各种玩家,比如国外的Appian、K2、Pega Systems、Salesforce和Ultimus,国内的H3 BPM和炎黄盈动。 2015年...
  • 中小企业如何搭建数据可视化平台

    千次阅读 2016-10-31 17:01:34
    如今,信息时代正逐步向数据时代转变,数据演变得越来越重要,它可以反映出公司的经营情况,为公司的经营和决策提供准确...而数据平台是连接数据和企业的中间件,可以将这些数据通过一定的规格,清晰地展示给企业领导。
  • Offer——携程笔试题+知识点总结情景回顾时间:2016.9.17 19:10-21:10地点:山东省网络环境智能计算技术重点实验室事件:携程笔试 总体来说,携程笔试内容与其它企业笔试题类型基本一致,主要分为智能题、选择题...
  • 什么是企业架构? 在“企业架构”上下文中,“企业”这一术语不仅可用来表示整个企业(包含所有信息和技术服务、流程和基础设施),而且可以表示企业内的一个特定领域。在这两个情形 中,架构可以跨越多个系统和...
  • 静脉识别技术

    千次阅读 多人点赞 2017-08-11 16:29:29
    静脉识别是静脉识别的一种,首先通过静脉识别仪取得个人手指静脉分布图,从手指静脉分布图依据专用比对算法提取特征值,通过近红外光线照射,利用CCD摄像头获取手指静脉的图像,将手指静脉的数字图像存贮在...
  • 今天,随着中国加入WTO,面临全球信息技术的飞速发展和市场竞争的加剧,原有的企业组织结构和管理模式已经不能适应新的环境企业迫切需要进行组织变革,以便在激烈的竞争中处于不败之地。信息技术的应用不但需要...
  • 某Java大佬在地表最强Java企业(阿里)面试总结

    万次阅读 多人点赞 2020-08-23 19:48:06
    2.11、 什么是二叉平衡树,如何插入节点,删除节点,说出关键步骤。 2.12、 TCP如何保证可靠传输?三次握手过程? 2.13、 TCP和UDP区别? 2.14、 滑动窗口算法? 2.15、 Linux下如何进行进程调度的? 2.16、 Linux...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 188,029
精华内容 75,211
关键字:

企业环境指的是什么