项目实施DevOps时,我们是如何做测试的 (insights.thoughtworks.cn)
正如我们所知,DevOps最近几年很风靡,很多企业正在如火如荼的推行它。然而,你可曾想过,从传统到敏捷、再到DevOps,开发模式的不断革新对测试提出了怎样的挑战?最近我们项目在实施DevOps,因此想趁热打铁,就DevOps模式下如何做测试,谈一谈自己的认知。
by @ThoughtWorks 2017-11-10 10:22 分享 查看详情
DDD实战篇:分层架构的代码结构 (insights.thoughtworks.cn)
DDD的原始方法论中虽然给出了“分层架构”(Layered Architecture)的元模型,但如何分层却没有明确定义。在DDD方法提出后的数年里,分层架构的具体实现也经历了几代演进,直到Martin Fowler提炼出下图的分层实现架构后,才逐步为大家所认可。DDD的方法也得到了有效的补充,模型落地的问题也变得更容易,核心领域模型的范围也做出了比较明确的定义:包括了Domain,Service Layer和Repositories。
by @ThoughtWorks 2017-11-08 09:56 分享 查看详情
物联网测试地图 (insights.thoughtworks.cn)
物联网的出现,给测试带来了很多有意思的挑战,使得众多QA开始重新思考传统的测试过程。例如,我最近测试了一个产品,在这个产品中的移动APP会跟连接的机器产生会话。这两个设备各种各样的状态给测试场景的设计带来了特别大的挑战。下面给大家介绍一个很有用的物联网产品测试框架——物联网测试地图,它可以帮助我们管理物联网设备多种排列的复杂状态。
by @ThoughtWorks 2017-11-06 15:32 分享 查看详情
应用架构与组织结构 (insights.thoughtworks.cn)
这是一篇随笔,基于一个简单的问题:由瀑布向敏捷转变后,组织结构要变,应用架构要变,为什么呢?
by @ThoughtWorks 2017-11-06 10:27 分享 查看详情
8大前端安全问题(下) (insights.thoughtworks.cn)
在《8大前端安全问题(上)》这篇文章里我们谈到了什么是前端安全问题,并且介绍了其中的4大典型安全问题,本篇文章将介绍剩下的4大前端安全问题。
by @ThoughtWorks 2017-11-03 10:30 分享 查看详情
8大前端安全问题(上) (insights.thoughtworks.cn)
“安全”是个很大的话题,各种安全问题的类型也是种类繁多。如果我们把安全问题按照所发生的区域来进行分类的话,那么所有发生在后端服务器、应用、服务当中的安全问题就是“后端安全问题”,所有发生在浏览器、单页面应用、Web页面当中的安全问题则算是“前端安全问题”。按照这个分类办法,我们总结出了8大典型的前端安全问题。
by @ThoughtWorks 2017-11-01 16:32 分享 查看详情
IT工程师的自我管理 (insights.thoughtworks.cn)
管理项目或公司和管理生活有很多共通之处。有些人天生做的很好,但是像我这种普通人则不然。庆幸的是,我们依然能找到一些可行的方法和工具来做的像他们一样,在这篇文章中,我会尝试把公司项目管理的各种方法应用到个人生活中,我划分了不同的小节(收集反馈、决策、时间和任务管理、情绪管理)来阐述这些问题和解决方案,在每个小节的结尾,也会附上我使用过或者推荐的一些工具。
by @ThoughtWorks 2017-10-30 10:18 分享 查看详情
DDD战略篇:架构设计的响应力 (insights.thoughtworks.cn)
在战略层面,DDD非常强调针对业务问题的分析和分解,通过识别核心问题域来降低分析的复杂度。在战术层面,DDD强调通过识别问题域里的不同业务上下文来进行面向业务需求的组件化。最后在实现层面利用成熟的技术模式屏蔽掉技术细节的复杂度。
by @ThoughtWorks 2017-10-27 11:18 分享 查看详情
Offshore敏捷交付团队QA生存指南 (insights.thoughtworks.cn)
跨地域性的offshore敏捷交付一直以来都是一个充满挑战的工作,对于需要与各种角色进行交互的QA而言更是如此。我在2016年初进ThoughtWorks时就经历了这样一个项目。此间个人也经历了从忐忑不安到得心应手。现在此离岸项目已经交付完成,我也想总结一下这一年来的项目生存实践。
by @ThoughtWorks 2017-10-25 17:13 分享 查看详情
为低资源地区建造数字化医药库存系统 (insights.thoughtworks.cn)
我们与一家国际非营利组织合作为莫桑比克政府设计开发了一个医药电子库存系统(ESMS)。在低资源地区与政府合作实施的技术项目中存在很多与商业伙伴合作不同的挑战。我们从中学到了一些有价值的经验,分享给你。
by @ThoughtWorks 2017-10-23 16:23 分享 查看详情
提升微服务实施效率的7个步骤 (insights.thoughtworks.cn)
《微服务进展缓慢的5个难点》中描述了实施微服务常见的主要阻碍。本文针对前文提到的5个难点提出了7个步骤。每个步骤分别包含了管理和技术两方面的建议。
by @ThoughtWorks 2017-10-23 10:38 分享 查看详情
微服务 | Martin Fowler (insights.thoughtworks.cn)
“微服务架构”这一术语在前几年横空出世,用于描述这样一种特定的软件设计方法,即以若干组可独立部署的服务的方式进行软件应用系统的设计。尽管这种架构风格尚无明确的定义,但其在下述方面还是存在一定的共性,即围绕业务功能的组织、自动化部署、端点智能、以及在编程语言和数据方面进行去中心化的控制。
by @ThoughtWorks 2017-10-20 18:09 分享 查看详情
如何成为一个技术全面的架构师 (insights.thoughtworks.cn)
架构师是一个充满挑战的职业,需要关注很多维度和技术。只专注于单一领域的架构师并不是优秀的架构师。一个好的架构师需要是技术全面的架构师。一个技术全面的架构师需要具备哪些特质?
by @ThoughtWorks 2017-10-18 11:06 分享 查看详情
微服务进展缓慢的5个难点 (insights.thoughtworks.cn)
笔者从2013年加入ThoughtWorks至今共4年时间。在这4年时间里,我分别以开发人员、DevOps工程师、DevOps咨询师、微服务架构师以及微服务咨询师的角色参与了共计7个产品和项目的微服务咨询和实施。其中有成功,有失败,有反思,更多的是学习和总结。以下是我这些年来在微服务咨询上的经验总结,希望能给陷入微服务实施困境的人带来一些帮助。
by @ThoughtWorks 2017-10-16 16:10 分享 查看详情
敏捷团队需要专职QA么? (insights.thoughtworks.cn)
最近和组内的QA聊起以后的职业发展,发现一个有意思的事情,有说想转BA的,有说想转开发的,有说想转型作PM的,还有想以后往咨询方向发展的。很少有说想在团队里面继续作QA的。QA这个角色难道就这么没有吸引力么?敏捷团队需要专职QA么?
by @ThoughtWorks 2017-10-13 17:32 分享 查看详情
企业实施DevOps的七大挑战 (insights.thoughtworks.cn)
DevOps这个词在近年来可谓大火。从2014年底我开始给一些企业做持续交付/DevOps相关的评估和咨询,似乎每个企业都表示想要推行DevOps,或者说他们正在做DevOps。这把火蔓延的速度远远超过当年敏捷在IT行业的传播。然而有些企业管理者对DevOps的认知让我们意识到,由于各种有意或无意的因素,这个概念不幸地成为了一个让人困惑的buzz word……什么是DevOps?企业在实施DevOps过程中会遇到哪些挑战?
by @ThoughtWorks 2017-10-11 10:28 分享 查看详情
精益价值、原则和软件实践(下) (insights.thoughtworks.cn)
所谓的精益思想的价值和原则非常多,这里引用ThoughtWorks同事Jonny Schneider即将出版的《Understanding Design Thinking, Lean,and Agile》, 通过日常软件开发实践来补充这些看起来很虚的价值和原则,以此推广“精益”成为更好的软件开发指导思想。这是下篇。
by @ThoughtWorks 2017-10-09 10:28 分享 查看详情
Serverless实战:打造个人阅读追踪系统 (insights.thoughtworks.cn)
进入互联网时代,知识的获取成本变得前所未有的低廉,但是无论再好的知识,若是没有对个人产生价值的话,那也只不过是一种信息噪音而已。

在之前的一篇文章——《基于GitHub的敏捷学习方法之道与术》,其中提到使用GitHub Issue来管理自己的学习计划,于是就产生了这么一个想法——将我的稍后阅读列表跟GitHub结合起来,使用ZenHub丰富的图表功能将阅读体系进行追踪与可视化。
by @ThoughtWorks 2017-09-29 10:53 分享 查看详情
从React到React Fiber (insights.thoughtworks.cn)
React这样的调度策略对动画的支持也不好。如果React更新一次状态,占用浏览器主线程的时间超过16.6ms[1],就会被人眼发现前后两帧不连续,给用户呈现出动画卡顿的效果。

React核心团队很早之前就预知这样的风险的存在,并且持续探索可解决的方式。基于浏览器对 requestIdleCallback和requestAnimationFrame这两个API的支持,以及其他团队对这两个API的实现,如React Native团队。React团队实现新的调度策略–Fiber reconcile。

Fiber)是一种轻量的执行线程,同线程一样共享定址空间,线程靠系统调度,并且是抢占式多任务处理,Fiber 则是自调用,协作式多任务处理。
by @ThoughtWorks 2017-09-28 11:10 分享 查看详情
都100%代码覆盖了,还会有什么问题? (insights.thoughtworks.cn)
很多人看到这个标题时,都会想“你都100%代码覆盖了,怎么还会有问题呢?” 100%的代码覆盖率不等于100%的测试。我们用一个代码例子来你解说。
by @ThoughtWorks 2017-09-27 10:34 分享 查看详情