- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
考试题型:选择15道,判断15道,大题20分,简答50分,答题请简明扼要。
一、软件工程及面向对象技术、RUP概述
软件生命周期的主要阶段
? 需求分析(Requirement Analysis)
? 软件设计(Software Design)
? 编码(Coding/Programming)
? 测试/调试(Testing/Debug)
? 运行/维护(Running/Maintenance)
几种经典的软件过程模型及其相应的特点
从项目的需求定义情况、项目规模和复杂程度以及管理、控制的模式来看,大致可分为:
– 线性模型
? 瀑布模型 Waterfall model,也称为线性顺序模型或典型的生命周期模型
特点:a软件开发各阶段严格按照顺序进行,前一阶段的任务没有完成,不能进入下一阶段
b每一阶段的工作成果必须经过评审,确认无误,才能作为下一阶段的输入和依据
c每一阶段结束时要求交出规定的软件文档资料
缺点:a缺乏灵活性
b对软件开发过于理想化,如对系统的需求分析
适用范围:a适用于小型项目
b要求在项目开始时就明确需求。
? 快速应用开发(RAD)模型
瀑布模型的高速变种,强调在短期内开发软件
强调重用在以前项目中开发过和测试过的构件
特点:
a 开发速度快
b 适用于在开发过程之前就充分理解需求的情况
c 需要有足够的人力资源以建立相应的RAD小组
d RAD不适合技术风险很高或系统难以模块化的情况
– 原型模型
特点:
a 循环模式(Circulation)
b 引入用户评价
c 逐步求精
– 演化模型
a 优点
– 便于开发人员和用户之间的交流沟通
– 开发过程变得简单、灵活
– 可以吸引客户,抢占市场(慎用)
b 缺点
– 要求开发团队有较高的原型开发能力,如果团队经验不足,可能会影响原型的质量
– 没有考虑软件的整体质量和可维护性
? 增量模型
a 优点:
– 能够明确需求,可以实施较好的风险管理
– 人员分配灵活,项目开始时不用投入大量人力资源,当核心产品很受欢迎时,可增加人力实现下一个增量
b 缺点
– 至始至终都必须和客户沟通,直至完成最终版本
– 只适用于大型系统,对小系统划分小的功能增量很困难
? 螺旋模型
a 优点
– 对于大型系统来说,这个模型是一个很好的方法,
开发者和客户能够较好地对待和理解每一个演化层
次上的风险
b 缺点
– 需要相当的风险评估技术
– 潜在的风险将导致问题的发生
? 基于构件的开发模型
a 优点
– 构件可复用,提高了开发效率
– 采用了面向对象的技术
b 缺点
– 过分依赖于构件,构件库的质量影响着产品质量
面向对象的基本建模原则
– 抽象
– 封装
– 继承
– 分类
– 关联
面向对象分析分大致过程
? 描述需求
? 识别潜在对象
? 筛选对象
? 对象的命名
? 识别对象的属性
? 识别对象的行为
? 识别对象所属的类
? 定义类的结构
面向对象程序设计语言
? Simula,1967
? Smalltalk,20世纪60年代
? C++
优点
– 可在操作系统的任何层次上作任何事情
– 可能是现有的速度最快的面向对象语言
– C++编译器十分流行,程序员很多
缺点
– 指针的大量使用难以保证软件在运行时的安全性
? Java
特点:
– 平台无关性,可移植性高
– 垃圾回收机制
– 没有指针
? C#
? Ada
RUP的基本概念、基本特征以及裁剪
——基本概念:A Process defines who is doing what when and how to reach a certain goal.
– (软件过程描述了什么时候,什么人,做什么事,以及怎样实现某一特定的目标)
Rational Unified Process
是一种软件的开发过程,是将用户需求转化为软件系统所需的活动的集合。是一个通用的过程框架。
——基本特征:
? 用例驱动
采用用例来捕获对目标系统的功能需求
采用用例来驱动软件的整个开发过程,保证需求的可跟踪性,确保系统所有功能均被实现。
? 以软件体系结构为中心
软件体系结构刻画了系统的整体设计,它去掉了细节部分,突出了系统的重要特征
在开发过程的早期形成良好的软件体系结构,有利于对系统的理解、支持重用和有效的组织软件开发
在后续阶段中对已形成的体系结构框架进行不断细化,最终实现整个系统。
? 受控的迭代式增量开发
将软件开发过程分为一系列小的迭代过程,在每个迭代过程中逐步增加信息、进行细化
根据具体情况决定迭代的次数、每次迭代延续的时间以及迭代工作流
每次迭代都选择目前对风险影响最大的用例进行,以分解和降低风险。
RUP与UML的关系
要实施RUP,应该用UML统一建模
您可能关注的文档
- SpringSide_3开发Web项目的全过程.doc
- SpringSide+3.1.4.3项目开发全过程.doc
- spring笔记总结_sdh.doc
- spss实验报告6.doc
- SPTool图形化信号处理工具的使用简介.doc
- SQL2008_综合实验.doc
- SQL 2005教学大纲(10-11).doc
- SQL Server 2005实现负载均衡.doc
- SQL Server视图.doc
- SQL及应用程序优化_SQL及应用程序优化培训.doc
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)