纯属个人学习和开发项目小小经验总结:★ 需求分析 ● 收集需求 — 确定甲方各业务的接口人 — 捋顺业务线、熟悉整个业务流程 — 理解需求(合理引导和需求挖掘) ● 分许、转换 — 线下业务转换为线上业务 — 需求的定义描述 — 功能性需求 — 非功能性需求 ● 需求分析说明书 一 项目背景 — 行业(电商) — 模式(B2C) 一 功能性需求 — UML(用例图)、概念模型等等来描述 一 非功能性需求 — 技术类 — 系统安全性 — 性能方面 — 可扩展性 — 可靠性 — 易用性 — 与其他系统的兼容性 — 非技术类 — 成本控制 — 项目交付物(需求分析说明书、软件开发计划、概要设计说明书、详细设计说明书、软件测试计划、测试用例等) 系统架构目标:可靠性(reliable)、安全性(secure)、可扩展性(scalable-pv、extension)、可定制化(customizable)、可维护性(maintainable)、用户体验(customer experience)、市场时机(time to market) ● 原型设计 ● 需求确认★ 总体设计 一 系统架构设计 — 开元框架:SSM SSH SpringMVC+Spring+M SpringMVC+Spring+H — Spring框架:统一、高效的方式整合整个应用。IOC,AOP — SpringMVC — M:javabean service dao — V:jsp velocity freemarker — C:Struts2 SpringMVC — ORM — MyBatis Hibernate 相对于MyBatis,Hibernate过于笨重,不能控制sql语句 — 缓存(EHCache、memcache、OSCache、redis) 一 部署架构设计以及策略分析 一 数据库设计 — PowerDesigner(概念模型:CDM、逻辑模型:LDM、物理模型:PDM) 一 功能模块设计 — 合同管理 — 资产管理 — 人员管理★ 环境搭建 一 创建Web工程,集成框架 一 版本控制工具(SVN)(Git) 一 开发环境准备