web项目开发的一般流程

yanglin 2014-04-21

1.需求确定

2.分析与设计

(1)架构分析与设计

(2)业务逻辑分析

(3)业务逻辑设计

(4)界面设计

3.开发环境搭建

4.开发-测试-开发-测试

5.文档编纂

在这里注意的是:各个阶段过程都是有文档的,需求有需求的文档,设计有设计的文档,测试也有测试的文档.

首先来看需求确定:

需求确定

通过各种手段确定系统的功能与性能

功能:用户维护、物料维护….

性能:可同时支持n个并发访问,并且响应时间不高于m毫秒…

手段:

头脑风暴(brainstorm)

会议

询问

原型–界面原型、业务原型…

本阶段是项目开发的最重要阶段

在web项目中,通常界面设计会在本阶段进行

分析与设计

一:架构分析与设计

逻辑架构

3层架构、n层架构…

MVC…

Model1orModel2

物理架构

Web服务器的分布

数据库服务器的分布

技术解决方案的确定

Java/.NET

OpenSource/商业

二.业务逻辑分析:(使用UML画出活动图啊,流程图等)

业务逻辑分析

根据需求分析业务逻辑

有哪些人会使用本系统

他们会使用本系统做什么

通常他们使用本系统的步骤是什么样的

会有哪些明显的类来支撑本系统的运行

会有哪些不同的提示会返馈给用户

本阶段与需求的确定密切相关,通常在确定需求的时候就会进行相关的分析

在此阶段可以用UML图画出高层用例-每个功能的用例-编写用例文档

三.业务逻辑设计

业务逻辑设计

根据需求的分析来确定具体的类

确定类的属性

确定类的接口(方法)

确定类之间的关系

确定用户操作流程在设计上的反映

进行数据库的设计

不同的项目步骤可能不尽相同

四.界面设计

界面设计

设计系统的界面风格

颜色、style

设计系统的具体“模拟”界面

能够从头走到尾

方便进行需求的确定

方便JSP程序员的开发

开发环境搭建:

开发环境搭建

开发工具的确定

配置管理工具的确定

测试工具的确定

文件服务器/配置服务器等的确定

开发-测试-开发-测试

开发-测试-开发-测试

按照设计进行开发

迅速开发原型

进行迭代开发

提早进行测试

单元测试(白盒测试)就是知道代码,知道如何实现的人进行的测试

黑盒测试(功能性测试、验收测试)

性能测试

易用性测试

DRP的开发一个小流程如下:

分析阶段:

一:画用例图分为高层用例图和功能用例

二:对每一个功能用例进行用例文档的编写:(模板如下)

这里对修改密码这个功能用例进行分析

【目的】

用户可以修改自己的密码

【输入】

旧密码

新秘密

确认密码

【输出】

正常情况:输出修改密码成功信息

异常情况:输出相关错误信息

【约束】

前置条件:用户成功登录到系统

后置条件:无

特殊约束:

为了更好的保护用户口令,以“*”方式显示

用户输入的密码至少6位

修改成功后,待该用户下一次登录时,修改生效

【处理流程】

三:处理流程用UML图的活动图来画.

四:界面的设计和画界面

五:逻辑架构设计等

六:数据库设计:

如何设计表?

a)发现领域中的概念,理清领域中概念之间的关系,将其映射成表

b)尽量遵循数据库设计范式

i.第一范式:有主键,具有原子性,列不可分隔

ii.第二范式:完全依赖,没有部分依赖

iii.第三范式:没有传递依赖

c)主键设计最好采用单一主键,最好不要采用复合主键,尽量使用没有业务语义的字

段作为主键(如:Oracle的Sequence来维护一个主键),主键一般建议使用数值性,

会提高检索效率

d)关于冗余字段的问题,应该根据需求的具体情况是否加入

e)最好加入外键约束(在开发阶段最好不要设置外键约束,运行阶段加入外键约束)

f)如果做通用性产品,最好不是使用数据库特性的功能,除非特殊情况

g)如果数据量非常大,并且频繁的根据相关字段查询,最好建立索引

注意点:资金流,物流,信息流,如一级分销商到二级分销商那就是一个物流,资金怎么流向的.从这两个得到我们的信息流.所有的信息管理系统几乎都是这样的.

七:到了开发阶段了,那么先初始化数据库里面最基础的数据

相关推荐