详细设计阶段工作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计阶段主要工作及思路
一、主要工作:
a)类及类中所包含的方法识别。
b)数据库表设计
c)类间关系识别(可选,最好能用时序图表示)
二、成果物
a)JavaDoc文档
b)表结构
三、类、方法设计:整个系统采用分层方式设计,主要分为视图层、控制层、业务层、持久
层,每层设计方式如下:
a)视图层:
i.JSP页面:直接使用静态页面。
ii.ActionForm:通常每个业务功能对应一个Form
b)控制层:
i.职责:
1.负责截获用户请求
2.调用业务层方法
3.进行转发。
ii.识别方式:
1.类识别:通常每个业务功能(比如部门管理是一个业务功能,岗位管理又
是一个业务功能)设计成一个控制类(XXXAction)
2.方法识别:根据静态页面来进行识别,通常页面上的每个请求对应Action
中的一个请求方法。如果只是进行单独的页面转发可以不识别出方法,但
最好的方式也是识别出方法,这样有利于后期权限的控制。
c)业务层:
i.职责:进行系统业务功能逻辑的处理,异常的抛出。
ii.识别方式:
1.类识别:通常每个业务功能(比如部门管理是一个业务功能,岗位管理又
是一个业务功能)设计成一个业务类(XXXService),在设计阶段做成接
口即可。
2.业务方法识别::分析用例规约基本流和备选流中的描述,如果这个操作
需要和数据库进行交互,通常对应一个业务层方法。
3.注意:
a)方法应该属于哪个Service
b)方法的复用。
d)持久层:
i.职责:负责和数据库进行打交道,里面只应包括数据库操作的方法。
ii.识别方式:
1.类识别:通常每个对象映射类(比如部门,岗位)设计成一个持久化类
(XXXDAO),在设计阶段做成接口即可。
2.方法识别:
a)新建一个对象
b)修改对象ID修改一个对象
c)根据ID删除一个对象。
d)根据对象ID查询一个对象的具体信息。
e)查询满足条件的所有对象。
f)查询满足条件的第几页对象。
g)多表查询的方法。
3.注意:
a)方法应该属于哪个DAO
b)方法的复用。
e)对象映射类:代表系统中的每个实体对象,比如员工类、部门类等等。
i.职责:用来在各层之间进行数据传递。
ii.识别方式:
1.类识别:分析用例规约基本流和备选流描述中的名词,去掉重复的,去掉
属性后,去掉Actor,此时剩下的差不多为对象映射类。
2.方法识别:只包括get/set方法。
3.注意:映射类之间的关系。
四、数据库设计
a)通常每个对象映射类对应一张数据库表。
b)如果两个对象映射类之间存在1:多或多:多的关系,则识别出一张中间关系表。
c)通常每个表要有一个单独的对用户无实际意义的主键,表示对象的ID。如员工表
中处理员工编号这个对用户有实际意义的属性外,还应该有一个员工ID这个字段。
d)做删除功能时,如果某个表中有可能被其他表所引用,通常所做操作是修改,则需
要在表中添加状态字段。