实用软件工程课后题答案Word格式文档下载.docx

上传人:b****3 文档编号:6428383 上传时间:2023-05-06 格式:DOCX 页数:105 大小:338.87KB
下载 相关 举报
实用软件工程课后题答案Word格式文档下载.docx_第1页
第1页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第2页
第2页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第3页
第3页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第4页
第4页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第5页
第5页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第6页
第6页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第7页
第7页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第8页
第8页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第9页
第9页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第10页
第10页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第11页
第11页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第12页
第12页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第13页
第13页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第14页
第14页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第15页
第15页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第16页
第16页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第17页
第17页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第18页
第18页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第19页
第19页 / 共105页
实用软件工程课后题答案Word格式文档下载.docx_第20页
第20页 / 共105页
亲,该文档总共105页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

实用软件工程课后题答案Word格式文档下载.docx

《实用软件工程课后题答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《实用软件工程课后题答案Word格式文档下载.docx(105页珍藏版)》请在冰点文库上搜索。

实用软件工程课后题答案Word格式文档下载.docx

面向构件的程序=构件+构架。

4.软件工程的7条基本原理有何现实意义?

软件工程的7条基本原理是在面向过程的程序设计时代(结构化时代)提出来的,但在面向数据和面向对象的程序设计的今天,它仍然有效。

并且在军事上的实时跟踪监控系统中有很好的应用,而且随着软件的开发和管理的进步,它将不断完善和充实。

请读者注意,作者在书中又新加入了第8条基本原理:

软件工程中的二八定律。

这是对基本原理的补充与发展。

5.读者同意“四种开发方法”和“五个面向理论”的提法吗?

为什么?

“四种开发方法”是指“面向过程的方法、面向对象的方法、面向数据的方法、形式化方法”,面向过程的方法来源于面向过程的程序设计,面向对象的方法来源于面向对象的程序设计,面向数据的方法就是面向元数据的方法,它来源于关系数据库程序设计,形式化方法来源于离散数学中的集合运算和逻辑运算。

四种方法各适用于不同的场合,各有优缺点,互相促进,构成一个开发方法论的多极化世界。

“五个面向理论”是指“面向流程分析、面向数据设计、面向对象实现、面向功能测试、面向过程管理”,它是在综合“四种开发方法”各自的优点之后提出的软件工程实施理论,是对前者的继承与发展。

总之,上述提法既精彩又实用。

6.怎样理解软件工程的支持过程?

软件工程的支持过程是由支持软件生存周期各个阶段的生产工具所组成。

就是说将一个软件的生存周期划分为市场调研、立项、需求分析、策划、概要设计、详细设计、编程、单位测试、集成测试、运行、维护这几个过程中,在这些过程中需要配套的工具来支持,比如需求分析工具、设计工具、实现工具、测试工具、维护工具、配置工具,开发环境等。

7.怎样理解ISO9000?

如何用ISO9000去管理软件企业?

ISO9000是国际标准化组织ISO对制造行业、服务行业和软件行业(智力产品行业)制定的一套企业质量管理认证体系。

ISO9000通过其自己制定的过程管理标准,在IT行业中,它适用于网络集成中心、软件研发中心、客户服务中心及系统维护中心,从而达到管理IT企业的目的。

8.怎样理解ISO9000的文档体系?

质量手册、程序文件、质量记录三者有何联系与区别?

ISO9000的文档体系是由三个文件构成的:

质量手册、程序文件、质量记录。

质量手册是程序文件的指导方针,程序文件是质量记录的框架和模板,质量记录是程序文件中的模板的运行操作记录,它们之间是密不可分的相互联系和影响,但是又有区别,对于某个质量要素,质量手册是介绍细则,程序文件只是规定如何做,质量记录则是做完的具体记录。

9.怎样理解“微软企业文化”现象?

试比较它与ISO9000和CMMI的各自特点。

“微软企业文化”现象,是指一个公司自己内部规定了一套严格的管理制度和文档标准,以企业文化为主,以规章制度约束为辅,经过长时间的积累、沉淀孕育出与自己公司相吻合的企业文化。

“微软企业文化”现象是自己独创的一套管理模式来管理企业,属于轻载过程管理。

ISO9000是按20多个质量要素,来管理企业运作。

CMMI是按24个过程域、分阶段模型和连续模型两种方式管理来管理企业运作,属于重载过程管理。

10.怎样理解CMMI?

如何用CMMI去管理软件企业?

CMMI是评估软件能力与成熟度等级的一套标准。

该标准基于众多软件专家的实践经验,侧重于软件开发过程管理能力的改进与提高,是软件生产过程改善的标准和软件企业成熟度等级评估的标准。

它是CMM的继承与发展,适用于所有IT企业。

CMMI通过三个方面来管理或监视软件企业:

(1)软件组织:

用它来不断改进自身的软件过程管理能力。

(2)评估机构:

用它来评估某软件组织当前软件能力成熟度的级别。

(3)客户:

用它来评价某承包商(软件外包商)的软件能力。

11.怎样理解CMMI的作用与现实意义?

CMMI的形成是众多软件专家参与、建议、评审和测试的结果,是软件领域管理的智慧结晶,它为软件公司提供了使企业从低管理级别、逐步成长到高管理级别的循序渐进的方法。

企业可以按照CMMI来检验软件结构的软件开发实践,明确差距,找出不足,然后加以改进。

对于一个软件企业来说,最重要的是根据企业的实际,产生适合自身发展需要的软件质量管理系统(QMS),当前软件开发中有三个因素:

过程、技术和人员,它们构成了软件的铁三角。

软件企业面临的是过程变更、技术进步和频繁的人员流动,因此如何处理好这些问题是企业构建QMS的核心,CMMI是实现该管理系统的一种模型,具有重大的现实意义。

12.是否存在这样一种现象:

搞系统软件的公司不需要采用CMMI和ISO9000模式?

CMMI和ISO9000模式只适用与搞应用的企业?

如果是,这是为什么?

如果不是,又是为什么?

不是。

因为CMMI和ISO9000模式规定了严格的管理制度、文档和评估软件能力与成熟度等级的一套标准,它们几乎包括了所有的IT的企业,只是一些优秀的企业自己内部形成特有的企业管理文化,但是它们并不排斥CMMI和ISO9000模式,甚至还充分肯定CMMI和ISO9000体系。

13.敏捷文化现象是什么意思?

敏捷文化现象是指好的开发过程应该可以在保证质量的前提下,做到文档适度、度量适度和管理适度,并且根据敏捷文化能迅速做出自我调整,实现企业效益的最大化。

14.轻载过程改进模型(敏捷文化现象)能替代或战胜重载过程改进模型CMM/CMMI吗?

不能。

因为轻载过程改进模型只适用于少于12人的项目,对个人的素质要求很高,成功的大型复杂案例并不多,它特别适合于中小型软件企业,以及中小型软件项目。

而重载过程改进模型CMM/CMMI在某种程度上包容了轻载过程改进模型,它对整体的素质要求很高,适合于所有的IT企业。

15.系统集成是什么含义?

怎样看待市场上的计算机网络集成商?

系统集成是指网络环境、数据环境和程序环境(企业门户)三个方面的集成。

现在市场上的计算机网络集成商有一小部分人不懂的数据集成的重要性,其表现方式是在进行大型信息系统分析与设计时,只注重功能分析与设计,不注重元数据的分析与设计,他们的设计文档只有业务流程图、数据流程图、功能层次图,而没有关键的文档E-R图,从而导致集成度降低。

16.软件工程与信息系统工程有何异同?

信息系统工程是软件工程的一个分支,它除了要遵守软件工程的普遍原理和方法之外,还要遵守自己的特殊原理和方法。

17.请你总结信息系统的建设方法。

信息系统的建设方法由4方面个组成的:

(1)信息系统建设的指导思想。

(2)用CASE工具进行信息系统建设。

(3)信息系统必须进行系统集成。

(4)信息系统的开发方法。

18.对信息系统建设中的信息,一是要标准化,二是要集成化,这是为什么?

标准化是为集成化服务的,没有标准化就不能实现集成化。

反过来,不进行集成化,标准化也是没有用的。

所以对于信息系统来说,系统集成显得特别重要。

因为一个一个的信息孤岛,既分散了信息资源,有不能发挥信息的最大价值。

19.如何用面向数据的编程方法进行数据处理?

首先是在数据库服务器上编制存储过程和触发器,其次是用建立视图与运行视图的方法进行大量的数据统计处理,最后是指用SQL语句进行各种查询统计和报表输出。

20.根据学过的数据库编程经验,请举出一个用创建视图的方法进行数据处理的例子。

createviewj1_spj

as

selectsno,sname,ssexfromstudent

wheresno='

s1'

(条件语句)

视图(j1_spj)的创建是依据基本表(student)进行查询。

当基本表中的记录符合条件语句wheresno='

规定的条件时,就能查询出基本表中符合条件记录的学号、姓名、性别的值。

21.怎样理解元数据?

元数据是关于数据的数据,组织数据的数据。

如数据库概念设计中的实体名和属性名,数据库物理设计中的表名和字段名等都是元数据。

22.《港口信息系统建设案例》对你有何启示?

这个案例是我了解到:

对于信息系统建设来说,面向数据的方法不但简单易行、而且是行之有效的最典型案例。

也懂得一个软件企业要想取得成功,一定要做到始终坚持采用同一种信息系统的开发方法、同一种关系数据库管理系统、同一种开发工具、同一个行业领域的信息系统建设,只有这样才能做到越来越熟练,并且越坚持这些方法,最后做到该行业的“老大”。

第二章:

软件生存周期及开发模型

本章提示:

软件生存周期及开发模型这一章篇幅不大,主要是介绍软件企业常用的四个开发模型:

瀑布模型、增量模型、迭代模型、原型模型,重点是瀑布模型,难点是迭代模型。

对于其它不常用的开发模型,只是简单地提到,没有必要做进一步解释。

学完这一章之后,你不但从宏观上理解了软件的开发过程,而且从微观上掌握了选取开发模型的方法。

1.为什么要选择软件开发模型?

软件开发模型与软件生存周期有什么关系?

因为软件开发模型是软件工程研究的四大内容之一,它虽然不是软件工程研究的重点,但是在宏观上特别重要。

软件公司的项目组在开发一个大项目或产品时,首先在技术上必须选择一个开发模型,使开发模型非常适合这个项目或产品的生存周期;

随后通过对生存周期的裁减,来给出适合与本项目或产品的软件生存周期定义。

软件的开发模型与软件生存周期有关:

不同的开发模型,可能对应着不同的生存周期。

生存周期不同,该软件的开发阶段划分、评审次数、基线标准都有所不同,甚至维护方法都有所区别。

2.简述瀑布模型、增量模型、迭代模型、原型模型的优缺点。

答案如表8-2所示:

表8-2开发模型优缺点

序号

模型名称

优点

缺点

1

瀑布模型

简单好学

逆转性差

2

增量模型

可以分阶段提交

有时用户不同意

3

迭代模型

克服瀑布模型的缺点

对开发人员要求高

4

原型模型

开发速度快

不利于创新

3.软件公司的ISO9000或CMMI管理体系与软件开发模型有关吗?

无关。

因为ISO9000或CMMI管理体系是一种过程与质量管理模型,它是适应于任何软件开发模型的,或者说它与任何开发模型无关。

开发模型本身只是规定了软件生存周期中的若干步骤或阶段,便于开发人员去开发与维护,它并没有规定管理人员的过程管理方法与任务。

为此,ISO9000或CMMI管理体系规定采取阶段评审和不符合项的动态跟踪制度,只有前一阶段的不符合项全部改正后,才允许开发人员进入后一阶段的工作。

所谓不符合项,就是在评审中发现的问题项,它与Bug既有联系,又有区别。

对于这些不符号项,软件管理部门要列出表格,记录在案,确定责任人,限定改正时间,动态跟踪到底。

4.请调查一下,你周围的软件公司采用哪几种软件开发模型进行软件开发。

周围的软件公司采用的软件开发模型有瀑布模型、增量模型、迭代模型、原型模型。

其中瀑布模型和原型模型是这些软件公司最常用的,其次是增量模型,最后是迭代模型。

5.软件开发模型对你今后的工作,到底具有什么指导意义?

当我们这些学生在今后进入IT企业参与软件开发或管理时,若能掌握软件开发模型,就会很快了解当前的项目或产品应该采用什么开发模型,由此确定该软件的生存周期和当前项目组的开发状态与进度,从而很快知道项目组成员的工作,也能使自己很快溶入该项目组,速适应IT企业文化,并很快进入角色。

6.你对“生存周期模型裁减指南”有什么看法?

“生存周期模型裁减指南”是IT企业或软件组织内部根据软件开发模型的普遍原则,结合本单位的开发经验和行业特点的具体实际,定制出来的。

它有针对性地对选定的软件开发模型中定义的生存周期,进行恰当的裁减。

所谓裁减,就是对原模型中定义的内容进行增、改、删,去掉对本单位或者本项目不适合的部分,增加对本单位或者本项目适用的内容,同时进一步细化。

这样可以缩短开发时间,减少开发成本,具有非常现实的意义。

7.“图书馆信息系统”的开发选用什么模型合适?

“图书馆信息系统”的开发选用瀑布模型比较合适。

因为瀑布模型开发阶段清晰,便于评审、审记、跟踪、管理和控制,而且“图书馆信息系统”在一定程度上符合瀑布模型的条件:

(1)它在开发时间内需求没有变化或很少变化。

(2)分析设计人员对应用领域很熟悉。

(3)低风险项目。

(4)用户使用环境比较稳定。

(5)用户提出需求以外,很少参与开发工作。

第三章:

软件立项与合同

软件企业最大的事情是软件立项(或签订合同),它是软件开发与管理的源头。

对于软件项目,在企业叫做立项,在非企业叫做可行性分析。

可行性分析是立项的前奏,立项是可行性分析的结果。

对于大型项目,在签定合同之前,还要经历一个招标与投标的过程,本章介绍了投标书的格式、制作过程和讲标方法。

1.为什么说立项是一切项目的源头,也是软件项目的源头?

立项的过程就是软件企业决定是否去开发某项目或产品的过程。

只有立项完成以后企业领导部门才会下达“任务书”,开发部门开始组成开发团队,成立项目组。

2.立项的具体表现形式是什么?

企业的市场销售部门在市场调研的基础上,分析该产品是否有市场前景,以及企业是否有能力开发出该产品,并具体列出系统的功能、性能、接口和运行环境等方面的需求情况,当前客户群和潜在客户群情况,以及投入产出分析,然后写出立项建议书,召开立项论证会,决定是否立项。

3.立项书的编制者为什么主要是软件公司的市场销售人员,而不是开发人员?

软件开发出来终归要推向市场的,软件能不能被市场接受是软件开发成功的标准。

市场销售人员长期和市场客户打交道,他们最了解客户和市场的需求,最知道什么样的产品具有巨大商机。

4.为什么将项目的市场前景、功能、性能、接口、风险作为立项建议书的主要内容?

一切软件项目或软件产品,都是为了实现用户需求中的“功能、性能、接口”三项具体目标。

软件是否有市场前景,是软件开发是否成功的标志,有了市场软件才能带来利润。

风险分析是对开发此软件的政策风险、环境风险、技术风险、技能风险等进行分析,这对公司能否按时保质保量的完成软件开发,是必不可少的。

5.什么叫风险分析?

技能风险和技术风险有何区别?

这里的风险分析是指软件立项过程中对产品开发、销售等可能出现的风险进行分析。

分析方法就是将一个大风险化解好多个小风险,然后一个个克服小风险。

技术风险是指采用新技术的风险程度。

技能风险是指项目组成员掌握新技术的风险程度。

二者的区别在于一个是说新技术(如新的开发工具,新的设计思想)本身的风险,一个是说人员要掌握这种新技术的风险。

6.行业领域业务专家与产品经理有何同异?

行业领域业务专家是精通某行业领域业务的人,在讲标时能把投标书的内容准确、生动表述出来,使客户心服口服。

而产品经理是某产品需求分析和概要设计的经理或专家,主要负责产品的立项、需求、设计和销售等业务。

两者的相同点是:

必须精通该产品的功能、性能和接口。

不同点是:

前者突出熟悉产品的应用业务领域,后者突出熟悉产品的需求与设计。

7.合同、任务书、立项建议书三者有何异同?

有何关系?

合同是与固定客户签定的协议书,签定合同后软件公司启动该项目的开发,该软件被称为“定单软件”。

立项建议书是对应“非定单软件”而言的,是相关人员对立项过程的书面描述。

任务书是企业决定开发某软件时,对此任务的具体部署情况,以书面的形式表达出来,包括正文和附件。

只有立项或合同签定以后才能下达任务书,三者都是软件开发的源头。

8.下达任务的时间和方法是什么?

满足以下三个条件中的任意一个,即可下达任务书:

(1)、企业已签定了项目《合同》。

(2)、《立项建议书》已通过了评审。

(3)、作为特殊情况,软件组织的上级下达了某项目的指令性软件开发计划。

例如,有跨组织、跨部门的某个大系统项目,软件的需求由它的系统总体设计组分配。

下达任务的方法是:

(1)、下达一分《任务书》的正文。

包括任务的下达对象、内容、要求完成的日期、决定投入的资源、必要时包括任命项目经理(技术经理和产品经理)、其他保证措施、奖惩措施等。

《任务书》的正文可长可短,若合同或立项建议书很详细,则正文可短。

若合同或立项建议书很粗很短,则正文应该详细,当然也应该很长。

(2)、下达一份《任务书》的附件。

一般情况下它就是软件《合同》或《立项建议书》,如果是指令性计划,它的格式和内容,也应与《合同》或《立项建议书》基本相同,即附件的内容应覆盖系统的功能点列表、性能点列表、借口列表、资源需求列表、开发进度列表、阶段评审列表等。

第四章:

软件需求

做软件项目(或做软件产品)有两个难题,一个是需求分析,另一个是项目管理。

本章专门讨论需求分析,提出了需求分析中要建立“功能、性能、接口”这样的“三个需求模型”,总结了需求分析的理论、方法与技巧,给出了需求文档的参考模板,其目的是力图解决需求分析这个难题。

1.为什么需求分析特别重要?

需求分析特别重要,是因为:

(1)许多大型应用系统的失败,最后均归结到需求分析:

要么获取需求的方法不当,使得需求分析不到位或不彻底,导致开发者反复多次地进行需求分析,致使设计、编码、测试无法顺利进行;

要么客户配合不好,导致客户对需求不确认,或客户需求不断变化,同样致使设计、编码、测试无法顺利进行。

(2)需求分析的输出文档是《用户需求报告》,它既是软件生存周期中的第一个里程碑,又是客户、软件开发人员和项目管理人员三者必须遵守的一根基线,是三者共同工作的基础,是项目Alpha测试和Beta测试的准则,是供方交付产品和需方验收产品的依据。

(3)需求分析要占用整个软件开发时间或工作量的30%左右。

(4)需求获取中的错误,属于软件开发中的早期错误,它会在后续的设计和实现中进行发散式的传播。

根据以上四项原因,IT企业的高层经理,对需求分析特别重视,常常派经验最丰富的人员去作项目需求。

正因为如此,“系统分析员”才是软件行业中的最高技术职称。

2.需求分析的目的是什么?

需求分析的难点在哪里?

软件需求分析,其目的是用于说明软件产品或软件项目需要满足的条件和限制。

在软件工程项目中首先要获取用户的需求,通过对软件需要的提取、分析、文档化以及验证,为进一步的设计和实现提供依据。

需求分析的难点是:

在系统的功能、性能和接口方面,开发者与客户达成完全一致的需求,让客户最终签字确认,并保证在项目验收前,需求相对稳定不变。

万一需求有点变化,双方必须履行“需求变更管理程序”,而变更管理程序在签订合同时已经做了规定。

要知道,合同是具有法律效力的。

3.需求分析的理论基础有哪几条?

需求分析的理论基础有:

什么是软件需求;

软件需求需要量化;

需求是一个过程;

需求过程中的角色;

需求过程是一个迭代的过程;

需求来源等6条理论基础。

4.为什么说需求分析是面向流程的?

系统的功能、性能、接口、界面都是在流程中动态实时的反映出来。

在所有的流程(物流、人流、资金流、信息流、单据流、报表流、数据流)中,数据流最重要,也最具有代表性。

因为在计算机网络系统内,一切流程都表现为数据流,或者说是数据流在不同方向的投影。

而流程是动态的、实时的。

所以说,需求分析是面向流程的。

5.需求分析的基本思路是什么?

需求分析的思路,是从用户的功能需求(系统需要做什么)出发,由系统的业务流程和数据流程导出系统的业务模型和功能模型,识别出系统的元数据和中间数据,为今后设计数据模型做好成分准备。

同时,对系统的软、硬件环境配置、开发工具、开发工期、费用、开发进度、培训、系统风险进行评估。

6.解释术语:

元数据、实体、中间数据。

元数据是组织数据的数据,描述数据的数据,关于数据的数据。

实体(指实体集或实体型),是一组相关元数据的集合。

中间数据是组织统计数据的数据,描述统计数据的数据,关于统计数据的数据。

7.为什么说元数据的分析与识别是需求分析的议题之一?

通俗地讲,元数据就是信息系统中实体名及其属性名的集合,或者说就是基表的表名与字段名的集合。

由于信息系统的设计与实现,都是面向元数据的,所以说元数据的分析与识别是需求分析的议题之一。

元数据分析的出发点是业务模型和功能模型,落脚点是系统中的实体及其属性,是企事业单位的数据模型中的所有元素。

8.元数据与中间数据之间,有什么关系?

请举例说明。

元数据与中间数据间的关系是一种因果关系。

元数据对应原始单据,中间数据对应查询、统计、报表。

元数据将原始单据中录入的数据组织起来变成基表中的记录。

这些记录称为基础数据。

中间数据将输出数据组织起来变成中间表中的记录,这些记录称为统计数据。

中间表中的记录是由基表中的记录派生(推导、加工、处理)出来的,为了简单起见,我们说“中间数据是由元数据派生出来的”。

例如,人力资源系统中的员工基本情况表中的“姓名、性别、出生日期、文化程度、毕业学校、身份证号”等等是元数据,而通过统计后得出的软件开发部1980年以后出生的人员情况表中的“姓名、性别、文化程度、毕业学校”,它们是中间数据。

9.业界存在哪三种需求分析方法?

您认为哪一种更好?

业界存在三种需求分析方法:

面向功能分析、面向对象分析、面向数据分析。

以上这三种方法,各自适用于不同的目标系统。

目前时尚的方法是面向对象,包括面向主体和面向方面。

总的来说,对于系统软件和应用软件来说,面向功能需求分析的方法简单明了,而面向对象的需求分析方法则复杂抽象。

对于以关系数据库为平台的信息系统软件来说,面向数据需求分析的方法的特点是抓住了本质。

但是,这三种分析方法都离不开面向流程分析这根总线:

功能、对象、数据都是在流程中产生的,又都是为流程服务的。

10.需求管理过程的目标和内容是什么?

需求管理

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2