您的位置:知识库 » 软件工程

“软件工程”文章列表

英文原文:Conversation Patterns for Software Professionals. Part 1 如果你觉得你所面对的业务人员不知道他们想要什么,那么这篇文章适合你。 在该系列文章中,你可以了解到与业务人员共事的方法。你将学到如何管理对话、挖掘需求及明确期望。让我们...
作者: Micha? Bartyzel   2015-03-02 20:12:02 阅读:2564 标签:敏捷 沟通
前言 随着移动互联网的迅速普及,手机淘宝业务在迅速的成长,目前已经发展成为拥有40多个bundle(业务模块)的超大APP产品,在这后面有着数百名的研发人员的努力工作。业务的成长和人员的倍增给技术架构、团队合作、产品的交付都带来了巨大的挑战。本文将会讲述手机淘宝研发团队在两年的时间为了达到高质...
作者: 杨强   2015-02-04 08:58:29 阅读:4452 标签:持续交付 持续集成
前言 做运维的那么多,快乐的能有几个? 我们那么努力,为什么总感觉过得那么憋屈、苦闷?做的事情那么多,为什么业务部门、直接领导和公司貌似都那么不领情?怎么做才能自己更加开心些? 本专栏的主线实际是一个运维人员的十年成长史,从菜鸟到运维总监。但不是基础技术教学,也不会在运维技术的某一方面过深...
作者: 萧田国   2015-02-02 21:51:32 阅读:5300 标签:DevOps 运维
你有复用习惯吗? 你是程序员吗?我们经常要写数据库连接的代码,这些代码都类似,无非是new一个connection,然后配置connection的参数,然后open。很多编码新手,常常会在不同的地方编写这段类似的代码。其实很简单,这段代码应该抽取出来供每个地方调用。如果你编写的代码中发现很多类...
作者: 张传波   2014-10-07 18:10:15 阅读:5006 标签:复用 管理 团队
一张技术文凭就是铁饭碗敲门砖的时代已经一去不复返了。如今,各大公司寻觅的是具有商业头脑的IT高手,而不是单纯的技术专家。如果你现在是一个编程高手,想要成为一名软件工程师,探索和学习就不能停止。不久之前,软件开发者的软件应用编程和测试工作是相对独立的。如今,DevOps(开发运营)革新浪潮来袭,强...
作者: 刘国强   2014-09-16 17:44:45 阅读:5753 标签:DevOps 运维
英文原文:Software Development: Fast and Slow 本文作者 Michael Dubakov 从事软件开发方面的工作,他在读了 DanielKahneman 的《思考,快与慢》后,思考了软件开发中的快与慢,并且把书中的一些思想应用到实际的软件开发中。下面是笔者对原...
作者: Michael Dubakov   2014-08-28 17:00:47 阅读:3852 标签:软件开发
1、软件长期运营存在什么问题 一个大规模的客户端软件的生命周期中,我们可以把它分为两个比较粗的时期。一个是前期的搭建软件的时期,即从无到有的时期;第二个是搭建完成之后,进入的一个稳定的运营时期。第二个时期才是最关键的,在这个时期我们会持续的迭加需求,持续的优化功能,而且第二个时期也是代码在慢慢...
2014-08-20 08:39:11 阅读:5492
一个正在持续增加新功能的软件,尤其是类似QQ这种做为一个超大规模客户端软件,又随时需要适应用户要求和发展的需求,需要不断的做快速的更新,开发节奏非常快。而且因为我们的用户是海量用户,用户的软硬件环境非常复杂。性能作为软件的用户第一体验,如何去系统性地保障软件的性能,对于QQ来说就变得非常重要。 ...
2014-06-20 12:43:25 阅读:2762 标签:软件开发 性能
英文原文:Swiss Army Knife Syndrome 如果大家认为这篇文章更多是在喷,我先说抱歉。“瑞士军刀综合症”的想法是起源于我和项目经理、客户、甚至其他开发者打交道的过程中产生的沮丧感,他们都以一种狭隘特殊的方式思考问题。我称之为“瑞士军刀综合症”。 瑞士军刀 “瑞士军刀...
作者: Allan MacGregor   2014-05-29 12:38:31 阅读:7380 标签:单一职责
这两天,在微博上表达了一下Code Review的重要性。因为翻看了阿里内部的Review Board上的记录,从上面发现Code Review做得好的是一些比较偏技术的团队,而偏业务的技术团队基本上没有看到Code Review的记录。当然,这并不能说没有记录他们就没有做Code Review...
作者: 陈皓   2014-04-14 08:34:59 阅读:17721 标签:Code Review
Jim Bird是一位经验丰富的软件开发经理、项目经理与CTO,专注于软件开发与维护、软件质量与安全等领域中疑难问题的解决。在过去的15年间,Jim曾管理过团队建设并主导过高性能的财务系统的建设。他的主要兴趣在于如何提升小团队的效率以构建真正的软件:高质量、安全、可靠、高性能及适应性强。近日,J...
2014-03-07 18:22:22 阅读:11564 标签:代码审查
英文原文:El-Habya'a” or the Technical Debt 我们曾遇到过最后期限即将到来、时间非常紧迫的情况。当时,我们必须尽快修复Bug,然而其中的一个Bug特别坚韧,任我们百般努力也无可奈何!随后,我的某个同事接手了调试工作。他强行写入了一些应该从数据库中检索来获取的值—...
作者: Yaser Marey   2014-02-19 21:51:42 阅读:2656 标签:程序员 技术债 项目管理
[注:原文发布于2011年12月23日] 背景 现如今,单元测试、自动化验收测试、持续集成等技术手段已被很多项目团队所采用,它们可以在软件开发活动中很大程度的保证开发软件的正确性,即是否满足了新的需求并且没有破坏已有的需求。但是如果软件无法顺利的部署到生产环境上,就不能带来任何商业价值。 ...
作者: 冯智超   2013-12-15 12:31:01 阅读:1996 标签:持续集成 虚拟化 云计算
英文原文:Why Software Development Methodologies Suck 围绕软件开发实践和方法论,总有很多教条式的口水仗。阶段式(phase-gate)方法能够有效管理软件开发过程的风险,还是说只是风险管理中的花哨噱头?TDD真的能够促生出高品质软件?结对编程是代码评...
2013-06-20 18:01:18 阅读:4198 标签:软件开发管理
在《建设全功能团队》和《建设全功能团队——实践篇》两篇文章中,我的同事胡凯曾介绍过建设全功能团队的必要性和良好实践,此后在围绕这一话题的讨论中,很多人都分享了自己的理解,或看好,或看淡。在ThoughtWorks有许多团队一直在建设全功能团队方面实践着,在这篇文章中我希望与大家分享我从这些团队收...
作者: 吴少博   2013-06-07 10:37:41 阅读:3361 标签:团队管理
英文原文:The Best Developer Team Structure 在灭火时,有一种“水桶阵型”——队伍中所有人排成一列或几列,将水桶从水源处传递到火灾现场。这样在团队协作时甚至不需要语言交流,但显然不适用于软件开发。 Scott根据自身经验,针对软件开发总结了以下几点建议,不一定...
作者: Scott Porad   2013-06-05 16:18:50 阅读:4047 标签:开发团队
英文原文:Patterns for Continuous Delivery 当你有了持续集成需要的构建服务器和脚本之后,下一个问题肯定是:“我们该拿这些构建版本怎么办?”持续交付,以自动化或半自动化方式,将构建版本从一个环境提送(promote)到更接近实际生产的交付准备环境;这常常是公司在这...
作者: Jonathan   2013-05-20 08:41:01 阅读:5662 标签:持续交付
英文原文:11 Laws of The System Thinking in Software Development “我会更加努力地工作” —— 一匹名叫Boxer的马(出自乔治·奥威尔的《动物农庄》) 彼得·圣吉在其著作《第五项修炼》中提到的系统思维定律同样适用于软件开发。 1. 今...
作者: Andriy Solovey   2013-05-13 21:39:16 阅读:7845 标签:软件开发
什么是遗留系统(Legacy System)?根据维基百科的定义,遗留系统是一种旧的方法、旧的技术、旧的计算机系统或应用程序[1]。这一定义事实上并没有很好地揭露遗留系统的本质。我认为,遗留系统首先是一个还在运行和使用,但已步入软件生命周期衰老期的软件系统。它符合所谓的“奶牛规则”:奶牛逐渐衰老...
作者: 张逸   2013-04-23 22:23:57 阅读:2790 标签:遗留系统
【编者注】王淮是Facebook第二位中国籍工程师,也是第一位中国籍研发经理,他一手开创了Facebook的支付安全和客服工具领域。2011年他离开Facebook,回国成为天使投资人,希望用自己在Facebook的经验帮助创业者。 在详细说明Facebook产品开发流程的九大步骤之前,必须先...
作者: 王淮   2013-03-25 17:22:46 阅读:6200 标签:Facebook 开发流程