web服务器项目代码案例,web项目开发的常见流程与应用案例

更新时间 2017-09-18 19:11:03 初稿发布

前言

如果让一个新手程序员开发一个web项目,很多人可能无法下手。本文整理出一个web项目比较常见的开发流程,以供大家学习与掌握, 虽然具体到每一个项目,可能不尽相同,但是本质还是遵循下面的思路的。

本流程的大部分内容来自 Java Web项目实战视频的整理,这里做个文字记录。

后续我会按这个流程实现一个商城的开发。

常见流程

1. 需求确定

功能与性能

功能: 购物、注册、浏览、搜索...

性能:支持n个并发,响应时间不低于 m毫秒。

方法

头脑风暴

会议

询问

原型:界面原型、业务原型......

......

本阶段最重要

界面草稿也在本阶段完成

2. 分析设计

架构设计

逻辑架构

三层架构

MVC

......

物理架构

web服务器分布

数据库服务器的分布

......

技术方案

java/.net/php

open source /商业

......

业务逻辑分析

根据需求分析业务

有哪些人使用本系统?

他们使用本系统做什么?

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

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

有哪些不同的提示反馈给用户?

通常在需求确定的时候就进行分析

业务逻辑设计

业务逻辑分析的结果

确定有哪些类

确定类的属性

确定类的接口

确定类之间的关系

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

进行数据库的设计

界面设计

设计系统的界面风格

颜色,风格

设计系统的具体模拟界面

可以完整跑一边流程。

方便需求的确定。

方便程序的开发。

3. 开发环境搭建

开发工具的确定

配置管理工具的确定

测试工具的确定

文件服务器、配置服务器等确定

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

按照设计进行开发

迅速开发原型

进行迭代开发

提早进行测试

单元测试

黑盒测试

性能测试

易用性测试

......

5. 文档编撰

需求描叙文档

系统分析与设计

数据库设计

开发接口API docs & 源代码注释

用户帮助(前台)

管理员手册(后台)

测试文档

流程的应用案例(java版网上商城)

网上商城 - 需求确定

普通用户可以浏览商品(按类别)

普通用户可以搜索商品(按类别、价位、日期等)

普通用户可以通过系统下订单(市场价)

普通用户可以注册成为系统会员(免费注册)

会员可以浏览与检索商品

会员可以下订单(会员价)

会员可以浏览自己下过的订单

会员可以管理自己的信息(自服务系统)

修改密码

修改送货地址

修改联系方式

会员可以分级别

不同级别不同的优惠

通过购物的金额确定级别

管理员通过后台对会员管理

会员列表浏览

会员订单浏览

会员删除

修改会员的级别

管理员可以通过后台进行产品分类的管理

浏览、添加、删除、修改

管理员可以通过后台进行产品的管理

新增产品

产品上架

产品下架

产品销量浏览

产品搜索

产品删除

产品的修改

管理员可以通过后台进行订单的管理

订单查询

修改订单状态

订单搜索

订单跟踪

订单提醒

网上商城 - 架构分析设计

逻辑架构

JSP+JavaBean+Database

jsp负责表现层

JavaBean 负责业务逻辑

DataBase 负责持久数据层

物理架构

web服务器一台

-配置清单

数据库服务器一台

配置清单

技术解决方案

服务器: Tomcat-9

数据库 :mysql-5.7.19

网上商城 - 业务逻辑分析

会员类

包装系统会员信息

与订单类有一对多的关系

管理员类

包装系统管理员的信息

产品类

包装产品的信息

与订单是多对一的关系

类别类

包装产品的类别

树形结构

与产品是一对多的关系

订单类

包装订单的信息

与产品是多对多的关系

与会员是多对一的关系

购物车类

包装购物车的信息

与产品是多对多关系

网上商城 - 业务逻辑设计

User

properties

id

username

password

phone

addr

rdate

methods

getOrders()

save()

change()

delete()

search()

Administrator

properties

username

password

methods

login()

Product

properties

id

name

descr

normalPrice

memberPrice

pdate

category

methods

getCategory()

getSalesCount()

change()

search()

Category

properties

id

name

descr

pid (parent :Category)

methods

getProductCounts()

save()

change()

SaleOrder & SaleItem

SaleOrder

SaleItem

properties

id

productD

unitPrice

pCount

methods

getTotalPrice()

save()

change()

ShopingCart & CartItem

- ShopingCart

- CartItem

- properties

- productId

- unitPrice

- pCount

- methods

- getTotalPrice()

网上商城 - 数据库设计

User

字段名

字段类型

说明

id

int

主键/自动递增

username

varchar

用户名

password

varchar

密码

phone

varchar

电话

addr

varchar

地址

rdate

datetime

注册日期

Product

字段名

字段类型

说明

id

int

主键/自动递增

name

varchar

产品名

descr

varchar

描述

normalprice

varchar

市场价

memberprice

varchar

会员价

pdate

datetime

上架日期

categoryID

int

类别ID /引用 category 表的id

Category

字段名

字段类型

说明

id

int

主键/自动递增

name

varchar

分类名

descr

varchar

描述

pid

int

父id

SalesOrder

字段名

字段类型

说明

id

int

主键/自动递增

userid

int

用户id

addr

varchar

送货地址

odate

datetime

下单时间

status

int

订单状态: 0 订单未处理 1 处理成功 2 废单

SalesItem

字段名

字段类型

说明

id

int

主键/自动递增

productid

int

产品id

unitprice

varchar

单价

pcount

datetime

数量

orderid

int

订单id/ 引用saledorder表的id

网上商城 - 界面设计

前台

前台首页 index.jsp

显示某类商品

根据id显示图片

搜索

注册

登录

自服务

搜索界面 search.jsp

搜索结果页面 searchresult.jsp

注册

注册页面 register.jsp

注册成功 registerok.jsp

注册失败 registererror.jsp

登录

登录页面 login.jsp

登录成功 loginOk.jsp

登录失败 loginError.jsp

自服务 selfService.jsp

修改密码 changePassword.jsp

修改成功changePasswordOk.jsp

修改失败 changePasswordError.jsp

修改其他信息 changeInfo.jsp

修改其他信息成功 changeInfoOk.jsp

修改其他信息失败 changeInfoError.jsp

购物

购物车浏览 cart.jsp

结账 buy.jsp

后台

产品管理

产品列表 productList.jsp

产品添加 productAdd.jsp

产品编辑 productEdit.jsp

产品删除productDelete.jsp

产品搜索 productSearch.jsp

类别管理

类别列表 categoryList.jsp

类别添加 categoryAdd.jsp

类别删除 categoryDelete.jsp

类别修改 categoryEdit.jsp

订单管理

订单列表salesOrderList.jsp

订单详情 salesOrderDeal.jsp

网上商城-开发环境搭建

开发工具

- idea

WEB SERVER

tomcat

DATABASE

mysql

SCM

git

网上商城-开发

先写用户

再写分类

再写产品

接下来购物

最后订单

其他功能

网上商城-开发安排

v0.1

用户模块

v0.2

分类模块

v0.3

产品模块

v0.4

购物模块

v 0.5

订单模块

v 0.6

其他模块

文档编撰

需求描叙文档

系统分析与设计

数据库设计

开发接口API docs & 源代码注释

用户帮助(前台)

管理员手册(后台)

测试文档

你可能感兴趣的:(web服务器项目代码案例)