好文档 - 专业文书写作范文服务资料分享网站

[精编]软件工程课后答案

天下 分享 时间: 加入收藏 我要投稿 点赞

析人员是参与这之中的重要一份子,需要协调这之中的各方利益,这就要求分析员必须要有优秀的协商谈判能力。

(4)广泛的知识面:

除了具备基本的IT技能、知识外,需要广泛涉猎其他行业其他学科的知识方法,以系统工程的理念,借鉴和利用其他行业的为IT行业所用,也可以把IT行业的理念应用到其他行业;

(5)精湛的技术能力:

系统分析员往往需要分析可行性和解决研发人员的技术问题,因此必须具备广泛的技术涉猎面和较强的技术能力;

(6)财务能力:

系统分析员往往需要参与项目的招投标分析,为了保证企业的利润和客户的利益,必须进行财务核算,需要具备会计、财务,成本计算等方面的能力;

(7)司法能力:

与其他大部分行业一样,IT行业也受到法律的约束,任何活动必须合情合理合法,任何违背法律的项目最终都会失败,违背伦理道德的事和人最终都将失去人心。

(8)超强超快的学习能力:

IT行业新技术层出不穷,同时其他相关必备知识、业务知识也是瞬息万变,系统分析师要能够快速学习并快速掌握和灵活应用;

(9)敏锐的观察力:

由于IT行业项目的特殊性,项目复杂多变,系统分析师要能够先于其他人员发现问题、发现隐患,并提前做出规避风险的策略。 3.4列出在制定需求获取策略时的3种主要考虑因素。

答:(1)能否建立起顺畅的通讯途径;(2)是否能够获取用户对系统的功能需求和非功能需求;(3)是否利于在可运行系统时的管理要求。

3.6举例说明一个系统的3个不同类型的非功能需求

答:非功能性需求是指软件产品为满足用户业务需求而必须具有且除功能需求以外的特性。软件产品的非功能性需求包括系统的性能、可靠性、可维护性、可扩充性和对技术和对业务的适应性等。例如在银行管理系统中,由于银行数据量的庞大以及对银行账户的管理需求,用户对系统的性能、可靠性、可维护性要求很高。安全性是对银行用户个人信息保密的基本要求;在使用系统时,由于用户庞大,要求能快速安全的执行要求,这就对系统的性能有高需求;银行的用户的变动比较大,需求高要求的系统维护。

3.8软件需求分析的操作性原则和需求工程的指导性原则是什么? 答:(1)必须能够表示和理解问题的信息域; (2) 必须能够定义软件将完成的功能;

(3) 必须划分描述数据、功能和行为的模型,从而可以分层次

地揭示细节;

(4) 分析过程应该从要素信息移向细节信息

3.9软件需求规约主要包括哪些内容?自己寻找一个实例,亲自写一个需求规约。

答:软件需求规约包括:引言、信息描述、功能描述、行为描述、检验标准、参考书目、附录。

3.10需求验证应该有哪些人参加?画出一个过程模型,说明需求评审应该如何组织。

答:参与人员:分析人员,用户,开发部门的管理者,软件设计、实现、测试的人员。 需求分析 分析人员用户 用户要求 获取系统系统 信息需求折衷方案 系统信息

开发部门管理者软件设计、实现、测试人员 系统需求

第4章

4.1简述软件设计阶段的基本任务

软件设计的输入是软件分析模型。使用一种设计方法,软件分析模型中通过数据、功能和行为模型所展示的软件需求的信息被传送给设计阶段,产生数据/类设计、体系结构设计、接口设计、部件及设

计。

? 数据/类设计将分析类模型变换成类的实现和软件实现所需要的数据结构。

? 体系结构设计定义了软件的整体结构,由软件部件、外部可见的属性和他们之间的关系组成。

? 接口设计描述了软件内部、软件和协作系统之间以及软件同人之间的通信方式。

? 部件级设计将软件体系结构的结构性元素变换为对软件部件的过程性描述。

4.2软件设计与质量的关系是怎么样的?

设计是在软件开发中形成质量的阶段,设计提供了可以用于质量评估的软件表示,是将用户需求准确的转化为完整的软件产品或系统的主要途径。

4.4简述模块、模块化及模块化设计的概念。

在软件工程中模块是数据说明、可执行语句等程序对象的集合,具有名字、参数、功能等外部特征以及完成模块功能的程序代码和模块内部数据等内部特征。

模块化,即把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件,实际上是系统分解和抽象的过程。

模块化设计,简单地说就是程序的编写不是开始就逐条录入计算机语句和指令,而是首先用主程序、子程序、子过程等框架把软件的主要结构和流程描述出来,并定义和调试好各个框架之间的输入、输

出链接关系。逐步求精的结果是得到一系列以功能块为单位的算法描述。以功能块为单位进行程序设计,实现其求解算法的方法称为模块化。模块化的目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。

4.6耦合和软件可移植性的概念有何关系?举例说明自己的结论。

所谓“耦合性”是指模块之间联系的紧密程度的一种度量,而软件的“可移植性”是指将一个软件系统从一个计算机系统或环境移植到另一个计算机系统或环境中运行时所需工作量的大小。可移植性是用一组子特性,包括简明性、模块独立性、通用性、可扩充性、硬件独立性和软件系统独立性等,来衡量的。如果一个软件具有可移植性,它必然耦合性低,这样模块独立性要强。例如,有一个图形处理软件,它应具有二维几何图形处理、三维几何图形处理、图形显示、外设控制、数据库管理、用户界面控制、设计分析等模块。如果这些模块之间都是通过参数表来传递信息,那么它们之间的的耦合就是数据耦合或标记耦合等,都是低耦合。将来如果想要把它们移植到另一个外部环境中,这些模块容易修改(功能内聚),且接口清晰,修改可局部化。反言之,如果这些模块都是功能内聚或信息内聚的模块,模块之间的耦合都是低耦合,也对可移植性有促进。但不能讲具有低耦合性模块结构的软件一定具有可移植性,因为是否具有可移植性还有其它因素的影响。

4.7用自己的话描述信息隐蔽概念,并讨论信息隐藏与模块独立两概

念之间的关系。

[精编]软件工程课后答案

析人员是参与这之中的重要一份子,需要协调这之中的各方利益,这就要求分析员必须要有优秀的协商谈判能力。(4)广泛的知识面:除了具备基本的IT技能、知识外,需要广泛涉猎其他行业其他学科的知识方法,以系统工程的理念,借鉴和利用其他行业的为IT行业所用,也可以把IT行业的理念应用到其他行业;(5)精湛的技术能力:系统分析员往往需要分析可
推荐度:
点击下载文档文档为doc格式
3qrrj5x5i63xy6q955p40ne2d1fp330147q
领取福利

微信扫码领取福利

微信扫码分享