软件工程整理

合集下载

软件工程专业描述整理

软件工程专业描述整理

软件工程专业描述整理软件工程专业描述下面是聘才网我为大伙整理的软件工程专业描述,欢迎阅读。

软件工程专业是国家教育部新增专业,随着计算机应用领域的不断扩大及中国经济建设的不断进展,软件工程专业将成为一个新的热门专业。

软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,使同学在把握计算机科学与技术方面学问和技能的基础上娴熟把握从事软件需求分析、软件设计、软件测试、软件维护和软件项目管理等工作所必需的基础学问、基本方法和基本技能,突出对同学专业学问和专业技能的培育,培育能够从事软件开发、测试、维护和软件项目管理的高级特地人才。

主干课程主干学科:马克思主义理论、高校外语、高等数学、高校物理、物理试验、线性代数、概率论与数理统计、程序设计语言、数据结构、离散数学、操作系统、编译技术、软件工程概论、统一建模语言、软件体系结构、软件需求、软件项目管理该专业除了学习公共基础课外,还将系统学习离散数学、数据结构、算法分析、面对对象程序设计、现代操作系统、数据库原理与实现技术、编译原理、软件工程、软件项目管理、计算机平安等课程,依据同学的爱好还可以选修一些其它选修课。

实践环节:毕业实习、课程设计、计算机工程实践、生产实习、毕业设计(论文)。

培育方案培育要求本专业是培育适应计算机应用学科的进展,特殊是软件产业的进展,具备计算机软件的基础理论、基本学问和基本技能,具有用软件工程的思想、方法和技术来分析、设计和实现计算机软件系统的力量,毕业后能在IT行业、科研机构、企事业中从事计算机应用软件系统的开发和研制的高级软件工程技术人才。

软件工程项目管理流程把握和计算机科学与技术相关的基本理论学问,具有一般计算机相关工程的分析设计和解决实际问题的力量。

了解文献检索、资料查询的基本方法,具有肯定的'科学讨论和实际工作力量。

能够运用学习学问和外文阅读力量查阅外文资料。

养成乐观参与体育熬炼和健康的文化活动的良好习惯,达到国家规定的高校生体育合格标准,身心健康。

软件工程导论 重点知识整理 考前准备

软件工程导论  重点知识整理 考前准备

软件工程关注于大型程序的构造:一个人短时间写的程序是小程序,多人半年以上时间为大型程序。

软件工程的基本原理1. 用分阶段的生命周期计划严格管理2. 坚持进行阶段评审3. 实行严格的产品控制4. 采用现代程序设计技术5. 结果应能清楚地审查6. 开发小组的人员应该少而精7. 承认不断改进软件工程实践的必要性软件工程包括技术和管理两方面,是技术和管理紧密结合所形成的工程学科。

管理:是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,以达到既定目标的过程。

范型:在软件生命周期全过程中使用的一整套技术方法的集合为方法学,也称为范型。

软件工程三要素:方法,工程,过程软件工程方法学:分为传统方法学和面向对象方法学软件生命周期1.问题定义2. 可行性研究3. 需求分析4. 总体设计5. 详细设计6. 编码和单元测试7.综合测试8. 软件维护可行性研究过程1. 复查系统规模和目标2. 研究目前正在使用的系统3. 导出新系统的高层逻辑模型4. 进一步定义问题5. 导出和评价供选择的解法6. 推荐行动方针7. 草拟开发计划8. 书写文档提交审查在澄清问题定义后,分析员应导出系统的逻辑模型,然后探索主要解法,对每种解法研究可行性,至少三种可行性:技术可行性(使用现在的技术能实现这个系统吗?),经济可行性(这个系统的经济效益能超过它的开发成本吗?),操作可行性(系统的操作方式在这个用户组织内行的通吗?),必要时还需要法律、社会效益等发面研究每种解法可行性。

数据流图(DFD):是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。

数据流4种基本符号:在数据流图中应该描绘所有可能的数据流向,而不应该描绘出某个数据流的条件。

数据字典:对数据流图中包含的所有元素的定义的集合;数据流图与数据字典共同构成系统的逻辑模型。

数据字典的内容:1)数据流;2)数据元素(数据流分量);3)数据存储;4)处理。

数据元素的别名就是该元素的其他等价的名字,出现别名主要有下述三个原因:①对于同样的数据,不同的用户使用了不同的名字;②一个分析员在不同时期对同一个数据使用了不同的名字;③两个分析员分别分析同一个数据流时,使用了不同的名字。

软件工程中的软件工程项目收尾和总结

软件工程中的软件工程项目收尾和总结

软件工程中的软件工程项目收尾和总结软件工程项目的成功与否,不仅取决于项目的开发过程,还在于项目的收尾和总结阶段。

项目收尾是指在项目生命周期的最后阶段,进行最后的工作,确保项目按照既定的目标和质量要求完成。

项目总结则是对整个项目进行评估和反思,总结经验教训,为未来的项目提供参考。

本文将深入探讨软件工程项目的收尾和总结过程。

一、软件工程项目收尾1. 阶段评估在软件工程项目的末尾,进行一个阶段性的评估是必要的。

该评估旨在确保项目阶段完成了规定的工作,并达到了预期的成果和质量要求。

通过评估,可以及时发现并解决存在的问题,确保项目整体顺利进行。

评估内容主要包括工作的完成情况、成果的质量、进度的控制等。

2. 风险管理在软件工程项目的收尾阶段,风险管理是一个至关重要的环节。

项目负责人和团队成员应该对项目存在的各种风险进行评估和控制,确保项目在收尾阶段不会出现大的风险和问题。

如果有必要,可以制定应急预案,以应对可能出现的突发情况。

3. 交付和验收软件工程项目的交付和验收是收尾阶段的核心内容。

在项目的末尾,项目团队应该按照合同或协议的要求,将软件产品交付给客户或使用方,同时进行相应的验收工作。

交付和验收的关键是确保软件产品能够满足客户的需求,并且达到预期的质量和性能标准。

4. 文档整理和归档在软件工程项目的收尾阶段,应该对项目相关的文档进行整理和归档。

这些文档包括需求分析文档、设计文档、测试文档、用户手册等。

文档整理和归档的目的是方便项目团队成员和后续人员查阅和使用,同时也是对项目成果的一种保留和记录。

二、软件工程项目总结1. 成果评估软件工程项目总结的第一步是对项目成果进行评估。

评估包括产品的质量、功能的实现程度、进度的控制等方面。

通过对项目成果的评估,可以直观地了解项目的成功之处和不足之处,为后续的项目提供经验教训。

2. 经验总结在软件工程项目总结中,经验总结是非常重要的环节。

项目团队成员应该详细记录并总结项目中的经验和教训。

软件工程导论(整理)

软件工程导论(整理)

软件工程导论(整理)软件工程导论软件工程导论是计算机科学与技术专业的一门重要课程,通过对软件工程的基本概念、方法和技术进行介绍和讲解,使学生对软件开发过程有全面的认识。

本文将从软件工程的定义与特点、软件生命周期、软件开发方法和软件工程的挑战等方面进行论述。

一、软件工程的定义与特点软件工程是指研究和应用科学原理、方法和工具,对软件进行全面的规划、开发、测试、部署和维护的一门工程学科。

软件工程具有以下特点:1. 抽象性:软件是虚拟存在,不同于硬件,具有高度的抽象性。

2. 复杂性:软件开发是一项复杂的任务,涉及多个环节和多个参与者之间的协同合作。

3. 可变性:软件需求会随着时间和需求的变化而变化,需要具备良好的变更管理能力。

4. 可靠性:软件在使用过程中需要具备稳定、健壮和可靠的特性。

5. 可维护性:软件应该具备良好的可维护性,便于后续对其进行修改和维护。

二、软件生命周期软件生命周期是指软件从提出到退役的全过程,一般包括需求分析、设计、编码、测试、部署和维护等阶段。

1. 需求分析:明确用户需求,采集并分析用户的需求,形成软件的需求规格说明。

2. 设计:根据需求分析的结果,进行系统的设计,包括软件架构设计、模块设计等。

3. 编码:根据设计结果,进行具体代码的编写,实现软件的功能。

4. 测试:对编码后的软件进行测试,验证软件是否满足需求并具备稳定性。

5. 部署:将测试通过的软件部署到目标环境中,进行系统集成和性能调优等操作。

6. 维护:对已发布的软件进行修改、优化、升级和Bug修复等工作,确保软件持续稳定运行。

三、软件开发方法软件开发方法是指用于规范和指导软件开发过程的方法论和模型。

其中较为常见的软件开发方法有瀑布模型、迭代模型和敏捷开发等。

1. 瀑布模型:瀑布模型是软件开发过程中最早提出的方法之一,将软件开发过程划分为需求分析、设计、开发、测试和维护等阶段,每个阶段按顺序进行。

2. 迭代模型:迭代模型将软件开发过程划分为多个迭代周期,每个周期完成一部分需求的开发和测试,并通过反复迭代逐步完善软件。

软件工程习题整理

软件工程习题整理

软件工程习题整理一、软件需求分析与建模1.软件需求分析的要求?答:了解软件需求的目标和任务;了解软件需求分析的基本过程;掌握功能建模;掌握行为建模;掌握数据建模;了解结构化需求分析的若干技术;了解需求规格说明和需求评审的主要内容。

2.需求分析的基本任务是什么?答:要准确地定义新系统的目标,为了满足用户需求,回答系统必须―做什么‖的问题。

获得需求规格说明书。

3.软件需求分析的原则?答:能够表达和理解问题的信息域和功能域;能够对问题进行分解和不断细化,建立问题的层次结构;需要给出系统的逻辑视图和物理视图。

4.什么是需求分析?需求分析阶段的基本任务是什么?答:需求分析是指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式主义功能规约(需求规格说明)的过程。

需求分析阶段的基本任务是:(1) 问题识别:双方对问题的综合需求:a.功能需求b.性能需求c.环境需求d.用户界面需求.(2) 分析与综合,导出软件的逻辑模型.(3) 编写文档5.什么是结构化分析方法?该方法使用什么描述工具?答:结构化分析方法:是面向数据汉进行需求分析的方法。

描述工具:a、数据流图b、数据字典c、描述加工逻辑的结构化语言、判定表、判定树。

6.什么是数据流图?其作用是什么?其中的基本符号各表示什么含义?答:数据流图:简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具,是一种功能模型。

作用:它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.基本符号有四种:→,箭头,表示数据流; ○,圆或椭圆,表示加工; =,双杠,表示数据存储;□,方框,表示数据的源点或终点.7.简述SA方法的优缺点。

答:优点:1)公认的、有成效的、技术成熟、使用广泛的一种方法,比较适合于开发数据处理类型软件的需求分析。

2)该方法利用图形等半形式化工具表达需求,简明、易读,也易于使用,为后一阶段的设计、测试、评价提供了有利条件。

软件工程考试资料整理

软件工程考试资料整理

1.在结构化分析中,__数据字典__用于详细地定义数据流图中的成分。

2.结构化程序设计是一种程序设计技术,它采用__自顶向下、逐步求精__的设计方法和顺序、选择、循环三种基本控制结构构造常态程序。

3.结构化分析方法中,数据流图的四种基本成分为:处理、源点或终点__数据存储和数据流_。

4.模块内部的算法设计在结构化方法的___详细设计__阶段进行。

5.定性度量模块独立性的两个标准是内聚性和___耦合性___。

6.从模块内外的联系来看,结构化设计的要求是___高内聚低耦合_。

7.耦合性和内聚性是衡量___模块独立性_的两个定性的标准。

8.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为___偶然内聚_____。

9.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是 ____顺序内聚__。

10.在模块结构图中,直接调用某一模块的其他模块数称为该模块的__扇入数_11.在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调12.软件开发,并使混乱减到最低程度。

13.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

14.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。

15.软件结构是以模块为基础而组成的一种控制层次结构。

16.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、17.判定树。

18.结构化语言是介于自然语言和形式语言之间的一种半形式语言。

19.第二代CASE工具的特点是支持图形表示的 __结构化方法__________ 。

如数据流图与结构图。

20.在面向对象方法中,对象实现了数据和操作的结合,使数据和操作 _封装__ 于对象的统一体中。

21.面向对象分析的目的是对客观世界的系统进行建模。

22.为了使应用软件适应计算机环境的变化而 _____修改软件_的过程称为适应性维护。

软件工程简答题整理

软件工程简答题整理

什么是软件危机,有哪些具体表现形式?其原因?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

主要有以下表现形式:1、对软件开发成本和进度的估计常常很不准确 2、用户对“已完成的”软件系统不满意的现象经常发生 3、软件产品的质量往往靠不住 4、软件常常是不可维护的 5、软件通常没有合适的文档资料 6、软件成本在计算机系统总成本中所占的比例逐年上升 7、软件开发生产率提高的速度远远跟不上计算机应用迅速普及深入的趋势原因:1、与软件本身特点有关2、与软件开发与维护的方法不正确有关什么是软件生存周期,有哪几个活动?比较模型软件生存周期是指一个软件该软件报废为止的整个时期。

软件生命周期由软件定义、软件开发和软件维护3个时期组成。

1问题定义,解决的问题是是什么;2可行性研究,问题是否有可行的解决办法;3需求分析,确定目标系统必须具备的功能;4总体设计,总体上解决问题,设计软件出层次结构图、5详细设计,具体实现,设计算法;6编码和单元测试,编程和单元测试;7综合测试,系统地设计测试用例;软件维护,修改软件满足用户需要。

瀑布模型:自上而下,相互衔接的固定次序,像瀑布逐级下落,有顺序性和依赖性,推迟实施,质量保证,严格要求输出文档,缺乏灵活性。

快速原型模型:能快速建立。

它所完成的功能往往是最终产品能完成的功能的一个子集,适合中小型,短周期的交互式系统。

增量模型:把软件产品作为一系列增量构件来设计、编码、集成和测试,能在较短的时间完成,有充裕的时间学习。

适合开发需求不明确设计方案有一定风险的软件项目。

螺旋模型:它是风险驱动的。

适合大型系统及软件的开发。

将瀑布模型与增量模型结合起来,喷泉模型:迭代和无缝连接简述软件测试的任务、目的与类型。

答:软件测试是一个为了寻找软件错误而运行程序的过程。

目的就是为了发现软件中的错误。

一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。

一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。

软件工程复习资料整理

软件工程复习资料整理

《软件工程》试题参考答案(1)卷一、单向选择题(四选一、每小题3分,共18分)1、需求分析的任务不包括(B)。

A.问题分析B.系统设计C.需求描述D.需求评审。

2、当模块中包含复杂的条件组合,只有( A)能够清晰地表达出各种动作之间的对应关系。

0802A.判定表和判定树C.流程图3、以下不属于逻辑覆盖的是(D)。

1402A.语句覆盖C.条件覆盖B.盒图D 关系图B.判定覆盖D.基本路径4、为适应软件运行环境的变化而修改软件的活动称为( B)。

1501A.纠错性维护B.适应性维护C.改善性维护 D 预防性维护二、填空题(每空2分,共18分)1. 软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。

01012. 高级语言:独立于机器,面向过程或面向(对象)01013. 软件项目管理的范围主要集中于 3 个P 上,即:People 人员、Problem 问题和(过程)。

02014. 由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。

15045. 在公式V(G) = E – N + 2 中: E 为程序图G 中边的总数;N 为程序图中结点的总数。

V(G)又称为图 G 的环形(复杂度)0204。

6. 任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。

03037. 为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除…?”。

12048. 文档是一种数据媒体和其上所记录的(数据)。

0101三、判断题(每小题2分,共24分,错误打X、正确打√)1. 用户对软件需求的描述不准确,往往是产生软件危机的原因之一。

(√)01022. 一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。

(√)02063. 目前的绝大多数软件都不适合于快速原型技术。

软件工程导论(整理)

软件工程导论(整理)

一、软件危机与软件工程1、软件危机软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题.(正常、不正常运行软件都具有这种问题)2、软件危机的原因1)软件本身特点造成;程序规模庞大;程序复杂性随着程序规模的增加而呈指数上升。

2)软件开发与维护的方法不正确。

主要表现:(a)忽视软件需求分析;(b)认为软件开发就是写程序并使之运行;(c)轻视软件维护;3、解决软件危机的途径:1、组织管理:软件开发不是某种个体劳动的神秘技巧,软件开发应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。

2、方法:应该推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早期发展阶段形成的一些错误概念和做法。

3、工具:应该开发和使用更好的软件工具。

在软件开发的每个阶段都有许多繁琐重复的工作需要做,在适当的软件工具辅助下,开发人员可以把这类工作做得既快又好.4、软件工程包括哪7条基本原理?1. 用分阶段的生命周期计划严格管理;2。

坚持进行阶段评审;3. 实行严格的产品控制;4. 采用现代程序设计技术;5. 结果能清楚地审查;6. 开发小组的人员应该少而精;7。

承认不断改进软件工程实践的必要性。

5、软件开发流程?1)、问题定义2)、可行性研究3)、需求分析4)、总体设计5)、详细设计6)、编码和单元测试7)、综合测试8)、软件维护6、软件开发模型瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、rational统一过程、敏捷过程与极限编程、微软过程二、可行性研究1.系统流程图系统流程图是概括地描绘物理系统的传统工具,它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达信息在各个部件之间流动的情况。

2.数据流图数据流图描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。

软件工程期末复习知识点整理

软件工程期末复习知识点整理

复习整理一、绪论1.软件的定义软件是能够完成预定功能和性能的可执行的计算机程序,包括使程序正常执行所需要的数据,以及有关描述程序操作和使用的文档。

(软件=程序+文档)2.软件工程的定义●是指导计算机软件开发和维护的一门工程学科;●采用工程化的原理与方法对软件进行计划、开发和维护;●把证明正确的管理技术和最好技术综合运用到软件开发中;●研究经济地开发出高质量的软件方法和技术;●研究有效维护软件的方法和技术。

3.软件危机的概念,及出现的原因软件开发技术的进步未能满足发展的要求。

在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。

产生原因:⑴软件规模越来越大,结构越来越复杂⑵软件开发管理困难而复杂。

⑶软件开发费用不断增加。

⑷软件开发技术落后。

⑸生产方式落后,仍采用手工方式。

⑹开发工具落后,生产率提高缓慢。

4.三种编程范型的特点(1)过程式编程范型:把程序理解为一组被动的数据和一组能动的过程所构成;程序=数据结构+算法;着眼于程序的过程和基本控制结构,粒度最小(2)面向对象编程范型:数据及其操作被封装在对象中;程序=对象+消息;着眼于程序中的对象,粒度比较大(3)基于构件技术的编程范型:构件是通用的、可复用的对象类;程序=构件+架构;眼于适合整个领域的类对象,粒度最大二、软件生存周期与软件过程1、软件生存周期的定义,把生存周期划分为若干阶段的目的是什么,有哪几个主要活动●定义:一个软件从开始立项起,到废弃不用止,统称为软件的生存周期●目的:软件生存周期划分为计划、开发和运行3个时期;把整个生存周期划分为较小的阶段,给每个阶段赋予确定而有限的任务,就能够化简每一步的工作内容,使因为软件规模而增长而大大增加了软件复杂性变得较易控制和管理。

●主要活动:需求分析、软件分析、软件设计、编码、软件测试、运行维护(P19)2、软件生命周期划分为哪几个阶段软件生命周期分为三个时期八个阶段:●软件定义:问题定义、可行性研究;●软件开发:需求分析、概要设计、详细设计、编码、测试;●软件运行:软件维护3、瀑布模型的特点和缺陷特点:线性模型,每一阶段必须完成规定的文档(阶段间的顺序性和依赖性)优点:●可强迫开发人员采用规范化的方法。

软件工程导论知识点总结(整理)

软件工程导论知识点总结(整理)

《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题.这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意.(2)软件产品的质量往往靠不住。

(3)一般软件很难维护.(4)软件生产效率很低。

(5)软件开发成本越来越大.(6)软件成本与开发进度难以估计.(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。

2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。

造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。

(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。

(3)尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求.3.怎样克服软件危机?(1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3)根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。

总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

4。

构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料.5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。

软件工程复习资料(整理)

软件工程复习资料(整理)

什么是软件?什么叫软件工程?它的目标是什么?软件:程序与文档。

定义一:应用于计算机软件的定义,开发和维护的一整套方法、工具、文档、实践标准和工序。

定义二:在软件设计、实现、检查、运行、维护各个过程中适用的立足于科学基础上的实用方法。

软件工程目标:用较少的投资获得高质量的软件。

什么是软件危机?主要表现?软件危机:在计算机软件的开发和维护过程中,所遇到的一系列严重问题,这一系列问题使软件产生了危机。

表现在:⑴对软件开发成本和进度的估计常常很不准确。

⑵用户易对“已完成的”软件系统产生不满。

⑶软件质量不可靠。

⑷软件常常是不可维护的。

⑸软件通常没有适当的文档资料。

⑹软件成本越来越高。

⑺软件开发生产率提高速度慢,跟不上发展。

可行性研究的目的是什么?用最小的代价在尽可能短的时间内确定问题是否能够解决。

若值得解,则推荐一个较好的方案,并制定一个初步的计划;若无可行解,则建议停止开发工程(以免浪费时间、人力、和金钱)数据流图的基本要点是什么?描绘“做什么”,而不考虑“怎样做”。

软件生成期分几个阶段?几阶段的主要工作是?生命周期各阶段的基本任务:1、问题定义:要解决的问题是什么?2、可行性研究:问题是否有行得通的解决办法?3、需求分析:确定目标系统必须具备哪些功能。

4、总体设计:应如何解决这个问题。

5、详细设计:如何具体实现这个系统?6、编码和单元测试:写出正确的、容易理解的、容易维护的程序模块,并测试编写出的每一个模块。

7、综合测试:通过各种类型的测试使软件达到预定的要求。

8、软件维护:通过各种必要的维护活动使系统持久地满足用户的需要。

何为功能模块?设计模块?功能模块:在分析阶段由系统分析员对该系统应完成的功能进行规定的模块。

设计模块:在后面设计阶段对如何实现这些功能进行描述的模块。

HIPO PSL PAD SADT 中文意思SADT:结构分析设计方法。

PSL:问题说明。

PSA:问题说明分析器。

HIPO:H图加IPO,即层次图加输入/处理/输出图。

软件工程习题整理

软件工程习题整理
需求分析阶段的基本任务是: (1) 问题识别:双方对问题的综合需求:a.功能需求 b.性能需求 c.环境需 求 d.用户界面需求. (2) 分析与综合,导出软件的逻辑模型. (3) 编写文档
5. 什么是结构化分析方法?该方法使用什么描述工具?
答:结构化分析方法:是面向数据汉进行需求分析的方法。 描述工具:a、数据流图 b、数据字典 c、描述加工逻辑的结构化语言、判定
9. 简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三
个基本原则?
答:对问题的识别、分析与综合,制定规格说明和评审 三个基本原则:必须能够表达和理解问题的数据域和功能域;必须按自顶向下, 逐步分解的方式对问题进行分解和不断细化;要给出系统的逻辑视图和物理视图.
10. 简述需求分析常用的分析方法
功能性注释一般放在实现该功能的程序段的前面,描述功能的注释应解释程
序段,而不是解释每一条语句;使用空格、括号、空行、间隔标志使注释与代码 容易区分。状态性注释一般紧跟在引起状态变化语句的后面,注释要正确,错误 或有歧义的注释容易引起误解。
11. 什么是结构化程序设计?
答:当前广泛使用的是结构化程序设计方法 SP(Structured Programming),它是与 结构化分析 SA 和结构化设计 SD 方法相衔接的。是用于软件编码的基本技术, 目的在于写出结构清晰、易于理解也易于验证的程序。
对估算软件中错误的数量以及开发该软件的工作量有帮助,从而也可以作为 评测软件的质量好坏的依据。
8. 软件编码的目的是什么?
软件编码的目的,是将软件的定义转换成能在具体计算机上实现的形式。 详细设计说明书是软件编码阶段的设计依据与基础。
9. 选择程序设计语言应考虑以下方面:
(1)选用的程序设计语言应该有理想的模块化机制,具有较好的可读性控制 结构和数据结构,能减少程序错误,结构清晰;

软件工程名词解释[整理]

软件工程名词解释[整理]

1、软件:是计算机程序及其说明程序的各种文档。

4、软件危机:是计算机软件的开发和维护过程所遇到的一系列严重的问题。

5、软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。

(它是一门综合性的交叉学科,它涉及计算机科学、工程科学、管理科学、数学等。

)6、软件工程过程:规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。

其目的:是为各种人员提供一个公共的框架,以便用相同的语言进行交流。

包括七个过程:获取过程、供应过程、开发过程、操作过程、维护过程、管理过程、支持过程。

7、软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。

包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护(是软件生存周期中最长的阶段)等。

8、软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。

(模型:是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。

)主要有:瀑布模型(整体开发模型)、增量模型(非整体开发模型)、螺旋模型(是瀑布和增量相结合的模型;一种风险驱动的模型)、喷泉模型(是以用户需求为动力,以对象作为驱动的模型)、基于知识的模型(又称智能模型,是把瀑布模型和专家系统结合在一起的模型)和变换模型(合适于形式化开发的模型)等。

9、软件开发方法:用早就定义好的技术集合及符号表示习惯来组织软件生产的过程。

主要:结构化方法(面向数据流的开发方法,指导思想:自顶向下、逐步求精。

基本原则:功能的分解与抽象)、Jackson方法(面向数据结构的开发方法)、维也纳开发方法(VDM)(是一种形式化的开发方法)、面向对象的开发方法(它有:Booh 方法、Coad方法、和OMT等UML语言是面向对象的标准建模语言)。

10、软件开发的目标:是在规定的投资和时间内,开发出符合用户需求的高质量的软件。

11、软件工具:一般是指为了支持软件人员开发和维护活动而使用的软件。

软件工程知识点整理

软件工程知识点整理

1、计算机软件概念软件指计算机系统中的程序及其文档。

程序是计算任务的处理对象和处理规则的描述文档是为了便于了解程序所需的阐明性资料,文档一般是给人看的2、软件发展的3个阶段(了解)程序设计阶段——50至60年代程序系统阶段——60至70年代软件工程阶段——70年代以后3、软件工程概念(1)把系统化的、规范化的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程化应用于软件中;(2)研究(1)中提到的途径3、软件生存周期概念及其6个阶段软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。

为计算机软件的生命周期。

软件生命周期的六个步骤,即制定计划、需求分析、设计、程序编码、测试及运行维护。

4、瀑布模型的思想、特点及其局限性思想:(1)软件开发过程与软件生命周期是一致的(2)相邻二阶段之间存在因果关系(3)需对阶段性产品进行评审特点:(1)接受上一阶段活动的结果作为本阶段活动的输入(2)依据上一阶段活动的结果哦实施本阶段应完成的活动(3)对本阶段的活动进行评审(4)将本阶段活动的结果作为输出,传递给下一阶段局限性:(1)缺乏灵活性,如用户需求一开始很难确定(2)到最后阶段才能得到可运行的软件版本5、增量模型思想、特点和局限性(1)增量模型将软件的开发过程分成若干个日程时间交错的线性序列,每个线性序列产生软件的一个可发布的“增量”版本,后一个版本是对前一版本的修改和补充,重复增量发布的过程,直至产生最终的完善产品。

(2)增量模型融合了瀑布模型的基本成分(重复地应用)和演化模型的迭代特征(3)增量模型强调每一个增量都发布一个可运行的产品(第一个增量是核心产品)·特点:增量模型的特点是引进了增量包的概念,无须等到所有需求都出来,只要某个需求的增量包出来即可进行开发。

虽然某个增量包可能还需要进一步适应客户的需求并且更改,但只要这个增量包足够小,其影响对整个项目来说是可以承受的。

·增量模型特别适用于:1、需求经常变化的软件开发2、市场急需而开发人员和资金不能在设定的市场期限之前实现一个完善的产品的软件开发·增量模型能有计划地管理技术风险,如早期增量版本中避免采用尚未成熟的技术。

软件工程考试复习名词解释整理

软件工程考试复习名词解释整理

1.软件生存期:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

2. 什么是软件危机?为什么会产生软件危机?软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重的问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。

产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。

3.快速原型模型:所谓快速原型模型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。

瀑布模型:是将软件生命周期的各项活动规定为依线性顺序连接的若干阶段的模型,适合于软件需求很明确的软件项目。

增量模型(渐增模型):瀑布模型的顺序特征和快速原型模型的迭代特征相结合的产物。

螺旋模型:对于大型软件,只开发一个原型往往达不到要求。

螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析。

喷泉模型:以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型。

4.结构化分析方法(SA)是E.Yourdon提出,是使用数据流图DFD与数据字典DD,用来描述面向数据流问题的需求分析,适合于数据处理型的软件的需求描述。

核心思想是分解化简问题,将物理表示与逻辑表示分开,对系统进行数据与结构的抽象。

优点是表达方式比文字清晰、简明,易于交流与掌握。

缺点是不能表达复合逻辑的需求分析问题,不能详细描述加工。

5.结构化设计(SD)是使用最广泛的一种设计方法,该方法适合于软件系统的总体设计和详细设计,特别是将一个复杂的系统转换成模块化结构系统,该方法具有它优势。

(相对独立,功能单一的模块结构;块内联系大,块间联系小的模块性能标准;采用模块结构图的描述方式)以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块。

软件工程问题整理版

软件工程问题整理版

软件工程问题整理版软件工程作为一门涵盖软件开发、维护、测试等过程的学科,面临着众多问题和挑战。

本文将对软件工程中的一些常见问题进行整理和讨论,以帮助读者更好地理解和应对这些问题。

一、需求管理和变更控制在软件开发过程中,需求管理和变更控制是非常重要的环节。

需求管理的目标是明确、准确地收集用户需求,并将其转化为可执行的软件需求规格。

然而,由于需求的复杂性和不完整性,需求管理常常成为软件开发中的瓶颈。

为解决这一问题,团队需要与用户密切合作,进行详尽的需求调研和分析,确保开发出符合用户期望的软件产品。

同时,变更控制也是需求管理的重要组成部分。

由于项目周期较长,用户需求可能会发生变化,因此变更控制是必不可少的。

团队应建立起科学有效的变更控制机制,确保变更的合理性和可行性,并及时进行沟通和协调,以避免变更引发的软件工程问题。

二、软件质量保障软件质量是软件工程中的核心问题之一。

保证软件质量需要从多个维度进行考虑和实施。

首先,需要进行全面的测试,包括单元测试、集成测试和系统测试等,以确保软件的功能正确性和稳定性。

其次,需要进行性能测试,以验证软件在各种负载情况下的运行情况。

此外,还应进行安全性测试、可维护性测试等,以提高软件的整体质量。

在软件质量保障过程中,团队应建立起一套完整的质量管理体系。

这包括制定质量标准和评估指标,建立测试用例和测试计划,并对测试结果进行评估和反馈。

同时,与用户保持良好的沟通也是保证软件质量的重要环节,及时了解用户的反馈和需求,以便进行改进和优化。

三、项目管理和团队协作项目管理和团队协作是软件工程中不可忽视的问题。

在项目管理方面,团队需要进行详细的项目计划和任务分解,制定合理的进度安排和里程碑,以确保项目的顺利进行。

同时,项目管理需要进行有效的风险管理和关键路径管理,及时解决项目中出现的问题和障碍,以减少项目延期和失败的风险。

在团队协作方面,有效的沟通和合作是至关重要的。

团队成员应保持良好的沟通,及时分享信息和解决问题。

软考第四版考点整理

软考第四版考点整理

软考第四版考点整理
1. 软件工程基础概念:软件工程的基本概念、软件生命周期、软件过程模型等;
2. 软件项目管理:软件项目管理的基本概念、软件项目组织结构、软件项目进
度管理、软件项目质量管理、软件项目成本管理等;
3. 软件需求工程:软件需求的定义、分类、获取和分析、表示、验证和管理等;
4. 软件设计与开发:面向对象设计基本概念、面向对象分析与设计方法、软件
设计原则、设计模式等;
5. 软件测试与维护:软件测试的基本概念、软件测试方法和过程、软件维护和
更新等;
6. 软件过程改进:软件过程改进的基本概念、软件评估、过程改进模型等;
7. 项目管理工具:项目管理工具应用、Microsoft Project等;
8. 软件开发工具:软件开发工具、集成开发环境、版本控制工具等;
9. 软件测试工具:软件测试工具的种类、应用及选择;
10. 软件过程改进工具:软件过程改进工具选用、CMMI、SPICE等;
11. 软件知识产权:软件著作权、软件专利、软件商标等;
12. 软件质量保证:软件质量保证的基本概念、管理方法、ISO9000等;
13. 项目管理实践:项目管理实践的案例分析、项目管理中的风险管理、项目
管理中的沟通等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.遗留软件:年代较久,甚至过于久远的软件。

特点:(1)生命周期长以及业务关键性(2)质量差遗留系统发生演化的原因:(1)软件需要进行适应性调整,从而可以满足新的计算环境或者技术的需求。

(2)软件必须升级以实现新的商业需求。

(3)软件必须扩展以使之具有与更多新的系统和数据库的互操作能力。

(4)软件架构必须进行改建以使之能适应不断演化的计算环境。

2.软件工程设计软件设计在软件工程中属于核心技术,并且它的应用与所使用的软件工程模型无关。

必需的四种设计模型:(1)数据设计或类设计将类模型转化为设计类的实现以及软件实现所要求的数据结构。

(2)体系结构设计定义了软件的主要结构化元素之间的关系,可满足系统需求的体系结构风格和模式以及影响体系结构实现方式的约束。

(3)接口设计描述了软件和协作系统之间,软件和使用人员之间是如何通信的。

(4)构建级设计将软件体系结构的结构化元素变换为对软件构件的过程性描述。

3.需求获取的起始阶段要解决的问题:1)应能适当地调整收集范围。

在收集需求信息的开始,开发人员并不知道用户需求信息量的大小,可以根据系统的范围适当扩大收集范围。

但也不能过于扩大收集范围,因为在扩大的范围内收集的需求信息有些可能不是真正的需求,这将导致开发人员要花费大量的精力和时间来理解和分析这些需求信息。

显然,收集的范围也不能太小,否则有些重要需求会被遗漏或排除在外。

2)尽量把用户所持的假设解释清楚,特别是发生冲突的部分。

这就需要根据用户所讲的话或提供的文字去理解,以明确用户没有表达清楚的、但又想加入的需求信息。

3)尽量理解用户用于表达他们需求的思维过程,特别是尽量熟悉和掌握用户具有的一些专业知识和术语。

4)在收集需求信息时,应尽量避免受不熟悉细节的影响,如一些表格的具体设计等,这些可作为需求先记录下来,然后再由设计工作去完成。

4.体系结构模型的三个来源:构件、连接件和配置5.面向对象多态机制的三个必要条件:1)要有继承2)要有重写3)父类的应用指向子类的对象(向上转型)6.单元测试,回归测试,冒烟测试,白盒测试:单元测试侧重于软件设计的最小单元(软件构件或模块)的验证工作。

在单元测试期间,选择测试的执行路径是最基本的任务。

测试用例的设计目的旨在发现因错误计算、不正确的比较或不适当的控制流而引起的错误。

回归测试重新执行已测试过的某些子集,以确保变更没有传播不期望的副作用。

无论什么时候修正软件,软件配置的某些方面(程序、文档或支持数据)也发生变更。

回归测试的好处:有助于保证变更(由于测试或其他原因)不引入无意识行为或额外的错误。

回归测试方法:可以手工进行,重新执行所有测试用例的子集,或者利用捕捉/回放工具自动进行。

冒烟测试可以理解为该种测试耗时短,仅用一袋烟功夫足够了。

类比新电路板基本功能检查。

测试对象是每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。

白盒测试也被称为玻璃盒测试或结构化测试,一种测试用例设计方法,利用作为构件级设计的一部分所描述的控制结构来生成测试用例。

测试方法:1)基本路径测试2)控制结构测试7.软件过程的框架过程框架为实现完整的软件工程建立了基础,一个通用的软件工程过程框架包含。

沟通:与客户和其它共利益者沟通和协作。

策划:为后续的软件工程工作制定计划。

建模:包括创建模型和设计。

构建:编码和测试。

部署:交付用户、测评及反馈。

8、耦合耦合是类之间彼此联系程度的一种定性度量,随着类之间的相互依赖越来越多,类之间的耦合程度也会增加,在构件级设计中一个重要目标就是保持低耦合。

9、重构重构是使用这样一种方式改变软件系统的过程:不改变代码[设计]的外部行为而是改进其内部结构。

10、软件工程是什么1.将系统化,规范化,可量化的方法应用于软件的开发,运行和维护,即将工程化方法应用于软件。

2.对系统化,规范化,可量化的方法进行研究。

11、内聚传统观点:模块的专一性面向对象系统构件设计观点::内聚性意味着构件或者类只封装那些相互关联密切,以及与构件或类自身有密切关系的属性和操作。

内聚分类功能的通过操作来表现分层的由包、构件和类来表现通信的访问相同数据的操作定义在一个类中12、设计模式设计模式描述了在某个特定场景中解决某个特定问题的设计结构。

13、回归测试、阿尔法测试、贝塔测试回归测试回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。

回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重。

阿尔法测试由有代表性的用户在开发者场所进行,软件在自然设置下使用,开发者站在用户后面观看,并记录错误和使用问题,阿尔法测试在受控环境下进行。

贝塔测试在一个或多个最终用户场所进行,开发者通常不在场,在不为开发者控制的环境下现场应用软件,最终用户记录测试过程中遇见的所有问题(现实存在或想象),并定期报告给开发者。

14.开闭原则p180开闭原则(OCP)。

“模块[构件]应该对外延具有开放性,对修改具有封闭性”。

15.分析模型p88 p96分析模型的作用是为基于计算机的系统提供必要的信息、功能和行为域的说明分析模型的元素:基于场景的元素、基于类的元素、行为元素。

分析模型必须建立的三个目标:(1)描述客户需要什么;(2)为软件设计奠定基础;(3)定义的一组需求在软件完成后可以被确认创建分析模型应该遵循的经验原则:1.模型应关注在问题域或业务域内可见的需求,抽象的级别应该相对高一些。

2.需求模型的每个元素都应能增加对软件需求的整体理解,并提出对信息域、功能和系统行为的深入理解。

3.关于基础结构和其他非功能的模型应推延到设计阶段再考虑。

4.最小化整个系统内的关联。

5.确认需求模型为所有利益相关者都带来价值。

6.尽可能保持模型简洁。

16、crc卡片分析类的建模活动p113CRC模型实际上是表示类的标准索引卡的集合。

类的类型:实体类也称作模型或业务类,是从问题说明中直接提取出来的(例如FloorPlan 和Senor)。

边界类用于创建用户可见的和在使用软件时交互的接口(如交互屏幕或打印的报表)。

控制类自始至终管理“工作单元”17螺旋模型、增量模型、瀑布模型、协同模型p31p32p35瀑布模型:又称经典生命周期,它提出一个系统的顺序的软件开发方法,从用户需求规格说明开始,通过策划、建模、构建和部署的过程,最终提供完整的软件支持。

瀑布模型的一个变体称为V模型优点:是软件工程最早的范例。

消除非结构化软件。

降低软件的复杂度,促进软件开发工程化出现的问题:实际的项目大部分情况难以按照该模型给出的顺序进行。

经常情况下客户难以表达真正的需求。

客户要等到开发周期的晚期才能看到程序运行的测试版本。

可能会产生“堵塞状况”总结:对当前软件工作往往并不合适。

当需求确定,工作能够线性方式完成时,可以采用增量模型:增量模型以迭代方式运用瀑布模型;在每个阶段运用的序列都是线性的;每个线性序列生产出一个软件的可交付增量;运用增量模型的时候,第一个增量往往是核心产品应用情况:(1)在期限之前没有足够的开发人员;(2)需要规避技术风险的项目;螺旋模型:一种演进式的软件过程模型结合了原型的迭代性质和瀑布模型的系统性和可控性特点具有迅速开发,逐步完善软件版本的潜力显著特点:1.采用循环的方式逐步加深系统定义和实现的深度,同时降低风险;2.确定一系列里程碑作为支撑点,确保共利益者都支持可行的和令人满意的系统解决方案;优点:1.这种模型适合于大型系统的开发,应该说它对于具有高度高风险的大型复杂软件系统的开发是最为实际有效的方法。

2. 沿螺线自内向外每旋转一圈便开发出更为完善的一个新的软件版本。

3.永远保持可操作性,直至软件产品周期结束。

4.过程经常处于休止状态,但每当有变更时,过程总能在合适的入口启动(如产品升级)。

协同模型:特点:1.提供精确的项目当前状态图;2.不是把软件工程活动、动作和任务局限在一个时间序列,而是定义活动状态网络;3.过程网络中某点产生的事件可以触发状态的转换18、软件工程的层次化技术和软件工程的5个框架活动p115个过程框架活动:沟通:与客户和其它共利益者沟通和协作。

策划:为后续的软件工程工作制定计划。

建模:包括创建模型和设计。

构建:编码和测试。

部署:交付用户、测评及反馈。

层次化技术:其根基在于质量关注点基础是过程层,定义一个框架。

方法层为建造软件提供技术上的解决方法。

工具层为过程和方法提供自动化或半自动化的支持。

19、敏捷软件开发和敏捷宣言p45敏捷宣言:个人和这些人之间的交流胜过了开发过程和工具可运行的软件胜过了宽泛的文档客户合作胜过了合同谈判对变更的良好响应胜过了按部就班地遵循计划什么是敏捷:有效的(快速并适应)响应变更所有利益相关者中的有效沟通吸引客户到团队组织团队使其控制工作执行快速、增量交付的软件敏捷要求:每个人是敏捷的团队是敏捷的使用最广泛的敏捷过程:极限编程(XP)极限编程(XP)的四个过程:策划、设计、编码、测试。

20体系结构并非可运行的软件。

他是一种表达使你能够:(1) 在满足既定的需求方面下,分析设计有效性;(2) 在设计变更相对容易的阶段,考虑体系结构可能的选择方案;(3) 降低与软件构造相关的风险21.描述软件体系结构风格的基本要素每种风格描述一种系统类别,包括:(1)完成系统需要的某种功能的一组构件(例如,数据库、计算模块);(2)能使构件间实现“通信、合作和协调”的一组连接件;(3)定义构件如何集成为系统的约束;(4)语义模型,能使设计者通过分析系统组成成分的已知属性来理解系统的整体性质。

体系结构风格的简单分类:(1)以数据为中心的体系结构(2)数据流体系结构(3)调用和返回体系结构(4)面向对象体系结构(5)层次体系结构22软件测试的主要步骤及主要任务主要步骤:(1)测试计划(2)测试用例设计(3)测试执行(4)测试结果数据的收集与评估主要任务:通过科学的、可靠的、有效的测试方法及技术找出软件中存在的缺陷,23普适性活动:(1)软件项目跟踪和控制(2)风险管理(3)软件质量保证(4)技术评审(5)测量(6)软件配置管理(7)可复用管理(8)工作产品的准备和生产24需求分析的主要内容:(1)产生软件工作特征的规格说明(2)指明软件和其他系统元素的接口(3)规定软件必须满足的约束25需求规格说明书的内容(p75信息栏)规格说明—是下面的一个(或者多个):一份写好的文档一套模型一个形式化的数学模型一组使用场景(使用案例)一个原型26用户界面设计的原则P1981.把控制权交给用户2.减轻用户的记忆负担3.保持界面一致27软件配置管理的主要活动P3121.对象标识2.变更控制3.版本控制4.影响管理5.配置审核6.报告28开源软件和非开源软件及其质量优势和劣势是什么开源软件: 可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。

相关文档
最新文档