论文摘要
软件体系结构是20世纪90年代国际软件工程领域出现的一个研究热点,随着软件系统规模和复杂性的不断增大,软件体系结构的设计已成为系统成功的关键因素。软件体系结构描述是软件体系结构的一个首要研究内容。目前主流的软件体系结构描述方法主要有两类,分别是可视化描述和形式化描述。两者在描述软件体系结构方面具有很强的互补性。可视化描述清楚直观,以UML为代表。UML提供了一套描述软件系统模型的概念和图形表示法,但缺乏精确的语义,难以对所表示的模型进行严格分析。形式化描述语义精确,如XYZ/E。XYZ/E是一种可执行的形式化的时序逻辑语言,可以在统一的时序逻辑框架下表示从形式化规范到可执行程序的不同抽象层次的系统描述,它的这一特性可以应用于软件体系结构的描述、求精和设计中。本文主要探讨了如何将可视化建模语言UML和时序逻辑语言XYZ/E相结合来描述软件体系结构的问题。首先介绍了软件体系结构的基本概念和描述方法,在此基础上,分析了将UML和XYZ/E相结合描述软件体系结构的可行性。UML的各类视图适合对不同系统结构和行为的描述,但缺乏一致的语义基础,难以说明系统的内在联系。时序逻辑语言XYZ/E适合作为软件体系结构的形式化理论基础,但它对软件体系结构概念方面的支持还不够,基于这方面的考虑,我们扩充了XYZ/E的语法成份,使之支持软件体系结构的基本概念,在语言上提供对软件体系结构基本概念的显式支持,并对UML进行扩展和约束,定义了UML活动图的XYZ/E语义,使之更好的支持软件体系结构的描述。最后本文通过对银行ATM系统体系结构的描述和求精,进一步说明了该方法的可行性。本文的研究对软件体系结构描述研究、UML形式语义研究和形式化方法在软件开发中的应用等方面都将有一定的推动作用。