欢迎来到天天文库
浏览记录
ID:42134904
大小:447.50 KB
页数:30页
时间:2019-09-08
《1第一章 面向对象软件工程概述》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一章面向对象软件工程概述韩格2011年3月提纲1.1面向对象概述1.2面向对象软件开发模型1.3面向对象开发的主要阶段1.4软件质量和风险管理1.1面向对象概述(1)面向对象基本着眼点是构成客观世界的那些成分—对象从结构组织的角度去模拟客观世界的一种思维方法一种方法学,要求从现实世界中客观存在的事物(即对象)出发来构造软件系统面向对象分析(OOA,ObjectOrientedAnalysis)面向对象设计(OOD,ObjectOrientedDesign)面向对象编程(OOP,ObjectOrientedProgramming)1.1面向对象
2、概述(2)类具有相同或相似性质的对象的抽象对象的抽象化是类,类的具体化就是对象每个对象都属于一个类类描述了对象内部是如何构造的类具有属性和方法:属性——对象的数据和状态的抽象方法——对象的行为的抽象实例实例——从类创建的一个对象(对象=实例)intNumber1;intNumber2;stringName;ClockTimemyTime;基本类用户自定义类1.1面向对象概述(3)方法类中功能操作的实现过程包括:方法名、参数、方法体消息对象之间进行通信的结构包括:发送消息的对象名、方法名、接受消息的对象名事件一种特殊的消息、特定类的某些方法例如:
3、C#.net下button类的click事件1.1面向对象概述(4)面向对象的基本特征封装按照定义的访问权限,显式地分开对象内的操作与数据,并将操作和数据集成在一起减少程序间相互依赖性,提高软件的可维护性属性方法1.1面向对象概述(5)继承在已存在的类的基础上加入若干新的内容,使之生成新类的过程公共的特性能够共享,提高软件的复用父类子类1.1面向对象概述(6)多态相同的方法或事件可作用于存在继承关系的对象上并获得不同的结果每个对象以适合自身的方式去响应共同的消息,提高软件的可替换性和可扩充性1.1面向对象概述(7)面向对象VS面向过程事物事件泛
4、化非自顶向下请求服务求解步骤的行为细化自顶向下调用服务描述求解步骤面向对象主要优点与人类习惯的思维方法一致可重用性好可维护性好易开发大型软件产品1.2面向对象软件开发模型1.1面向对象概述1.2面向对象软件开发模型1.3面向对象开发的主要阶段1.4软件质量和风险管理1.2面向对象软件开发模型(1)瀑布模型经典的、传统的、自上而下的模型相互衔接固定的阶段:计划、需求分析、设计、实现、测试和维护迭代增量模型面向对象的、迭代的、递增的模型若干次动态变化地完成全部或主要软件过程1.2面向对象软件开发模型(2)瀑布模型与迭代增量模型瀑布开发模型迭代增量开
5、发模型30%20%20%10%10%10%1.2面向对象软件开发模型(3)迭代增量模型图优点:更适合面向对象软件开发允许需求的变化避免在项目的尾声进行大规模集成能够更好的利用人力资源企业是否应该严格按照增量迭代模型进行开发?1.3面向对象开发的主要阶段1.1面向对象概述1.2面向对象软件开发模型1.3面向对象开发的主要阶段1.4软件质量和风险管理1.3面向对象开发的主要阶段(1)面向对象软件需求分析关于系统将要做什么工作的一段描述,目的是彻底解决客户的问题确定功能性需求和非功能性需求需求收集技术:面谈和观察如何区分功能性需求和非功能性需求?1.
6、3面向对象开发的主要阶段(2)面谈和观察头脑风暴(开发人员、领域专家、客户)好的问题尽量是精炼的一两句话宽泛的问题应该划分成若干子问题尽量避免使用专业术语提问观察用户现有软件系统快速开发用户界面并及时获得反馈1.3面向对象开发的主要阶段(3)面向对象软件设计阶段:实现软件编码之前人员:软件构架师、软件设计师目的:可维护性,可复用性,可扩展性技术:RUP和UML①RUP(RationalUnifiedProcess,统一软件过程)一种面向对象软件开发的方法论②UML(UnifiedModelingLanguage,统一建模语言)一种对软件密集系统
7、进行可视化的建模语言1.3面向对象开发的主要阶段(4)UML的起源90年代初期,建模语言繁多、复杂、表达能力差90年代中期,建模语言趋向成熟Booch首次提出“面向对象软件工程”的概念Rumbaugh提出了“面向对象的建模技术方法”Jacobson引入面向用例的方法BoochJacobsonRumbaugh面向对象的、可视化的、文档化的标准语UML1.3面向对象开发的主要阶段(5)UML主要特点图形化的方式描述软件设计专注于软件的模型和结构,而不是语言和算法适用于数据、业务、对象、组件建模贯穿迭代开发周期的每一个阶段UML类图+UML开发工具程
8、序源代码1.3面向对象开发的主要阶段(6)UML包括九种图:类图、对象图、构件图、部署图、用例图、活动图、状态图、序列图、协作图名称描述类图(Clas
此文档下载收益归作者所有