Questions tagged «project-management»

项目管理是规划,组织,保护和管理资源以实现特定目标的学科。

3
聪明的PHP应用程序组织结构?
有成百上千的文件系统结构可用于众多可用的开源项目中。诸如模块,语言文件,域,第三方库,迁移,国际化,备份以及到系统其他部分的系统链接之类的东西已经产生了许多组织项目文件系统的方法。 作为一个PHP开发人员,我想知道项目之间是否开始出现任何类型的标准化。使用PSR-0,我们终于有了命名和加载文件的标准-但据我所知,关于组成系统的其余组件或如何以理智的方式处理它们,这毫无意义。 我们所处理的不只是MVC,还有很多大型项目可以正确地处理所有这些事情?


6
新项目的规划和编程的正确组合
我将要开始一个新项目(一个游戏,但这并不重要)。基本想法在我脑海中,但并非所有细节。 我不想在没有计划的情况下开始编程,但是我正在认真地奋斗去做到这一点。我想在防止重构整个应用程序之前进行一些计划,仅因为我想到的一项新功能就需要它。另一方面,我不想计划多个月(业余时间)并重新开始,因为我担心这次我会失去动力。 我正在寻找的是一种将两者结合而又不占主导地位的方法。我应该以Scrum方式实现项目吗?我应该创建用户故事然后实现它们吗?我应该工作功能驱动吗?(我在scrum和经典的“代码规范”方面有一定的经验。) 更新:如何从“单击虚拟对象”开始并在以后实现功能?

4
哪些软件开发方法可以视为基础
我正在写一份涉及软件开发方法论的小型研究论文。我一直在研究所有可用的方法论,并且想知道在所有方法论中,是否有任何方法为其他方法论奠定了基础? 例如,查看以下方法: 敏捷,原型设计,洁净室,迭代,RAD,RUP,螺旋,瀑布,XP,精益,Scrum,V模型,TDD。 我们可以说: 原型,迭代,螺旋和瀑布是其他的“基础”吗? 还是没有“基础”之类的东西,每种方法都有自己独特的历史吗? 我当然想在我的研究论文中描述所有方法论,但是我根本没有时间这样做,这就是为什么我想知道哪些方法论可以看作代表。

6
如何与微观管理的项目经理打交道?
也许我只是天真,但是当我尝试破译一周内要完成的任务时,我无奈地认为,制定项目进度表的人需要接受一些补救培训基本项目管理。 例如,今天分配给我13个任务,最短的持续时间为.13天(Microsoft Project中的默认时间度量),最长的持续时间为.75天。我忍不住认为这是在不到10分钟的时间间隔内公然的微管理计划项目。 管理的效果在任务减少,资源分配在某些时间点超出容量两倍的情况下变得明显,并且花费更多的时间来完成任务并弄清楚下一步工作比实际工作要多。 我如何说服项目经理创建更长的任务并看到更大的图景?

7
软件开发人员与商业客户之间的适当关系是什么?
IT专业人员是受企业或组织的IT资产信任的专家。作为值得信赖的专业人员,我们承担的责任超出了非IT客户可以理解或意识到的范围。因此,我认为IT专业人员与其内部/外部客户之间的正确关系更像是医生和患者之间的关系,而不是仆人和主人之间的关系。我对吗? 这是一个可以考虑的类比。患者坚持认为他的腿需要被截肢。他的医生不同意,但不能说服患者。医生应该为了让患者满意而截肢吗? 另一个比喻。客户希望土木工程师为不安全的设计搭建桥梁。即使工程师解释说这是不安全的,客户也不相信他。工程师是否仍应建造桥梁? 我认为这两个类比的正确答案是“否”。即使面对患者/客户的不赞成,医学专业人员和工程专业人员也应该处于信任状态,应该行使自己的判断力。当IT专业人员有资格做出决定而他的客户没有资格做出决定时,对IT专业人员也应该适用吗?

7
敏捷过程:应如何记录以及记录什么?
不久前,我工作的公司将开发项目外包给了第三方。他们在开发解决方案时采用了敏捷实践。但是,当要求提供文档时,他们只会说这是必需的,因为它已合并到Wiki或作为其冲刺的一部分。 他们确实在项目完成时离开了,除一个项目团队外,其他所有人都离开了。年度订阅到期后,该项目Wiki网站现在已关闭。 当他们离开时,他们掌握了与他们一起发展的大部分知识和理解。 所以我有两个主要问题; 这对于敏捷性来说是正常的,还是只是不想写它的借口? 在敏捷项目中记录开发需求,设计,关键决策和环境的文档的行业规范是什么?

4
准备好交付项目时需要注意哪些事项?
我目前是相当大的Web应用程序(ASP.NET MVC堆栈,大约150K +代码行)的唯一开发人员/架构师,开发工作即将结束。因此,我开始考虑为完成该项目需要做什么,并且我想确保自己为将来必须维护该项目的任何人做正确的事情。 准备将项目移交给维护的其他开发人员或开发人员团队时,需要注意哪些事项?

6
如何与大学生一起实施发展过程
在我作为软件开发人员的第一份工作中,我的团队使用敏捷/混乱来管理我们的项目工作流程,并且效果很好。我有一些经验丰富的导师,他们使我走上了正确的道路-我欠他们很多谢意。我在那里工作了几年,然后在几个月前搬到了一个新的机会。 快进我目前的工作。我在大学的教授指导下工作。自从我上大学以来,几乎每个程序员都是学生(他们很便宜而且很多!)我的老板有管理经验,但是没有软件开发经验,并且软件团队并不总是站在我老板的头脑中。这些条件已经创造了完美的环境,创造了一些非常差质量的软件。软件项目似乎有些无赖,没有设计思想,并且采用了一些真正令人恐惧的做法。我知道情况会更好。 我想实现一个开发过程,以帮助每个人步入正轨,提高代码质量,并部署更稳定的软件。我只是不确定从哪里开始。 可以说,我不是在寻找诸如“使用Scrum”,“设置看板”或“看看敏捷!”之类的答案!(尽管对此表示赞赏)。更具体地说,我希望深入了解如何为该工作环境实施开发过程。员工通常在上班之前工作1至2年,通常没有经验,几乎不可能安排包括每个人在内的日常站立会议。 在这样的工作场所如何提高质量,效率和沟通能力? 更新:阅读了一些答案和评论后,我想我还会提供一些其他背景知识。 我不认为自己在艺术软件开发的高手,但我很足够的经验来识别不好的编程当我看到它。在花一两分钟与他们合作之后,我可以确定开发人员是否才华横溢。我很舒服,我自己的能力,以找到一种方法来解决问题巧妙,然而,在我实在缺乏经验的面积是项目管理,而其他开发人员参与(这就是为什么我在这里问你的精彩人民的建议)。 我听起来像是进入这个办公室的每个学生都是一个完全昏昏欲睡的人。这里有些坏蛋,但是我遇到的大多数学生都是聪明的,想学习的,并对工作充满热情。有些人才刚刚起步,他们不知道自己不知道什么。没关系。刚开始编程时,我的生活就再好不过了!

3
如何为多个项目中解决的问题建立故事准备模型
在我们公司中,几个团队将同时从事多个项目的不同组成部分。例如,一个团队可能为某些项目制作特定种类的软件(或硬件),而另一个团队可能制作另一种特定种类的软件。我们使用Jira项目来托管特定项目的问题,并使用Jira董事会来为不同团队的sprint进行托管。 我们面临着避免在项目之间重复代码的问题,并且已经开发了一套在这些项目中使用的核心库。在进行项目工作时,一些开发人员会意识到他们编写的一段代码更加有趣,应该将其提取到一个核心库中,或者他们正在使用的某些核心代码存在错误,需要更多的参数化,或者新功能...您命名。 因此,他们创建了一个核心库问题,该问题进入了核心项目的待办事项列表。在核心图书馆会议上(一周一次)对所有这些问题进行审查,确定优先级和估算,并将在以后的某些冲刺中根据其优先级(与项目相关的问题)进行处理。 通过对问题进行排序来确定优先级,然后sorted在已排序的问题上贴上标签(以便我们可以搜索未排序的问题)。然后,我们将每个核心组件手动发行一个问题到待办事项的顶部,以便首先解决它们。当某些团队将这样的问题放入他们的冲刺中时,他们不得不手动将另一个项目拖到待办事项列表的顶部。 这很容易出错。基本上,我们拥有的是“未解决”和“进行中”之间的其他问题状态“已排序”和“估计”。通过sorted标签及其在电路板上的位置来反映这一点非常麻烦且容易出错。(例如,如果有人在某个冲刺中上下移动一个问题,这将反映在核心董事会上,默默地扰乱团队在几周前的广泛讨论中可能已经决定的问题的顺序。) 那么有什么更好的方法来实现呢?

7
除了在冲刺之间建立有效的组合之外,敏捷实践是否还有其他优势?
最近,我对软件开发中的敏捷实践产生了兴趣,从那以后,我已经看到很多文章指出,这些实践可以降低总体成本。 其背后的逻辑通常是这样的:如果您的需求发生变化,则可以在下一个sprint待办事项列表中反映此变化,这将导致成本降低,因为设计新功能并在时间上紧密地实现了新功能,因此根据著名的规则,成本降低了,您越晚需要对需求进行更改,满足该需求的成本就越高。 但是中大型软件项目很复杂。需求的突然变化并不意味着您不必接触系统的其他部分即可满足该需求。在很多情况下,将需要对架构进行非常大的修改,这也意味着您将需要重新实现依赖于较旧架构的所有功能。因此,降低成本的要点在这里已经消失了。当然,如果新的需求需要系统的新的独立部分,那不是问题,旧的体系结构只会不断增长,不需要重新考虑和重新实现。 相反。如果您使用的是瀑布,但突然意识到必须引入新的要求,则可以进行更改。如果需要更改现有体系结构,则可以重新设计它。如果它并没有真正引起混乱,而只是引入了系统的新部分,那么您就去做所有的工作,在这里没有问题。 话虽如此,在我看来,敏捷开发的唯一优势是可以在sprint之间完成功能的完整构建,对于很多人和项目来说,这并不关键。此外,敏捷似乎会导致整个软件体系结构不佳,因为某种功能会相互重叠,因此敏捷团队只关心功能的工作原理,而不是功能的工作原理。看起来,当系统随着时间的推移而变得越来越复杂时,敏捷开发实践实际上会增加整个产品架构的混乱度,从而最终导致更高的成本,因为引入变更的难度越来越大,而瀑布式设计则可以使您完善架构在释放任何东西之前。 有人可以指出我在哪里出问题了吗,因为显然很多人在生产环境中使用敏捷,所以我一定在某个地方错了。

7
应该为错误重新打开案例,还是应该以新案例打开错误?
目前,在我的工作地点,我们使用FogBugz来管理我们不同Web应用程序的所有功能和错误。 当要将新功能添加到我们的一个Web应用程序中时,将创建一个新的Case。例如“创建CSV上传表单”。 然后,我处理案件,记录我花在该案件上的时间。完成此案例后,我将对其进行解决,然后将其分配回开箱器(通常是项目经理),然后由其关闭该案例。 如果该功能有任何错误,则我的项目管理器将重新打开该案例,并将其归还给我,并附上一系列漏洞的要点。 在我看来,我认为这些指向项目符号的错误应作为单独的错误案例打开,以便可以更轻松地对其进行跟踪,而不会因原始功能案例说明而混乱。 我的经理们不同意我的说法,如果在一种情况下全部花费在该功能上,则更容易计算出该功能所花费的总时间。 此外,他们认为,这对于我们的客户而言不会造成太大的混淆,因为该功能仅具有1个案例编号参考。但是,我要强调指出,这些错误应作为单独的案例处理,因为这是原始案例的完成后。 我是否正确地指出应该重新打开Bug作为新案例?每种管理方式的利弊是什么?

5
在传统项目开始后介绍敏捷开发
大约一年半以前,我进入一个声称从事敏捷开发的工作场所。我了解到,这个地方采用了几种敏捷实践(例如日常站立,冲刺计划和冲刺审查),但没有一个原则(及时/足够的心态,尽早暴露失败,丰富的沟通)。 现在,我承担了使团队更加敏捷的任务,并向我保证,开发人员和业务团队已完全同意我的要求。作为一个试点计划,他们给了我一个项目,该项目刚刚完成了15个月的需求收集,有110页的“分析与设计”文档(被认为是“一成不变的”),而且我无法找到最终结果。用户(仅限于实际上不会使用该产品的用户经理组成的委员会)。 我从小处着手,为他们提供了前5个冲刺的预期可交付成果的列表(未定义未来的冲刺),第一个冲刺的目标列表,并且剖析了A&D文档以获取足够的用户案例来满足第一个冲刺的目标。 从那时起,他们就问为什么我们对所有sprint都没有所有要求,为什么我没有开始为第三个sprint(他们认为更重要,但基于第一个sprint的成果) 2个sprint),并要求获得整个IT团队认为繁忙的工作或与我们无关的更多文档(例如,预先编写用户手册,预先记录所有sprint中的所有数据字段等) “前期”工作)。 作为一个新的项目经理,这对我来说是很艰难的,但是我已经有效地实现了一些改进,例如故事管理的scrumban,结对编程,以及让业务预先为我们提供了客户验收测试(作为需求文档的一部分) 。 所以我的问题是: 我该怎么做才能更有效地将变革引入抵制企业? 我可以在IT方面引入其他实践来帮助向企业展示敏捷的好处吗? 文档的负担使我们感到窒息-企业仍然将其视为风险管理策略,而不是风险。我们可以采取什么措施来减轻他们对文档的关注和要求(特别是文档的数量及其对所有这些文档的需求)? 我们与公司位于不同的建筑物中,位于大约3个街区之外,他们拒绝让该项目的人员同居b / c,因为该人员“在他们在我们公司时将无法从事其他项目建造。” 他们希望我们总是走到那里,把我们的问题捆绑在一起,这样我们就可以立即问他们,而不会因为“不断的打扰”而浪费那个人的时间。我们如何做才能与他们进行更丰富的沟通? 任何其他建议也将不胜感激。 谢谢!

7
如何应对频繁的需求变更?
我目前在我的工作场所中正面临压力很大(我认为)的情况。 我们已经开始开发新项目,获得一些需求,实施它,然后向您展示可以称为“业务顾问”的人(知道业务需求但不会使用该程序的人)。该人员应该从客户的角度评估应用程序,进行测试等。 以下是“过程”的外观: 商业顾问在晚上与我的老板在Windows Messenger上进行一两个小时的交谈 第二天,我收到包含该对话副本的电子邮件。我应该从中选择任务,检查报告的错误(通常不是错误,只是测试不善,忘记了过去的机构) 我实施变更,实施被接受,然后一两个星期后,事实证明他们不想要他们(他们与一些潜在客户进行了5分钟的交谈,他提出了修改建议)-我必须进行新的变更 不要误会我的意思,我知道有时候需求会改变。让我不高兴的是,这种变化在我的工作场所发生的频率如何,而“管理”的难易程度是两个因素提出了新的要求,或者有时是对现有功能的根本性更改。 同时,我们在紧迫的期限内进行工作,我给人留下的印象是,与其使用我们的软件,不如继续前进。 我寻求您的建议如何处理这种情况?这是正常情况,我对此很敏感吗?

5
使用新代码管理新团队的提示/技巧
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 在一个新团队中,您如何处理自己?在这个团队中,您是最高级的开发人员,而团队中的其他大多数人都比您小很多。团队之前的任务是其他人(包括您在内)在他们的职业生涯中没有完成的。 管理层坚持要提高整个团队的工作效率,作为高级开发人员,您有责任。 在这种情况下胜出的任何技巧?显然,整个团队需要时间来学习,我们不要忘记团队的新成员。但是,截止日期也要提前...

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.