如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
状态图与活动图的区别:(状态图和活动图都是对系统的动态行为建模)1.两者描述的重点不同:状态图描述的是对象的状态及状态之间的转移,而活动图描述的是从活动到活动的控制流;2.使用的场合不同:如果是为了显示一个对象在其生命周期内的行为则使用状态图,如果目的是为了分析用例,或理解设计多个用例的工作流程,或处理多线程应用等则使用活动图好;如果要显示多个对象之间的交互情况,使用状态图或活动图都不合适,这时可用顺序图活协作图描述。抽象类和接口的区别:抽象类中可有数据成员有些方法可以有实现,接口中没有数据成员所有方法都可以实现边界类:位于系统与外界的交界处,是直接与外界设备,外部系统交互的类控制类:协调和控制其他工作的类实体类:保存要持久保存的类聚集与组合的区别:聚集松散组合紧密,一个部分聚集对象可以属于多个整体,一个部分组合对象只能属于这个整体,聚集的对象生存期可不同组合需相同控制软件复杂性的基本方法:分解;抽象;模块化;信息隐蔽(封装)RUP软件开发经验:1迭代开发:迭代开发通过可验证的方法来帮助减少风险降低项目风险系数。2.管理需求:描述了如何提取组织系统的功能和约束条件并将其文档化RUP中采用用例分析来捕获需求并由他们来驱动设计实现和测试。3.使用基于构建的体系结构:这个方法是重用成为可能,RUP描述了如何设计一个有弹性的能适应变化的直观上易于理解的有助于软件重用的软件体系结构。4.可视化软件建模:可更好的理解问题加强人员之间的沟通更早发现错误或疏漏的地方获取设计结果以及为代码的生成提供依据。5.验证软件质量:内建于过程中的所有活动可以及早发现软件中存在的缺陷。6.控制软件变更:隔离来自其他工作弓箭的变更以此为每个开发人员建立安全的工作空间保证了每个修改是可接受的可被跟踪的。用例图:是现实一组用例参与者以及它们之间关系的图软件工程方法学三要素:方法(技术怎么做)工具(环境case)过程(任务的框架)寻找类的方法:从用例中寻找;CRC分析法;根据类的类型4+1图:用例图:系统功能性需求(1核心2用例图:交互活动3最终用户是分析员);逻辑视图:概念设计及结构(1类图2动态交互状态活动3分析员设计师);实现图:代码结构(1构件图2编程人员);部署图:硬件借点物理结构(1部署图2系统工程师);进程试图:并发同步(1类图2交互状态活动3系统集成人员)类之间的关系:关联(模型元素间的一种语义联系是对具有共同的结构特性行为特性关系和语义的链的描述);聚集(一种特殊的关联表示类之间整体与部分的联系);组合(一种特殊的关联表示类之间整体与部分的联系但组合关系中的整体与部分具有同样的生存期);泛化(一般元素和特殊元素之间的分类联系);依赖(一个类影响另一个类)面向对象优点:稳定性高(较小的需求变化不会影响体系结构)易于理解(现实世界映射为模型实体-对象,实体间关系-对象间关系,实体间作用-消息)适应性好(大中型软件开发)可靠性高,阶段间过度平滑(dfd-msp-ns,类-类)UML的主要特点:统一的标准。面向对象。可视化、表示能力强大。独立于过程。概念明确,建模表示法简洁,图形结构清晰,容易掌握和使用。UML构成图:基本构造块(事物,关系,图),规则,公共机制(规范说明,修饰,通用划分,扩展机制);扩展机制包括板型,标记值,约束脚本:贯穿用例的一条单一路径用例进行需求分析时的一些特点:用例从使用系统的角度描述系统中的信息,即站在系统外部观察系统功能,而不是考虑系统内部对该功能的具体实现方式。用例描述了用户提出的一些可见需求,对应一个具体的用户目标。使用用例可以促进与用户沟通,理解正确的需求,同时也可以用来划分系统与外部实体的界限,是OO系统设计的起点,是类、对象、操作的来源。用例是对系统行为的动态描述,属于UML的动态建模部分。UML中的建模机制包括静态建模和动态建模两部分,其中静态建模机制包括类图、对象图、构件图和部署图;动态建模机制包括用例图、顺序图、协作图、状态图和活动图。包含与扩展相同点:以来关系的版型包含用例和扩展用例都是基本用例的部分扩展用例可扩展多个基本用例包含用例可能被多个用例包含包含与扩展的不同:箭头指向不同;基本用例执行是必须执行包含用例,基本用例执行时可以执行也可不执行扩展用例OO设计原则:开闭原则(指一个模块在扩展性方面应该是开放的而在更改性方面应该是封闭的)Liskov替换原则(子类可以替换父类出现在父类能出现的任何地方)依赖倒置原则(依赖关系应该是尽量依赖接口而不是依赖于具体类)接口分离原则(一个类给多个用户使用,可以为每个用户创建一个接口,这个类实现所有这些接口,而不要创建一个接口包含所有用户类需要的方法)类图和对象图