问题 问答题 案例分析题

请详细阅读有关嵌入式构件设计方面的说明,在答题纸上回答问题1至问题3。

说明:

构件(component)也称为组件,是一个功能相对独立的具有可复用价值的软硬件单元。近年来,构件技术正在逐步应用于大型嵌入式系统的软件设计。某公司长期从事飞行器电子设备研制工作,已积累了大量成熟软件。但是,由于当初管理和设计等原因,公司的大量软件不能被复用,严重影响了公司后续发展。公司领导层高度重视软件复用问题,明确提出了要将本公司的成熟软件进行改造,建立公司可复用的软件构件库,以提升开发效率、降低成本。公司领导层决定将此项任务交给技术部门的王工程师负责组织实施。两个月后,王工程师经过调研、梳理和实验,提交了一份实施方案。此方案得到了公司领导层的肯定,但在实施过程中遇到了许多困难,主要表现在公司软件架构的变更和构件抽取的界面等方面。

请用200字以内文字说明获取构件的方法有哪几种?开发构件通常采用哪几种策略?并列举出两种主流构件标准。

答案

参考答案:

基于构件的软件开发中,可以通过不同的途径来获取构件,主要包括以下4种方法:

(1)从现有构件中获得符合要求的构件,直接使用或做适应性修改,得到可复用的构件;

(2)通过遗留工程(Legacy Engineering),将具有潜在复用价值的软件提取出来,得到可复用的构件;

(3)从市场上购买现成的商业构件,即COTS(CommercialOff-The-Shell)构件;

(4)开发新的符合要求的构件。

开发构件通常采取3种策略:

(1)分区(partitioning):指的是将问题情景的空间分割成几乎可以独立研究的部分;

(2)抽象(abstraction):是对在给定实践内执行指定计算的软/硬件单元的一种抽象;

(3)分割(segmentation);是将结构引入构件的行为,支持对行为性质进行时序推理。

当前主流构件标准有:

(1)CORBA:由OMG(对象管理集团)制定;

(2)COM/DCOM:由Microsoft制定;

(3)EJB:由SUN的Java企业Bean制定。

解析:

构件(component)也称为组件,是一个功能相对独立的具有可复用价值的软硬件单元。近年来,构件技术正在逐步应用于大型嵌入式系统的软件设计。从传统意义上来讲,构件就是一种可独立开发、具备独立功能的一类软件。它具备有独立性、可重用性、可组装性、可配置性等特点,构件没有大小之分,可通过将几个构件组装成一个新构件。

通常情况下,软件人员在从事开发时,在分析和论证的基础上,提炼出适合本项目需要的构件,这样可降低软件开发成本、缩短开发周期。软构件可通过多种途径获取,目前可主要归纳为以下四种方法:

(1)修改已有构件:从现有构件中获得符合要求的构件,直接使用或做适应性修改,得到可复用的构件;

(2)封装新构件:通过遗留工程(Legacy Engineering),将具有潜在复用价值的软件提取出来,得到可复用的构件;

(3)COTS构件:从市场上购买现成的商业软件(构件),通过处理形成满足自己需要的构件,即COTS(CommercialOff-The-Shell)构件;

(4)新开发构件:针对项目需要,在分许、评估的基础上,开发新的符合要求的构件。

软件构件的开发方法通常包括了分区(partitioning)、抽象(abstraction)和分割(segmentation)等三种。分区指的是将问题情景的空间分割成几乎可以独立研究的部分;抽象是对在给定实践内执行指定计算的软/硬件单元的一种抽象;分割是将结构引入构件的行为,支持对行为性质进行时序推理。通俗地说,分区就是在空间上对软件进行划分,保证构件在空间上具备独立特性,分割就是按软件程序的执行行为特征,按时间关系进行分解,保证构件在时间上具备独立特性,抽象就是按软件功能独立性进行分解和抽象。目前,基于构件的软件体系标准是由OMG(对象管理集团)制定的CORBA标准、由Microsoft公司制定COM/DCOM标准和由SUN的Java企业Bean制定EJB标准。

单项选择题
单项选择题