`
zhengdl126
  • 浏览: 2540326 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

[转]从开发走向项目管理

 
阅读更多



 从开发走向项目管理
1、角色的改变
2、计划制定和执行
3、进度、质量和成本的控制
4、有效的沟通,


每个系统要做好自我保护, 量力而为, 而不是尽力而为。对于超出自己处理能力范围的请求,要勇于拒绝。
 
 对于用户的重试行为,要适当的延缓。例如登录发现后端响应失败,再重新展现登录页面前,可以适当延时几秒钟,并展现进度条等友好界面。当多次重试还失败的情况下,要安抚用户。
 
 当雪球发生了,直接清空雪球队列(例如重启进程可以清空socket 缓冲区)可能是快速恢复的有效方法。
 
 
 对于“每个系统要有能力发现哪些是有效的请求,哪些是雪球无效的请求”,这里推荐一种方案:在该系统每个机器上新增一个进程: i n t e r f a c e 进程。I n t e r f a c e 进程能够快速的从socket缓冲区中取得请求,打上当前时间戳,压入channel。业务处理进程从channel中获取请求和该请 求的时间戳,如果发现时间戳早于当前时间减去超时时间(即已经超时,处理也没有意义),就直接丢弃该请求,或者应答一个失败报文。Channel是一个先进先出的通信方式,可以是socket,也可以是共享内存、消息队列、或者管道,不限。Socket缓冲区要设置合理,如果过大,导致及时interface进程都需要处理长时间才能清空该队列,就不合适了。建议的大小上限是: 缓存住超时时间内interface进程能够处理掉的请求个数(注意考虑网络通讯中的元数据)。
 
 
就是一个研发,带着大家去做技术选型、技术架构设计,等等这些东西。很多技术经理更多的是做计划、管人,但是我不一样,我喜欢技术,所以我更偏的做技术一些。
 
 团队里面基本上是这样:有一个人非常懂底层,C/C++出身的,对操作系统的底层非常熟,喜欢看代码专研底层;还有一个人是J2EE、Java出身,对Java的架构和各种框架如Spring,Struts这些都很熟;还有一个人对面向对象和软件设计这些比较熟悉。还有人对软件的前端设计比较熟,做过Web Portal的设计;还有人对机器学习的算法和方法非常熟;还有一个人也倾向于底层,但是稍微倾向于网络这边。这些人,每个人都有一块自己非常强的东西,所以他们合作起来也会很舒服,因为他们可以从别人身上学东西,而且自己也能领着别人去做点东西。每个人都有自己的领导力,每个人都有自己的成长空间。我觉得这是让团队比较和谐的原因。
另外,我只是一个支持性的角色,团队主导一切,我只是在旁边支持他们。

 他们愿意去学习自己不了解的领域。
陈皓:对。没有英雄。也没有闲人。每个人都有自己的长处,在这个长处上他可以领着别人做事情,同时也能从别人身上学到自己比较薄弱的东西。
 
一般就是研发经理跟他们沟通,也就是和是项目经理或产品经理沟通。不过我们沟通的时候跟别的地方不一样,不是说产品让我们做什么我们就做什么。我必须要让产品告诉我,你做这个能挣多少钱,为什么要做这个东西,做这个的利益是什么,有什么好处。你说不清楚,我们就不做。

他的基础应该是多元的,一个T型人才。


传统的软件交付过程是通过架构、业务、技术运维、保障等团队之间一步一步把交付物交给下一个环节,最后产生交付软件的价值。这种交付方式的一个明显缺点是各角色仅关注于自己本身的工作,在中间的流通环节产生了很多不必要的浪费,如时间成本和沟通成本等; 同时,这种阶段性的交付通常时间较长,一旦产生问题造成的影响也较大。敏捷开发是为解决这一问题而提出的解决方案。在这种方法里,业务人员也深入到开发当中,这样需求、开发、测试前面三个环节被打通了,但是,到部署的时候仍会出现问题:因为项目是直到最后才交给运维人员部署到线上,部署时经常出现比如IP 问题、机器资源问题、与线上已有程序的冲突等,要花费大量时间解决。出现这种结果是因为,虽然整个团队共同的目标是项目的最终实施,但是作为两个不同角色的部门,开发团队和运维团队对具体的目标仍有不同的追求。那么如何解决开发团队和运维团队之间的这种隔阂?DevOps 应运而


“你要培养一种文化,要建立一种机制。让运维人员参与到更早——只要项目开始,启动阶段就要把运维人员引入进来,一起开个会,让他们知道项目的进程”。同时,开发人员也需要了解到运维人员的工作状态

分享到:
评论

相关推荐

    《从技术走向管理——李元芳履职记》.(王树文)

    《从技术走向管理——李元芳履职记》是王树文撰写的一本关于软件项目管理的书籍,通过虚构的人物李元芳的经历,生动地展现了技术人才如何转型为成功的项目经理。这本书深入浅出地讲解了软件企业在项目管理中的关键...

    项目管理模拟题

    ### 项目管理模拟题知识点解析 #### 一、项目管理过程组的特点 1. **选项分析**: - **A选项**:正确描述了项目管理过程组之间通过成果相互关联的特点,不同过程组间的成果相互依赖,一个过程的输出往往成为另一...

    产品经理从专业走向管理

    1. **专业技能深化**:产品经理首先需要对产品开发流程有深入理解,包括需求分析、产品规划、原型设计、交互设计、UI设计、项目管理、测试和上线等环节。此外,对市场趋势、竞品分析以及用户行为的研究也是必备的...

    MSE《软件项目管理》PPT课件

    作者希望借助这种方法,对即将走向社会从事软件开发项目管理的学生,也对已经从事多年软件项目管理的项目经理们起到理解全局、抓住重点、厘清谬误、启发思维的作用。 实践与理论地合,实用性和可读性相结合是本书的...

    PMP项目管理模板(全套157个文档,包含CMM)

    《PMP项目管理模板——全面解析与应用指南》 PMP(Project Management Professional)是项目...总的来说,这套PMP项目管理模板是项目管理和学习的宝贵资源,能够有效地提升项目管理水平,助你走向成功的项目管理之路。

    专业嵌入式软件开发 全面走向高质高效编程 李云_带书签_文字可选

    通过阅读《专业嵌入式软件开发 全面走向高质高效编程》这本书,读者可以深入理解这些主题,并学习如何在实际项目中应用这些知识,以实现更高效、更可靠的嵌入式系统。书中的书签功能可以帮助读者快速定位关键内容,...

    软件开发项目管理成功指南.pptx

    综上所述,成功的软件开发项目管理需要项目经理具备全面的技能,从市场洞察到技术理解,再到团队管理和变革推动。同时,持续学习和适应变化,不断积累信誉,才能在竞争激烈的IT行业中引领团队走向成功。

    产品经理从专业走向管理.pdf

    产品经理对于产品成功与否起到决定性的作用,不仅要精通产品相关的技术知识,还要具备项目管理、团队协作和市场洞察力等多方面的能力。 文件中提到的“市场力量”(market forces),可能指的是产品经理在制定产品...

    通向成熟的项目管理的16要点.doc

    走向成熟的项目管理需要一套系统的方法和策略,以下是对16个关键要点的详细解释: 1. **采用项目管理方法并持续使用**:这意味着组织应采纳一套标准化的项目管理框架,如PMBOK(项目管理知识体系)或敏捷方法,并在...

    WEB项目软件开发全套文档.zip

    10. **项目管理**:有效的项目管理涉及进度跟踪、资源分配、风险管理以及变更控制。项目经理需要运用敏捷方法或其他项目管理框架,确保项目按时按质完成。 11. **文档更新与维护**:随着项目的进展,相关文档也需要...

    火车票网上售票系统软件项目管理分析

    项目风险管理是项目管理的重要部分,爪哇咖啡软件开发公司需要对项目的风险进行识别、评估和控制,以确保项目的顺利进行。 十一、项目结论 火车票网上售票系统软件项目是解决多年来的火车买票难、排队久问题的重要...

    史上最强项目管理课程讲义375页PPT

    60年代起,随着国际项目管理协会(IPMA)和美国项目管理协会(PMI)的成立,项目管理开始走向国际化,促进了该领域的系统化和专业化发展。 现代项目管理自80年代起兴起,逐渐渗透到社会的各个层面,成为企业战略和...

    项目管理理论下的教育技术管理

    项目管理理论强调的持续改进和创新精神,正是推动教育技术管理走向现代化的关键所在。通过建立灵活的培训体系,提高教师的信息素养和教学能力,以及鼓励学生的自主学习和研究性学习,可以显著增强教育技术管理的效能...

    项目管理师真题

    从给定的文件信息中,我们可以提炼出一系列与项目管理和信息技术相关的知识点,主要围绕项目管理中的可行性分析、风险管理以及项目计划展开。 ### 可行性分析的重要性 在项目管理中,可行性分析是评估项目是否值得...

    项目管理案例分析

    在软件开发领域,项目管理是确保项目成功的关键因素。它涉及到计划、组织、领导和控制资源,以实现特定目标和可衡量的结果。本项目管理案例分析将深入探讨这些概念,并结合实际情境,揭示如何在软件开发过程中有效地...

    软考 - 信息系统项目管理师 - 高项 - 论文 - 论项目沟通管理

    在项目新兴实践方面还要注意与敏捷管理的结合,因为现在的大型项目更多使用的是混合型开发模式,主体功能采用预测型生命周期,而分支功能或非主体功能可能采用敏捷生命周期,只有综合运用领导力技能和项目管理的最佳...

Global site tag (gtag.js) - Google Analytics