1.软件设计的任务与目标
软件设计的任务:根据 SRS 提出的系统目标,设计出软件系统的体系结构、接口、数据结构和处理流程,形成软件的具体实现方案,并撰写 SDS。
软件设计目标:正确性、健壮性、灵活性、可重用性、高效性
1、正确性:满足应用程序的需求。
2、健壮性:指软件对于规范要求以外的输入情况的处理能力,即在异常情况下,软件
能够正常运行的能力。
3、灵活性:允许代码修改平稳地发生,而不会波及到很多其他的模块。
4、可重用性:代码可重复使用。
5、高效性:一般指两个方面,执行效率,以及存储效率。
良好设计的特征:可扩展性、灵活性、可插入性
1、可扩展性:新功能容易加入,而且不会影响已有功能,即不“僵硬”
2、灵活性:修改一个地方,不会影响其他,即不“脆弱”
3、可插入性:用一个容易替换另一个类,只要它们实现相同接口即可,即低“黏度”
面向对象的三大特征:继承性、封装性、多态性
1、继承性:特殊类的对象具有其一般类的对象的全部属性和行为,即称特殊类对一般
类的继承。
2、封装性:把对象的属性和行为组合成为一个独立的单位或部件,并尽可能隐蔽对象
的内
部细节,而只保留必要的对外接口,使之与外部发生联系。
3、多态性:是指不同类型的对象接收相同的消息时,产生不同的行为
2.软件体系结构的内涵与主要类型
一个系统的高层次的组织结构,表现为系统的组件、组