先网站开发后软件开发,显示网站运行时间代码,品牌建设费用包括哪些,seo快速排名关键词角色抽象作为一种载体#xff0c;可以很好地进行软件工程知识体系和企业知识地图的组织#xff0c;满足企业知识体系持续改进的需要#xff0c;因此角色团队组建和建设也可以作为软件工程实施方法之一。
软件开发项目立项时#xff0c;重要工作之一就是开发团队的组建可以很好地进行软件工程知识体系和企业知识地图的组织满足企业知识体系持续改进的需要因此角色团队组建和建设也可以作为软件工程实施方法之一。
软件开发项目立项时重要工作之一就是开发团队的组建在软件工程实施把软件工程研究结果产生的标准或规范如ISO、RUP、MSF、XP具体应用到软件开发活动的程称为软件工程实施的过程中要解决的问题之一就是关于团队组建规则的定义从企业发展的角度来看软件开发团队建设是企业建设的重要任务。总之软件开发团队的组建和建设是企业经营和发展的重要内容之一。
几乎所有的管理知识体系或规范都涉及到个体和团队建设问题比如组织行为学[Stephen P.Robbins1997]对个体和团队的行为进行了研究项目管理[PMI2000]中的计划、人力资源管理、项目集成管理、项目沟通管理等多个项目管理领域都涉及到团队建设和管理在软件能力成熟度模型CMM[SEI2000]的发展过程中从个体软件过程和团队软件过程来研究软件的开发和管理。对个体和团队管理的研究是管理学的核心任务涉及到的知识和学科纷繁、复杂。
然而在管理的具体实施过程中客观上管理环境的不同及主观上管理者的偏好一般会在理论或规范基础上进行简化、删减、方向取向、分类归纳等工作最后表现为各自独立的制度、规则、知识、评估方法、认证等多种独立体系失去了其内在的联系管理工作仍然复杂而且不利于改进。 B端产品经理的能力模型与学习提升
B端产品经理面临的第一大挑战是如何正确的分析诊断业务问题。 这也是最难的部分产品设计知识对这部分工作基本没有帮助如果想做好业务分析诊断必须具备扎实 ...
查看详情
瑞理统一过程RUP[Rational2001]通过对工作流分解的方式进行了软件开发过程及活动的分解和定义并以角色为中心来进行知识、活动、规则、工具等的关联组织从而把软件开发活动一体化、层次化、结构化并保持其内在的有机联系为个体和团队软件开发活动提供了很好的指导。
本文以“角色”这一概念为基础提出了“以角色为基础的软件开发团队建设”的观点阐述了其原理和方法并对其优、缺点进行了分析简要说明了该方法对“软件工程过程改进”的支持。
为简化叙述文中“以角色为基础的软件开发团队”简称为“角色团队”对应地其它一般团队简称为“一般团队”许多地方把文档、资源、信息、规则等统称为“知识体系”。
一、角色的含义
根据RUP[Rational2001]的定义如 “图 1 RUP中角色的含义”所示角色的含义是角色是抽象的职责定义它定义的是所执行的一组活动和所拥有的一组资源。角色通常由一个人或作为团队相互协作的多个人来实现。 图 1 RUP中角色的含义
角色定义是一种管理上的要求是“以活动为基础的管理”的表现形式角色定义的依据是问题、人、管理都可以分析为一系列活动的组合这些活动有输入、输出需要一定的环境和工具需要活动承担者具有一定的能力所有这些要素都是可以定义的其联系的核心可以称为“角色”管理本身的任务包括对问题域的角色分解、对人的角色分解、问题角色与人员角色的配对等。
因此我们可以定义通用的角色模型如“图 2 通用角色模型”所示。 图 2 通用角色模型
通用角色模型的含义
角色是活动的承担者角色与所需要的知识、工具、环境、输入、输出相关是分析和定义结果的抽象是一个容器角色是构成知识体系的基本粒子角色粒度大小和层次构成根据企业对角色团队掌握的成熟度灵活控制。
问题角色容纳了对问题域的认识和分析结果人员角色满足预定义的能力和人格要求并在掌握了相关知识和工具后获得认证问题角色和人员角色关联后人员角色利用知识、工具、输入文档等进行创造性活动解决问题角色的需求关联活动产生的结果经过总结、分析进行经验总结反馈从而可以改进问题角色和人员角色的定义和认证为组织进步提供通道。
二、角色团队组建原理
在软件开发实践中涉及到的问题、人、管理都具有一个共同特点复杂人类解决复杂问题的方法离不开“分解”分解结果被定义为一系列的“信息点”由于这些“信息点”的粒度、层次、构成还是太复杂因此又被进行分类、归纳、总结成为一系列的“知识体系”这些“知识体系”各自有重点同时又具有一定的相关性有的发展为“学科”有的发展为“规范”知识体系在具体应用时又以知识、规则、制度、工具等各种方式来具体体现。
在这些分析、综合、归纳、合并的过程中关联性并没有消失但是变得难以掌握和理解——在学习的过程中很少有机会同时应用多种知识及其关联性而在知识的具体应用过程中由于其庞大、复杂只有少数专家能够充分理解、综合应用大部分人难见全貌、只见一斑能够学习独立的学科但是很难根据相关性进行综合应用。于是又产生了一个新的问题良好的知识体系得不到良好的应用这就是常见的“理论与实践脱节”问题。
“角色”是一个抽象的概念通过角色能够有机地把知识体系以及实践结果联系在一起而且是恰到好处——只有需要的知识体系和实践结果才和对应的角色进行关联通过角色粒度的控制甚至可以达到这样一种效果只要符合了角色定义要求那么就能够顺利完成角色活动。另一方面角色概念与“社会化分工”原理不谋而合主要差别仅仅是粒度、层次上的差别而已。
人员角色并不代表个人而是说明个人在某一具体业务活动中应该如何表现以及他们应该承担的责任。角色有一组互相联系的活动需要执行这些活动密切相关在功能上互相补充所以最好由同一个人来执行。活动与知识体系密切相关知识体系提供活动的输入和输出并提供活动之间的通信机制。项目团队成员在履行角色职能的过程中一个人可以担任许多不同的角色一个角色也可以由多个人来承担。
三、角色团队组建方法
根据“角色团队组建原理”角色团队组建就是面向问题、人进行角色的定义和关联把相关知识有机地分布到角色上去在具体团队组建时进行合理关联配对让合适的人在合适的时间利用合适的工具完成合适的任务。
1. 从问题分析角色需求
根据相关知识体系、过去的定义、经验、角色定义原则把解决问题的过程分解为子问题及子活动控制子活动的粒度甚至粒度层次并就每个子活动进行关联分析、环境分析、知识分析最后定义为角色称为问题解决角色如“图 3 从问题分析角色需求”所示。 图 3 从问题分析角色需求 2. 从人员分析角色认可
根据企业发展要求、角色定义原则、人的能力、兴趣等要素对人进行分析和认可控制知识体系的粒度、相关性等最后定义为角色称为人员认可角色如“图 4 从人员分析角色认可”所示。 图 4 从人员分析角色认可
四、角色团队组建
在项目团队组建时根据对问题域的分析结果在成员角色表中选取对应的角色去承担问题角色任务并从项目管理的角度来进行工作时间分配、费用预算等。如果企业内部没有所需要的角色则可以考虑寻求外部资源。如“图 5 以角色为基础的团队组建”所示。 图 5 以角色为基础的团队组建
五、角色团队组建与建设过程
角色团队组建是发生在项目立项时的工作而角色团队建设是在企业经营的整个生命周期内都要进行的建设结果是角色团队组建的基础。建设是持续性的组建是临时性的建设为组建提供基础组建后的项目团队的实施结果为建设提供依据整个过程如“图 6 角色团队组建与建设过程”所示。 图 6 角色团队组建与建设过程
角色团队建设要完成的工作有
通用问题域角色定义定义企业开发领域的通用问题根据对通用问题的解决“从问题分析角色”工作定义问题域角色体系通用人员角色定义根据“问题域角色体系”对人进行分析、定义和认证建立关于“人员角色体系”对某些超出问题域角色体系的人的角色也进行定义选择标准可以根据企业的发展方向进行选择问题域角色与人员角色映射规则为了适应企业业务的变化和发展、满足管理要求问题域角色与人员角色不一定要一一对应甚至粒度、层次也可以不一样所以要建立映射规则为以后的工作安排提供指导。
角色团队组建时要完成的工作有
具体问题域角色定义以“问题域角色体系”为基础分析项目所面临的问题定义“项目角色体系”具体人员角色定义对照“项目角色体系”和“人员角色体系”根据映射规则进行配合、关联、调整完成项目团队的组建和任务计划进行项目实施角色体系改进在项目实施的任何时刻如果有超出“问题域角色体系”的角色产生可以根据需要补充到“问题域角色体系”中对人员角色体系的变化也可以采取同样方法处理。
在具体的角色团队建设过程中实际上可以保留多个层次的角色体系主要原则就是适应企业的经营要求和发展要求其它相关内容如取舍、粒度控制、层次控制、结构控制、管理、认证等原则和方法本文不再赘述部分内容可参考RUP。
角色团队分析一般团队面临的问题和原因
在过去的实际管理过程中一般团队存在很多问题包括
结构简单过于简单化“开发团队”等于“工程师集合”其相关性控制、团队配合等全部依赖于领导者的直觉或感觉尽管不会完全错误但是不够精细属于“粗放”管理范畴管理困难缺乏层次级别几乎都处于同一个层次上令难行禁难止职责不清针对工作内容一方面缺乏规范另一方面范围模糊因此导致职责不清楚工作目标模糊资源浪费由于组织和管理不力软件开发效率低、成功率低并期望通过提高个体素质来提高效率或成功率片面追求文凭本科不行用硕士硕士不行用博士等等导致资源浪费经营成本高发展缓慢团队的进步没有明确的计划和方向团队的进步依赖于个体的随意发展因此团队的建设变成了艰难地培养“全才”很难培养“专才”企业发展不明确员工发展也不明确。
导致上述问题存在的根本原因是什么我们认为主要的原因有
对问题的认识不充分没有对问题域进行定义、分析、内容组织或者比较薄弱仅仅从比较高层的软件开发的“需求、分析、设计、开发”出发来进行开发团队的组织缺乏“具体问题具体分析环节”对人的认识不充分对个体的认识依赖于管理者的直觉、感觉和经验个体的发展依赖于自己的兴趣把工作当成任务过多依赖于文凭评价对管理的认识不充分过分依赖管理者的直觉和感觉安排任务时“大体上”知道存在的问题、什么人能解决什么问题但是没有进行问题的分化、定义、具体化等细节工作比较“粗放”管理过于依赖于权力过于平面化和大粒度从问题认识、人的认识、管理认识三个方面都缺乏层次化、模块化和结构化分工粒度过大忽略问题的多样性、人的多样性、管理的多样性决策一刀切
最基本的原因是全面性问题不够全面导致管理不到位用不合适的方法去解决模糊的问题如“图 7 一般团队的问题域覆盖程度”所示应该解决的问题没有解决解决问题的人又不一定是合适的。 图 7 一般团队的问题域覆盖程度
六、角色团队对问题的解决
角色团队通过“问题角色体系”的建立来促进对问题的分析很大程度上解决了一般团队存在的“不够全面”问题改善了对问题域的覆盖程度如图“图 8 角色团队提高问题域覆盖程度”所示。通过“人员角色体系”的建立来进行培训、认证、甄别促进团队建设并为薪酬体系、绩效考核提供依据。角色团队组建后管理定位更加容易管理者有事可做有章可循被管理者明确管理定位和职责依照角色关联的合作更加顺畅。 图 8 角色团队提高问题域覆盖程度
更重要的是角色团队的组建和建设过程就是企业知识体系的建设过程角色体系也就是知识体系角色体系的改进就是知识体系的挖掘和进步是学习性组织的良好选择。
七、角色团队的缺点
角色团队的建立和组建其本身就是一项复杂的管理活动需要有力的资源支持角色团队的建设是一个持续性发展的过程不是一蹴而就的因此需要企业具有持续建设的需要和能力也就不适合那些业务方向频繁变化、业务领域不明确的企业。
八、角色团队原理在软件工程实施中的作用
在目前软件工程实施中“持续改进”无疑是最重要的思想首先改进就必须要有一个载体这个载体必然是企业知识体系因此也可以采用“角色团队”作为这一载体其次改进必须是持续的也就意味着过去定义的知识体系能够在一定程度上重用。角色团队通过“角色”这一概念来进行知识体系的分解通过粒度和层次的控制很容易达到高程度重用的目的因此角色团队原理可以在软件工程实施中作为实施载体来使用。
以角色团队为基础的企业知识体系还可以很方便地容纳软件工程规范因而对软件工程的实施具有很高的支持性通过“人员角色体系”的建立可以达到对个体的针对性培训和学习引导对团队的进步具有很好的引导作用。
由于角色粒度、层次控制的灵活性角色团队的组建和建设可以从任何时候、任何规模开始逐步建设非常灵活满足企业逐步成熟的要求。
小结
软件开发是一项知识性活动、创造性活动软件技术日新月异软件应用领域复杂多变所有的这些原因造成了软件开发管理的困难导致了软件危机的产生。软件管理问题的解决离不开对知识体系的依赖和对变化的适应。角色团队原理作为一个知识体系的载体以及对持续改进的充分支持可以作为软件工程实施方法之一。 作为一家专注于互联网领域的公司我们的主要业务是进行互联网平台开发、定制开发以及全网推广和平台包装。我们的专业团队拥有丰富的经验和强大的技术实力可以满足各类企业和个人的需求。 在软件开发方面我们秉持着用户至上的理念致力于打造出既实用又易用的软件产品。我们有一套成熟的软件开发流程从需求调研到设计、开发、测试、上线每一环节都严格把控以确保软件的品质。我们的服务覆盖了从移动应用、网站开发、微信小程序、企业级软件等各类项目。 在全网营销推广方面我们运用最新的SEO技术与社交媒体营销策略结合内容营销和大数据分析为企业和个人提供全方位的网络推广解决方案。我们的目标是帮助企业和个人在互联网世界中获得更大的影响力和更高的知名度。 我们的成功案例丰富多样包括零一空间、驯龙世界、趣吧、公仔乐园、花生日记、店流宝、玩转派对、比亚熊、星潮宇宙、湘旺世界、轻流、LDS魔法熊、龙珠有点潮、兽神记、云乐个游、鳄血素、乐趣生活、云巢国际、淘金之旅、趣盒、星际公民等主流平台。这些平台的成功运营都离不开我们专业的软件开发和全网营销推广支持。 同时我们也为多家企业和个人的提供了全套的互联网方案帮助他们实现了线上业务的快速增长。无论是电商平台还是社交平台无论是在线教育还是在线娱乐我们都有丰富的经验和成功的案例。
如果您有任何软件开发需求可以与我们联系 公众号智创有术