软件工程概论第二次作业
- 格式:doc
- 大小:43.50 KB
- 文档页数:6
软件工程概论郑人杰等版第1章软件与软件工程的概念1.1 举出你所知道的应用软件的例子。
办公软件、游戏软件、财务软件、银行软件、人事管理软件、工资管理软件、学籍管理软件等。
1.2 认为“软件就是程序,软件开发就是编程序。
”这种观点是否正确?为什么?认为“软件就是程序,软件开发就是编程序。
”这种观点是错误的。
首先,软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合,程序只是软件的组成部分之一;其次,在软件开发中,编程只是软件开发过程的一个阶段。
1.3 如果将软件开发比作高楼大厦的建造,可以将软件的设计比作什么?可以将软件的设计比作建筑设计,软件设计的成果相当于建筑设计的设计图纸。
1.4 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?软件危机:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
典型表现:(1)对软件开发成本和进度的估计常常很不准确。
(2)用户对“已完成的”软件系统不满意的现象经常发生。
(3)软件产品的质量往往靠不住。
(4)软件常常是不可维护的。
(5)软件通常没有适当的文档资料。
(6)软件成本在计算机系统总成本中所占的比例逐年上升。
(7)软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:除了软件本身的特点,其原因主要有以下几个方面:(1) 缺乏软件开发的经验和有关软件开发数据的积累,使得开发工作计划很难制定。
(2) 软件人员与用户的交流存在障碍,使得获取的需求不充分或存在错误。
(3) 软件开发过程不规范。
如,没有真正了解用户的需求就开始编程序。
(4) 随着软件规模的增大,其复杂性往往会呈指数级升高。
需要很多人分工协作,不仅涉及技术问题,更重要的是必须有科学严格的管理。
(5) 缺少有效的软件评测手段,提交给用户的软件的质量不能完全保证。
1.5 什么是软件工程?软件工程是指导计算机软件开发和维护的工程学科。
软件工程第二次作业软件案例分析(二)引言概述:本文旨在对软件案例进行分析,总结出其中的关键点,从而提供给读者对软件工程的实践经验。
本文分为五个大点进行阐述,包括需求分析、设计和实现、测试和验证、维护和部署以及总结。
需求分析:1. 理解案例需求:仔细研读软件案例的背景和目标,明确软件所要解决的问题。
2. 分析用户需求:采取访谈、调查问卷等方法,了解目标用户的实际需求和期望。
3. 提取功能需求:将用户需求转化为具体的功能需求,并进行优先级排序。
4. 确定非功能需求:除了功能需求,还需要考虑性能、安全、可靠性等非功能需求。
5. 确定需求文档:撰写详细的需求规格说明书,以便于后续的设计和开发工作。
设计和实现:1. 架构设计:根据需求分析结果,确定合适的软件架构模式,并进行系统分解和模块划分。
2. 模块设计:根据架构设计,进一步细化模块的功能和接口,确定模块之间的通信方式。
3. 编码实现:根据设计文档,采用适当的编程语言和开发工具,完成软件的编码工作。
4. 代码测试:编写和执行单元测试用例,检验代码的正确性和健壮性。
5. 集成测试:将各个模块进行集成,并进行系统级别的测试,确保系统的功能和性能要求。
测试和验证:1. 测试计划:制定详细的测试计划,明确测试目标、策略和方法。
2. 单元测试:针对每个模块编写测试用例,并进行单元测试,确保模块的功能正确。
3. 集成测试:将各个模块进行集成测试,测试系统的功能和接口是否正常。
4. 系统测试:对整个系统进行全面测试,包括功能、性能、安全等各个方面。
5. 验证与确认:通过测试结果验证系统是否满足需求,并进行用户确认,是否满足用户期望。
维护和部署:1. 软件交付:将软件部署到生产环境中,并进行系统的安装和配置。
2. 问题修复:及时响应用户的问题反馈,进行故障排查和修复。
3. 功能扩展:根据用户需求和市场变化,对软件进行功能的增加和改进。
4. 性能优化:监控系统性能,进行性能优化,提升软件的响应速度和稳定性。
软件工程学2015年下半年第二次作业一、简答题1、模块设计准则答:1、改进软件结构提高模块独立性(低耦合高内聚)2、模块规模要适中3、深度、宽度、扇入及扇出要适当4、设计单入口单出口的模块5、模块功能应该可以预测6、降低接口的复杂性7、模块的作用域应该在控制域之内2、总体设计的任务答:1、设计系统的物理实现方案2、设计软件的整体结构,划分程序功能模块,决定模块间的接口关系和传递信息;3、设计系统全局的存贮数据结构4、设计系统I/O的方式和格式;5、设计系统安全性、出错处理及代码等6、设计组装测试计划。
二、选择题1、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。
它从用户界面的开发入手,首先形成(B),用户(C),并就(D)提出意见,它是一种(E)型的设计过程。
供选择的答案:A:①需求不确定性高的②需求确定的③管理信息④决策支持B:①用户界面使用手册②用户界面需求分析说明书③系统界面原则④完善的用户界面C:①改进用户界面的设计②阅读文档资料③模拟用户界面的运行④运行用户界面原型D:①同意什么和不同意什么②使用和不使用哪一种编程语言③程序的结构④执行速度是否满足要求E :①自外向内②自顶向下③自内向外④自底向上答:A.① ; B. ③; C. ④; D. ①; E. ①2、从下面关于程序编制的叙述中,选出3条正确的叙述。
①在编制程序之前,首先必须仔细阅读给定的程序说明书。
然后,必须如实地依照说明书编写程序。
说明书中常会有含糊不清或难以理解的地方。
程序员在作业时应该对这些地方做出适当的解释。
②在着手编制程序时,重要的是采用既能使程序正确地按设计说明书进行处理,又易于找出错误的编写方法。
③在编制程序时,重要的是采用既能使程序正确地按设计说明书进行处理,又易于出错的编写方法。
④考虑到以后的程序变化,为程序编写完整的说明书是一项很重要的工作。
只要有了完整的程序说明书,既使程序的编写形式难以让人看懂也没有什么关系。
单选题 (共25道题)收起1.(2.5分)在下列的基本成分中,哪个不是数据流程图的基本成分?•••••3.(2.5分)结构化分析SA方法以数据流图、()和加工说明等描述工具,即用直观的图和简洁的语言来描述软系统模型。
•••4.(2.5分)在软件的分析阶段,常用()来描述业务处理系统的信息来源、存储、处理和去向。
5.(2.5分)开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作()。
•A、软件投机•••••7.(2.5分)程序的三种基本控制结构的共同特点是•••8.(2.5分)结构设计是一种应用最广泛的系统设计方法,是以()为基础、自顶向下、逐步求精和模块化的过程。
•9.(2.5分)数据字典是对数据定义信息的集合,它所定义的对象都包含于•A、数据流图••10.(2.5分)在软件结构化设计中,好的软件结构设计应该力求做到••11.(2.5分)在整个软件维护阶段所花费的全部工作中,所占比例最大的是•A、校正性维护••12.(2.5分)黑盒测试在设计测试用例时,主要需要研究•••13.(2.5分)软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为••14.(2.5分)瀑布模型把软件生存周期划分为软件定义、软件开发和()三个阶段,而每一个阶段又可•••15.(2.5分)分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的()。
•••16.(2.5分)软件的()设计又称为总体结构设计,其主要任务是建立软件系统的总体结构。
••17.(2.5分)软件测试的目的是()•A、证明程序中没有错误••18.(2.5分)下列各项中不属于逻辑覆盖的是()•••19.(2.5分)为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为()•••20.(2.5分)软件详细设计的主要任务是确定每个模块的()•••21.(2.5分)软件结构图的形态特征能反映程序重用率的是()••••23.(2.5分)为了提高模块的独立性,模块内部最好是()•••24.(2.5分)软件结构图中,模块框之间若有直线连接,表示它们之间存在()•25.(2.5分)一个只有顺序结构的程序,其环形复杂度是()•A、0••判断题 (共15道题)收起26.(2.5分)快速原型模型可以有效地适应用户需求的动态变化。
福师(2020-2021)《软件工程》在线作业二注:本科有多套试卷,请核实是否为您所需要资料,本资料只做参考学习使用!!!一、单选题(共30题,60分)1、需求分析最终的结果是产生()A项目开发计划B需求规格说明书C设计说明书D可行性分析报告提示:认真复习课本知识302,并完成以上题目【参考选择】:B2、改正性维护占整个维护活动的()A50%-66%B17%1%C18%5%D4%提示:认真复习课本知识302,并完成以上题目【参考选择】:B3、()适合于调试小程序A蛮干法B回溯法C原因排除法D以上均不是提示:认真复习课本知识302,并完成以上题目【参考选择】:B4、下面不属于软件成分的重用的级别的是()A代码重用B设计结果重用C分析结果重用D类重用提示:认真复习课本知识302,并完成以上题目【参考选择】:D5、软件()是把程序从一种计算环境转移到另一种计算环境的难易程度A可测试性B可移植性C可修改性D可理解性提示:认真复习课本知识302,并完成以上题目【参考选择】:B6、下面选项中用黑盒技术设计测试用例的方法之一为()。
A基本路径测试B逻辑覆盖C循环覆盖D等价类划分提示:认真复习课本知识302,并完成以上题目【参考选择】:D7、两个模块彼此间通过参数交换信息,而且交换的信息仅仅是(),称为数据耦合A数据B图表C数字D文字提示:认真复习课本知识302,并完成以上题目【参考选择】:A8、需求分析中开发人员要从用户那里了解的有()A软件做什么B用户使用界面C输入的信息D软件的规模提示:认真复习课本知识302,并完成以上题目【参考选择】:A9、调试时在测试发现错误之()排除错误的过程A前B后C中D以上都不正确提示:认真复习课本知识302,并完成以上题目【参考选择】:B10、详细设计也称为(),它将详细的设计每个模块A模块设计B过程设计C整体设计D分段设计提示:认真复习课本知识302,并完成以上题目【参考选择】:A11、根据用户在软件使用过程中提出的建设性意见所进行的维护活动是( ).A纠错性维护B适应性维护C改善性维护D预防性维护提示:认真复习课本知识302,并完成以上题目【参考选择】:C12、下面不是面向对象设计准则的是( )A模块化B抽象C信息隐藏D不可重用提示:认真复习课本知识302,并完成以上题目【参考选择】:D13、RUP把软件生命周期划分为()个连续的阶段A1B2C3D4提示:认真复习课本知识302,并完成以上题目【参考选择】:D14、面向对象的软件技术以()为核心A数据B对象C过程D结构提示:认真复习课本知识302,并完成以上题目【参考选择】:B15、单元测试集中检测()A模块B过程C数据D架构提示:认真复习课本知识302,并完成以上题目【参考选择】:A16、用户界面设计过程是一个()的过程A迭代B连续C离散D一致提示:认真复习课本知识302,并完成以上题目【参考选择】:A17、()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,包括方法、工具和过程三个要素。
软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.继承性是子类自动共享其父类的__数据结构和方法____________机制。
5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。
6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。
7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
10.对象之间进行通信叫做__消息_____。
11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。
12.McCall提出的软件质量模型包括______11________个软件质量特性。
13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。
14.软件结构是以____模块__________为基础而组成的一种控制层次结构。
15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。
16.软件概要设计的主要任务就是__软件结构的设计______。
17.结构化程序设计方法是使用___三种基本控制结构____构造程序。
18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。
19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。
二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
地大《软件工程》在线作业二-0008试卷总分:100 得分:100一、单选题(共10道试题,共40分)1.软件开发环境中最主要的组成部分是()。
A. 软件工程B.项目管理工具C.软件工具D. 需求分析工具答案:C2.软件开发工作的第一个阶段是()。
A. 可行性研究阶段B.需求分析阶段C.概要设计阶段D.详细设计阶段答案:B3.软件生命周期中所花费用最多的阶段是()A. 详细设计B.软件编码C.软件测试D. 软件维护答案:D4.软件生产经过了三个阶段,其中程序系统时代是在()A.1946 年--1956年B.1956 年--1968年C.1968 年--1978年D.1978 年--现在答案:B5.调试应该由()完成。
A.单元测试B.集成测试C.确认测试D. 系统测试答案:B6.在下列哪个阶段()技术特点是多用户,实时,数据库,软件产品A.第一阶段B.第二阶段C.第三阶段D. 第四阶段答案:A7.以下关于软件生存周期模型说法不正确的是()A.软件生存周期模型是描述软件开发过程中各种活动如何执行的模型B. 增量模型是一种非整体开发的模型C.瀑布模型是一种风险驱动的模型D.喷泉模型是一种以用户需求为动力,以对象座位驱动的模型,适合于面向对象的开发方法。
答案:C8.软件开发环境按环境结构分类,可分为()①基于语言的环境;②项目管理环境;③维护环境;④基于操作系统的环境;⑤基于方法论的环境;⑥开发环境。
A.①②③B.②③⑥C.①④⑤D.②④⑥答案:C9.白盒测试又称为逻辑驱动测试,主要用于()A.功能测试B.边界测试C.α测试D.单元测试答案:D10.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C. 输入的信息D.软件的规模答案:A二、多选题(共5道试题,共20分)11.软件维护的内容包括()A.校正性维护B.适应性维护C. 完善性维护D.预防性维护答案:ABCD12.进行需求分析有的多种描述工具,包括()A.数据流图B.判定表C.PAD 图D.数据词典答案:ABD13.影响输入/输出风格的因素包括()。
软件工程概论郑人杰等版第1章软件与软件工程的概念1.1 举出你所知道的应用软件的例子。
办公软件、游戏软件、财务软件、银行软件、人事管理软件、工资管理软件、学籍管理软件等。
1.2 认为“软件就是程序,软件开发就是编程序。
”这种观点是否正确?为什么?认为“软件就是程序,软件开发就是编程序。
”这种观点是错误的。
首先,软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合,程序只是软件的组成部分之一;其次,在软件开发中,编程只是软件开发过程的一个阶段。
1.3 如果将软件开发比作高楼大厦的建造,可以将软件的设计比作什么?可以将软件的设计比作建筑设计,软件设计的成果相当于建筑设计的设计图纸。
1.4 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?软件危机:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
典型表现:(1)对软件开发成本和进度的估计常常很不准确。
(2)用户对“已完成的”软件系统不满意的现象经常发生。
(3)软件产品的质量往往靠不住。
(4)软件常常是不可维护的。
(5)软件通常没有适当的文档资料。
(6)软件成本在计算机系统总成本中所占的比例逐年上升。
(7)软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:除了软件本身的特点,其原因主要有以下几个方面:(1) 缺乏软件开发的经验和有关软件开发数据的积累,使得开发工作计划很难制定。
(2) 软件人员与用户的交流存在障碍,使得获取的需求不充分或存在错误。
(3) 软件开发过程不规范。
如,没有真正了解用户的需求就开始编程序。
(4) 随着软件规模的增大,其复杂性往往会呈指数级升高。
需要很多人分工协作,不仅涉及技术问题,更重要的是必须有科学严格的管理。
(5) 缺少有效的软件评测手段,提交给用户的软件的质量不能完全保证。
1.5 什么是软件工程?软件工程是指导计算机软件开发和维护的工程学科。
第三章需求分析作业一、名词解释结构化分析方法数据流图数据字典二、填空1、需求分析是指开发人员通过细致的,准确理解,将用户非形式化的需求转化为,再把转化为相应的形式化功能规约的过程。
2、需求分析的基本任务是准确定义,为了满足用户的需要,回答系统必须的问题。
3、需求分析阶段需编写的文档有、、。
4、数据流图的基本组成部分有、、、。
5、数据流图和数据字典共同构成了系统的模型,是需求规格说明书的主要组成部分。
6、结构化分析方法是面向、、进行分析的方法。
7、数据字典有以下四类条目:、、、。
是组成组成数据流和数据存储的最小元素。
8、在结构化分析得需求描述中,描述系统的分解,即描述系统由哪几部分组成,各部分有什么联系等等。
定义了数据流图中每一个图形元素。
9、在数据流图中,是数据在系统内传播的路径,因此由一组固定的数据项组成。
加工(又称为数据处理)是对数据流进行某些。
三、单项选择题1、需求分析阶段最重要的技术文档之一是【】。
A.项目开发计划B.设计说明书C.需求规格说明书D.可行性分析报告2、在需求分析之前有必要进行【】。
A.程序设计B.可行性分析C.ER分析D.3NF分析3、软件需求分析阶段建立原型的主要目的时【】。
A.确定系统的功能和性能要求B.确定系统的运行要求C.确定系统是否满足用户需要D.确定系统是否满足开发人员需要4、软件需求的开发活动,其主要任务是【】。
A.给出软件解决方案B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型5、需求分析阶段的研究对象是【】。
A.用户要求B.分析员要求C.系统要求D.软硬件要求6、数据流图描述系统的()。
A.数据结构B.控制流程C.基本加工D.软件功能7、软件需求阶段要解决的问题是【】。
A.软件做什么B.软件提供哪些信息C.软件采用的结构D.软件怎样做8、数据字典不包括的条目是【】。
A.数据项B.数据流C.数据类型D.数据加工9、需求分析【】。
A.要回答“软件必须做什么?”B.可以概括为“理解,分解,表达”六个字。