前言
决定企业是否具有顽强的生命力的决定性因素之一就是效率。对于互联网企业来说,一条从开发到生产的产品线就像是自己的命根子,其效率直接影响到企业是否能在市场中占有一席之地。
主线:开发->测试->生产
例子:
- 开发A实现(需求或BUG)
- 运维A部署
- 测试A测试
- 执行1
- 执行2
- 执行3
- …
我们发现,在一个版本的发布过程中需要进行开发、部署、测试,如此往复,直到测试全部通过后再发布到生产。这其中还有一些实际存在的问题没提到,比如需求变更、文档管理等。这些都是影响效率的因素。
文档管理
需求描述和变更、系统设计、数据库设计,程序=文档+代码+数据。如何高效地管理这些文档、使产品能够在不断地迭代中通过这些文档仍然能清晰地展现在相关人员的面前,变得尤为重要。
JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。
我所接触到的一款项目与事务跟踪工具(JIRA),就能很好地解决这个问题。JIRA的主要功能包括:工作流、项目、问题管理等,可以进行版本规划、需求管理、缺陷跟踪等。
生产流程
这是我所在部门里的生产流程:
dev:开发环境
test:测试环境,用于测试大版本
uat:用户验收环境(测试环境),用于测试小版本
run:生产环境
开发
- 本地配置Host,映射到多个域名
- 配置Nginx,按域名将请求分发到不同的服务器
- 配置了不同端口的Tomcat提供不同的服务
测试
。。。
生产
。。。
提高效率的关键
- Git+Jenkins实现自动化部署
开发将实现并自测完成的代码提交到Git,Jenkins连接Git,通过页面操作直接使用Git上的代码进行构建和部署。这样做的好处是不需要每次发生代码改动都手动进行打包和部署。 - 。。。