西门子TP900触摸屏
并确定项目的边界;细化阶段的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中*高风险的元素;在构建阶段,所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试;交付阶段的重点是确保软件对*终用户是可用的。
RUP中有9个核心工作流,其中前6个(业务建模、需求分析、设计、实现、测试、发布)核心过程工作流,后3个(配置和变更管理、项目管理、环境)为核心支持工作流。从RUP的核心工作流的构成可以看到,除了业务建模,RUP的工作任务和瀑布过程模型的差异不大,说明RUP更强调以(现实系统的)的业务分析作为用户需求的主要收集来源,这在管理信息系统之类的软件项目中尤为重要。
以现实系统分析作为需求分析的基础,是RUP过程与其他过程模型的显著不同。本书结合瀑布过程模型和RUP过程,设计了适用于管理信息系统之类软件项目的开发过程模型(具体见1.6节),设计的过程模型具有方便实用、各阶段模型衔接性好的特点。开发人员或企业也可以此过程模型为基础,设计适用于自身和特定项目的软件开发过程。
1.4 软件企业过程能力评价模型
软件开发团队通常需要对过程模业能够对项目活动进行定量估算、控制,能够按时按成本按质量地保证项目开发。
第五级:优化级。通过定量的反馈,进行不断的过程改进,这些反馈来自于过程或通过测试新的想法和技术而得到。本级包含了第四级的所有特征。拥有第五级能力的企业能够将新的技术、方法、工具无缝嵌入到企业标准中,企业能够很好地适结构化方法是一种传统的软件开发方法,它是由结构化分析、结构化设计和结构化编程三部
而成的。结构化思想强调以数据为中心,自顶向下、逐步细化进行问题的求解(或项目的开发)。结构化方法*先应用在编码实现阶段(结构化实现,StructuredProgramming,SP),并逐步向设计阶段(结构化设计,StructuredDesign,SD)、需求分析阶段(结构化分析,Structured Analysis,SA)扩展。
结构化方法学是一个以数据为中心的思想体系,它的基本要点是自顶向下、逐步求精、模块化设计、结构化编码。通过把一个复杂问题的求解过程分阶段进行,这种分解是自顶向下,逐层分解,使得每个阶段处理的问题都控制在人们容易理解和处面向对象方法是近20年来出现并繁荣的一种新的软件开发方法,它是由面向对象分析(Object-OrientedAnalysis,OOA)、面向对象设计(Object-OrientedDesign,OOD)和面向对象编程(Object-Oriented Programming,OOP)三部分有机组合而成的。
和结构化方法一样,面向对象方法也是*先应用在编码实现阶段,并逐步向设计阶段、需求分析阶段扩展。正如我们所知的一样,现实世界是由对象来构成的。面向对象方法主张从客观世界固有的事物出发来构造系统,提倡用人类在现实生活中常用的思维方法来认识、理解和描述客观事物,强调*终建立的系统能够映射问题域,也就是说,系统中的对象以及对象之间的关系能够如实地反映问题域中固有事物及其关系。
面向对象的基本概念包括对象、类、消息等。
对象:对象是要研究的任何事物。从一本书到一家图书馆,单的整数到整数列庞大
杂的自动化工厂、航天飞机都可看作对象,它不仅能表示有形的实体,也能表示无形的(抽象的)规则、计划或事件。对象由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)构成一独立整体。从程序设计者来看,对象是一个程序模块,从用户来看,对象为他们提供所希望的行为。在对内的操作通常称为方法。一个对象请求另一对象为其服务的方式是通过发送消息。
类:类是对象的模板。即类是对一组有相同数据和相同操作的对象的定义,一个类所包含的方法和数据描述一组对象的共同行为和属性。类是在对象之上的抽象,对象则是类的具体化,是类的实例。类可有其子类,也可有其他类,形成类层次结构。
消息:消息是对象之间进行通信的一种规格说明,一般由三部分组成:接收消息的对象、消息名及实际变元。印方法会完全不同。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给通用消息以不同的响应。在OOP中可通过在派生类中重定义基类函数(定义为重载函数或虚函数)来实现多态性。
综上可知,在面向对象方法中,对象和传递消息分别表现事物及事物间相互联系的概念。类和继承是适应人们一般思维方式的描述范式,方法是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性和类的继承性。通过封装能将对象的定义和对象的实现分开,通过继承能体现类与类之间的关系,以及由此带来的动态联编和实体的多态性,从而构成了面向对象的基本特征。
面向对象思想强调以对象为中心,迭代式进行问题的求解(或项目的开发)。面向对象的封装、继承、多态特征能够很好地支持迭代式开发。在编程时,直观上看程序员编码时主要是一些类,但为什么不能称为“面向类”而称为“面向对象”开发技术?这是因为编码的各种类,假如不实例化,是不能参与到主程序中,无法提供实际的功能的。同样可以把这个思想推广到设计、分析阶