面向对象的方法:只使用对象和消息的方法。
面向对象的方法:一种同时使用对象、类、继承和消息的方法。
面向对象是如何实现模块独立性的,其结合和凝聚的意义是什么?
对象是由数据和可应用于该数据的操作组成的统一体,对象以数据为中心,因此操作以该数据所需的处理为中心进行设定,没有无关的操作。 因此,对象内部的各种元素相互紧密结合。 聚集性相当强,完成对象所需的要素(数据和方法)基本封装在对象内部,因此与外界的联系自然较少。 因此,对象之间的连接通常是松散的。 也就是说,面向对象并使用对象、类、继承和消息的方法使用类和继承等机制,只通过在对象之间传递消息来实现相互通信,从而实现模块的独立性。
面向对象分析设计的三种模型:
1 .对象模型:描述系统的静态结构,包括类和对象、它们的属性和操作以及它们之间的关系。
2 .动态模型:侧重于系统的控制逻辑,随时考察对象及其关系的变化,描述它们与时间序列和变化相关的状态。 包括状态图和事件跟踪图。
3 .功能模型:重点是系统内部数据的传输和处理。
面向对象方法的优点和不足:
优点:1.与人的思维方式一致2 .软件稳定性好3 .易教开发复用性好的大规模软件产品维护性好容易测试。
缺点:1.占用空间多,程序效率低2 .因为麻烦,增加了需要写更多代码的测试难度。
班级和班级的关系:
继承、多态性、关联、依赖、实现、聚合、组合。
强到弱组合聚集关联依赖。
统一建模语言UML的模型视图:1.静态图2 .动态图
统一软件开发流程RUP :面向目标软件工程的通用业务流程。
面向对象分析:
1 .用例(功能)模型)用例图、数据流图
2 .对象(静态)模型:最核心、最重要)类图、对象图
3 .动态模型:序列图、通信图、状态图、活动图
4 .物理模型:杆件图、布置图
1、需求
使用用例图说明要求。
2、分析
使用类图描述静态结构
用序列图、合作图、活动图、状态图描述动态动作
3、设计
使用类图、包来设计类的接口
4、实现
用某种现象对象语言实现班级
五、继承和交付
部件图、包、配置图
6、测试
单元测试——类图和类说明书
软件系统的三个测试阶段:
1 .开发测试:在开发过程中测试系统发现错误和缺陷。
2 .发布测试:在向用户发布系统之前,各个测试团队将测试系统的完整版本。
3 .用户测试:系统用户或潜在用户在自己的环境中测试系统。
面向对象和面向过程的软件工程之间的区别:
1 .面向过程就是分析解决问题的必要步骤,用函数一步一步地实现这些步骤。 使用时一个个依次调用即可,以算法(功能)为核心。 面向对象是将构成问题的事务分解为单个对象,创建对象的目的不是完成一个步骤,而是描述一个事物在整个解决问题的步骤中的行为方式,而不是完成一个步骤
2 .面向过程就是把每个项目分解成一个个小功能,用一个个函数来实现; 所谓面向对象,就是把事物看成是由一个个小对象构成的,或者是由一个个小部分构成的,这些对象之间的相互关系,构成了整个项目。在面向对象的思想中,万物都是由对象构成的“类”是对象的抽象或概括。
提高软件质量的主要措施:
1 .复审:软件生命周期各阶段结束前,采用一定标准对该阶段产生的软件配置成分进行严格的正式或非正式检测。
2 .审查:检查现有资料,以确定是否可以在软件生命周期的某个阶段开始或继续工作。
3 .管理复审:向开发组织或使用部门的管理人员提供项目总体情况、成本和进度等方面的情况,让他们从管理角度审查开发工作。
4 .测试:包括测试计划、测试过程和测试结果三个阶段。
文档在软件工程中的作用:
)1)提高软件开发过程的可视性
)2)提高开发效率
)3)作为开发者阶段的工作成果和结束标志
)4)记录有关开发过程的信息,使用方便,易于维护;
)5)提供软件运行、维护、培训相关资料;
)6)用户容易理解软件的功能、性能。
软件工程三要素之间的关系?
软件质量是软件工程的生命线,软件工程以质量保证为基础。
质量管理促进了过程的改进,创造了许多有效的软件开发方法和工具。
将软件项目分层的方法包括每个分层过程、方法、工具三个元素。