软件过程改进计划 pmp 过程改进计划 - 电脑|办公 - 电脑办公-杀毒安全-网络-V3学习网
微商网
 
 
导航:首页 |电脑|办公|正文

软件过程改进计划 pmp 过程改进计划

时间:2021-02-07 08:38:39
软件开发工艺的改进的发展历程是怎样的呢? 19世纪发生在制造业的各国的工业革命,通过标准化的生产形成社会化的分工,促使制造业从手工作坊走向了社会化大生产的时代;社会化大生产极大的丰富了商品的供应,降低
作者:

软件过程改进计划

软件开发工艺的改进的发展历程是怎样的呢?

19世纪发生在制造业的各国的工业革命,通过标准化的生产形成社会化的分工,促使制造业从手工作坊走向了社会化大生产的时代;社会化大生产极大的丰富了商品的供应,降低了成本,由此带来了人类文明的一次大飞跃! 近年来,在网络经济泡沫破灭之后,业界人士一直期盼着下一轮软件革新。

在分析下一轮软件革新是什么之前,让我们回顾一下传统产业的发展规律和软件产业的现状。

产业阶段性分析 一个产业,一般可以分为四个时期。

每一时期都有其不同的特点与主要矛盾,谁有了解决主要矛盾的方法和产品,谁就掌握了本产业在这一阶段发展的金钥匙。

第一个产业阶段为婴儿期。

在这个阶段,事实上整个产业还没有真正的形成,而仅是以某一形式与其母产业结合在一起,并且慢慢从母产业中分离出来。

在这个阶段的主要矛盾是“新概念”的有与无。

一个企业如果有一个符合未来产业发展远景的新概念,必定在媒体的炒作下而闻名。

第二个时期为青少年期。

在这个阶段,产业开始形成规模,技术日新月异,公司如雨后春笋般出现,产业经营处于“暴利”阶段。

这个产业阶段的主要矛盾是有没有“新技术”,谁掌握了新技术,谁就是“武林盟主”。

第三个阶段为壮年期。

产业所需技术已基本成熟,分工越来越细,产业进入稳定持续发展期。

产业链已经形成,公司经互相兼并,在产业链中都已找到自己的位置。

因为技术不再是某几个公司的专利,在大家大打“价格战”之后,也已无“暴利”可言;所以这个阶段的主要矛盾是“新工艺”——只有工艺的不断创新,降低成本,提高质量,才能在“价格战”中取胜,获得长期稳定的发展。

第四个产业阶段是老年期,俗称“夕阳工业”,就像某些制造业。

在这个阶段,技术已经非常成熟,工艺也已无太大的改进空间,于是“劳动力成本”上升成为主要矛盾。

“夕阳产业”总是向劳动力成本低的地区漂移。

如今,我国已成了“世界制造中心”,就是因为我国的物美价廉的劳动力优势。

外包、代工是这个阶段产业的典型特征。

当然了,新的更替产业在这个阶段的后期已经开始慢慢的萌芽。

软件产业所处阶段 那软件产业现在处于哪一阶段呢?在北美,软件作为产业出现于70年代末,80年代初(之前还不能叫产业),80年代末至今是新概念、新技术的爆发期,多种技术思想“各领风骚三五年”,逐渐形成了.Net和J2EE两大阵营,软件技术已经越来越成熟,分工越来越细。

而从外包的风行也可以看出软件技术走向成熟。

从商业角度来看,企业软件的高价位上的“假性饱和”也是产业走向成熟的标志。

所以,从全球角度来看,现在的软件产业处于青少年期转入壮年期之间,但现在的软件开发工艺还是“人海战术”,软件产业还是“高级劳动力密集型”,工艺的创新余地极大,许多软件公司已经在工艺创新与工具创新上下功夫。

新的工艺与工具将会大大提高自动化程度,并降低对软件人员的技术要求。

并且,随着技术的成熟,硅谷产业低端技术开始外移,低端技术已经步入老年期,但软件工业化在历经风雨、变革之后,正在成为硅谷目前革命的方向。

软件产业正步入壮年期,它正迈过劳动密集型手工作坊式生产,从工业化定制,走向工艺化精益求精和大规模定制生产。

软件项目管理过程改进与认知过程是什么?

软件项目的过程诊断与改善已经有了很多的有效的参考模型和最佳实践方法集,其中,最有影响的是SEI的软件过程成熟度模型(SW-CMMTSPPSP体系)和敏捷联盟提出的敏捷方法集等。

这些模型和方法的提出都基于不同的隐喻,比如,SEI把软件开发过程看作类似于硬件产品的设计与制造过程,关键过程依赖于基于活动和度量的有序过程的管理规范。

CMM的基于活动的度量方法和有次序的、基于活动的管理规范与瀑布模型有非常密切的联系(先是需求活动,然后是设计活动,编码活动,单元测试活动,集成活动,以及系统接收测试),过程形成刚性的制度和规范稳定下来。

因为CMM的思想受到瀑布式开发思想的很大影响,造成许多组织对CMM的认识停留在瀑布思想上,主要的原因是,以硬件的开发设计过程来类比软件过程。

软件开发组织尝试着更加现代和高效的方法改进其项目管理过程,迭代开发技术、软件产业最佳实践和经济动机驱动组织采用面向结果的过程,重视开发业务案例和原型方案、可用发布、现场版本的发布等,这些方法形成敏捷方法的思想。

基于敏捷方法的软件项目过程管理是不同于传统过程管理理念的过程管理方法,过程的可重构性而非稳定性是敏捷过程管理的核心,存在于各种层次的软件过程中,而这些能力在CMM里被认为是在最高级别成熟度的组织中才需要开始考虑并作为管理的重心。

敏捷方法集为以过程的可重构性和自组织性为中心的过程度量、控制、改进提供了丰富的手段与思想。

过程的动态性体现于定义、执行、控制过程,过程的执行是过程管理的一部分,即过程的动态自组织性(自适应)。

以传统的生产制造项目和工程建设项目BPR和BPI的方法来进行软件项目的过程改进是不适合的。

各个敏捷方法集基于各种各样的隐喻,如极限运动(XP极限编程)、橄榄球赛(SCRUM)、自适应系统(ASD)、集市(Open Souce)等,把软件过程作为一个探索过程,不断的以经济原则对客户需求和技术需求进行评判和选择。

而总的来说,新提出的软件项目过程模型大多与生物进化过程进行类比,在生物进化过程的隐喻下把软件开发过程看作一个智能体成长的过程,这个智能体一般认为是一个软件产品,或更深刻的认为是一个软件开发组织的知识结构,进化的动力是经济动机和残酷的市场选择。

软件项目的产品和加工对象都是“软”的信息,软件产品的特点与硬件产品相差太大。

事实上,从某种意义上说,软件开发组织为客户提供的不是或不只是软件产品,而是客户所需要的信息,软件产品只是为客户提供信息服务的自动化代理而已。

因此,可以为软件开发提出另一个隐喻——信息加工处理过程,即认知过程。

以信息为产品和加工对象的软件生产与一般的硬件生产过程有根本的不同,软件过程是生产制造过程和信息加工处理过程(即认知过程)的混合过程,而且信息加工过程是软件过程中最核心的过程。

以信息加工的观点来解释软件开发过程,认为软件开发过程就是信息的接受、编码、贮存、提取和使用过程。

可以把这一过程概括为由四种成分所组织成的模式,即感知系统,记忆系统,控制系统和反应系统。

感知系统接受由环境提供的信息,即首先把输入的基本特征抽取出来加以组合;记忆系统是对输入信息的编码、贮存和提取活动;控制系统决定目标的先后顺序,监督当前目标的执行;反应系统则控制信息的输出。

这个基于信息处理过程的开发过程并不是按上述顺序单方向进行的,各种成分之间存在着不同方式的相互作用,以保证对信息的加工、输出和反馈,沟通人与环境之间的联系。

在认知过程的隐喻下,软件项目被认为基于一个建构主义的过程模型,包括了学习与创新的行为,学习不简单是业务知识由外到内的转移和传递,而是学习者(开发者或是客户)主动地建构自己和组织的知识经验的过程,即通过新经验与原有知识经验的相互作用,来充实、丰富和改造自己和组织事实的知识经验。

软件项目过程的认知过程参考模型把软件生产过程定义为信息的加工处理过程,软件过程能力是一个认知能力层次概念。

客户的需求,以客户所习得的知识和经验为背景,是以客户的概念、符号和语言表示的信息,软件开发组织中的软件分析人员在获得客户需求表达之后以自己的知识和经验为基础,开始学习过程,在学习客户需求、理解客户的概念、符号和语言的成果上,构建自己的信息系统和知识结构,进而创造出新的以软件专业的概念、符号和语言表示的信息产品,即需求确认文档和系统分析设计报告。

这些信息适宜于在软件开发组织内部环境中开发者之间的流动和创新,程序员的责任是把这些信息加工成计算机可以理解的概念、符号和语言,由计算机系统解释和编译。

计算机系统是开发者和客户之间的智能媒介,软件的指令控制计算机系统把客户需要的信息转化为客户可以理解的概念、图像、符号和语言表示,传达给客户,实现最终的信息产品。

而这还不是整个过程的结束,信息系统必须接受使用者的反馈信息进行持续的运行,所以,客户必须通过理解和应用软件的输入输出信息构建新的知识结构,反馈到信息加工过程,使...

软件的发展历史简介

当你预期的那一天,也许是害怕的那一天,终于来到了:从工程师的队伍里你被提拔到了软件项目领导或者团队领导的位置。

这也许就是你选择的职业道路,或许你不太情愿,将就尝试一下。

无论在哪种情况下,你都可能缺少工程学科、人员管理以及领导能力的相关教育。

这需要更多的领导能力和管理(它们不是一回事),而不能象Dilbert(译注:著名IT漫画主角)那样简单地和老板对抗了。

当你考虑新的目标时,请考虑下面的活动计划列表。

一次就抓住了每个亮点,这是不可能的。

但是这份建议说明可以帮助你将注意力放在可以提高你和你的团队绩效的活动上。

建立优先级 作为经理,首先要做的、最重要的事是你需要有意识地建立优先级。

当你仍陷于繁重的软件开发活动中时,你需要一套新的职责。

过多的经理新手不能抗拒技术的吸引而陷于此类活动,这将导致项目组的其他人员想要获得经理的帮助时,却得不到帮助。

有成效的领导知道他们首要的任务是为其他组员提供服务。

这些服务包括训练和指导、解决问题和冲突、提供资源、建立项目目标和优先级、提供适当的技术指引。

要使每个组员都能清楚的知道,你总是可以帮助他们。

我发现将自己定位于为被我监督的人工作是非常有意义的,而不是相反的。

在你所作的事情中,对于组员要求你帮助他们这件事,应该具有非屏蔽中断的优先级。

第二重要的,是使你的客户满意。

作为一名经理,没有直接的能力使客户满意,因为你已不再是作为个人提供产品和服务完成这点。

相反,你必须建立一种环境,准许你的组员最大程度上满足客户的需求。

经理提供了强有力的方法,有效地提高客户的满意度。

第三重要的,是为你的项目工作。

因为也许还有其他许多技术上的项目,或者其他经理的请求帮助,诸如为指导委员会工作。

当这些和二个高级别的发生冲突时,都要准备推辞掉。

很明显,使其他经理满意的事情是你最不重要的事情。

在一个有秩序的组织里,如果你在三个以上的重大环节上获得了成功,其他的经理都会很激动的。

我们并不都能很幸运地工作在一个良好的环境里,但一定要对你任务单上排在最前面的工作任务努力尽到最大的责任。

集中精力有效地、快乐地、尽可能地帮助你的组员,不要将精力放在使你上司满意的上面。

分析你的技能差距 除非你已经为新位置做好了准备,否则相对于你当前的领导能力和管理技能,你会感到一些差距。

出色的技术背景或许是你被选为领导角色的一个因素,但是你要想干得出色,你需要更多的技能。

针对别人的评论和项目,真实地列出你的长处和短处,然后减少差距。

软件人员并不以令人满意的人际关系技能出名。

你会希望增强处理人际关系的经验:解决冲突、说服以及灌输想法。

你也不得不处理包括招聘、解雇、商谈计划表,以及在你的办公室里评论某人业绩使其伤心落泪等一些事务。

我发现从一堂倾听技能课开始我的管理职业是非常好的。

当作为个体提议人,积极地将我们自己的技术议程提交小组时,我们经常对此感到非常惬意。

有效的管理要求更多的合作和善于接受的人际关系方式。

要花点时间学习如何(何时)巧妙地引导自己的自然判断。

倾听技能课提供了一种交流机制,我已经发现在许多场合下都很有用。

接着,到讲台的另一侧,提高你的演讲能力。

如果你真的不适应公开场合的讲话,学习戴尔.卡内基的课会有帮助的。

你会发觉,通过这样的培训获得的经验,以及获得提高的交流能力,都可以帮助你更好地适应将来的工作。

作为项目领导,为了计划和跟踪项目,以及当需要项目回退而采取修正措施时,你有责任调整其他人的工作。

参加项目管理的培训课,阅读一些有关项目和风险管理的书籍和文章。

参加项目管理学会,阅读其月刊--PMNetwork。

SEI的软件能力成熟度模型对于软件项目计划和项目跟踪提供了很多有用的建议。

建立优先级的能力、控制有效果的会议、清晰的交流,对于你,作为一名经理的绩效将会有实质上的影响。

定义“质量” 几乎每个人都会认真地对待质量问题而且都希望生产出高质量的产品。

然而,对于软件的质量含义,没有一个统一的定义。

传统上的软件质量观点和“足够好”的软件观点有着激烈的争论。

为了帮助小组走向成功,需要花一些时间和你的组员、客户共同探讨质量的含义。

这两种阵营在思想上经常不会有相同的定义,可以很容易的就不同目的开展工作。

关注交付计划的经理对于想正常地检查每行代码的工程师会不耐烦的;认为可靠性非常重要的客户对一个带有很少使用但带有很多bugs的特性的产品是不会满意的;一个很好的GUI也许会让用户厌烦,因为用户已经熟记了如何有效地使用前一个版本的产品。

为了更好的理解客户对软件质量的看法,在Kodak,我的小组曾经邀请了我们的客户和他们的经理就这个议题在一个开放的论坛展开讨论。

这个论坛是很有意义的,那些使用我们产品的人有着自己的理解,通过讨论,我们可以知道我们制定质量的思路有哪些和他们是不相符的。

明白了不同,就可以使你集中精力,照顾客户的最大利益,而不是使开发人员获得最大满意。

软件质量的传统描述包括要与说明书一致,...

epg职责如何定义?

EPG组长职责包括:正确MSC的支持规划并组织定期的EPG会议,确定会议议程领导和推动公司软件过程改进以及认证工作领导和指导EPG进行过程改进工作协调EPG和MSC以及项目组之间的工作推动建立公司过程财富库,帮助公司管理者及其项目团队实现过程改进领导EPG执行内部过程审核,并根据情况在公司内部组织软件过程改进培训跟踪、监控和报告改进活动的状态,并每月第一工作周的周一定期向MSC汇报进展情况EPG成员的任务与职责包括:按时参加EPG会议,提出工作中遇

大家还关注
    
阅读排行
推荐阅读