1.可行性分析
可行性分析报告 / 项目开发计划书
2.需求分析 >>> 需求规格说明书
· OOAD(用例图、时序图、活动图)
· 界面原型:帮助理解需求、业务层设计时推导事务脚本
3.设计 >>> 概要设计说明书/详细设计说明书
· 抽取业务实体(领域对象):类图、E-R图(概念设计阶段)
· 分层架构:确定各层的技术实现方案(具体到使用的框架、数据库服务器、应用服务器等)。
业务层设计:事务脚本模式(事务:用户发送一次请求就是一个事务;
脚本:一个方法或一个函数;事务脚本:把一次请求封装为一个方法或一个函数;
事务脚本模式:一个事务开始于脚本的打开,终止于脚本的关闭)。
业务层涉及的对象有三种类型:事务脚本类(封装了业务的流程)、数据访问对象(DAO,封装了持久化操作)、数据传输对象(DTO,封装了失血/贫血领域对象),三者之间的关系是事务脚本类组合(聚合)数据访问对象,这二者都依赖了数据传输对象
· 正向工程(UML类图生成Java代码)和逆向工程(Java代码生成UML类图)
· 数据库物理设计(ER图转换成表间关系图、建库和建表、使用工具插入测试数据)
4.编码
5.测试 >>> 测试报告 / 缺陷报告
· 单元测试:对软件中的最小可测试单元进行检查和验证,在Java中是对类中的方法进行测试,可以使用JUnit工具来实施。
· 集成测试:集成测试也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求组装成为子系统进行测试。
· 系统测试:将已经确认的软件、硬件、外设、网络等元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。
· 验收测试:在软件产品完成了单元测试、集成测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。
6.交付和维护 >>> 用户手册 / 操作手册