软件体系结构引入中的项目管理问题-研发项目管理

>>软件体系结构引入中的项目管理问题-研发项目管理

软件体系结构引入中的项目管理问题-研发项目管理

引言:当今社会市场竞争激烈,软件开发企业想要占据前列需要在研发管理上下功夫,“向管理要效益”已经成为软件开发企业的共识,研发项目管理在软件企业中的普及也是大势所趋。国内做软件项目管理工具的开发商翼发云近几年发展十分迅速,越来越多的软件开发企业认识到研发项目管理的重要性,能切实有效降低成本,规范软件开发流程,提高软件产品质量。国内研发项目管理系统、敏捷开发管理工具的领导品牌翼发云敏捷项目管理系统采用可视化业务流程技术,支持瀑布模型等传统软件研发项目管理,同时也支持scrum等敏捷开发流程,是理想的敏捷开发管理工具,涵盖软件项目管理工作的整个生命周期。为提高国内软件开发企业的项目管理水平,分享一篇企业管理相关的知识文章。

软件体系结构的

介绍项目管理问题

scrum

很多朋友已经或正在管理一个或多个软件项目,所以我的文章开始的问题:最大的问题在软件项目管理过程中暴露出来的是什么,如果只是从表现?

软件项目管理

不同的人会有不同的答案,但我认为大多数答案都会被大多数人接受。这是“的进步”。进步的拖延当然是一种现象,我认为它与进步的拖延是密切相关的,如失败的质量、不完全的功能等等。许多项目经理要做的事情,被认为是必要的,如计划、测试等,但“没有时间”。你为什么没有时间?当项目总结时,我们总是列出很多理由试图说服公司,说服公司甚至说服客户。但如果项目经理只是自己找原因,我觉得这个问题不难找到。

敏捷开发流程

在这里,我用“丰田”的“的五次,为什么”方法来问这个问题,我认为最可能的答案是:

一、为什么项目进度延误?因为它没有遵循项目计划!研发项目管理

两。为什么不按照项目计划呢?因为进步总是有拖延的,缓冲时间总是被用光的。

三,为什么不更仔细地计划,更接近现实?总会有额外的工作。

四。为什么不充分评估每一项工作,使意想不到的工作尽可能小?因为它确实不能被评估,很多被认为是原子的工作会产生各种各样的问题。

五。是否有其他项目可以参考的项目计划?因为在这两个项目中有太多不同的点,所以很难重用。

在这种情况下,我认为一般项目的核心问题都摆在我们面前。我们现在不谈这个。让我们用几个简单的例子使他更加生动。

我们使用一个非软件的例子来为这个例子做一个详细的项目计划,并评估最精确的时间。

示例1:请评估我每一个人重放这篇文章的时间。

这个例子是最简单的。对我自己来说,打字速度是每分钟30个汉字,所以这篇文章重新播放的时间是单词总数3000/30=100分钟。有兴趣的时间,最大值为120分钟。

答案是相当准确的,我不认为有太多的人不同意,但下一个例子可能有点不同。

例2:请打开以下方程:x2 +活力+ Q = 0,P = 2,Q = 1

初中的方程,但很多人可能忘记了它的通解公式,但我们认为我们都知道解公式:P / 2 # 177;sqrt(P2 / Q)。在评估时间的时候,我们首先要知道我们打开计算器的时间,输入数据,复制结果,并且为了保证计算的准确,我们需要检查。好吧,这次权威的估计大概是好1个例子那么有说服力,但因为我们经常需要重新计算错,恐怕很难避免加班。

示例3:请根据我的介绍和我自己项目的实践重写一篇文章。

哦!如果有人能准确地估计这个时间,它应该是一个高手。让我们看看为了完成示例3我们需要做多少事情:制定大纲,划分写作内容,评估每个内容的打字速度和内容。…,在我看来,没有计算,更多的计算,这项工作的进展仍将被推迟。

这三个例子有什么不同吗?当然!掌握了示例1的估计方法,执行过程中的变量是最少的,因为我们不需要进行任何探索过程。(猜一个词的五个字体不是,至少我用微软拼音)。2个不同点的例子是解决问题的方法需要外部因素的参与,但这项技术并不是每个人都掌握(或记住),最重要的特点是每一步我们都需要估计完成它所需的时间,如果我们曾经计算过一次,当然,第二步会被估计得更准确。但是现实生活中的项目很少给你机会再做一遍。当你完成项目,各种与这个项目相关的方法将失去它的作用,它唯一的价值就是潜入你的记忆,一个所谓的“ ”项目经验,和“ ”经验往往在项目水土不服。相反,例子2是一些有形的行动,评价会有一些根据,而3个例子几乎是纯脑力锻炼,让你刚刚组装好文章,我看时间表估计太难认识谁了。一、要多少时间,甚至把发呆?

我们把话题拉回到前五次。软件项目或其他项目能够按时完成最重要的事情是做不好的“计划”。我们是否制定一个实际的项目计划是项目成败的晴雨表。

进行项目计划贴近现实,我们需要把所有的工作项目都列出来,然后细分的每一步,分为“原子”,不能从软件项目的程度划分,分配给“文件”,“到”甚至“功能”水平。然后我们评估这些“ ”原子水平的工作时间,积累、整合,最后以一个系数(通常为2),即,它需要

最终项目的时间。

说起来容易,做起来难!在原子级进行细分工作的必要性足以让大量的项目经理当场晕倒。

让我们回到示例2。如果解决问题的人忘记了公式,那么前一个估计的进展会不会被调整?答案是肯定的。这一次我们需要考虑寻找信息的时间,只要你找到公式,计算结果就不是问题了,找一个公式在网络连接平滑的情况下,包括网络搜索,问问同事等等,一个小时就足够了!

如果我们只需要一个小时,找到一个公式,我们需要修改例2的问题来计算“傅立叶”

转换(非编程)需要多少时间?显然,求解两个变量的方程不是一个数量级。除了查找数据外,大多数人还需要学习。人不可以没有高等数学需要加入“研究”。

从例子2中,我们可以得出以下现象:工作和工作之间看似简单的工作,这可能意味着巨大的工作量,尤其是在没有先决条件或准备不足的情况下。准确估计时间的工作,我们首先要把“ “折叠”树” “ ”完全是可能的,那么它必须包含在“ ”工作,“ ”和学习“查询搜索”工作量。简而言之,当实际项目启动时,必须尽可能简单和可预见地工作,并尽量排除那些无法控制和不可靠的因素。

换句话说,一个项目的所有工作和时间之间的关系必须“线性”。如果我们不能排除“非线性”工作,它也必须在可控的范围” “。的“非线性”因子不允许在项目。

一词:大脑活动更慢的事情!

在项目的多少的因素是不可控的” “?什么是“控制”?对“线性”因素是什么?要回答这个问题,让我们在我们目前的软件开发方法和过程:

开始看

(1)通过对收据收据

签订合同

(二)的

需求调查与分析

(三)设计

建筑设计概述

(四)对

详细设计

(五)编码和测试

(六)对

交付和维护

大致有六个步骤,其中345个与我们讨论的开发过程相关(另一部分我将在后面的系列中讨论)。我们先看第三点和第四点,他们被称为“ ”,参考了2 “ ”设计的目标是解决四个问题:数据结构、软件体系结构、过程细节、界面特性。

有经验的读者,我想看到很多传统的“设计”解决问题应归纳为当前“建筑”范围。软件体系结构的范围包括以下内容:

(我)应用程序的层次划分(如界面层、存储层等),

(二)应用程序的模块划分(如初始化模块、配置模块、权限模块、等),

(三)对应用模块的实现部分(权限、用户、组织管理等),

(四)函数库的实现,

(五)每个模块层和通信机制的关系,

(六)数据结构定义的相关部分。

因此,在上述第三和第四点是最基本的和最重要的“建筑”作品,其余的基本上是特定业务相关的。

在上述三“xx在”设计、建筑设计的时间是最难控制和估计,概要设计和详细设计因为它是直接从输入要求的进化,并且很容易提炼(稍后我将要讨论的文章),所以虽然它属于“ ” “非线性”的设计,但“可控”超过“ ”架构。从维修项目的个人经验,在过程中出现的维护问题,有相当一部分是因为用户需要打破原有结构造成的能力,正是这个问题,这是最长的延迟,使客户反映最强烈,最痛苦的是最头痛的问题的维修人员。因此,“建筑设计”,我将其分为“非线性”工作,它是“难”工作。

我看到很多公司软件部门被称为““研发部”,英语,就是研发部,但是我很少看到一个公司的独立研究和发展从两部门。这和这有什么关系?从以上我们可以看出,该研究是一项非常耗费资源的,和风险(尤其是技术风险),可能是因为一个小问题不能突破整个结构和被推翻的发展,风险要小得多,更可控;另一大区别是,研究不直接创造价值,并与公司的发展是与收入密切相关。基于以上两点原因,它足以将”和“发展”分成两部。当然,还有许多其他的区别,比如评估方法。

离职后你如何分配工作?很简单,是“ ”难等“非线性”工作掌握聚集在“ ”部做研究软件体系结构;具体项目实现相关业务(“线性”工作)的“ ”开发部做的,因为他们不是技术要求高,成本低。在这种情况下,我认为每个公司都需要一个特别的人去“研究”技术?相反,我认为大多数公司不需要设置“研究”部门。至少,大多数企业不发展,甚至试图建立所谓的“自己”软件体系结构。由于软件架构与具体业务相比具有一定的独立性,和“ ”软件体系结构是一个不“,尤其对于某些类型的行业”即使有,它应该在N项目测试会出现(N×M & gt;10)。我相信SAP会有这样一个框架,但国内公司不会(也许,但请理解我的疑虑)。现在市场上有很多的开源框架,选择它,然后去训练你的员工,不断的培训,引导他们有能力对本系统应用到项目的日期,即使如此,总成本也远远小于你问师父“ ”建立故障输入框架。

如何选择一个现成的框架是不在讨论范围之内,因为我要谈的是如何发展自己的” “架构,但不要惊慌,如果你的开发语言是java,那么恭喜你,很好用的java开源框架。例如,Spring MVC,Struts / WebWork、挂毯;如果你使用的是.net平台,那么微软已经帮你做一个浅的包,或干脆使用.NET PetShop和Duwamish架构可以。

在下一篇文章中,我们来谈谈软件体系结构对项目管理的作用。

二氯二苯醚

参考文献:

一、对软件项目http://pm.aura.cn/newsarticle/project-app/214748834.html

失败因素分析

二、软件工程(杨文龙等编辑)电子工业出版社isbn7-5053-4058-1

文章从互联网整理而来,旨在传播scrum、软件项目管理、研发项目管理、敏捷开发管理工具的知识与应用,帮助软件开发企业真正了解研发项目管理的价值和意义,如果本文侵犯了您的权益或者您需要具体了解更多国内做研发项目管理系统的公司翼发云敏捷项目管理系统的相关信息,欢迎和我们联络:

【网址】www.effapp.com

2018-02-24T11:35:57+08:002018-02-24 11:35:57|Categories: scrum项目管理|