1.7.3面向对象设计方法
面向对象的类设计相关原则:
1. 开闭原则(the Open Closed Principle OCP)
一个模块在扩展性方面应该是开放的而在更改性方面应该是封闭的。因此在进行面向对象设计时要尽量考虑接口封装机制、抽象机制和多态技术。该原则同样适合于非面向对象设计的方法,是软件工程设计方法的重要原则之一。
2. 替换原则 (the Liskov Substitution Principle LSP)
子类应当可以替换父类并出现在父类能够出现的任何地方。这个原则是Liskov于1987年提出的设计原则。它同样可以从Bertrand Meyer 的DBC (Design by Contract) 的概念推出。
3. 依赖原则 (the Dependency Inversion Principle DIP)
在进行业务设计时,与特定业务有关的依赖关系应该尽量依赖接口和抽象类,而不是依赖于具体类。具体类只负责相关业务的实现,修改具体类不影响与特定业务有关的依赖关系。
为此,我们在进行业务设计时,应尽量在接口或抽象类中定义业务方法的原型,并通过具体的实现类(子类)来实现该业务方法,业务方法内容的修改将不会影响到运行时业务方法的调用。
4. 接口分离原则(the Interface Segregation Principle ISP)
采用多个与特定客户类有关的接口比采用一个通用的涵盖多个业务方法的接口要好。
ISP原则是另外一个支持诸如COM等组件化的使能技术。缺少ISP,组件、类的可用性和移植性将大打折扣。
这个原则的本质相当简单。如果你拥有一个针对多个客户的类,为每一个客户创建特定业务接口,然后使该客户类继承多个特定业务接口将比直接加载客户所需所有方法有效。
例题:
国家标准《计算机软件产品开发文件编制指南GB8567-88》中规定,在一项软件开发过程中,一般来说应该产生14种文件,其中管理人员主要使用的有A 、B 、C 、开发进度月报、项目开发总结报告。开发人员主要使用的有A 、B 、D 、数据要求说明书、概要设计说明书、详细设计说明书、数据库设计说明书、测试计划和E 。维护人员主要使用的有设计说明书、E和C 。
A~E:①软件需求说明书 ②项目开发计划 ③可行性研究报告
④模块开发卷宗 ⑤测试分析报告 ⑥操作手册
⑦用户手册
[分析]
本题综合考查了软件生命周期各个阶段的相关知识。
大家在复习软件工程这部分内容的时候,除了对软件生命周期的每个阶段(如需求分析、软件设计、软件维护等)的相关知识应该仔细复习以外,对整个软件生命周期各阶段还应有个总体的认识和把握。前面在知识要点中有比较表对各阶段的任务、参与人员和产生文档做出了归纳和总结,大家复习的时候可以好好参考一下。
[答案]
A:② B:③ C:④ D:① E:⑤
同步辅导中的软件工程部分的题目很好,大家可以做一下,题目类型和软考类似;
1.8软件质量(重点)
软件质量是指反映软件系统或软件产品满足规定或隐含需求的能力的特征和特性全体。下面从管理的角度列出了影响软件质量的主要因素。
|
质量因素 |
定义 | |
|
产品运行 |
正确性 |
系统满足规格说明和用户目标的程序,即在预定环境下能正确的完成预期功能的程序 |
|
健壮性 |
在硬件发生故障、输入的数据无效或操作错误等意外环境下,系统能做出适当响应的程序 | |
|
效率 |
为了完成预定的功能,系统需要的计算资源的多少 | |
|
完整性(安全性) |
对未经授权的人使用软件或数据的企图,系统能够控制(禁止)的程序 | |
|
可用性 |
系统在完成预定应该完成的功能时令人满意的程度 | |
|
风险 |
按预定的成本和进度将系统开发处理,并且为用户满意的概率 | |
|
产品修改 |
可理解性 |
理解和使用该系统的容易程度 |
|
可维修性 |
诊断和改正在运行现场发现的错误所需要的工作量的多少 | |
|
灵活性(适应性) |
修改或改进正在运行的系统需要的工作量的多少 | |
|
可测试性 |
软件容易测试的程度 | |
|
产品转移 |
可移植性 |
把程序从一种硬件配置和(或)软件系统环境转移到另一种配置和环境时,需要的工作量多少 |
|
可再用性 |
在其他应用中该程序可以被再次使用的程度(或范围) | |
|
互运行性 |
把该系统和另一个系统结合起来需要的工作量的多少 |
| 广告合作:400-664-0084 全国热线:400-664-0084 Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号 珠峰网 版权所有 All Rights Reserved
|