刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

论述基于构件的软件开发方法及其应用

使用微信搜索喵呜刷题,轻松应对考试!

答案:

一、概要叙述你所参与管理或开发的软件项目以及你在其中所承担的主要工作。

二、详细论述基于构件的软件开发方法的主要过程。

CBSD方法使得软件开发不再一切从头开发,开发的过程就是构件组装的过程,维护的过程就是构件升级、替换和扩充的过程,其优点是提高了软件开发的效率;构件可由一方定义其规格说明,被另一方实现,然后供给第三方使用,CBSD允许多个项目同时开发,降低了费用,提高了可维护性,可实现分步提交软件产品。

CBSD方法由软件的需求分析和定义、架构设计、构件库的建立、应用软件构建、测试和发布五个阶段组成。

(1)需求分析和定义:在这阶段需要重点说明系统跟曾经开发过的其他系统类似,具有大量可复用的成熟构件。

(2)架构设计:结合实际项目,根据上一阶段获得的需求和定义提出架构模型。

(3)构件库的建立:这是本论文主题的重点。构件的获得有四个途径:

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

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

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

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

而构件库的检索方法有3种

1)基于关键字的检索。

2)刻面检索法。

3)超文本检索法。

(4)应用软件构建:构建过程主要是构件的组装过程,而大致有三种技术:

1)基于功能的组装技术。基于功能的组装技术采用子程序调用和参数传递的方式将构件组装起来。它要求库中的构件以子程序/过程/函数的形式出现,并且接口说明必须清晰。当使用这种组装技术进行软件开发时,开发人员首先要对新系统进行功能分解,将系统分解为强内聚、松耦合的功能模块;然后根据各模块的功能需求提取构件,进行适应性修改后,再挂接到上述功能分解框架中。

2)基于数据的组装技术。基于数据的组装技术首先根据当前软件问题的核心数据结构设计出一个框架,然后根据框架中各结点的需求提取构件并进行适应性修改,再将构件逐个分配至框架中的适当位置。此后,构件的组装方式仍然是传统的子程序调用与参数传递。这种组装技术也要求库中构件以子程序形式出现,但它所依赖的软件设计方法不再是功能分解,而是面向数据的设计方法,例如,Jackson 系统开发方法。

3)面向对象的组装技术。由于封装和继承特征,面向对象方法比其他软件开发方法更适合支持软件复用。在面向对象的软件开发方法中,如果从类库中检索出来的基类能够完全满足新系统的需求,则可以直接应用,否则,必须以基类为父类,生成相应的子类,以满足新系统的需求。

(5)测试和发布:可以是一个增量和迭代的过程。

三、结合你具体参与管理和开发的实际项目,请说明具体实施过程以及碰到的主要问题。

可能遇到的问题包括:构件不适配;连接子不适配;从遗留工程中抽取的构件性能不满足;购买现成的商业构件无法完美匹配等。

解析:

本题要求围绕"基于构件的软件开发方法及其应用"这一论题进行论述。答题者需要依次从三个方面进行回答。

首先,答题者需要简要叙述自己参与管理和开发的软件项目以及在其中所承担的主要工作。这有助于理解答题者实际项目经验,从而更好地回答后续问题。

其次,答题者需要详细论述基于构件的软件开发方法的主要过程。这包括需求分析和定义、架构设计、构件库的建立、应用软件构建、测试和发布等阶段。答题者需要详细解释每个阶段的任务和目标,以及如何在项目中应用这些方法。

最后,答题者需要结合自己实际参与管理和开发的软件项目,说明具体实施过程以及遇到的主要问题。这包括如何应用基于构件的软件开发方法解决实际问题,以及在此过程中遇到的主要挑战和解决方案。答题者需要提供具体的项目经验和实例来支持自己的论述。

创作类型:
原创

本文链接:论述基于构件的软件开发方法及其应用

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share