习题答案
第一章
题目略
1、答
答:讨论时,重点围绕程序设计与软件开发的不同点开展讨论。两者主要的不同点体现在,程序设计更多关注程序的代码,软件开发不光关注程序代码,也关注代码产生的过程,与代码有关的文档等方面。
2、答
答:一个软件从定义到废弃,中间有问题定义,可行性研究,需求分析,概要设计,详细设计,编码,测试,运行维护这八个阶段。
3、答
答:结构化方法中总的指导思想:软件是由一个一个相对独立的模块组成的,每个模块完成一个相对独立的功能,多个模块互相协同工作完成任务。
4、答
衡量一个软件开发成功与否的最重的标准是:在指定的开发时间,指定的开发成本下,开发出的软件满足用户的功能性,可靠性,可用性,效率,可维护性,可移植性等方面的要求。这样,这个软件开发是成功的。
5、答
无论是哪种生存周期模型,都必须经过软件开发过程的八个阶段,这是所有开发模型的共同点。不同模型的不同点在于:不同的模型完成软件开发过程中八个工作阶段的时间顺序不同,每个工作阶段花费的时间,成本不同,每个阶段完成的任务也可以不同,采用不同模型时,得到的工作产品也会不同。这也是不同生存周期模型的最大的不同。比较熟悉的任务,当任务不大,不复杂时,采用瀑布模型,比较简单。对于那些具有明显功能划分的系统,可采用演化模型,对那些具备明确需求的系统,可采用增量模型。对于大型复杂的软件系统开发则应该采用RUP模型。
第二章
题目略
1、答
RUP有四个阶段,区分四个阶段最重要的特征是初始阶段识别了重大的风险,细化阶段形成了稳定的架构,构造阶段得到一个可执行版本,移交阶段得到一个正式的产品。
2、答
这个是讨论题,每个同学可根据自己的经验谈谈这个问题,最主要的是,五个核心工作流在不同阶段迭代的次数是不同的,每个阶段五个核心工作流的重要性不同。
3、答
(1)根据这几张UML图,可以对订票系统进行很全面的了解。
(2)不同的同学对系统的理解差别应该不会太大。
(3)不同的图实际上都是同一个系统不同方面的描述。
(4)根据自己的常识能理解的信息应该在60%以上。
(5)能够根据这些模型图设计出订票系统的。
4、答
建议同学们在自己的电脑上,安装前面提到的几种软件中的一种来试用。
第三章
题目略
1.答
软件过程是开发和维护软件及其相关产品(例如项目计划、设计文档、代码、测试用例、用户手册等等)所涉及的一系列活动、任务和变换。
软件过程不是局限于传统意义上的软件开发和管理问题。根据IEEE对软件过程的解释,软件
过程包括软件采购、软件开发、软件维护、软件运作、软件获取、软件管理和软件支持七大类的活动;而ISO12207将软件过程分为基本过程、支持过程和组织过程三大类活动。
2.答
又称为软件工程开发模型或软件生命周期模型,是软件开发全部过程、资源和任务的结构框架。过程模型包括组织、功能、行为以及其它各方面。软件过程模型能清楚、直观地表达软件开发过程,明确规定要完成的主要活动和任务。
3.答
度量是对被对象进行量化处理,简单地理解,就是采集数据和分析数据,软件过程度量,是软件过程改进的基础。
分析过程行为,是对过程稳定性进行测试和评价,出异常过程行为模式,发现和纠正可归属的原因,从而达到改进过程的目的
4.答
关键过程域是CMM的概念。CMM的五个成熟度等级中,除了等级1以外,每级均包含几个关键过程域。每个关键过程域都有一些目标及相应于目标的关键实践。
只有与目标相应的所有关键实践都得到有效实施,这个目标才算实现。
只有一个关键过程域的全部目标都达到时,该关键过程域才算实现。
5.答
略
6.答
一个高效的软件工程团体通常具有以下共同特征:
·成员训练有素。
·团体目标是重要的、定义好的、可见的和现实的。
·团体有足够的资源完成这个目标。
·可以激励成员去努力实现团体目标。
·成员之间互相协作、互相支持。
·团体成员在工作中纪律严明。
第四章
题目略
1、答
进行这个项目的可行性分析,就是从技术,法律,经济三个方面说明它是否可行。如果所在学校现有局域网,那么不用在硬件上增加投资,有教师或同学掌握了网络程序设计技术,于是就具备了技术可行性,师生互动学习园地没有法津上的问题,至于经济上的问题,如果学校肯出资,所出的资能为开发者接受,则项目是可行的,否则,就不可行,这个项目的主要可行性在是否有懂相关编程技术的人员和资金的多少。
2、答请参见附录B
3、请参见附录B
4、答
可能提出的问题:
问:请问是什么年龄的人在使用该系统?析构方法
问:使用该系统的人下棋的水平如何,是所有使用该软件的人都具有相同的水平,还是不同的玩家水平会有不同?
问:如果水平有区别的话,水平设计成多少等级比较合理?
问:是用鼠标移动棋子,还是用键盘操作来移动棋子?
问:走棋的规则是什么?
问:要进行记分吗?需要设计水平升级吗?
对用户提出的这些问题就是想知道,使用系统的主要用户,每类主要用户使用系统的方式,
使用系统时完成的任务以及完成任务的过程。根据这些可以得到系统主要的用例,每个主要用例的活动图,顺序图等。
第五章
题目略
3、答
软件开发过程方法学就是研究软件开发的过程,即过程的组织、管理。个体软件过程是对软件开发工程师个人在开发过程中的行为进行规范和指导。组软件开发过程指导和规范是小组开发行为。CMM则是对软件开发组织的开发行为进行规范、指导、重复开发能力评估。
4、答
在第一章里对瀑布模型和统一软件开发过程模型作了介绍。第二章又单讲解了统一软件开发过程模型。瀑布模型,软件开发过程按照:可行性研究——需求分析——概要设计——详细设计——编码——测试等步骤,一次得到一个包含所有功能的最终产品。统一软件开发过程
模型,将开发过程分成初始阶段,细化阶段,构造阶段,移交阶段四个阶段,每个阶段都是由多次迭代构成,每一次迭代都由需求分析——系统分析——系统设计——系统实现——系统测试五个核心工作流组成,都是一次小型的瀑布模型。
5、答
构化方法的设计中有概要设计和详细设计两个阶段,在面向对象方法的设计中有系统分析与系统设计,概要设计和系统分析都是从总体上考虑系统实现的方案,详细设计和系统设计都是从更加细节上考虑系统实现的方案。但由于结构化方法与面向对象方法固有的不同,两种方法最大的不同在于看待系统的方式不同,结构化方法认为系统由不同功能模块组成,每个模块完成一部分功能,系统中所有的功能都有某个模块与之对应。面向对象方法认为系统由对象和对象间的交互组成。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论