正在加载图片...
者隐藏起来 数据抽象:在功能抽象的基础上进一步隐藏除接口参数外的所有数据。构件的功能或 行为由输入参数和构件自身记忆的内部状态决定。构件的内部状态可由构件的内部操作来更 新。面向对象程序设计语言中的“类”是一种典型的基于数据抽象的软件构件。 过程抽象:在数据抽象的基础上进一步实现在同一软件构件上并发执行的多个线程的 无关性。软件构件提供端口,以便为多个用户同时访问软件构件中的资源进行同步控制。访 问请求首先进入等待队列,软件构件就绪后,从队列中取出请求逐个执行。使用构件的多个 线程之间通过全局共享数据或消息传递进行信息交换。软件构件的设计必须保证构件接口元 素的功能和行为在语义上的正确性,不管各线程操作序列之间的相对时序如何变化 (3)程序设计的主要原则 可复用性、可理解性、正确性和易组装性是衡量软件构件质量的重要标准。这些标准都 与构件开发过程中的程序设计风格密切相关。对于代码级软件构件的开发者,必须注意遵循 以下的程序设计原则 ①可复用性与易组装性 抽象化、参数化、模板化 显式建立构件的外部接口,保证接口在语法上和语义上的清晰性; 除参数外,接口中的成分不应与运行环境相关 使用构件的信息应与构件的实现细节相分离; ■构件接口的使用方式、功能和行为模式应遵循论域分析所确立的公共标准 ②正确性 使用显式的、标准的、完备的出错处理机制; 使用强类型的程序设计 在构件上附加重要的测试数据和测试报告 ③可理解性 提供完全的、精确的文档和程序注解; 构件内部的结构、数据和控制流程必须标准化 使用统一的命名规则和语法约定 (4)软件构件的质量保证 由于软件构件将在多种硬件和软件环境下运行,因此,除采用软件工程的一般的质量保 证措施之外,还要针对可复用构件的特征进行特别的质量保证 ①构件的开发者应当利用现有的硬件、软件,在尽可能多的环境中进行各种标准测试 但是。由于条件的限制及未来运行环境的不可穷举性,这种方法对于构件的质量保证并不充 分,必须与其它方法配合使用 ②在构件的设计过程中必须预先考虑构件对于各类可能的硬件环境的可移植性和对于 不同软件环境的适应能力。根据设计制定相应的编程原则,并在编程的过程中贯彻始终, ③应当尽可能将构件的与环境有关的因素抽象成为构件的参数,或者可将这些因素作 为使用构件的约束条件在接口说明中详细阐述,甚至可以将这些约束条件标识成精确的逻辑 断言插装到构件的源程序中 ④对可能引发移植性错误和适应性错误的出错源进行分类,针对每一类出错源制定相 应的防范和测试措施。移植性错误包括数值计算错误、多任务调度错误、内存使用错误等: 适应性错误包括并发性错误、重名错误、表达式求值顺序错误等。针对每一类出错源制定相 应的防范和测试措施与硬件、软件环境密切相关。 ⑤制订并执行统一的、良好的程序设计风格。这对于确保构件质量,提高可复用性 可理解性和易组装性有重要的意义。7 者隐藏起来; ▪ 数据抽象:在功能抽象的基础上进一步隐藏除接口参数外的所有数据。构件的功能或 行为由输入参数和构件自身记忆的内部状态决定。构件的内部状态可由构件的内部操作来更 新。面向对象程序设计语言中的“类”是一种典型的基于数据抽象的软件构件。 ▪ 过程抽象:在数据抽象的基础上进一步实现在同一软件构件上并发执行的多个线程的 无关性。软件构件提供端口,以便为多个用户同时访问软件构件中的资源进行同步控制。访 问请求首先进入等待队列,软件构件就绪后,从队列中取出请求逐个执行。使用构件的多个 线程之间通过全局共享数据或消息传递进行信息交换。软件构件的设计必须保证构件接口元 素的功能和行为在语义上的正确性,不管各线程操作序列之间的相对时序如何变化。 (3) 程序设计的主要原则 可复用性、可理解性、正确性和易组装性是衡量软件构件质量的重要标准。这些标准都 与构件开发过程中的程序设计风格密切相关。对于代码级软件构件的开发者,必须注意遵循 以下的程序设计原则。 ① 可复用性与易组装性 ▪ 抽象化、参数化、模板化; ▪ 显式建立构件的外部接口,保证接口在语法上和语义上的清晰性; ▪ 除参数外,接口中的成分不应与运行环境相关; ▪ 使用构件的信息应与构件的实现细节相分离; ▪ 构件接口的使用方式、功能和行为模式应遵循论域分析所确立的公共标准。 ② 正确性 ▪ 使用显式的、标准的、完备的出错处理机制; ▪ 使用强类型的程序设计; ▪ 在构件上附加重要的测试数据和测试报告。 ③ 可理解性 ▪ 提供完全的、精确的文档和程序注解; ▪ 构件内部的结构、数据和控制流程必须标准化; ▪ 使用统一的命名规则和语法约定。 (4) 软件构件的质量保证 由于软件构件将在多种硬件和软件环境下运行,因此,除采用软件工程的一般的质量保 证措施之外,还要针对可复用构件的特征进行特别的质量保证。 ① 构件的开发者应当利用现有的硬件、软件,在尽可能多的环境中进行各种标准测试。 但是。由于条件的限制及未来运行环境的不可穷举性,这种方法对于构件的质量保证并不充 分,必须与其它方法配合使用。 ② 在构件的设计过程中必须预先考虑构件对于各类可能的硬件环境的可移植性和对于 不同软件环境的适应能力。根据设计制定相应的编程原则,并在编程的过程中贯彻始终。 ③ 应当尽可能将构件的与环境有关的因素抽象成为构件的参数,或者可将这些因素作 为使用构件的约束条件在接口说明中详细阐述,甚至可以将这些约束条件标识成精确的逻辑 断言插装到构件的源程序中。 ④ 对可能引发移植性错误和适应性错误的出错源进行分类,针对每一类出错源制定相 应的防范和测试措施。移植性错误包括数值计算错误、多任务调度错误、内存使用错误等; 适应性错误包括并发性错误、重名错误、表达式求值顺序错误等。针对每一类出错源制定相 应的防范和测试措施与硬件、软件环境密切相关。 ⑤ 制订并执行统一的、良好的程序设计风格。这对于确保构件质量,提高可复用性、 可理解性和易组装性有重要的意义
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有