在一张状态图中只能有一个初态,而终态则可以没有,也可以有多个
所有的对象可以成为各种对象类,每个对象类都定义了一组 方法
通过执行对象的操作可以改变对象的属性,但它必须经过 消息 的传递
UML应用于 基于对象的面向对象的方法
用例图 从用户使用系统的角度描述系统功能的图形化表达方法
顺序图 描述了一组交互对象之间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序
面向对象的动态模型中,每张状态图表示 某一个类 的动态模型
动态模型包括事件追踪图和 状态图
对象模型的描述工具是 类图
功能模型中所有的 数据流图 往往形成一个层次结构,在这个层次结构中一个数据流图的过程可以由下一层数据流图做进一步说明
内聚性是 模块的功能强度
模块之间是 数据耦合
软件设计的基本原理 模块化
软件设计分为 概要设计和详细设计
软件编译器的体系结构适合 仓库体系结构
网站系统是一个典型的 瘦客户端/服务器结构
控制层 用于实现与实体对象相关的业务逻辑
设计模式 可以简单方便的复用已经成功的设计或体系结构设计
抽象工厂模式 用于封装具体的平台,使应用程序在不同的平台上运行
结构化软件设计方法关注系统的功能,采用 自顶向下、逐步求精 的设计过程
Jackson方法根据 数据结构 来导出程序结构
信息流分为 变换流和事务流
面向对象分析和设计活动是一个多次反复迭代的过程
面向对象设计阶段的主要内容是 系统设计和对象设计
对象的属性集合是它的特征表示
良好的设计风格就是高的编程技巧
C++是一种纯面向对象语言
第一个体现结构化编程的是 Pascal
面向对象设计的结果,实现时 只能使用面向对象语言
软件测试的目的是 尽可能多地发现软件中存在的错误
白盒测试也叫结构测试/逻辑覆盖法,用于单元测试
单元测试通常应先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试
边界值分析测试属于黑盒测试
集成测试由 软件的编程人员 承担,以提高集成测试的效果
黑盒测试方法根据 软件要完成的功能 设计测试样例
集成测试分为 渐进式测试方法和非渐进式测试方法
代码行技术是简单的定量估算软件规模的方法
主程序员组的关键特性:专业化、层次性
风险特点:不确定性、损失
文档是影响软件可维护性的决定因素
维护工作的主要目标是提高软件的可维护性,降低 维护的工作量
度量 的作用是有效、定量地进行管理,把握软件工程过程的实际情况和产品质量
LOC和FP技术对于分解所需要的 详细程度 不同
风险收集不属于风险管理的过程
人们常用的评价软件质量的4个因素:可维护性、可靠性、可理解性、可用性
可用性≠易用性
软件增加新功能,必须进行 完善性
软件维护的副作用:因修改软件而造成的错误
软件文档影响软件的 可维护性
CMM表示 软件过程成熟度模型