[转]软件项目中,需求怎么做?
对于软件开发团队而言,软件开发的全过程是:做什么 -> 怎么做 -> 做 -> 成果检验 -> 交付部署;其中,“做什么”对应的是需求分析过程,“怎么做”对应于软件架构设计过程,“做”对应于开发过程,“成果检验”对应于测试,部署由运维团队执行后,如果达到用户的要求,则软件上线后进入软件的运行生命周期。
Just One Pure ITer
对于软件开发团队而言,软件开发的全过程是:做什么 -> 怎么做 -> 做 -> 成果检验 -> 交付部署;其中,“做什么”对应的是需求分析过程,“怎么做”对应于软件架构设计过程,“做”对应于开发过程,“成果检验”对应于测试,部署由运维团队执行后,如果达到用户的要求,则软件上线后进入软件的运行生命周期。
1. 0 题记 在很多软件公司,特别是一些创业型的团队中,对于这样的情景可能大家都很熟悉:项目经理或者产品经理(产品狗)口头或者简单记录一下软件产品的大致要做的功能,直接就让研发团队的兄弟(程序猿)去狂撸代码。然后他就去喝茶撩妹或者回家陪老婆了… 这种撸起袖子就开干的方式,看似简单高效,便于直接沟通,能够快速迭代。却不知,发现没有一份正规且实时更新的功能需求设计文档,会付出三四倍的代价来弥补。 最终会引发一场产品狗和程序猿之间的“猿狗大战”…
郭炜,毕业于北京大学,2016 年加入易观,担任易观 CTO,构建易观技术团队完成易观大数据采集、平台、数据挖掘等技术架构与体系。加入易观智库之前,曾任联想研究院大数据总监,万达电商数据部总经理、并曾在中金、IBM、Teradata 公司担任大数据方向重要岗位。在大数据采集、存储、处理、挖掘、应用研发等方面具有丰富的理论和实践经验。同时在技术管理上有独特的见解与实践。 分享主题:《空降 CTO 的立与升》
首先我给大家看看 CTO 应该干什么,或者说一个技术人员,互联网公司都会遇到所有这些事。这个坐标轴最左面是操作一级的,比如说写代码、测试网络、测试、搭防火墙、写脚本等等,到这边是管理上的事,再往那边是领导上的事情。这个方向是公司的规模,公司的规模越小需要操心的具体事越多,公司的事越大,你需要的领导力越多。除具体的事以外,还有流程、监控、规范、技术氛围、交往、技术体系、预算、公司的技术形象、公司技术方向、技术战略,事很多。
在多年的技术管理工作中,我曾不断地遇到很多已经转型或即将转型为技术管理者的同事,他们都表达了一些类似的困惑:如何成功转型?不想丢掉技术,但如何在不丢掉技术的同时还能提升管理能力?以下是我个人在经历困惑和挣扎这个过程后的一些个人想法,在这里分享给大家。
在我决定调到德国来工作时,我和一个老领导(西班牙人)谈心。他以前也曾派驻德国好多年,所以对德国的工作环境很熟悉。 他是一个说话不绕弯子的人,常常言简意赅。 他说,你确定要在德国工作?我告诉你,德国人很malos (坏蛋)。 我大为不解。我感觉虽然德国人的个性比较奇葩,但是普遍素质还是比较高的,怎么就成了“坏蛋”了? 后来我在这里工作了两年后,才开始慢慢能体会当时的老领导是什么意思。他说的当然不是个人品质上的鸡鸣狗盗的“坏”,而是指这里的职场坏境常会让你感到一股冷酷无情。 相对于热情温暖开放的西班牙人来说,这里你常常感到孤立无援,当然偶尔忍不住骂一声:这帮坏蛋!
【编者按】抛开这个夸张的骗点击量的标题,我希望告诉你:称职的技术主管确实是拥有普通工程师10倍功力的麒麟之才。不过,这位技术主管在技术之外还需要将强有力的开发能力传授给队伍中的每个成员。在技术主管的指导下,幸运的工程师会感觉自己拥有了10倍的能力,并可以享受前所未有的强大支持。 而且,我希望告诉你,技术主管用头上的白发换来的这种神奇的10倍魔力的光环,并不一定会牺牲任何人的幸福。技术主管扛下了所有工作中的“杂项”,大大加快了重要工作的生产力,从而确保团队成员可以尽情享受工作和生活的乐趣。对于那些拥有一个称职的技术主管的团队成员来说,这是莫大的幸福。 在称职的技术主管的指导下,幸运的工程师会感觉自己拥有了10倍的能力。
作为一名软件工程师,我花了很多时间在阅读和撰写设计文档上。在磨砺了数百篇文档之后,我发现,优秀的设计文档与项目的成功之间有着密切的联系。 这篇文章将介绍怎样才能写出一份优秀的设计文档。 为什么要写设计文档? 设计文档也就是技术规范,用于描述你打算如何解决问题。已经有很多文章说明了为什么在开始编码之前要先写设计文档,这里不再赘述,不过我想再补充一句: 设计文档是确保正确完成工作最有用的工具。
本文的主题是技术选型,作者总结了他见过的各种不靠谱的技术选型方式,比如有的团队会根据社交媒体上的讨论来决定选择哪种架构,也有的团队会跟风走,哪个热门就选哪个。但总体来看,这样简单粗暴的方式一定会为未来埋下隐患。那为什么这样说?我们应该如何做正确的选择?且听作者细细道来。另本文译者余晟,曾经是主力程序员、技术文章的写作和翻译爱好者,现在在沪江负责研发和软件架构。欢迎关注他的个人公众号“余晟以为”,了解一位非典型 IT 人员对世界的看法。 软件开发团队所做的软件架构或技术栈的决策,很多并没有经过踏实的研究和对目标成果的认真思考,而是不准确的意见、社交媒体的信息,或者就些是“热闹”的玩意。我称这种作派为“热闹驱动开发(Hype Driven Development,HDD)”,眼见它的危害,我赞成更专业的做法,就是“脚踏实地的软件工程”。下面我们一起看看HDD的来龙去脉,想想能如何改进。
15年初,我怀揣着实现一个人生小目标的梦想加入到一家初创公司,希冀能见证公司产品从0到1,从1到10,融资从A到C。可是半年后,虽然产品从0到1是有了,但由于运营模式的限制,从1到10走的很难,用户规模上不去,融资也是没有影子。我开始焦虑起来,这样下去,我要当上总经理,出任CEO,迎娶白富美的人生小目标,可是要萎掉的啊。 于是,那时还是程序猿的我,渐渐”多事”起来:
Follow:
Cookie | Duration | Description |
---|---|---|
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |