论文部分内容阅读
软件越来越多的被应用于我们日常生活中的各个方面,包括航空航天、轨道交通、医疗信息系统、通信系统等。在这些领域,软件的安全性显得非常的关键,尤其是当软件失效造成的灾难或事故会导致生命危险或巨大的财产损失。本文基于安全相关领域现存开发方法的优点和不足,以轨道交通领域列车自动防护系统(ATP, Automatic Train Protection)为例进行研究,研究了基于模型驱动的代码自动生成方法,旨在提高软件的安全性,主要工作体现在以下方面:1.以软件开发的现状及方法和模型为基础,综合分析了安全领域软件开发的方法。根据ATP系统开发中面临的挑战和现有开发方法的不足,提出利用基于模型驱动和自动代码生成的方法来开发ATP系统软件。2.在分析基于通信的列车运行控制系统(CBTC, Communications Based Train Control)的车载ATP子系统功能和接口特点的基础之上,设计ATP模型的数据结构和模型元素,这也是本文的重点。本研究建立了ATP系统的接口模型,架构模型及功能模型。ATP的功能模型由数据流图模型或状态机模型实现,描述了功能单元的输入输出变量及其内部详细的数据流程。3.设计并实现了ATP代码自动生成辅助工具平台。此平台可以采用图形化的界面实现系统模型的建立,并生成XML格式的模型描述文件;采用XML+XSLT技术,设计具体业务的代码格式模板,自动生成目标代码。通过对课题的研究,本文得出以下结论:基于模型驱动的开发方法避免了人工编写代码,使开发者更关注于模型的精确性而不是代码,保持了设计和代码的一致性,提高了软件系统的安全性;同时,自动生成的方法使代码更新变得更为高效和便捷,提高了软件质量和开发效率。