定义系统职责范围和边界,探讨问题的初步解决方案,进行可行性研究和制订资源,进度预算,为后期开发工作奠定良好基础。Р动态行?为模型Р用户界?面需求Р识别对象?候选类Р标示属性?和行为Р确定类?间关系Р动态行?为模型Р用户界?面需求Р识别对象?候选类Р标示属性?和行为Р确定类?间关系Р需求分析Р面向对象分析Р需求分析Р第五章面向对象软件开发过程Р动态行?为模型Р用户界?面需求Р识别对象?候选类Р标示属性?和行为Р确定类?间关系Р动态行?为模型Р用户界?面需求Р识别对象?候选类Р标示属性?和行为Р确定类?间关系Р需求分析Р面向对象分析Р识别对象候选类Р第五章面向对象软件开发过程Р在问题陈述和用例模型基础上来进行对象提取,关注具有以下特征的一些事物:? 行为和动作的主体? 相互之间密切联系的一组数据及其操作Р找到候选类,在深入认知的过程中去粗取精、去伪存真,最终得到所有类Р动态行?为模型Р用户界?面需求Р标示属性?和行为Р确定类?间关系Р动态行?为模型Р用户界?面需求Р标识属性?和行为Р确定类?间关系Р需求分析Р识别对象?候选类Р面向对象分析Р标识属性和行为Р第五章面向对象软件开发过程Р软件的功能被分解为一系列责任分配给各个类,每个类都有一定的职责,体现在类方法上及状态信息上,明确类职责的过程就是寻找类的属性和方法的过程,属性可以从问题陈述和用例描述中抽取,或通过对类性质的理解加以辨认;行为可从对系统的处理叙述中获得,即可将动词标识的动作作为候选行为。Р确定类职责应该遵循下述的4条原则:?均匀分配所有职责到每个类,避免出现某些类的职责过多,而另一些类的职责过少的现象。?尽可能地抽象描述类的每个职责,一般性的职责应该放置在较高层次的类中描述。?一个客观事物的信息应该放置在一个类中,属性记录的信息与相关的行为应该位于同一个类中,这是面向对象封装性特征的具体体现。?在相关类之间共享职责。