IT团队开发总结

概述IT团队如何可以快速,高效的支撑公司业务与响应公司业务的变化成为IT团队管理的一个重点,尤其在这快速变化的商业环境,IT团队对公司扩展业务起了很重要的作用。根据我的工作经验,在敏捷开发思维下以下5点是提高IT团队效率的重要支撑点。

1.代码管理代码管理工具介绍(SVN与GIT)现在流行的代码管理工具有SVN与GIT,svn是中央集中式管理,git是分布式管理,svn相比git来说有效率上的劣势,svn是锁文件机制,不能同时并行编辑提交,而git是更新集机制,每个人可以在自己的branch中随意进行更改,功能完善后再提交合并到主干分支,现在越来越多的企业与组织都用git。所以IT团队代码管理我建议使用GIT

代码管理流程使用git来管理代码没有问题,但是还需要一个好的代码管理流程,实际上每个公司的代码管理流程都有或多或少的不同。这里我来介绍一个常用的流程

首先要先确定几个分支master: 发布分支,专门用于发布,用于合并功能测试稳定后的dev分支。dev: 开发分支,是最新的功能开发分支各种feature分支:一般是成员自己的分支hotfix/master: 用来修复线上bug的分支流程介绍master主干分支,权限严格受控,只接受稳定的dev分支的合并请求,每次发布需要打tag日常新功能开发或者bug修复都是基于dev分支来创建员工自己的分支,这样每个人的任务的开发与别人是最小依赖耦合的状态,自己新功能测试完毕,提交合并请求到dev分支,dev分支相关人员review代码后合并代码到dev分支每一次敏捷开发的sprint计划结束后,都会测试一个稳定版本的dev分支并进行打tab,然后master分支合并这次稳定后的dev分支线上出现bug,需要从master分支创建hostfix/master分支,测试完毕后,基于hotfix/master分支进行发布,发布完毕后合并到master分支,然后删除hostfix/master分支。分支流程图

git仓库推荐gitlib: 开源的广泛流行的git仓库软件,自己搭建git仓库首选github: 世界上最大的代码仓库,有企业版本服务码云:中国最流行的代码仓库,提供企业版服务git客户端软件推荐sourceTree2.需求,任务与bug的管理团队开发离不开项目管理软件,通过项目管理软件录入需求,需求进行评审,分解需求成任务,开始计划,bug管理可以把IT团队的工作量化,辅佐以敏捷开发过程跟踪与计划任务燃尽图显示,大家在工作透明的环境下,有了比较更能提高自己的工作效率,并且需求,任务,计划,bug等可以随时进行检索,可以清晰的记录项目的发展历程,这里需要注意的是,一定要将相关需求人员纳入到管理中来。

软件推荐禅道(推荐)JIRA3.软件测试软件的品质离不开软件测试,在企业里有一般都有测试人员根据需求通过写测试用例来进行功能测试,高级一点的测试会通过一些代码进行功能的验证,但是团队不能把软件是否可用完全押注在测试人员身上,而且很多创业企业起初也根本没有专职测试人员,都是开发兼测自己或者同事的代码,再来敏捷开发也需要每天去验证响应分支代码库是否可用(这里的可用不能仅仅是编译成功,更是指的功能可用),所以需要开发人员在开发阶段就要对自己写的代码增加验证测试代码。同时对于一些功能变化少,相对稳定的功能,完全可以写一些自动化测试程序进行回归测试。

单元测试写单元测试虽然看起来会耗开发阶段的一些时间,但是对未来的工作是有极大的好处的,例如未来重构这块业务代码,只需要再跑一遍这块的单元测试就可以,在项目每日构建CI阶段,走一遍全部的单元测试代码即可。单元测试有个指标可以作为项目评判的参考,这个指标就是代码测试覆盖率,代码测试覆盖率虽然不能决定软件产品的品质,但是较为高的代码测试覆盖率能减少软件产品的出错几率。(PS:如果是维护旧的项目没有单元测试代码,每次维护一个模块需要要求写单元测试,坚持下去)

集成测试集成测试是在单元测试的基础上,将一些业务相关联的模块或者系统进行聚合测试,单元测试只能保证单一模块局部可以正常工作,集成测试用来保证多模块可以正常工作。

可以通过黑盒测试对测试模块进行功能性测试使用测试代码对模块进行性能或者可靠性测试回归测试回归测试就是重复之前已经测试过的测试工作,很多时候(尤其是系统维护阶段)我们修改或者重构了代码,在需要确认相关的功能或者流程有没有引入新的bug的时候,就需要引入回归测试,回归测试多半是通过写自动化的测试程序来进行测试,回归测试的成本与耗费精力相对来说比较高,对小初创型公司来说一般只需要对核心模块有自动化测试就可以.

自动化测试框架推荐selenium

  1. CI/CD
    CI的意思是持续集成,敏捷开发的重要一点就是要对每天的代码进行build构建,构建有错误可以及时通知相关人员。
    CD是持续部署,把构建的程序可以快速的发布(或者恢复)到几台甚至几百台机器上是个棘手的事情
    CICD都强调持续,这意味着程序不光需要一直在运行,还存在快速迭代过程中频繁发布情况,这些行为都是可重复的,可以通过自动化流程来解决CICD

build工具推荐mavengradlenpmCI工具推荐jenkinstravisCD工具(软件)推荐ansiblechefsaltstack团队组织架构团队的组织架构要随着业务变迁进行改变,虽然企业发展,团队人数越来越多,团队的组织架构就要随着业务发展进行调整拆分,提高企业IT团队效率的核心思想就是减少沟通成本,减少重复建设,通过自动化(测试,构建,集成,发布)来减少人力时间等各种成本,支持业务可以快速在市场上进行验证与调整。

本文由博客一文多发平台 OpenWrite 发布!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值