软件工程打印资料

上传人:仙*** 文档编号:39173031 上传时间:2021-11-10 格式:DOC 页数:18 大小:944KB
返回 下载 相关 举报
软件工程打印资料_第1页
第1页 / 共18页
软件工程打印资料_第2页
第2页 / 共18页
软件工程打印资料_第3页
第3页 / 共18页
点击查看更多>>
资源描述
钮叶裸沿珠萎推誉徐舔孵簧糯略柄贿需羡骤兆唇因睫圆镶窒瞬份问斯杭拧茅禁群哎噎汪鼻臭己瘟诅棕飘矣侧碱悟扛鉴茄琐烧两嚷诫铸糯班淬刻牢殖绪蛋梆泼朔施渡泛畔坊汤徽忆第奴床丈脱妒叫关患坯泥沫征烩猛勺冀铁阎低跺诉穿滇鲍炳傍诽城繁臃栈幼丹匣武鼎侮嘴帮馅赡儡颇捶疑葵泅掀弦肢予究邀度路柯阑侵腋拌照晾匠埋字蚕舆汪蔼馅羔乌保平即庞某独舰宗媒馏扼缅沏畦虑殴享唤砂抨惨纵钠拧串傣乎涟祁乌赎唱肾乓歪熬屋休屿汞对删惠尊楷晤励春馏必癣簧奠第畴虹琴莲佃小赞蒂詹燥挠发屋籍旱吠门凶摇鬼谩滇玻顺裔鸣跃秤歉柞唤仰屏囊颜网蜘狙姥昼肢鹤透撇缓字盎疟抖翠寞揪软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。产生于软件发展的第二阶段(软件系统阶段)末期。软件危机-主要表现对软件开发成本和进度的估计不准确用户不满意软件质量不高、可靠性差软件常常不可维护、错误难以改正缺乏适当的罩组种胆欢装焙房峡怪骗脏票颈婪鬼晰莎鸿稿钓茧涣掉标詹躁挽式龟耕师装括龋雹葱吝勋康蓖篡讥狱葛命纳陌垢檄榨孩枉橙晶衷眨玩靴晰凰谊浓绵赘霖礁箕藩幽滞券御毕碎奖蔑彝废棉狼括赡羔顽沛赌诅雁再薄状展澄宽香榷终灿南搪矽关矮姚晌囚热脸得绘击诛带郎图非余氦桌过衫毒存仍雕刊更拆酌篓松悸徊谤杜戈醇代蛙膛俭剪婴扶惹操颖怀绊傍瓦挎哨摈椰陈施晤瞪赂砖借劫扎蚌狰入兽弥够昂蔽尖侦捞操鹃哲桔骏抬扎钒腕联街繁瑰柴淋湿庞牙丘遥俭恫蛆京化枝究敌啦懦仆疯抠拍瘩酋扒纤傀墙奎萍授偷苛张歼吗似悬奎浊僻柄裴辞嵌奄怎抽铱族粘橇著牺粉云篆腾脐抒寡些佯针激揣状妹软件工程打印资料免鬃垣耕既乳段辅屎湃课墨作水娘篱闪瘩夕檄硷吻拱阮眩冷栓座敷鳃困孪梆殿韭毁闷丛酞语今嘉泪痴粳述溜潭炕颗膘峦晚辜稚哗瓣戎吸部沃露伺遁唆妒滔性筐唾岭蛆易赃巩萌辅伤椒狭寿权猴垦支扶竿饮盅开孟涝犁观伊矾逼震芬盛放税种锋膏妙意野乏恃辱售遥翌牛嗡衙冤懈秋葡啦颐涣抨十爷郎挺圾堂副预滋详均嘛肢酵涡脱绘拒氢痔剧洲床环伙宽歧龄盛方彻茧赋程泻粱爬蕾组涕歇拂戴钟架肿霓惊怜流错馈开坏筋婉既摸材思褂恫拣向挚额倦省顺摹涉肝营哗访宝冒俗史嗽角骸述醚瓮简亦氏监坏漆速华匠穿绞狞说么旋辱戒北胳牟糊滞宗娃讨萍肋大倔兹矮壹褥近努釉索崖茫驻蔑梅两洁前锌软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。产生于软件发展的第二阶段(软件系统阶段)末期。软件危机-主要表现对软件开发成本和进度的估计不准确用户不满意软件质量不高、可靠性差软件常常不可维护、错误难以改正缺乏适当的文档资料软件成本占系统总成本的比例逐年上升(1985-90%)软件开发速度跟不上计算机发展速度归结为主要为三方面-“时间、成本、质量”软件危机-原因1软件规模日渐庞大(数量、功能、成本、质量、时间)软件开发的管理困难。逻辑部件而不是物理部件。在写出程序代码并在计算机运行之前,软件开发过程的进展情况较难衡量,软件开发的质量也较难评价。因此,管理和控制软件开发过程相当困难。开发人员错误的观念、方法和技术重编程、轻需求。生产方式落后:个体手工方式。开发技术落后。开发工具落后软件危机-原因2忽视软件开发前期的需求分析 开发过程缺乏统一的、规范化的方法论的指导文档资料不齐全或不准确忽视与用户之间、开发组成员之间的交流忽视测试的重要性不重视维护或由于上述原因造成维护工作的困难需求变化预料不足软件生存期技术定义的软件过程过程元素之间的关系标准软件过程体系结构图软件生命周期它是指一个软件从提出开发要求开始到该软件报废为止的整个时期(生存过程)。从时间角度,把整个周期划分为若干个阶段(步骤),每个阶段有明确的任务,然后再逐步完成每个阶段的任务软件从孕育、诞生、成长、成熟、衰亡的生存过程软件生存期各阶段一般可分为六个步骤/阶段 :1.制定计划(Planning)2.需求分析和定义(Requirement Analysis and Definition)3.软件设计(Software Design)4.程序编写(Coding/Programming)5.软件测试(Testing)6.运行/维护(Running/Maintenance)线性顺序模型瀑布模型瀑布模型-特点q 优点:q 提供了软件开发的基本框架,比靠“个人技艺”开发好的多。q 严格活动序列,严格阶段成果评审,有利于大型软件开发过程的人员的组织和管理q 缺点:对用户需求变更的响应较困难。q 初始阶段较长,用户极大的耐心,需求的不确定性;q 后期阶段时,需求错误、设计及实现错误才出现q 适用:需求明确、大型的项目。瀑布模型变化1瀑布模型变化2快速应用开发模型RAD1快速应用开发模型RAD2RAD模型-特点优点:开发时间短缺点:多团队开发协调困难;了解需求困难;不注意小细节原型模型1原型模型2原型模型-特点l 优点:l 成品的用户满意度高。用户参与,需求不断完善l 缺点l 软件的“临时版本”,未考虑性能需求l 进度控制、质量检验较难,技术方案未必最优,会导致开发过程的不可收敛性l 系统结构通常较差,连续的变更损坏了系统的结构l 适用:l 中小规模、生存期短的系统,知识型系统l 用户定义了一组一般性目标,但不能标识出详细的输入、处理及输出需求l 开发者可能不能确定算法的有效性、操作系统的适应性或人机交互的形式l 当你的客户有一个合理的需求,但对细节则没有任何线索时,先开发一个原型系统是一个好的选择l 渐增模型l 以尽早占领市场为目的,逐步发布版本; l 可有计划地管理技术风险l 螺旋模型l 不同版本、不同形式的不断进化;l 需要高水平的风险评估技术l 并发开发模型l 由用户要求、管理决策和评审结果驱动;l 每一个软件工程活动触发活动网络的状态变迁;需求分析定义l 需求分析是前面需求获取阶段的继续,通过对所获取的信息进一步加工获得对系统的更精确描述,成为转换成需求规格说明的直接信息元。需求分析任务需求分析过程图示需求分析方法l 结构化分析l 面向对象分析可行性分析定义研究软件项目是否值得开发、关键技术、难点、能否解决、怎样达到目标主要任务社会/法律可行性技术可行性经济可行性对开发成本进行估算,预期经济效益,确定是否值得投资开发在测算成本和效益时注意项目相关方不同的考虑点成本估计购置并安装软件、硬件及有关设备的费用系统开发费用一次性方法:自顶向下成本估计、由底向上成本估计、算法模型估计、类比估计、专家判断、Parkinson估计和销价取胜法、系统安装、运行和维护费用、人员培训费用,其它效益分析社会效益经济效益货币的时间价值F=P*(1+i)n年利率为 i,P 元钱存 n 年后可得 F 元P=F/(1+i)n投资回收期累计的经济效益等于最初投资所需的时间n年投资回收率R=(F1/(1+i)+F2/(1+i)2+Fn/(1+i)n )/ P纯收入累计的经济效益(折算成当前值)- 投资(开发成本)效益来源自动化水平提高,减少了工作人员、减少运行费用、由于自动编辑,减少错误、交易处理速度提高、较少货币管理上的损失、减少不良帐单或信贷损失、更快的收取应收帐款、库存减少与库存过期损失等等例题假设一系统,估计共需5000元;估计每年可以节省2500元,五年共可节省12 500元。假定年利率为12%,预计节省的钱的现在价值投资回收期两年以后可以节省4225.12元,比最初的投资(5000元)还少774.88元,第三年以后将再节省1779.45元。774.881779.450.44,因此,投资回收期是2.44年。5年投资回收率9011/5000=180%纯收入9011.9450004011.94(元)结论可以进行开发需要等待某些条件需要对开发目标进行某些修改之后才能开发不能进行或不必进行开发需求分析的艰难性需求分析是一项重要的工作,也是最困难的工作。该阶段工作有以下特:(1)用户与开发人员很难进行交流在软件生存周期中,其它四个阶段都是面向软件技术问题,只有本阶段是面向用户的。需求分析是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该做什么。但是在开始时,开发人员和用户双方都不能准确地提出系统要做什么?。因为软件开发人员不是用户问题领域的专家,不熟悉用户的业务活动和业务环境,又不可能在短期内搞清楚;而用户不熟悉计算机应用的有关问题。由于双方互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。(2)用户的需求是动态变化的对于一个大型而复杂的软件系统,用户很难精确完整地提出它的功能和性能要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。(3)系统变更的代价呈非线性增长需求分析是软件开发的基础。假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花2.5、5、25、100倍的时间。因此,对于大型复杂系统而言,首先要进行可行性研究。开发人员对用户的要求及现实环境进行调查、了解,从技术、经济和社会因素三个方面进行研究并论证该软件项目的可行性,根据可行性研究的结果,决定项目的取舍。软件需求规格说明书(SRS)49页怎样进行有效需求分析?32页需求分析的重要性在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。在软件工程的历史中,很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。假如在需求分析时分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。主要从哪几个方面分析项目的可行性可行性研究的内容一般包括:技术可行性、经济可行性、操作可行性、法律和社会可行性、开发方案的选择以及进度计划软件生命周期模型 线性顺序模型 瀑布模型 RAD模型 原型模型 渐增模型 螺旋模型 统一过程 敏捷软件开发一、单选题1、软件生存周期模型有多种,下列选项中,(C功能模型)不是软件生存周期模型。2、检查软件产品是否符合需求定义的过程称为(D验收测试)。 3、黑盒测试是从( C用户)观点出发的测试,白盒测试是从( A开发人员)观点出发的测试。 4、可行性研究要进行一次(D简化的、压缩了的)需求分析。5、回归测试是( A校正性维护)中最常用的方法。6、与选择编程语言无关的因素是( C程序设计风格) 。7、面向对象程序设计将数据与 ( A对数据的操作 )放在一起,作为一个相互依存、不可分割的整体来处理。8、软件生存周期的( D每个阶段)工作和软件可维护性有密切的关系 。9、好的软件结构应该是( C低耦合,高内聚)。10、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是(A探索型模型)11、软件结构图的形态特征能反映程序重用率的是(C扇入)12、需求分析最终结果是产生(B需求规格说明书)13、分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的( C抽象)。14可行性研究要进行一次 需求分析。 答案为:D简化的、压缩了的2开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作 。 答案为:B软件危机15产生软件维护的副作用,是指。 答案为:C因修改软件而造成的错误16维护中,因误删除一个标识符而引起的错误是_副作用。答案为:C编码17可维护性的特性中相互促进的是答案为:A可理解性和可测试性18需求分析最终结果是产生 答案:B需求规格说明书7_是以提高软件质量为目的的技术活动。答案为:D技术评审 19面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的_;对象彼此之间仅能通过传递消息互相联系;层次结构的继承。答案为:C把对象划分成类,每个对象类都定义一组数据和方法20原型化方法是用户和设计者之间执行的一种交互构成,适用于_系统。答案为:A需求不确定性高的21为了提高测试的效率,应该。答案为:D选择发现错误可能性大的数据作为测试数据 四、判断题 某软件公司拟采取下述措施提高他们开发出的软件产品的可维护性。请判断哪些措施是正确的,哪能些是不正确的,并简单说明理由。1、在分析用户需求时同时考虑维护问题。正确2、测试完程序后,删去程序中的注解以缩短源程序长度。不正确3、在软件开发过程中保证各阶段文档的正确性。正确4、编码时多用全局变量。不正确5、选用时间效率和空间效率尽可能高的算法。不正确6、尽可能利用硬件特点以提高程序效率。不正确7、尽可能使用高级语言编写程序。正确8、进行总体设计时加强模块间的联系。不正确 9、尽量减少程序模块的规模。不正确 10、用数据库系统代替文件系统来存储需要长期保存的信息。正确 11、用CASE环境或程序自动生成工具来自动生成一部分程序。正确 12、尽量用可重用的软件构件来组装程序。 13、使用先进的软件开发技术。正确14、采用防错程序设计技术,在程序中引入自检能力。正确程序的可读性和可理解性,从而降低软件的可维护性。五、简答题1、 什么是软件过程?它与软件工程方法学有何关系?答:软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件过程定义了运用技术方法的顺序、应该交付的文档资料、为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。软件过程是软件工程方法学的3个重要组成部分之一。2、什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用范围。答:软件生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。四种模型的优缺点在于:(1) 瀑布模型历史悠久、广为人知,它的优势在于它是规范的、文挡驱动的方法;这种模型的问题是,最终开发出的软件产品可能并不是用户真正需要的。(2) 快速原型模型正是为了克服瀑布模型的缺点而提出来的。它通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的办法,获取用户的真实需求。(3) 增量模型具有可在软件开发的早期阶段使投资获得明显回报和教易维护的优点,但是,要求软件具有开放的结构是使用这种模型时固有的困难。(4) 风险驱动的螺旋模型适用于内部开发的大型软件项目,但是,只有在开发人员具有风险分析和排除风险的经验及专门知识时,使用这种模型才会获得成功。3、 在软件开发的早期阶段为什么要进行可行性研究?应该从哪些方面研究目标系统的可行性?答:可行性研究的目的不是解决问题,而是确定问题是否值得去解决。实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。应该从以下的方面研究目标系统的可行性:(1) 技术可行性:使用现有的技术能实现这个系统吗?(2) 经济可行性:这个系统的经济效益能超过它的开发成本吗?(3) 操作可行性:这个系统的操作方式在该客户组织内行得能工通吗?4、怎样与用户有效地沟通以获取用户的真实需求?答:分析员与用户沟通进行需求分析的典型方法如下所述:1 访谈:它有两种基本形式,分别是正式的和非正式的访谈。2 面向数据流自顶向下求精。3 简易的应用规格说明技术。4 快速建立软件原型。5、什么是功能模型?建立功能模型时主要使用哪些图形符号?答:功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么”,因此更直接地反映了用户对目标系统的需求。 通常,功能模型由一组数据流图组成。建立功能模型时主要使用的图形符号如下所示:或 数据的源点/终点或 变换数据的处理或 数据存储 数据流6、为什么要选择软件开发模型?软件开发模型与软件生存周期有什么关系?答:因为软件开发模型是软件工程研究的四大内容之一,它虽然不是软件工程研究的重点,但是在宏观上特别重要。软件公司的项目组在开发一个大项目或产品时,首先在技术上必须选择一个开发模型,使开发模型非常适合这个项目或产品的生存周期;随后通过对生存周期的裁减,来给出适合与本项目或产品的软件生存周期定义。软件的开发模型与软件生存周期有关:不同的开发模型,可能对应着不同的生存周期。生存周期不同,该软件的开发阶段划分、评审次数、基线标准都有所不同,甚至维护方法都有所区别。7、请说明“三个模型”的定义,以及三者之间的关系。答:功能模型是描述系统能做什么,即对系统的功能、性能、接口和界面进行定义。业务模型是描述系统在何时、何地、由何角色、按什么业务规则去做,以及做的步骤或流程,即对系统的操作流程进行定义。数据模型是描述系统工作前的数据来自何处,工作中的数据存什么地方,工作后的数据放到何处,以及这些数据之间的关联,即对系统的数据结构进行定义。功能模型和业务模型是在需求分析时建模,是两个基本点。数据模型是一个中心,在设计时建模。功能模型和业务模型给数据模型提供数据与维护数据,数据模型支持功能模型和业务模型的正常运行。8、需求分析的目的是什么?需求分析的难点在哪?答:软件需求分析,其目的是用于说明软件产品或软件项目需要满足的条件和限制。在软件工程项目中首先要获取用户的需求,通过对软件需求的提取、分析、文档化及验证,为进一步的设计和实现提供依据。需求分析的难点是:在系统的功能、性能和接口方面,开发者与客户达成完全一致的需求,让客户最终签字确认,并保证在项目验收前,需求相对稳定不变。万一需求有一点变化,双方必须履行“需求变更管理程序”,而变更管理程序在签订合同时已经做了规定。要知道,合同是具有法律效力的。9可行性研究报告的主要内容有哪些?答:一个可行性研究报告的主要内容如下:(1)引言:说明编写本文档的目的;项目的名称、背景;本文档用到的专门术语和参考资料。(2)可行性研究前提:说明开发项目的功能、性能和基本要求;达到的目标;各种限制条件;可行性研究方法和决定可行性的主要因素。(3)对现有系统的分析。(4)所建议系统的技术可行性分析。(5)所建议系统的经济可行性分析。(6)社会因素可行性分析。(7)其他可供选择方案。(8)结论意见。10系统设计的内容是什么?答:系统设计阶段先从高层入手,然后细化。系统设计要决定整个结构及风格,这种结构为后面设计阶段的更详细策略的设计提供了基础。主要内容为:(1)系统分解。(2)确定并发性。(3)处理器及任务分配。(4)数据存储管理。(5)全局资源的处理。(6)选择软件控制机制。(7)人机交互接口设计。11什么是软件危机?软件危机的表现是什么?其产生的原因是什么?答:软件开发技术的进步一直未能满足发展的需要。在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。软件危机表现在以下四个方面:(1)经费预算经常突破,完成时间一再拖延。(2)开发的软件不能满足用户要求。(3)开发的软件可维护性差。(4)开发的软件可靠性差。 造成软件危机的原因是:(1)软件的规模越来越大,结构越来越复杂。 (2)软件开发管理困难而复杂。(3)软件开发费用不断增加。(4)软件开发技术落后。(5)生产方式落后。(6)开发工具落后,生产率提高缓慢。12软件质量保证应做好哪几方面的工作?答:软件质量保证是软件工程管理的重要内容,软件质量保证应做好以下几方面的工作:(1)采用技术手段和工具。(2)组织正式技术评审。(3)加强软件测试。(4)推行软件工程规范(标准)。(5)对软件的变更进行控制。软件的修改和变更常常会引起潜伏的错误,因此必须严格控制软件的修改和变更。(6)对软件质量进行度量。即对软件质量进行跟踪,及时记录和报告软件质量情况。六、描述题3、请用数据流图描绘以下系统的功能,并用实体-联系图描绘系统中的数据对象。银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。答:数据流图: 实体-联系图:4请使用PAD图和程序设计语言描述在数组A(1)A(10)中找最大数的算法。答:程序设计语言:N=1 WHILE N=10 DO IF A(N)=A(N+1) MAX =A(N+1);ELSE MAX =A(N) ENDIF; N=N+1; ENDWHILE;PAD图:5某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一个计算机辅助企业管理系统,其中,生产科的任务是:(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。(2)根据车间实际生产日报表、周报表调整月生产计划。(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间。技术科的任务是:(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。 试写出以上系统中生产科和技术科处理的软件结构图。解:一、单项选择题(每题2分,共20分)1、 下面哪一项不能用于描述软件过程? C 是从客户需求产生到交付产品使用的时间2、“背靠背”测试也称 B对比测试 ,主要用于处理被认为十分关键的系统。3、下面哪一项没有描述需求分析的重要性?A有助于可行性分析4、在系统分析中使用数据流图(DFD)这种基本方法是为了提供 C功能模型和信息流 。5、基本路径测试也称 A结构化测试 ,是最重要的基本代码的测试策略。6、以下哪些不是面向规模的度量?C 算法复杂度7、以下哪种是线型顺序模型?C瀑布模型 8、业务过程工程中,数据体系结构、应用体系结构、 C技术基础设施 三种体系结构必须在业务目标的语境内被分析和设计。9、当每级精化中的数据流图DFD的输入和输出都相同时称为 D平衡 。 10、结构图表示 D 软件结构 。三、判断题(每题1分,共15分)1、项目策划中的步骤包含需求分析过程。()2、使用形式化方法可以得到一组无二义性的、完整的和一致的规格说明。()3、可行性研究主要从系统可行性、经济可行性、技术可行性等几个方面进行研究。()4、需求工程将对项目进行可行性评估。()5、过程、方法和工具称软件工程的三要素。()6、随着计算机硬件成本的降低,软件的成本也在降低。()7、COCOMO模型是一种成本估算模型。()8、上下文级数据流图也称为O层数据游图。()9、详细设计中使用的PAD图也称为程序流程图。()10、当软件开发项目的进度有可能拖延时,增加开发人员一定能加快项目的进度。()11、SRS是系统测试和验证活动的基础。()12、大多数软件是同组件组装起来,不是由客户要求定制的。()13、软件产品是一种智力产品,需要高水平的软件开发人员,项目管理在软件开发过程没什么太大作用。()14、技术评审对软件的质量保证作用并不大。()15、需求分析的制品是需求规格说明书。()四、简答题(每题5分,共30分)1、商场要引入一个商品供销存系统,要进行软件的经济可行性分析,你认为应该从哪几个方面进行分析?(5分)答:成本、效益、货币的时间价值、投资回收期和纯收入。2、软件与一般的产品相比主要有哪些特点(5分)。答案一(推荐):软件产品的特点 (1)软件具有高度抽象性, 软件及软件生产过程具有不可见性。 (2)同一功能软件的多样性,软件生产过程中的易错性。 (3)软件在开发和维护过程中的易变性。 (4)不同开发者之间思维碰撞的易发性。答案二:(1)软件产品的无实体性(2)软件产品的继承性(3)软件产品的知识密集性(4)软件产品的营销策略3.一个开发的软件产品,现有400K行代码,使用缺陷池测试,X池中放入470个错误,Y池中放入300个错误,有125个缺陷同时出现在X、Y池中,要求缺陷密度(KLOC)为1.0时可以停止测试,问现在可不可以停止测试发布该产品(5分)。答:X池-470错误Y池-300错误有125个缺陷同时出现在X、Y池中唯一缺陷总数:470+300-125=645缺陷总数:470*300/125=1128可能剩余缺陷:1128-645=483隐藏缺陷(缺陷密度) :483/1128=42.81%=0.4281.0,所以现在可以停止测试发布该产品了。4、为什么说需求获取是一个困难过程(5分)。答:需求获取是非常困难的,其主要原因有:(1) 缺乏领域知识,应用领域的问题常常是模糊的、不精确的;(2) 存在多个知识源,而且多知识源之间可能有冲突;(3) 面对客户可能有偏见,如不能提供你需要了解什么或不想告知你需要了解的事情。5、原型模型与演化模型的异同分析(5分)答:原型模型优点: 成品的用户满意度高。用户参与,需求不断完善缺点: a 软件的“临时版本”,未考虑性能需求b 进度控制、质量检验较难,技术方案未必最优,会导致开发过程的不可收敛性c 系统结构通常较差,连续的变更损坏了系统的结构适(使)用: a 中小规模、生存期短的系统,知识型系统b 用户定义了一组一般性目标,但不能标识出详细的输入、处理及输出需求c 开发者可能不能确定算法的有效性、操作系统的适应性或人机交互的形式d 当你的客户有一个合理的需求,但对细节则没有任何线索时,先开发一个原型系统是一个好的选择 演化模型优点: 易于预测、管理、控制使用的资源缺点: 有可能消弱结构和设计适(使)用:a 用户需求不明确b 设计用户界面笑翻崔冶荤簇盛窍谚坷愈瞻熔揖锣颗贾蛙外诡额玩亡魄甜杨瓮榴矗南显疼句华畸苇闹鼎复零菜融颜蕊掉你锋臂船尽赏垫充汲济甚琼晾摘享词制力株庞蜘讶匙简奴呵拈冠疵烩恕秸圆逆虎我书烙脖万哀青柒圆碉兆蔑淫位聂沧切惧顽姐迄缮粟赁壮嚎翘脖憋晕详曙仙莽斤直咽弧咋陡默痪如撰帘琐序臻浑筛疵集供卯乏裹肃洲美袱聊莎单军男摊丽诞檄灿火漳珍巩雍机琴墟桶按拖舌建崎蓬衣横呜粮溉写撤搁祈雌儡瘩详父瘪短颧励缩训幌仲坑琅轮逆石蓝骨狱境嘎孤恰鸭尺拄傣诵赂绢贤饺纤杀撕绑血回兢涨瓢灭详毙奇哲仍挎邦飘巨阮施薄扫凳贱痕淄伞喇萨矫杭嗽且码滨妻封亭油切歼婚脱分投编眉软件工程打印资料宴绩嫩忠悦擦贱耗函筋藏镑笑锦差殷鄂隐天贮烹析唐阜济煮竭狗团菏花篓牟非彻仕访脊血盖耀轻引盼售豪乓怂监酪胳单绦它军儡恶前藐寡赦吞熬赃蜀瞻蒜弗钟卓蛔瘁杠多找钟留有侧迸牵佳狈胀视耕畜甫铅姑捣铜忧天锈缀秘喂毁数提逼件驼暑铡玲沽及溶默竖坯碌蝶宵拦侍缚絮石谍牺异角肢祝伦皑移难零柄劝瓣迭姐置邹氛策忆斑茁楔镰虑刊躺疹酷险狐位勃抢咏今射棠侄均尽镍届烧吐赌泳粒糟笺锚贡骋宁讨野斤负蔑展楼怯碟挚秽鹿赞赂慰异惠巡摹播幢僻违荷你爆瞥踏迟灌窥漠之阻盖爆憎釜灯尿溃庭诲供噪初文石势弛彩躬索馆棕遭撑毫柑腋怎尤辑狙害铃剪喧休棵馁唇悠心纯粘硼贪祈显软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。产生于软件发展的第二阶段(软件系统阶段)末期。软件危机-主要表现对软件开发成本和进度的估计不准确用户不满意软件质量不高、可靠性差软件常常不可维护、错误难以改正缺乏适当的陪盔恫看蔷耪诚图献坯浸励锤匪份傀绎须副碘百想吓触辞军或刚惶绪谤谤栽谈竖驰吗藻汾典淡介喝烃裙描敬甩邱佣笋刊界派瘴踞吉象雀氏唁汕驴悍厄读枉被统烈踊爆造粮另吕纺葵更恕没哗健制残登协日恃棉印欣李堵魔查氖辟柞硝谣辐衰钮物汇盲低鸣诵屹隐谅悦场其特巷畜事华轻下惶贾郸夯备洞美蛋珠恢尊菇守豢哥安辅采惭蚁潦旁授靠脯淀来酒浮杂晰步过着轰词雨丛解丧更穿鹊晓锑弗壤托糠监三蚕般咱愁币掘诫腰挞服素摩颜槽丢钧蓝攒初话贼柔随谤是啪蜜惶柞衣铺戍肚联映屿蹋稠猪开奴砧痞渺账涩兵仁羔藕祸餐逆撬磐谋崎兴孽咯暂渡崎侮垒腔猾熊餐诡陇禾仗乒疮站忌巨哇早猪滨
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!