对Struts应用进行需求分析和设计的方法,基本上包括以下几个步骤:
1. 收集和分析应用需求
a. 在本例中采用了UML用例,感觉这样设计思路非常清晰,但是不知道如果放在我面前一个实际应用,然我自己去分析,能不能做到。总之觉得有了用例文档后,写后面的代码简直是在搭积木一样简单了。
b. 用例文档的主要内容有:①前置条件;②主事件流;③其他时间流;④后置条件
2. 设计数据库,这个活应该比较重要,我觉得它应该算是决定程序性能的因素之一了!
3. 设计客户界面,这些就交给美工啦哈哈
4. 设计ActionForm
5. 设计Action
6. 设计应用的业务逻辑组件
下面是些用例文档的基本模板
文档模版:
系统分析报告
1. 概述
1.1 项目目的
1.2 项目目标
1.3 所需特性
2. 系统的功能设计
2.1系统的参与者,可采用下面的表格形式列出参与者
参与者 | 定义 |
普通用户 | 浏览知识库系统中的内容,提交自己感兴趣的知识 |
管理员 | 对文章的内容进行审核,添加文章到知识库 |
…… | …… |
…… | …… |
2.2 事件清单,可采用下面的表格形式列出事件
主语 | 动词 | 宾语 | 频率 | 到达方式 | 响应 |
普通用户 | 浏览 | 文章 | 1000/天 | 阵发性 | 浏览器显示用户选中的文章 |
管理员 | 添加 | 文章 | 1/天 | 周期性 | 在数据库中存放该文章的信息 |
…… | …… | …… | …… | …… | …… |
…… | …… | …… | …… | …… | …… |
2.3用例图
用例图 |
2.4 用例描述
每个用例应有如下描述:
用例名称:浏览文章
用例描述:该用例负责完成对用户请求文章的显示
用例作者:×××
参与者(Actor):普通用户
假设:用户使用标准浏览器……
前置条件:
后置条件:
主路径:
备用路径:
异常路径:
2.5 主要路径的任务步骤:
…………
3. 系统体系结构
组成部分 | 实现 |
硬件:客户机 | 基于P4 1.8G的客户机,128M内存 …… |
硬件:服务器 | 基于双CPU的Xeon 3.2G 1G内存 …… |
软件:操作系统(客户机) | Windows 2000 Professional |
软件:操作系统(服务器) | Windows 2000 Server |
软件:应用程序(客户机) | 任意浏览器 |
软件:数据库服务器 | Microsoft SQL Server 2000 |
软件:Web服务器 | Microsoft IIS或Apache Tomcat …… |
协议:网络 | TCP/IP |
协议:数据库 | JDBC-ODBC桥 |
…… | …… |
…… | …… |
组件图 部署图 |
4. 项目规划
第1次迭代的产品所具有的功能及时间安排;
第2次迭代的产品增加的功能及时间安排;;
第3次迭代的产品增加的功能及时间安排;;
…………
模版中的概念解释:
1.1 项目目的:进行该项目的业务原因(如实现知识的共享等)。
1.2 项目目标:该项目在业务上需要达到的目标。该项目在最低限度上会给组织带来何种利益(如实现了知识的系统化管理,方便知识的查找,利于自我学习等)。
1.3 所需特性:项目必须支持的特性(如文章的浏览、添加,用户的管理等)。
2.1 参与者:以某种形式来激励系统,并使之发挥作用的实体,通常是人,但也可能是其他系统、定时器、时钟、或硬件设备。参与者对项目来说是必需的,识别出参与者之后,才能更好的理解项目必须支持的事件。识别参与者是实现用例图中的Actor的重要步骤。可通过下面的问题来找到相应的参与者:
l 谁/什么会对这个系统感兴趣?
l 谁/什么会想改变系统中的数据?
l 谁/什么需要与系统建立接口?
l 谁/什么需要从系统获取信息?
2.2 事件清单:列出系统必须注意(或者说必须处理)的事件,他们会引起系统的反应。同时还应该指定事件的位置、发生的频率、到达的方式。
事件的一般格式:主语+动词+宾语
主语是前面定义过的参与者,动词是给出需要进行的操作,宾语是由动词定义的操作的对象。
2.3~2.5 系统用例:这部分中的用例描述是整个文档中最重要的内容,因此要详细描述,尤其是每个用例的主路径、备用路径和异常路径的详细操作步骤。
用例描述:对用例的角色、目的的简要描述
前置条件:执行用例之前系统必须要处于的状态,或者要满足的条件
后置条件:用例一旦执行后系统所处的状态
主路径:描述该用例的基本流程,指每个流程都“正常”运作时所发生的事情,没有任何备选流和异常流,而只有最有可能发生的事件流
备用路径:表示这个行为或流程是可选的或备选的,并不是总要总要执行它们
异常路径:表示发生了某些非正常的事情所要执行的流程
例如:对于用例描述,篇幅有限,我在这里只列了后台管理系统中的知识内容发布这个用例的描述。如下
用例名称:知识内容发布 |
用例标识号:202 |
参与者:管理员 |
用例描述: 管理员用来上传相应目录的内容,公告最终显示在知识库的响应目录上。 |
前置条件: 管理员已经登陆知识库管理系统 |
主路径: 1.管理员选择相应的目录 2.管理员鼠标点击“增加文章”按钮 3.系统出现一个文本框和附件上传按钮 4.管理员可以在文本框内填写相应的内容 5.管理员可以点击上传文件的浏览按钮,上传相应的附件,也可以不上传附件 6.管理员编辑完文本框和选择完附件,按“提交”按钮,数据库知识表和附件表根据文本框的内容被修改 7.用例终止 |
备用路径: 1.在按“提交”按钮之前,管理员随时可以按“返回”按钮,文本框内容的任何修改都不会影响数据库内知识表的内容 |
异常路径: 1.提示错误信息,管理员确认 2.返回到管理系统主页面 |
后置条件: 1.知识库内相应的目录内添加了文章的信息 |
注释:无 |