论文摘要
伴随着我国大型运输机(大运),大型客机(大客)等一系列自主研发的航空项目的启动,对有关的航空电子软件产品的要求也就越来越高,同国际接轨,符合国际化要求成为了必然。在我们自己的航电产品研发中引入先进的开发思想,理念和策略是提升产品质量,紧跟国际水准的重要方法之一。面向方面的编程(Aspect-Oriented Programming,AOP)是软件开发领域中的一种新兴技术,它解决了传统的程序经常表现出一些不能自然地适合单个程序模块或者几个紧密相关的程序模块的行为,即“横切关注点”(Crosscutting Concern)的问题。对传统方法中颇为困扰的代码纠缠,代码分散问题给出了独到的解决方案,同时又为OOP技术提供了另一种重用的可能。作为面向对象技术的一种重要完善,它对于开发高可靠性,高安全性和高可维护性的航空电子软件能起到相当的帮助。本论文通过将AOP的理念和方法应用于某个我国正在自行研发的航空电子软件项目,对该技术在航电软件领域的设计,开发,测试等各个方面做了尝试与探讨。就目前而言,有关航电软件系统的设计与开发较为普遍的是采用OOP方式,但对AOP技术的涉及非常非常少。本文将从以下几个方面研究AOP在航电软件系统设计研发中的应用。首先,从需求分析阶段就开始定位横切关注点,并作为重要分支加以研究,明确核心关注点与横切关注点,了解,认识定位的方法和实施的难度。其次,结合航电的实际情况对AOP的几个经典方面如日志(Log),事务(Transaction),安全性(Security)等等进行研究,特别是在设计和编码阶段的具体工作,分析该技术对出来上述几个方面问题的优缺点。接着,在当下AOP技术比较热点的软件验证工作阶段里,按照航电软件的验证流程,遵循每一步验证步骤,在各个步骤尝试运用面向方面技术,了解该技术对于验证工作的帮助和优势。再者,有鉴于AOP方法自身的可验证性是受到一定置疑的,本文将通过与航电软件特有的业内标准如RTCA的DO-178B规范等相结合,在高可靠性要求下分析对应关注点的可重复与可验证性。最后,是本文的总结,并探讨了进一步的研究方向和内容,对今后工作给予了展望,也希望能在航空电子行业中更多应用、推广本文中所谈到的设计思路和方案。