形式化方法
软件工程中的形式化方法 从广义上讲,形式化方法(Formal Method)是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动。 狭义的讲,形式化方法是运用形式化语言,进行形式化的规格描述、模型推理和验证的方法。 将形式化方法运用于软件工程实践当中的主要目的是保证软件的正确性。 软件开发实际上就是把现实世界的需求映射成软件的模型化过程。 在进行模型化的过程中涉及到三种系统模型:现实世界、模型表示和计算机系统。 软件形式化过程即使在这三类系统之间进行描述和转化的过程。 开发过程中的任务依次包括:模型获取、模型验证、模型变换。 软件规格说明是对软件系统对象,对象的操作方法,以及对象行为的描述。 非形式化的规格说明可用自然语言、图、表等形式来描述。
在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和鲁棒性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。