基于面向方面软件开发的SAP扩展开发实践

基于面向方面软件开发的SAP扩展开发实践

论文摘要

SAP系统是大型企业管理软件的典型代表,在SAP系统中广泛存在着许多不明显的横切关注点,如合作伙伴决策、一致性检查、各应用组件间的相互依存关系以及过程相关的关注点等。同时,在实际的SAP实施项目中,为了满足多种多样的客户需求而进行的各种扩展开发程序中也存在着许多横切关注点,如日志功能、自定义权限检查等。妥善处理SAP系统中横切关注点分散的问题,无论是对SAP系统内核结构的优化,还是对SAP实施项目的扩展开发效率的提高都具有重要的意义。面向方面软件开发(Aspect-Oriented Software Development, AOSD)是目前软件开发研究领域的一个倍受关注的课题。它是对面向对象软件系统的扩展,是对系统横切关注点抽象的进一步深化。它将存在于对象中的横切关注点进行独立描述,然后再统一整合到系统之中。面向方面软件开发可以很好地解决横切关注点的散布问题。但是,将面向方面软件开发的思想与应用技术引入到大型企业管理软件体系中还面临着一些问题。一方面,由于面向方面软件开发的理论研究并不十分成熟,在应用过程中出现了一些在面向对象软件开发过程中未曾遇到过的问题。这些问题属于面向方面编程(缩写为AOP,Aspect-Oriented Programming)自身固有的问题。另一方面,以SAP系统为例,诸如系统内核的升级、产业链开发过程的控制、系统的维护与监控等许多方面都会由于引入面向方面的软件开发思想而受到深刻的影响。这些问题又属于产品特定的问题。这两方面问题是在实际的大型企业管理软件中应用面向方面软件开发技术的主要障碍。本文以SAP系统为研究对象研究并设计了SAP-AOP体系的基础框架,它包含了三个组成部分:SAP-AOP体系各元素的语法体系、用以支撑SAP-AOP体系各概念的数据库表模型以及SAP-AOP管理器,将面向方面软件开发技术平滑引入到SAP系统中。在本文中实现了SAP-AOP管理器的主要功能。SAP-AOP体系以SAP增强框架体系为基础、结合SAP应用模块体系的层次结构和SAP产业链的扩展开发实际作为参考而设计。它综合了AOP整合系统横切关注点的能力和SAP系统的高度控制能力两方面的优势,使二者相辅相成。一方面,利用AOP对横切关注点的分离与整合能力,抽取并模块化散布于SAP系统中的系统横切关注点,可以优化SAP系统内核的体系架构,并且提高整个产业链扩展开发的效率。另一方面,借助SAP系统的高度模块化和高度控制能力,SAP-AOP体系对横切关注点的粒度选择、方面与业务应用间关系的管理与维护等问题的解决都有所改进。最后,在SAP报表扩展开发项目中将本文所设计的SAP-AOP体系进行了应用,应用效果表明这一体系在节约项目成本、提高开发效率等方面起到了积极作用。

论文目录

  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 课题研究的目的和意义
  • 1.2 国内外研究现状分析
  • 1.3 SAP-AOP 设计项目背景
  • 1.4 本文章节安排
  • 2 AOSD 基本概念
  • 2.1 传统编程方式带来的问题
  • 2.2 面向方面软件开发的产生及特点
  • 2.3 AOP 相关的基本概念
  • 2.4 面向方面软件开发的主要应用
  • 2.5 运用 AOP 需要考虑的基本问题
  • 2.6 在商业应用中存在的一些主要问题
  • 2.7 本章小结
  • 3 SAP-AOP 体系的设计
  • 3.1 SAP 横切关注点分析
  • 3.2 SAP-AOP 语法设计
  • 3.2.1 与增强框架相结合
  • 3.2.2 与 SAP 模块体系相结合
  • 3.2.3 与客户定制程序范围结合
  • 3.2.4 小结
  • 3.3 本章小结
  • 4 SAP-AOP 体系的实现
  • 4.1 SAP-AOP 体系定义的实现
  • 4.1.1 主数据表
  • 4.1.2 关联表
  • 4.1.3 小结
  • 4.2 SAP-AOP 体系编译器及管理器
  • 4.2.1 SAP-AOP 体系编译器及管理器的静态结构
  • 4.2.2 SAP-AOP 体系编译器及管理器的协作过程
  • 4.2.3 SAP-AOP 管理器的功能实现
  • 4.3 SAP-AOP 体系对 AOP 常见问题的分析与改进
  • 4.4 本章小结
  • 5 基于 SAP-AOP 体系的扩展开发实践案例
  • 5.1 案例项目背景概要
  • 5.2 项目设计与实现
  • 5.2.1 项目整体设计
  • 5.2.2 权限控制设计与实现
  • 5.2.3 存在性检查设计与实现
  • 5.3 项目分析
  • 5.4 本章小结
  • 6 总结与展望
  • 6.1 本文总结
  • 6.2 未来工作展望
  • 参考文献
  • 致谢
  • 攻读学位期间发表的学术论文目录
  • 附件
  • 相关论文文献

    • [1].浅析工程类软件开发中的主要问题与应对措施[J]. 电脑知识与技术 2019(35)
    • [2].软件开发中数据库设计理论实践研究[J]. 电子测试 2020(08)
    • [3].福州翔升软件开发有限公司[J]. 中国房地产 2020(16)
    • [4].新时期计算机软件开发技术的应用及发展趋势[J]. 南方农机 2019(10)
    • [5].汽车软件开发中的质量保障体系研究[J]. 电脑知识与技术 2019(27)
    • [6].金融软件开发中存在的问题、原因及对策探析[J]. 数字通信世界 2019(11)
    • [7].浅析如何管理软件开发以提高经济效益[J]. 经济研究导刊 2018(02)
    • [8].关于软件开发效益风险优化评估仿真[J]. 计算机仿真 2018(02)
    • [9].浅析软件开发过程中的伦理问题[J]. 计算机产品与流通 2017(09)
    • [10].面向软件开发信息库的数据挖掘综述[J]. 民营科技 2017(03)
    • [11].面向工程化的软件开发人才培养体系研究与实践[J]. 微型电脑应用 2017(05)
    • [12].面向工程化的软件开发人才培养体系研究与实践[J]. 微型电脑应用 2017(04)
    • [13].金融软件开发问题、解决方案与软件测试分析[J]. 电子技术与软件工程 2017(20)
    • [14].努力前行,不断超越自我——走进中信银行软件开发中心[J]. 金融电子化 2017(06)
    • [15].在实践中快速成长——专访中信银行软件开发中心副总经理刘良俊[J]. 金融电子化 2017(06)
    • [16].打造面向未来的国际一流金融软件开发中心——专访中国工商银行软件开发中心总经理杨龙如[J]. 杭州金融研修学院学报 2017(11)
    • [17].软件开发规律浅析[J]. 无线互联科技 2014(12)
    • [18].浅谈模板工程的软件开发自动化框架[J]. 计算机光盘软件与应用 2015(02)
    • [19].高质量软件开发策略研究[J]. 通讯世界 2015(19)
    • [20].互联网+背景下软件开发课程微课的研究[J]. 南国博览 2019(02)
    • [21].中职软件开发专业“项目一贯制”人才培养模式研究[J]. 数码世界 2020(03)
    • [22].计算机软件开发设计难题和策略[J]. 数码世界 2018(02)
    • [23].浅谈计算机软件的开发维护可靠性[J]. 数码世界 2016(12)
    • [24].敏捷开发模式在中职软件开发课程项目教学中的应用[J]. 广西教育 2017(10)
    • [25].软件开发项目质量管理分析[J]. 今日财富(中国知识产权) 2017(02)
    • [26].基于移动平台下的软件开发教学研究[J]. 时代教育 2017(11)
    • [27].产学研模式打造自主软件开发生态[J]. 中国经济信息 2017(14)
    • [28].基于项目为导向下软件开发课程教学模式的研究与实践[J]. 时代教育 2017(13)
    • [29].深入探究式学习方法的研究——以软件开发教学为例[J]. 科学中国人 2017(24)
    • [30].博世中国创新与软件开发中心在无锡落成启用[J]. 汽车工艺师 2020(12)

    标签:;  ;  ;  ;  

    基于面向方面软件开发的SAP扩展开发实践
    下载Doc文档

    猜你喜欢