web开发流程 - 网上商城示例
一、需求确定
1:通过各种手段确定系统的功能与性能
1)功能:注册、浏览、搜索...
2)性能:可同时支持n个并发访问,并且响应时间不低于m毫秒...
3)手段:头脑风暴(brain storm)、会议、询问、原型(界面原型、业务原型...)
2:本阶段是项目开发的最重要阶段
3:在web项目中,通常界面设计会在本阶段进行
二、分析与设计
1:架构分析与设计
1)逻辑架构
a:3层架构、n层架构
b:MVC
c:Model 1 or Model 2
d:其他...
2)物理架构
a:Web服务器的分布
b:数据库服务器的分布
c:其他...
3)技术解决方案的确定
a:Java/.NET
b:Open Source/商业
c:其他...
2:业务逻辑分析
1)根据需求分析业务逻辑
a:有哪些人会使用本系统
b:他们会使用本系统做什么
c:通常他们使用本系统的步骤是什么样的
d:会有哪些明显的类来支撑本系统的运行
e:会有哪些不同的提示会反馈给用户
f:其他...
2)本阶段与需求的确定密切相关,通常在确定需求的时候就会进行相关的分析
3:业务逻辑设计(不同的项目步骤可能不尽相同)
1)根据需求的分析来确定具体的类
2)确定类的属性
3)确定类的接口(方法)
4)确定类之间的关系
5)取得用户操作流程在设计上的反映
6)进行数据库的设计(面向对象设计提倡先设计类再设计数据库)
7)其他...
4:界面设计
1)设计系统的界面风格
a:颜色、style
2)设计系统的具体“模拟”界面
a:能够从头走到尾(方便进行需求的确定,方便JSP程序员的开发)
三、开发环境搭建
1:开发工具的确定
2:配置管理工具的确定
3:测试工具的确定
4:文件服务器/配置服务器等的确定
5:其他...
四、开发
1:开发-测试-开发-测试
1)按照设计进行开发
a:迅速开发原型
b:进行迭代开发
c:提早进行测试(单元测试、黑盒测试、性能测试、易用性测试、...)
五、文档编纂
=================================================================
网上商城示例:
一、需求确定
1:普通用户可以通过系统浏览商品(按类别)
2:普通用户可以通过系统搜索商品(按类别、价位、日期等)
3:普通用户可以通过系统下订单(享受市场价)
4:普通用户可以注册成为系统会员(免费注册)
5:会员可以浏览和检索商品
6:会员可以下订单(享受会员价)
7:会员可以浏览自己下过的订单
8:会员可以管理自己的信息(自服务系统:修改密码、修改送货地址、修改联系方式)
9:会员可以分级别
a:不同级别享受不同等级的优惠
b:通过购物的金额确定级别
10:管理员通过后台进行会员管理
a:会员浏览
b:会员历史订单浏览
c:会员删除
d:指定会员级别
11:管理员通过后台进行产品分类的管理
a:浏览、添加、删除、修改
12:管理员通过后台进行产品管理
a:新增产品
b:产品上柜
c:产品下柜
d:产品销量浏览
e:产品搜索
f:产品删除
g:产品修改
13:管理员通过后台进行订单的管理
a:订单查询
b:修改订单状态
c:订单搜索
d:订单跟踪
e:订单提醒
二、分析与设计
1:架构分析与设计
1)逻辑架构
JSP + JavaBean + DataBase
a:JSP负责表现
b:JavaBean负责业务逻辑
c:DataBase负责持久保持数据
2)物理架构
a:Web服务器一台(配置)
b:数据库服务器一台(配置)
3)技术解决方案的确定
a:WebServer - Tomcat5.5
b:DataBase - MySQL5.0
2:业务逻辑分析
1)会员类
a:包装系统会员
b:与订单类有一对多的关系
2)管理员类
a:包装系统管理员
3)产品类
a:包装产品的信息
b:与订单式多对多的关系
4)类别类
a:包装产品的类别
b:树状结构
c:与产品是一对多的关系
5)订单类
a:包装订单的信息
b:与产品是多对多的关系
c:与会员是多对一的关系
6)购物车类
a:包装购物车的信息
b:与产品是多对多的关系
3:业务逻辑设计
1)User
a:properties(id、username、password、phone、addr、rdate)
b:methods(getOrders()、save()、change()、delete()、static search())
2)Administrator
a:properties(username、password)
b:methods(login())
3)Product
a:properties(id、name、descr、normalPrice、memberPrice、pdate、category)
b:methods(getCategory()、getSalesCount()、save()、change()、search())
4)Category
a:properties(id、name、descr、parent:Category)
b:methods(getProductCounts()、save()、change())
5)SalesOrder & SaleItem
a:properties(id、userid、addr、SalesItem[]、odate)
b:methods(getTotalPrice()、save()、change()、getSalesItems())
6)SalesOrder & SaleItem
a:properties(id、productID、unitPrice、pCount)
b:methods(getTotalPrice()、save()、change())
7)ShoppingCart & CartItem
a:properties(userid、CartItem[])
b:methods(getTotalPrice()、save()、change()、getCartItems())
8)ShoppingCart & CartItem
a:properties(productID、unitPrice、pCount)
b: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 varchar 父id
表名:SalesOrder:字段名 字段类型 说明
id int 主键/自动递增
userid int 用户id
addr varchar 送货地址
odate datetime 下单时间
state int 订单状态:0-订单未处理,1-处理成功,2-废单
表名:SalesItem:字段名 字段类型 说明
id int 主键/自动递增
productid int 产品id
unitprice varchar 单价
pcount datetime 数量
orderid int 订单id/引用SalesOrder的id
4:界面设计
前台(根目录下):
1)首页index.jsp
a:显示某类商品
b:根据id显示图片
c:搜索
d:注册
e:登录
f:自服务
2)搜索界面search.jsp
3)搜索结果searchresult.jsp
4)注册
a:注册页面register.jsp
b:注册成功registerok.jsp
c:注册失败registererr.jsp
5)登录
a:登录页面login.jsp
b:登录成功loginok.jsp
c:登录失败loginerr.jsp
6)自服务selfservice.jsp
a:修改密码changepassword.jsp
b:修改成功changepasswordok.jsp
c:修改失败changepassworderr.jsp
d:修改其他信息changeinfo.jsp
e:修改其他信息成功changeinfook.jsp
f:修改其他信息失败changeinfoerr.jsp
7)购物
a:购物车浏览cart.jsp
b:结账buy.jsp
后台(admin目录下):
1)登录页面login.jsp
2)首页index.jsp
a:用户管理
b:产品管理
c:类别管理
d:订单管理
3)用户管理
a:显示用户userlist.jsp
b:删除用户userdelete.jsp
c:搜索用户usersearch.jsp
4)产品管理
a:产品显示productlist.jsp
b:产品添加productadd.jsp
c:产品更改productchange.jsp
d:产品删除productdelete.jsp
e:产品搜索productSearch.jsp
5)类别管理
a:类别显示categorylist.jsp
b:类别添加categoryadd.jsp
c:类别删除categorydelete.jsp
d:类别修改categorychange.jsp
6)订单管理
a:订单浏览salesorderlist.jsp
b:订单处理salesorderdeal.jsp
三、开发环境搭建
1:开发工具:eclipse3.2
2:WEB SERVER:tomcat5.5
3:DATABASE:MySQL
4:SCM:CVS
四、开发
开发流程:
1:先写用户
2:再写分类
3:然后写产品
4:接下来写购物
5:最后订单处理
6:其他功能
开发安排(几个人几天完成):
V0.1:用户 - JavaBean 前台/后台
V0.2:分类 - JavaBean 前台/后台
V0.3:产品 - JavaBean 前台/后台
V0.4:购物 - JavaBean 前台
V0.5:订单 - JavaBean 前台/后台
V0.5:其他 - JavaBean 前台/后台
五、文档编纂
1:需求描述文档
系统分析与设计
数据库设计
开发接口API|docs&源代码注释
用户帮助(前台)
管理员手册(后台)
测试文档
转载于:https://www.cnblogs.com/cwzhang/archive/2012/02/01/2335019.html
web开发流程 - 网上商城示例相关推荐
- Web中html个人介绍代码,web开发工程师自我介绍示例
web开发工程师自我介绍示例 Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript/Flash等各种Web技术进行客户端产品的开发.小编整理了web开发工程师自我介绍示例, ...
- 小梅哥FPGA学习笔记——开发流程及仿真示例
开发流程及仿真示例 FPGA整体设计开发流程 1. 设计定义 2. 设计输入(Quartus II) 3. 分析和综合(Quartus II) 4. 功能仿真(modelsim-altera/mode ...
- 【Android开发】网上商城
[Android开发]网上商城 文章目录 [Android开发]网上商城 一.开发环境需求 二.系统功能设计 三.运行结果 1. 欢迎界面 2. 搜索界面 3. 登录界面 四.主要代码 1. Home ...
- 《msdn开发精选》“高性能Web开发技术”网上聊天活动
<msdn开发精选>"高性能Web开发技术"网上聊天活动 本期嘉宾:郭红俊(ghj1976),孟宪会(孟子E章) ,刘如鸿(策划编辑) 聊天主题:高性能的Web应用程序 ...
- java 网上商城系统_基于Java_web开发的网上商城系统(含源文件).doc
PAGE PAGE 1 届 别 学 号 (学校名称) 毕业设计(论文) 基于JAVA WEB的网上商城设计与开 发 姓 名[ 系 别 .专 业 导师姓名.职称[ 完 成 时 间[ PAGE II- 网 ...
- java 微商城开发_Java网上商城系统可以开微信商城吗
开微信商城是现在非常火的一件事,我们身边有很多人都在开微信商城.而开发微信商城吗?MCmore小麦来为你解惑. Java网购商城系统和微信商城 网上商城系统是由很多种类型的,如java网上购物系统,p ...
- SSM全注解开发的网上商城系统
SL会员商城 1 需求分析 1.1需求陈述 1.2基于UML的需求分析 1.2.1参与者和参与者之间的关系 1.2.2用例与用例之间的关系.参与者与用例的关系 1.2.3用例图 1.2.4用例说明 1 ...
- 高性能Web开发技术”网上聊天活动
本期嘉宾:郭红俊(ghj1976),孟宪会(孟子E章) ,刘如鸿(策划编辑) 聊天主题:高性能的Web应用程序开发 嘉宾[主持人]: 各位网友大家下午好! 欢迎大家到CSDN嘉宾聊天室. [2004- ...
- “高性能Web开发技术”网上聊天活动
本期嘉宾:郭红俊(ghj1976),孟宪会(孟子E章) ,刘如鸿(策划编辑) 聊天主题:高性能的Web应用程序开发 嘉宾[主持人]: 各位网友大家下午好! 欢迎大家到CSDN嘉宾聊天室. [2004- ...
最新文章
- 从乘法表JAVA意思4_四、Java从头开始-我的九九乘法表(二)
- AI理论知识整理(10)-向量空间与矩阵(1)
- 函数-函数的基本组成
- Equipment download - generic inbound 和mapping处理逻辑分析
- 如何为 Mac 添加新语言?
- Java-练习1:Bank银行模拟程序(面向对象实现)
- vant-ui 有赞ui官网打不开?
- go语言学习网站大全
- requests库手工识别验证码登录超星泛雅
- 实战八:美国人口普查数据进行收入预测分类
- C语言表达式语法分析——递归子程序法
- iPhone各种机型尺寸、屏幕分辨率
- Candence PCB Si 仿真设计篇1:为仿真文件添加ibis模型
- 1、用Keil5开发TM4C123G单片机的软件准备
- [转]MQ(ActiveMQ)原理及介绍
- javaweb学习笔记(佟刚老师笔记)
- 2018-10-27 直播课堂笔记
- 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第十九节:雾
- word中给多个字符添加圆圈
- webmin 远程代码漏洞复现