本主题阐释了这些功能,以继续这一关注虚拟敏捷团队成员的一天的教程. Peter 忙于编写一些代码以完成积压工作 (backlog) 项任务.但是,他的同事发现了一个阻碍他们工作的 Bug,他想立即修复此 Bug. 他暂停了手中的工作并修复此 Bug. 他请求 Julia 审查修复情况,并在审查后检查修复结果并恢复其初始任务. 说明 Peter 使用的“我的工作”和“代码评审”功能仅在 Visual Studio 高级专业版和 Visual Studio 旗舰版中可用. 主题内容 挂起当前工作并开…
最近,一直想让团队加入敏捷开发,但TFS2010用下来,并不是令人满意,还好,TFS2012横空出世了.相比TFS2010,TFS2012改进太多了,主要体现在以下方面: Team Web Access优化 变更集回滚Ui支持 流程优化 界面更合理,操作更友好 增加了PowerPoint Storyboarding工具(PowerPoint图版演示),能够更便捷的画出界面设计图 支持代码审阅 提供了Microsoft反馈客户端 其他细节优化 于是近期部署了环境并且整理了很多资料(资料主要来源于网…
您是新用户的 Visual Studio 应用程序生命周期管理 (ALM) 和 Team Foundation Server (TFS) 吗? 您想知道如何您和您的团队可以获得最大受益的这些工具来生成您的应用程序的最新版本? 然后花几分钟就可以走逐步完成该两个章节教程,并按照 Peter 和朱丽亚在 Fabrikam 纤程的两个开发人员的生活的一天 — — 虚构的公司,提供有线电视和相关的服务. 您将看到如何使用 Visual Studio 和 TFS 签出并更新代码. 暂停工作时被打断. 请求…
工作项跟踪(1) 可跟踪性是软件过程的重要能力,TFS主要是以工作项来实现过程的可跟踪性.曾有人问:"你们实际项目里的工作项是怎么样的?能不能让我们看看?"我也一直很好奇别的公司TFS里的工作项是怎样的,网上这方面的资料很少.我就以三年前的三维管线项目为例,说一说我们的工作项跟踪,欢迎大家批评指正. 1 需求 敏捷宣言认为:"响应变化 重于 遵循计划",需求的变化,尤其是在中国,经常是无休无止.我们要做的就是要在TFS上做好需求管理, 从而达到响应变化的目的. 1.…
根据Forrester Research今年第二季度的一份研究报告,在超过1000名专业开发人员中,采用敏捷模式进行软件开发的已经有10.9%采用了Scrum模式,在所有的敏捷开发模式中名列首位,而在所有的软件项目管理模式中,敏捷模式更是被35%的开发人员所采用.当然,研究报告为我们呈现的仅仅是一个统计学的观点,到底你的开发团队应该采用什么样的开发模式,这还是要根据各自不同的开发环境,人员构成,公司架构以及文化背景来决定.图1:Forrester 关于敏捷模式的调查报告 Visual Studi…
TFS是基于微软平台一套不错的系统,支持源码管理+运行调试+持续集成+自动化测试+Bug管理+代码评审+任务项管理+文档管理+沟通管理.基于TFS 2015实践看板管理,让团队的数据可视化,让大家更多的关心产品.关注团队的努力,增强沟通.及时反映团队状况.及时反映团队效率.形成正向激励.一套系统打通研发所有的细节管理,避免不同管理系统切换的时间浪费,这也是精益里面提到的持续改进,消除浪费. 1.概述 2.产品管理 3.个人管理 4.任务管理 5.Bug管理 6.积压工作管理  7.查询管理 8.…
前言: “去重”是日常工作中会经常用到的一项技能,在爬虫领域更是常用,并且规模一般都比较大.去重需要考虑两个点:去重的数据量.去重速度.为了保持较快的去重速度,一般选择在内存中进行去重. 数据量不大时,可以直接放在内存里面进行去重,例如python可以使用set()进行去重. 当去重数据需要持久化时可以使用redis的set数据结构. 当数据量再大一点时,可以用不同的加密算法先将长字符串压缩成 16/32/40 个字符,再使用上面两种方法去重: 当数据量达到亿(甚至十亿.百亿)数量级时,内存有限…
DevOps是近几年非常流行的系统研发管理模式,很多公司都或多或少在践行DevOps.那么,今天就说说特来电云平台在DevOps方面的实践吧. 说DevOps,不得不说DevOps的具体含义.那么,DevOps是什么呢?是开发+运维么?每个人都DevOps的理解都不尽相同,下面是一组对DevOps的定义,通过这组定义,我们基本可以看清DevOps是干啥的.在这众多的解释中,我认为有一种解释可以更贴切:DevOps是一种能力,具备此能力的团队可以高质量.快速的交付软件产品或服务.这个总结定义道出了…
Java 项目开发过程中,由于开发人员的经验.代码风格各不相同,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维护,需要较大的测试投入 和周期等问题. 这些问题在一个项目组初建.需求和设计均具有不完全可预期性和完备性的全新项目中将尤为突出.本文将结合敏捷开发周期短,变化快等特点,介 绍如何通过在开发过程中采取一系列步骤来保证和提高整个开发团队的代码质量,并阐述了每一步可以利用的工具和最佳实践,从而使开发过程更加规范化,成就高 质量的代码,减少测试的投入,并促进整个团队的技能提…
基于story的敏捷基础知识----需求管理(三) (3)每日站会 站会的目的有三个: (1)周知进度 仅从用户故事和任务的层面周知进度,任务进度只有两种状态:完成或未完成(完成百分比). (2)周知计划 你将会在下次会议之前做哪些工作? (3)抛出问题 哪些东西阻碍你的进度?("没有问题",意味着你能够交付自己当前的任务,而且符合估算的时间范围)如果遇到需要解决的问题,可以在每日立会之后处理. 实现一项目的必要前提: 1.站 2.敏捷项目必须提供能够"安全失败"的…
受莫金融企业IT信息技术部的邀请,为该金融企业的某省分公司.地市分公司的IT技术人员提供了一场基于TFS的软件研发流程的技术培训,希望可以借此提高该企业的软件研发.运维水平,同时推动企业软件研发信息化管理水平的提高. 培训过程中,主要按照下面的思路对TFS系统的整体功能做了全流程的介绍: •1. TFS系统基本概况 •2. 需求管理和项目管理(Agile) •3. 源代码管理最佳实践(Coding) •4. 软件质量和测试管理(Testing) •5. 持续集成和持续交付 (CI / CD) 一…
你有没有想过为什么有时修复错误似乎比它应该花费更长的时间?当你终于找到问题时,事实证明你所需要的只是一个小小的改变.然而,花了很多时间才能找到正在发生的事情.这种情况比我想象的更频繁. 另一方面,当您编写代码并进行测试并且无法正常工作时,修复错误非常快.你跳回编辑器,掀起一行代码,问题就解决了. 为什么即使问题很简单,有时修复错误也需要很多工作,有时候,修复问题的速度很快 - 甚至可能很难解决问题?我们可以从易于修复的错误中学到一些东西,这样我们可以花更少的时间来修复bug吗? 让我们来谈谈这个…
到<Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?>为止,我们已经大体学会了如何使用Cordova了,那些都是使用Cordova的开发者必备的技能.今天我们要说一下开发者应该具备的一些额外经验,这些经验简单有效,如果希望要更系统更好的方法,那就持续关注本系列文章吧,与敏捷个人一起成长. 本次练习你能学到的 学习如何动态不发布APP来修复bug 学习如何动态增加功能 学习如何躲开苹果的一些严格审核 如何动态不发布APP来修复bug 做过网站的都知道,修复b…
1:需求背景 项目上线之后,发现BUG需要修复(比如安卓兼容性等测试难以发现的问题),频繁的更新影响用户体验 2:方案要求 静默下载,耗费流量少,打完补丁后立刻生效,不用重启apk 3:解决思路 3.1:使用andfix,打出差异包,使用补丁的方式安装3.2:缺陷:只能支持源码级别函数的修改(全局变量.新增.删除方法都是无效的) 4:修复BUG.创建差异包步骤 基于andfix原理,每次版本更新后,之前版本打的热修复补丁都会失效,这也符合我们上图的修复步骤. 因为每次热修复的修改,都会被合并到下…
基于story的敏捷基础知识----story编写 为什么使用Story? 软件行业40年多来,需求分析技术已经很成熟了,但是MRD驱动的过程不堪重负.因为往往MRD编写会占去很多时间,MRD评审又会占去大量时间,编码完成过后提测,压力又全部倾注在QA身上,往往临计划上线时间,或者体验还差,或者bug还太多,或者项目延期. 使用story,项目完成时间会大大缩短,上市时间大大缩短.主要原因: A. 采用story模式,将大需求拆为可独立交付的小story,需求清晰明了,节省了大量的需求评审时间.…
Scrum 3.5 多鱼点餐系统开发进度(修复Bug&美化页面) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB 5.Sprint 3时间:12.09-12.18 重案组成员   姓名 学号 博客链接 Github链接 队长 黄冠锋 201406114134 http://www.cnblogs.com/hgf520/ https://github.com/crown999   卢利钦 201406…
[课程设计]Scrum 1. 9 多鱼点餐系统开发进度(最后页面完善&修复BUG&用户测试) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB 5.Sprint 1时间:11.14-11.23 重案组成员   姓名 学号 博客链接 Github链接 队长 黄冠锋 201406114134 http://www.cnblogs.com/hgf520/ https://github.com/crow…
CloudStack应用越来越广,但是随着测试也遇到了越来越多的bug. 不想等待新版本发布而且又急于修复某些bug的童鞋,可以参考下本文内容. CloudStack是java语言写成,发布时会发布为jar 一.先介绍下CloudStack版本控制 DB   cloud.version   该表中,存有version字段,存放该版本的版本号   例如:4.1.xxxxxxx (xxxxxx为时间戳) META-INF 解压任一jar 包,会有META-INF目录   目录中有MANIFEST.M…
最近,修复了项目当中的一些bug,觉着有些思路可以分享出来供大家借鉴. 场景一 开发环境中系统正常运行,测试环境中,部分机器未能正常运行. 解决过程:远程连接了测试环境中的机器,观察了系统的运行情况,确实比较反常.查看日志后,发现出现了"xxx文件未找到"的异常.确认文件存在后,最先想到的就是,xxx依赖文件不存在,导致xxx文件未能正确加载.使用分析工具分析xxx文件依赖项后,发现测试环境确实是缺少了某些文件.从开发环境手动拷贝xxx文件的依赖文件到测试环境后,系统运行正常. 划重点…
基于story的敏捷基础知识----迭代启动会.迭代回顾会 除需求讲解意外,需要所有团队成员参加的会议仅有两个,分别是"迭代启动会"和"迭代回顾会". (1)迭代启动会 在迭代开始之前,需要召开迭代启动会,目的有以下两个: 明确迭代周期,即上线时间: 明确迭代目标,即以什么样的优先级,交付哪些story. 在明确了迭代周期和上线时间后,按照前面提到的"迭代规划"来开迭代启动会即可,在此不再赘述. (2)迭代回顾会 在每个迭代结束后都有迭代回顾会,…
基于story的敏捷基础知识----需求管理(二) (1)定期发布 定期发布上线,把整个项目划分为一个个迭代,每个迭代时间大小固定(基本固定),迭代结束时上线交付一次. (2)迭代规划 迭代规划相当于整个迭代的计划,帮助我们管理并保证每个迭代的交付. A.迭代规划的前提: story沟通及验收条件的补充完成. PM给出story的优先级 RD.QA给出story的估点,估点可取范围为(1.2.3.5),若有大于等于5点的story,尽量拆分成更小的story. B.迭代规划 估算团队交付能力(通…
基于story的敏捷基础知识----需求管理(一) 基于story进行需求管理 (1)使用story模式来管理需求,将庞大的MRD划分为一个个合适粒度,且可独立交付的story(通常每个story能在1~5天内完成,包括设计.开发.测试),需求清晰明了,易达成一致,且可节省大量的需求评审时间. (2)要求PM在第i个迭代上线前一天,完成所有第i+1迭代的需求拆分,和RD.QA达成理解一致,且辅助QA一起补充完验收标准,在第i个迭代启动前完成所有story的相关工作. (3)每个story都有自己…
程序员:统治世界or修复bug? 时至今日,我们依然生活在一个市场和技术受到高度崇拜的世界里,但是历史演化的规律提醒着我们:当一个东西开始成为社会崇拜的对象时,其中暗藏的不利因素将悄然的进行着.有人认为数字技术和互联网能够消除物理世界的不公平,但是我们今天看到,这种想法就像是认为完全自由的市场可以带给人们完全自由的发展一样,显得不切实际. 还记得自己初学编程的初衷吗?每一个热爱技术的人都有一个梦想:在未来的某一天,我要用我编写的软件统治这个世界. 现在,随着IT技术.互联网技术.人工智能的迅速发…
使用Git分支开发新特性或修复Bug 通过分支,可以在不影响原有代码的前提下改变代码,主要用于开发新功能新特性.下 一代产品 为已经发布的正式版修复bug 团队开发时为每个人建立一个分支,从而避免相互影响 每个分支都有自己的历史记录  除了使用Eclipse工具创建/切换分支之外,也可以使用命令方法创建及切换分支 创建并切换:  git  checkout  -b 分支名 切换:  git  checkout   分支名 git  brach    查看所有分支 使用@ResponseBody和…
# 本demo实现原理来自 https://github.com/dodola/HotFix https://zhuanlan.zhihu.com/p/20308548 # Anti类功能,及其原理 如上图,A,B,C是三个class,它们在生成apk文件时,被打包入同一个dex文件中,当apk发布出去运行一段时间发现A类有个bug,现在使用上面链接中的修复方案修复bug.如文中所说,如果直接将A类重写,并使用运行时动态地将修复后的A类所在的dex文件加载并插入到加载链前,则A便可以修复.但是因…
前面介绍了Git版本控制,为我们省去了很多不必要的麻烦. 回滚 有没有想过,在我们开发过程中,修改需要是常有的事,如果我们现在不想要这个功能了,那么如何回到之前的版本呢?回滚,回到上一个版本. 那如果我们后来又想把那个功能加上,但又不能回滚道之前的版本,怎么办?我们可以在版本库找到所有的版本 ,返回到我们需要的版本,继续开发. git reflog 查看所有版本 git reset -hard 回滚 git checkout 修复bug 如果我们在可发的过程中,之前上线的代码出现bug怎么办?…
在测试过程中,难免遇到开发人员因为一些原因不想修改个别bug的情况.遇到这种问题时,该如何去推进开发修改bug呢? 一.现状分析 1.开发人员为啥不愿意修复BUG? (1)开发与测试对bug的定义理解不一致产生的问题,bug路径较深,无法重现, 修改bug改动较大,影响范围广,无法理解,在生产环境不可能发生的时间,环境问题,不影响程序的实际用户使用: (2)工作流程方面原因,没时间,问题太小(优先级低),上线时间紧急,非自己名下的BUG(相关人员以离职后的BUG): (3)个人能力原因,找不到解…
JSPatch ios开发不能不知的动态修复bug补丁第三方库JSPatch 使用学习:JSPatch导入.和使用..js文件传输加解密 ios开发面临审核周期长,修复bug延迟等让人无奈的问题,所以,热修复的产生成为必然. ios上线APP产生bug,需要及时修复,如何修复: 我整理了jspatch的使用说明,并建立一个简单demo供他人使用和学习,此博客不做详细介绍,具体如何使用附上代码地址: 代码下载地址: https://github.com/niexiaobo/JSPatchUse #…
1.新功能. 操作日志和搜索日志的Excel报表下载. 2.用户体验. 如果是通过搜索,进入到一篇内容, 搜索关键词需要高亮. 比如,搜索"程序员"出现若干内容链接,打开链接的页面,搜索词"程序员"应该高亮显示. 3.修复bug. 生成PDF格式的"小雷文集"时,文件名称需要过滤非法字符,不允许出现Linux和Windows不支持的字符. 4.系统优化. a.搜索等所有的用户输入参数,都要检查. b.配置业务异常和业务异常页面. 比如,如果用户访…
前一篇文章<HDFS和Hbase误删数据恢复>主要讲了hdfs的回收站机制和Hbase的删除策略.根据hbase的删除策略进行hbase的数据表恢复.本文主要介绍了hdfs的快照原理和根据快照进行的数据恢复. 1.Hdfs的快照原理 1.1 快照原理 Hdfs的快照(snapshot)是在某一时间点对指定文件系统拷贝,快照采用只读模式,可以对重要数据进行恢复.防止用户错误性的操作. 快照分两种:一种是建立文件系统的索引,每次更新文件不会真正的改变文件,而是新开辟一个空间用来保存更改的文件,一种…