软件开发工程资料
软件工程-MOOC(平顶山学院)复习资料超全

1.造成大型软件开发困难的根本原因在于软件系统的复杂性2.扶持培养软件高手的学院不属于软件工程的内涵之一3.Ariane 5火箭发射失败的事例告诉我们(1)系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制(3)软件重用必须重新进行系统论证和系统测试4.软件质量是在开发的过程中逐渐构建起来的5.瀑布模型是软件的基础模型6.大力扶持软件企业不属于解决软件危机的途径之一7.划分软件生存周期的阶段时所应遵循的基本原则是各阶段的任务尽可能相对独立8.软件会逐渐退化而不会磨损,其原因在于不断的变更使组件接口之间引起错误9.软件危机的主要原因是软件本身的特点及开发方法10.大多数软件系统是不容易修改的,除非它们在设计时考虑了变化11.把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案。
√12.在进行成本/效益分析的时候,需要考虑运行费用、开发成本、系统使用寿命、系统带来的经济效益13.可行性研究需要的时间长短和所研究系统的规模关系不大×14.数据流图和数据字典共同定义了新系统的逻辑模型√15.成本/效益分析的目的是帮助客户组织的负责人正确地作出是否投资于这项开发工程的决定16.可行性研究的主要包括技术可行性、经济可行性和操作可行性17.分层数据流图是一种比较严格又易于理解的描述公式,它的顶层描述了系统的总貌18.结构化分析方法以数据流图、数据字典和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型19.获取用户需求的时候,定义数据流图中包含的元素使用数据字典20.不适于作为数据流图处理(加工)框名称的是工资支票数据21.外部实体是“用来明确系统和环境的界限”的22.把可行性演技各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案√23.数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成的。
软件工程复习资料

软件工程复习题一一、选择题,请从四个可选项中选择正确答案。
1.以下哪一项不是软件危机的表现形式()A.成本高B.生产率低C.技术发展快D.质量得不到保证2.哪种模型分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。
()A.演化模型B.喷泉模型C.原型模型D.螺旋模型3.可行性研究的目的不包括()A.分析开发系统的必要性B.确定系统建模的方案C.分析系统风险D.确定是否值得开发系统4.可行性分析研究的费用大约是项目总经费的()。
A.2%B.8%C.20%D.50%5.在E-R 模型中,包含以下基本成分()。
A.数据、对象、实体B.控制、联系、对象C.实体、联系、属性D.实体、属性、联系6.软件需求分析产生一个重要文档是()。
A.软件维护说明书B.需求规格说明书C.可行性报告D.初步用户手册7.内聚程度较低的是()。
A.通信内聚B.过程内聚C.顺序内聚D.时间内聚8.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()A.把软件划分成模块 B确定模块之间的调用关系C.确定各个模块的功能D.设计每个模块的伪代码9.UML 语言支持的建模方式不包括有()。
A.静态建模B.动态建模C.模块化建模D.功能建模10.以下哪一项不是面向对象的特征。
()A.多态性B.继承性C.封装性D.过程调用11.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了()A.软件危机B.软件工程C.程序设计革命D.结构化程序设计12.瀑布模型的关键不足在于()A.过于简单B.不能适应需求的动态变更C.过于灵活D.各个阶段需要进行评审13.可行性研究的四大要素是()。
A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平C.经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性14.经济可行性研究的主要内容包括()A.开发过程B.开发工具C.风险分析D. 效益分析15.在需求分析过程中,分析员要从用户那里解决的最重要的问题是()。
软件工程复习

一、软件开发生命周期模型1.Code-and-fix life-cycle model:遗憾的是,许多产品都是使用"边做边改"模型来开发的。
在这种模型中,既没有规格说明,也没有经过设计,软件随着客户的需要一次又一次地不断被修改.在这个模型中,开发人员拿到项目立即根据需求编写程序,调试通过后生成软件的第一个版本。
在提供给用户使用后,如果程序出现错误,或者用户提出新的要求,开发人员重新修改代码,直到用户满意为止。
这是一种类似作坊的开发方式,对编写几百行的小程序来说还不错,但这种方法对任何规模的开发来说都是不能令人满意的,其主要问题在于:(1)缺少规划和设计环节,软件的结构随着不断的修改越来越糟,导致无法继续修改;(2)忽略需求环节,给软件开发带来很大的风险;(3)没有考虑测试和程序的可维护性,也没有任何文档,软件的维护十分困难。
2.Waterfall life-cycle model:1970年WinSTon Royce提出了著名的"瀑布模型",直到80年代早期,它一直是唯一被广泛采用的软件开发模型。
瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。
在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容。
当前活动的工作结果需要进行验证,如果验证通过,则该结果作为下一项活动的输入,继续进行下一项活动,否则返回修改。
瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。
但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:(1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;(2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;(3)早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。
软件工程期末考试资料

软件工程第一章:1.软件的组成不仅是程序、数据和文档,而且还有完成一定功能和性能所蕴含的知识和经验。
2.领域知识是基于计算机的系统的设计、软件需求获取和系统测试不可或缺的。
3.软件发展的历史给我们的启发是社会需求和硬件进步是软件技术发展的基础。
4.软件的进步和成就促进了信息社会和知识经济的发展。
5.按照应用领域、基本属性和特点研究软件有助于对软件的理解,提高了软件开发、使用和维护的针对性。
6.软件工程学科具有鲜明的工程特性。
第二章:1.面向对象方法是现代软件工程技术体系的基石,它以分类、继承、聚合、封装、多态和消息传递等贴近人类思维习惯的概念。
2.因面向对象与生俱来的自然性、直观性,以及支持软件复用、改善软件结构等许多优势,面向对象方法后来居上,迅速取代结构化方法而成为当前主流的软件开发方法学。
3.UML通过图形化的表示机制从多个侧面表示软件系统的分析和设计模型。
4.UML定义了5类图形机制:用例视图,包括用例描述和用例图;结构视图,包括视图,包括包图、类图和对象图;行为视图,包括交互图、状态图与活动图;构件视图和部署视图。
5.RUP将软件生存周期(即软件制品的进化状态)划分为初始、细化、构造、移交、生产5个阶段。
6.RUP将软件开发过程分解为业务建模、需求、设计、实现、V&V、部署、配置和变更管理、项目管理、环境9个工作流。
7.软件项目团队可利用5个阶段、9个工作流组织管理软件项目的开发活动。
RUP 过程中生成的各类制品通常以UML表示。
8.软件开发过程是基于面向对象方法学的,包括需求获取、需求分析、体系结构设计、人机交互设计、详细设计、实现、测试、维护与进化等重要的软件开发阶段。
第三章:1.软件需求是指利益相关方对目标软件系统在功能、性能和质量等方面的期望,以及对目标软件系统在运行环境、资源消耗等方面的约束。
2.软件需求可划分为功能需求、质量需求和约束性需求3种类型,其中质量需求和约束性需求统称为非功能需求。
软件工程复习资料

A、语句覆盖:选择测试用例使程序中每条语句至少被执行一次 B、判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值 C、条件覆盖:选择测试用例使每个条件都满足 D、条件组合覆盖:将所有的判定条件都组合起来执行 答案: A B
9. 以下()不属于结构化流程图
A、运行程序并分析运行结果 B、桌前检查与代码会审 C、数据流分析图 D、调用图
答案: B C D
15. 下面()属于可复用的软件级别。
A、代码的复用 B、设计结果的复用 C、分析结果的复用 D、测试信息的复用
答案: A B C D
16. 黑盒测试着重测试软件功能,下列测试法中属于黑盒测试技术的有()。
3. 面向对象方法学的出发点和基本原则是什么?
答案: 面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世 界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一 致。
3. 软件原型
答案: 软件原型是在软件系统开发过程中,可快速建立的,旨在演示目标系统主要功能的可运行的程序。
4. 继承
答案: 广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。在面向对象的软件技术中,继承是子类自动 地共享基类中定义的数据和方法的机制。
5. 有穷状态机
答案: 在软件工程领域,有穷状态机可以准确地描述一个系统,它是表达规格说明的一种形式化说明方法。一个有穷状态机包含5 个部分:状态集、输入集、由当前状态和当前输入确定下一个状态的转换函数、初始态和终态集。
A、等价划分法 B、平行运行法 C、边界值分析法 D、错误推测法
国家开放大学《软件工程》复习资料

《软件工程》复习资料一、选择题1.软件工程的研究内容具有层次化结构,最底层是质量保证层,中问层是(C),最主.层是工具层。
A过程层 B.方法层C.过程层和方法层 D.系统层2.可行性研究的四大要素是(D)。
A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平巳经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性3.针对需求不确定的软件开发,比较好的模型是(A)。
A.快速原型化模型B.瀑布模型c.软件成熟度模型。
.系统化模型4.下面的哪个选项不是软件工程的宗旨?(D)A.开发满足用户需求的软件B.研究算法C.及时交付软件D.生产无故障软件5.瀑布模型的主要特点是(A)。
A.将开发过程严格地划分为一系列有序活动B.将开发过程分解为阶段c.提供了有效的管理模式D.缺乏灵活性6.软件结构图中没有(D)元素。
A.模块B.调用参数C.返回结果D.判断7.结构化设计方法划分模块的原则是(C)A.模块扇出小于5B.模块扇人小于5c.低搞合,高内聚 D.模块深度小于78.配置视图体现了系统的实现环境,反映系统的(B)。
A.逻辑架构B.物理架构C组成结构 D.体系结构9.角色可以有四种类型:系统的使用者,硬件设备,外部系统和(D)。
A.数据库B.接口C.对象D.时间10.功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。
在面向对象方法中,由(C)实现。
A.场景描述B.活动图和1场景描述C.用例图和场景描述D.交互图和场景描述11.在分析模型内表示协调,}I顶序、事务处理以及控制其他对象的类是(A)。
A.控制类B.组件类C.主函数D.事务类12.而信息隐藏的核心内容是(C)。
A.人把数据都放在公共的区域B.数据不能被其他模块访问C.一个模块的内部信息不允许其他模块直接访问D.把信息加密,只能让有密钥的模块访问13.面向过程的方法最关心的是过程,而过程实施的对象是作为过程(A)传递的。
软件工程ppt课件完整版

修改与测试
对软件进行修改,并进行测试以确保 修改的正确性。
版本管理与发布
对修改后的软件进行版本管理,并发 布新版本。
软件演化策略与方法
增量式演化
逐步增加新功能或修改现有功能。
迭代式演化
通过不断迭代改进软件质量。
软件演化策略与方法
组件化演化
将软件拆分为独立组件进行演化。
重构
改进软件内部结构而不改变其外部行为。
处理团队冲突,化解矛盾,促进团队合作
版本控制与文档管理
使用版本控制工具(如Git) 管理项目代码和文档
建立完善的文档管理体系, 包括需求文档、设计文档、 测试文档等
制定版本控制规范,包括 分支管理、代码提交和合 并流程等
定期评审和更新文档,确 保文档与项目实际进展保 持一致
07 软件维护与演化
软件维护类型及流程
版本迁移与数据迁移
将旧版本的数据迁移到新版本,确保数据的 完整性和一致性。
持续集成与持续交付
持续集成
频繁地将代码集成到主干, 并进行自动化测试以快速发 现问题。
持续交付
在持续集成的基础上,将软 件以可发布的状态交付给用 户,以便用户能够快速获得 新功能或修复问题。
自动化测试与部署
监控与反馈
利用自动化工具进行测试和 部署,提高开发效率和质量。
软件工程的发展
软件工程经历了从程序设计、软件 工程方法、软件工程过程到软件工 程学科的逐步成熟过程。
软件工程目标与原则
软件工程的目标
在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护 性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求 的软件产品。
软件工程的原则
软件工程理论知识

软件工程第一部分传统软件开发方法1、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
2、软件危机有哪些主要表现?⑴ 软件开发成本和进度的估计很不准确。
⑵ 用户对开发的软件系统常常不满意。
⑶ 软件产品的质量往往靠不住。
⑷ 软件没有适当的文档资料,软件不可维护。
⑸软件开发成本逐年上升,软件开发生产率跟不上计算机应用。
3、软件危机包含下述两方面的问题:①如何开发软件,以满足对软件日益增长的需求;②如何维护数量不断膨胀的已有软件。
4、软件生命周期一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为软件生命周期。
5、消除软件危机的途径(1)彻底消除“软件就是程序”的错误观念。
(2)必须充分认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
6、软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把正确的管理技术和最好的技术方法结合起来,以经济地开发出高质量的软件并有效地进行维护,这就是软件工程。
7、软件工程目标和内容是什么?软件工程的目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。
软件工程的内容:研究内容包括开发技术和开发管理两个方面。
开发技术主要研究:软件开发方法,开发过程,开发工具和环境。
开发管理主要研究:软件管理学,软件经济学,软件心理学。
8、软件工程具有下述本质特性⑴软件工程关注于大型程序的构造⑵软件工程的中心课题是控制复杂性⑶软件经常变化⑷开发软件的效率非常重要⑸和谐地合作是开发软件的关键⑹软件必须有效地支持它的用户⑺软件工程师的领域知识影响其创造产品9、软件工程的7条基本原理(1)用分阶段的生命周期计划严格管理(2)坚持进行阶段评审(3)实行严格的产品控制(4)采用现代程序设计技术(5)结果应能清楚地审查(6)开发小组的人员应该少而精(7)承认不断改进软件工程实践的必要性10、面向对象方法学具有下述4个要点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件开发工程资料
在软件开发工程中,准备充足的资料是非常重要的。
有了正确的资料,开发团队可以更好地理解项目需求,准确地进行开发工作。
本文将探讨软件开发工程中需要准备的相关资料。
一、需求分析资料
在软件开发之前,需求分析是至关重要的一步。
而准备好的需求分析资料能够使得开发团队更好地理解和满足项目需求。
需求分析资料应当包括以下内容:
1. 项目需求文档:详细描述用户的需求和项目的功能要求,以便开发人员根据文档进行开发工作。
2. 用例图和流程图:可视化展示系统的各个功能和模块之间的交互关系,有助于开发人员更好地理解系统的整体架构。
二、设计资料
设计资料对于软件开发工程也同样重要。
设计资料可以确保开发的软件系统具有良好的架构和可扩展性。
以下是一些常见的设计资料:
1. 软件架构设计文档:描述软件系统的整体架构,包括模块划分、组件设计和交互流程等。
2. 数据库设计文档:定义数据库的结构和关系,包括表的字段、约束和索引等。
3. 接口设计文档:描述系统各个模块之间的接口规范,以便开发人员能够按照统一的规范进行开发工作。
三、测试资料
测试是软件开发过程中必不可少的一环。
准备充足的测试资料可以确保软件系统的质量和稳定性。
以下是一些常见的测试资料:
1. 测试用例:详细描述测试场景、输入数据和预期输出结果,以便测试人员能够按照规定的测试用例进行测试工作。
2. 测试计划和测试报告:测试计划用于规划测试工作的任务和时间安排,测试报告用于总结测试结果和问题反馈。
四、项目管理资料
在软件开发工程中,项目管理资料能够帮助项目经理进行有效的项目管控和沟通。
以下是一些常见的项目管理资料:
1. 项目计划:详细描述项目的里程碑、任务和时间安排,以便项目团队按计划进行开发工作。
2. 会议纪要:记录会议的议题、决策和行动项,供项目团队成员参考和执行。
五、其他资料
此外,还有一些其他的资料也是软件开发工程中可能用到的:
1. 第三方库文档:如果在开发过程中使用了第三方库,那么需要查阅和准备相应的文档,以便更好地理解和使用这些库。
2. 操作手册:为了方便后期的维护和支持工作,可能需要编写软件系统的操作手册,详细描述系统的安装配置和使用方法。
总结:
软件开发工程中的资料准备是一个重要的环节,它直接影响到项目的质量和进度。
充分准备好的需求分析资料、设计资料、测试资料和项目管理资料,能够帮助开发团队更好地理解项目需求,规划开发工作,并最终交付出高质量的软件系统。
同时,其他资料如第三方库文档和操作手册也是在软件开发工程中必不可少的一部分。
只有准备充足的资料,才能确保软件开发工程的顺利进行。