论文部分内容阅读
软件系统中的非功能性需求模块的实现与功能性需求模块的实现混杂在一起,在设计阶段会干扰设计师的设计思路,在软件开发阶段使程序员的代码混乱,在软件维护阶段导致项目难于维护。而一个成熟的系统框架可以减少重复开发的工作量、缩短开发时间、降低开发成本,增强程序的可维护性和可扩展性。因此,构建一个成熟的软件开发框架一直是软件开发者关注的课题。本文在分析软件系统中常见的非功能性需求后,运用Spring框架和面向方面编程思想构建了一个较为成熟的Web框架。对具有共性的系统非功能性需求,如数据持久化、事务管理、权限管理等,给出了解决策略与具体的解决方案。最后,从系统架构的角度出发,结合原MyEc电子商务系统的不足,提出了一个改进后可以符合企业级系统需求的系统架构。本文研究的主要内容包括以下几个方面:(1)研究了轻量级容器提供的服务与特征,同时分析了轻量级容器和EJB容器的优点。(2)阐述了Spring的整体框架结构和选择Spring作为轻量级容器的原因。深入研究了Spring框架中IoC(Inversion of Control)和AOP(Aspect OrientedProgramming)的实现总线和应用策略。(3)系统中的非功能性需求实质上就是具有共性的系统级横切关注点。重点探讨了运用面向方面编程(AOP)结合控制反转(IoC)框架将软件系统中常见的横切关注点模块化,以达到逻辑过程中各部分之间低耦合的隔离效果。详细的给出了数据持久化、事务管理、权限管理、远程调用这四个方面的解决方案。(4)从Web层、中间层、业务层、持久层四个层次出发,分析原MyEc系统可能遇到的问题。同时针对上述不足给出了具体的解决方案。(5)从设计模式的角度出发,阐述了重构后系统框架的优势所在,定性的证明了改进后系统架构的先进性。