所谓形式化方法,是描述系统性质的基于数学的技术,也就是说,如果有一种有坚实的数学基础,那它就是形式化的。它适用于软件和硬件系统的描述、开发和验证,是期望能够向其他工程学科一样,使用适当的数学分析以提高设计的可靠性和强健性。根据形式化的程度,可以把软件工程方法划分为非形式化、半形式化和形式化3类。使用非形式化方法可能存在矛盾、二义性、含糊性、不完整性及抽象层次混乱,而使用形式化方法能够克服非形式化方法的缺点。
在计算机科学和软件工程领域,形式化方法是基于 数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和 鲁棒性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。是描述系统性质的基于数学的技术,也就是说如果一种方法有坚实的数学基础,那么它就是形式化的。