您现在所在的位置是:首页 > 业界新闻

服装品牌管理软件过程改进

软件过程是人们建立、维护和演化软件产品整个过程中所有技术活动和管理活动的集合。目前,软件过程技术是一个非常活跃的研究领域,吸引了大批来自学术界和工业界的专家和学者。每个国家几乎都有自己的软件过程改进网络和组织。
对于服装品牌管理软件企业来说,软件过程是整个企业最复杂、最重要的业务流程,软件产品就是软件企业的生命,改进整个企业的业务流程,最重要的还是要改进它的软件过程。多年以来,人们认识到要想高效率、高质量和低成本地开发软件,必须以改善软件生产过程为中心,全面开展软件工程和质量管理手段。

1.1过程与产品质量的关系
作为软件工程师,你所开发的程序质量对你的雇主和客户都至关重要。软件应用中许多有迫切需求的领域,软件缺陷可能引起经济损失,甚至造成人身伤害。特别是在大型软件程序中,一小部分的任何缺陷都可能导致严重的问题和潜在的灾难。因此,正如制造商寻找各种方法以确保他们生产的产品质量一样,软件工程师也必须寻找各种途径以确保他们开发出来的软件产品具有良好的质量和功效。而软件的质量在很大程度上取决于开发并维护此软件时所进行过的活动的质量,即软件过程的质量将直接影响交付产品的质量。一旦其中的一个活动出现了差错,产品的质量就会受到影响。

可以认为产品质量与过程质量息息相关,如果软件系统中部分内容质量较差时,这二者之间关系的密切程度将更为明显。软件过程的倡导者所采用的原则就是:一个规范的软件过程的使用必将能带来高质量的软件产品。

缺乏规范的过程,处于开发过程中的人将会埋头致力于缺陷的查找与修改,用wattsHum—phrey的话来说就是:“整个项目的重点都集中在缺陷的查找与修补上,而真正重要的用户需求反倒被束之高阁了。”而在一个规范的过程中,开发团队能够确保过程与产品的质量。团队成员会去完成分析产品质量的任务,追查产生低质量的原因。在过程方面,团队成员会识别出过程中的缺陷并制定相应的计划来加以纠正。 此外,在生产制造中,过程与产品质量间有着明确的关系,其过程包括配置、装配和操作所涉及的机器,一旦机器工作正常,产品的质量自然就能够得到保证。人们可以根据评估产品的质量并改进过程来达到生产高质量产品的需要,一旦生产系统校准后就能一次生产出高质量的产品,因此过程相对易于标准化和监控。但在软件开发中,过程质量和产品质量的关系更加复杂,一般而言一个好过程的使用未必一定就能得到一个好的产品。例如,尽管采用了一个好的过程,也有可能最终仍无法产生或得到预期的产品与服务。
尽管如此,一个好的过程一般更能帮助获得高质量的产品和服务。过程质量对于软件产品的质量有着显著的影响,过程质量的管理和提高能减少软件发布时的缺陷。

1.2服装品牌管理软件过程的建立与分析
软件开发应该是一种组织良好、管理严密、各类人员协同配合、共同完成工程项目的过程,需要充分吸收和借鉴人类长期以来从事各种工程项目所积累的行之有效的管理、概念、技术和方法,特别是最近几十年来人类从事计算机硬件研发的经验和教训。经过几十年的软件开发实践证明:如果按照工程化的原则和方法来对软件开发工作进行组织和管理,将会是摆脱软件危机的一个重要出路。
软件工程的基础是软件过程,而软件过程是软件生产的途径或流程,是为了获取软件产品而需要完成的一系列相关软件工程活动。而基于软件过程的软件开发是软件工程化发展中的一种主要手段,它包括服装品牌管理软件过程的建立、监控和改进等方面的内容。

1.2.1过程的建立
20世纪90年代,国际标准化组织(InternationalOrganizationforStandardization,ISO)和国际电气与电子工程师学会(InstituteofElectricalandElectronicsEngineers,IEEE)分别推出《软件过程标准》,将软件过程的概念进一步扩展为多视图的过程。
软件过程是指软件生存周期中所涉及的一系列相关过程。过程是活动的集合,活动是任务的集合,任务是把输入变成输出的操作。软件过程是动态的,它动态地产生、推进,动态地消亡。软件过程涉及软件生存周期中相关的过程与活动,其中活动是构成软件过程的最基本的成分之一。此外,软件开发是由多人分工协作、并使用不同的软硬件环境来完成的,因此软件过程还包括人与人之间进行协调与通信的组织结构、资源及约束等因素。

当一个组织需要运用软件过程来进行软件开发时,就应该建立相应的软件过程。服装品牌管理软件过程的建立是指由负责软件过程活动的组织在组织层上定义软件过程,其目的是开发和保持一组便于各项目使用的软件过程框架,改进跨越各个项目之间的过程特性并为软件组织积累长期有用的过程基础。

所有的软件开发人员都要同软件过程打交道。组织标准软件过程是由已定义的组织内所有项目通用的一些软件过程元素组成的,它提供了一种软件开发的基本过程框架。但这个模型过于粗糙、笼统,未能体现出不同类型软件项目及项目个体之间软件过程的差异。不同的软件项目应根据其自身的特点,因此,可以针对某一个特定的软件项目对软件过程的结构及其属性进行更充实和具体化的描述,从而生成可执行运作的软件过程的~系列活动,以建立适合于自身特点的软件过程。

软件过程模型是对软件过程的静态描述,是软件过程向前推进的依据。软件过程是软件过程模型的动态执行过程。软件生命周期中的各个过程实际上就是对该过程模型的动态执行。改善软件过程就是改进软件生产的工艺流程,从而提高软件的质量。

1.2.2过程分析和建模
过程分析和建模是指对已有的过程进行研究的基础之上,建立相应的抽象模型来反映其关键特性。这种模型可帮助你了解过程并且和其他工程师沟通自己的理解。
1.过程分析
过程分析是研究存在的过程,了解过程的不同部分之间蕴含的关系。在过程分析之初,由于形式化模型比较抽象,它只定义主要的过程活动和可交付内容,很少能够包含足够的细节来反映真实的开发活动,因此,无需对形式化方法做过多的考虑。
在过程分析中,所有的技术包括以下两个方面。
1)问卷调查和会见
向相关人员询问项目执行中实际过程的情况,同时根据情况在问卷调查和会见中作一定的细化处理。
2)深入实际调查研究
在实际过程执行中了解开发活动中的每个过程片段,揭示软件过程中的微妙和复杂之处。

2.过程建模
过程分析完成之后需要进行过程建模。过程建模是指通过过程设计和过程定义来建立过程模型的活动。它是软件过程工程中最主要的活动之一,所有其他的活动都是基于过程建模的结果来进行的。 过程建模的结果是获得一个反映软件过程的一定高度或深度抽象的过程模型,同时它也表达了看待软件过程的一种特定观点。过程模型既可以用很详细的形式表达,也可以用很简单的形式粗略的描述。

一个过程模型的要素一般包括子过程、活动、角色、约束、资源和可交付文档等。这些要素描述了过程的类型、结构和属性。
对于软件过程建模方法,根据不同的属性或方面具有不同的划分方式:
(1)按过程所涉及的实体类型划分,可分为以活动为中心的建模方法和以角色为中心的建模方法。
以活动为中心的建模方法是指以软件过程中的过程活动为中心来构造过程模型。在此方法中需要确定过程所涉及的活动以及它们之间的顺序关系,并收集与各个活动相关的有关数据来进行建模。因此,此方法可以直观地反映软件过程的实际工作流程,易于进行理解和分析。 以角色为中心的建模方法是指以软件过程中的角色实体为中心来构造过程模型。此方法需要确定过程中的各个角色、角色的任务以及角色之间的关系,并以角色为中心收集过程的相关活动、资源、约束等信息。这种方法易于使参与者明确自己的任务,便于过程管理者实例化过程模型。

(2)按过程建模所采用的形式化方法划分,可分为形式化、半形式化和非形式化建模方法。
Osterweil提出“软件过程也是软件”,认为可以使用形式化的数学描述方法对软件开发过程进行说明,并编写程序来描述这个过程,然后对其进行演示,以去除其中的不确定性。对于形式化建模方法需要有相应的形式化方法进行支持,不同的形式化方法在过程建模活动中具有不同的特点。

(3)按支持过程改进的方式划分,可分为描述型的建模方法和定义型的建模方法。
描述型的建模方法是指采用适当的形式化方法,对实际已使用的软件过程进行抽象描述,使已有的软件过程抽象成过程模型。定义型的建模方法是指采用定义软件开发所期望方式,来着手对软件过程进行改进。这种方法定义的过程模型也称为指令型软件过程。过程分析和过程建模对保证过程定义的质量、建立全面和灵活的过程体系具有重要的作用。对软件过程的建模主要是使用过程建模语言。过程建模语言最基本的功能是用于描述和定义过程,建立过程模型。因为过程建模语言的能力和表达方式直接影响着过程模型的质量和建模效率,因此,选择合适的建模语言成为过程分析和建模的关键。
软件过程模型是对软件过程的静态描述,是软件过程向前推进的依据。软件过程是软件过程模型的动态执行(这种执行可以是人工进行的,也可以是人机结合进行的,将来可以是机器自动进行的)过程。

1.3.1过程度量
1.3过程度量和监控
过程度量就是针对所指定的软件过程,以某种方式使其过程能力指标实现合理的量化,从而以一定的标准来衡量该软件过程的质量。过程度量是软件过程管理的重要内容,是进行过程的分析、控制和改进的基础。通过对过程进行合理度量,能够认知过程的现状,并在理解的基础上进行评价,然后分析过程产生的偏差并查找偏差原因,从而使已经或者可能将要失控的项目得到合理的控制,同时还能评价过程改进的效果,达到过程评价的认知目的。
软件过程的度量包括如下的内容:
(1)制定过程度量计划。
(2)收集过程性能数据。
(3)分析过程的实际性能状况。
(4)在分析结果的基础上,应用软件过程数据来评价过程的稳定性和能力度,给出软件过程基线,并提供软件过程改进机会。
当通过度量获得过程的失效信息时,过程改进便成为可能。过程度量可以作为过程改进的依据,并通过度量获得的信息来对过程改进的效果进行分析,从而可以判断所实施的改进是否达到预期的目标。
总之,通过过程度量可以发现过程中存在的问题,建立过程基线;可以比较和评价实际过程与项目计划之间的差异;可以帮助制定合理的管理控制措施,使过程偏离度在可控制的范围内;可以基于度量的理解和评价为过程的改进提供有效的信息基础,为过程改进制定有效的措施。

1.3.2过程的监控
当软件过程建立之后,就需要在运作中对软件过程进行监控。
过程运作就是针对特定的软件项目,把建立的过程投入实际项目中执行的一系列活动。针对某一特定项目,若所建立的软件过程是完善的,那么在理想情况下,只要相关人员严格遵循该过程来开展工作,就应该达到高效率、低成本地开发出高质量的软件的目的。
实际上,服装品牌管理软件过程的建立不是一劳永逸的。软件过程建立的初期,往往会出现诸多的不适应和不完善,因此,为了能够更好地达到以高效地开发出高质量的软件的目的,需要在运作中不断地对过程进行监控,并用监控的结果来指导软件过程的改进。
过程监控就是在过程运作中,过程管理人员利用某种监视系统或方法,采集项目中各项活动的状态和相应的重要数据,以获得反映软件过程的实际执行情况的各种信息,使软件过程的实际执行进展情况始终处于在过程管理人员的掌握和控制之中。基于过程运作中获取的各种反馈信息,可以使管理人员对软件过程的实际执行进行指导和适当的干预并不断对软件开发工作进行调整以满足新的需要。过程的监控往往强调向可测量的过程转变,从而可以收集有意义的度量数据并根据数据结果加以分析,并使过程的行为能够控制在一个有效范围内,最终消除引起过程偏差的原因,以保证过程的能力度和稳定性。

1.4.1过程变更
1.4过程变更和改进
过程变更是指为了满足软件开发的需要对已经存在的过程进行修改。过程变更强调根据度量以及分析的结果来如何对过程进行调整。在过程变更中,可以通过引入新的方法、规程和工具,或改变过程活动的执行顺序,或从过程中引入、删除相关的可交付产品,或使用新的角色和责任等方法来完成过程的变更。
过程变更的过程一般包括5个关键步骤:
1)识别和改善
用过程分析的结果来识别质量、成本或进度等方面的瓶颈因素,并通过提出新的方法、规程和工具来对这些问题进行改善。
2)改变优先级
过程的变更在所难免,并且可能会有很多的变更被同时提出,而往往不能对它们同时进行实施。因此,就需要对变更的各种因素进行分析和考虑来确定它们的优先级,并按照优先级的高低来进行处理。
3)过程变更引入
过程变更的引入就是指加入新的规程、方法和工具来使它们与其他的过程活动进行集成。在此过程中应该保证引入的规程和方法不和已有的规程和方法产生冲突。
4)过程变更的培训
为了能够使过程变更顺利推进,首先需要对过程变更的相关人员给予充分的培训,以减轻各方对变更的抵触。
5)变更微调
过程变更的引入不可能是一蹴而就的,在变更中可能会出现一些小问题,因此,一个过程变更会存在不断地反复修改和执行的情况。过程变更是一个不断改进和被接受的过程。
在过程变更中,部分员工可能会有失去工作或不能适应新工作的忧虑,会遭到部分员工的反对。因此,变更中需要了解他们的顾虑,使用各种方法来激励他们进行新的计划,使他们成为过程变更的管理者和受益人,才能有效地推进过程变更的进行。

1.4.2过程改进
对于软件企业而言,过程是整个企业中最复杂、也是最重要的业务流程;软件产品是软件企业的生命,要提高软件产品的质量就需要改进整个企业的业务流程,其中最重要的就是改进它的软件过程。
软件过程改进(SoftwareProcessImprovement,SPI)就是指在软件过程的实施中为了更有效地达到优化软件过程的目的所实施的改善或改变其软件过程的系列活动。过程改进的实施是在认知现有软件过程的基础之上,利用过程运作和监控中所获得的反馈信息,发现软件过程中存在的问题和缺陷,提出改进的意见,进而实现软件过程的改进和完善。过程改进的实施对象就是企业的软件过程,也就是软件产品的生产制造过程,当然也包括软件维护之类的辅助过程。
根据驱动方式的不同,可以将软件过程改进划分为目标驱动和缺陷驱动两种模式:
1)目标驱动
目标驱动的过程改进模式是指根据一个预先设定的目标,自顶向下指定过程度量或评价模型,有目的地开展过程改进活动的过程改进模式。其特点是目标明确,可以将改进活动控制在预定的范围之内,并尽可能地利用资源以获得满意的改进效果。缺点是如果策划不周,会带来一定的风险。

2)缺陷驱动
缺陷驱动的过程改进模式是指根据过程实施中所产生的关于过程缺陷的反馈信息,来有针对性地进行改进活动的过程改进模式。其特点是过程的改进是基于已发现的缺陷来进行的,因此往往切实有效,并且能够确保每次的改进活动能够得到相对更优的过程模型。其缺点是缺乏整体的规划,可能会导致改进活动杂乱无章和效率低下。
根据两种模式的优缺点,切实可行的办法就是将两者有效地结合起来,以获得高效的改进结果。同时,为了能够使软件过程改进获得成功,实施过程改进时需要遵循如下一些原则:
(1)过程改进的组织应设定一个切实可行的改进目标,并且改进目标应该建立在过程评价和过程度量的基础之上。SPI就是要在实践中发现问题,并在实践中寻找和找到解决问题的办法。
(2)过程改进是一个持续进行的活动,因此在过程改进中需要不断总结阶段性成果,并按照计划、实施、监控这样的循环方式制定一个合适的周期。需要记住:问题的解决是过程改进的核心,实践不仅是SPI组的目标也是它的起点。在过程改进中,达到一个目标你就创造了另一个更高的目标,这个目标对过程和环境都具有重要的意义。
(3)过程改进本身应被当作一个改进项目来执行。在过程改进计划中,对进度、资源分配、风险管理及相关人员责任等都要清楚的描述。
(4)过程改进需要得到组织管理层和各个部门成员足够的重视和支持,并要有适当的监控机制,以便于控制过程改进向有利的方向进行。
(5)过程改进是具有一定的风险的,因此,要注意降低相应的风险,其中主要包括由于改进目标的不适合而带来的风险和由于改进活动的不完备而带来的风险。

14.5过程改进框架
一个好的过程需要明确的行动与任务,用于确定目标产品的质量标准与特征,与用户在质量与特征上能达成的共识,并且项目成员应该了解相关的标准和特性。经验表明,可以制定一系列的过程标准并根据需要对软件过程进行不断的改进,以满足设计出高质量的软件产品的需要。
l_过程改进的步骤
一般地,软件过程改进的一次周期一般包括评估、计划、改进和监控4个步骤。
(1)评估——任何过程改进活动的第一步都是评估当前组织中使用的方法,找出其优势和缺陷所在。
(2)计划一一遵从将过程改进活动看作是项目这一“哲学”,在评估后制定一个活动计划。每项战术行动计划应该指明改进行动的目标、风险承担者和一些必须完成的活动条目。如没有计划,则更容易疏忽比较重要的任务。计划也提供了跟踪过程的方法,使你能监控各活动条目完成情况。
(3)改进——实施改进计划。
(4)监控——检验实施的情况,纠正不适合要求的现象。
由于软件过程改进通常不可能一次完成,因此需要进行持续不断的软件过程改进,即软件过程改进的4个阶段——评估、计划、改进和监控在过程改进的整个生命周期中会形成一个循环。

2.过程改进框架和步骤
在软件过程改进中,把不够成熟的过程提升到比较成熟的过程会涉及4个方面的内容,包括:过程改进基础设施、过程改进路线图、软件过程评估方法和软件过程改进计划,它们构成了过程改进的框架。
1)过程改进基础设施
过程改进基础设施是过程改进所依靠的基础,包括:
组织管理基础设施:这是指建立、监控和推进过程改进活动必须设置的岗位及其职责,如在软件组织级设置负责软件过程改进的软件工程过程组成员;
技术基础设施:这是支持过程改进工作的技术平台、设备、设施或工具。拥有适用、灵活且有效的技术基础设施对于提高和维持过程的有效性是非常重要的。

2)过程改进路线图
过程改进路线图提供表明有效软件过程特征的模型及逐步达到有效软件过程的途径,软件组织依靠路线图的指引可以朝着有效的软件过程前进,如CMM提供的成熟度等级就属于这种路线图。过程改进路线图应指定一个所采用的软件过程模型,并且规划出实现高效软件过程的行动步骤。

3)软件过程评估方法
软件过程评估是根据软件过程改进路线图进行的.评估的结果需进行分析,从而找出当前过程的长处和短处,以便为更好地进行改进提供建议。它是评估软件组织现行的软件过程、做法与基础设施的方法和技术。
软件过程评估方法应当揭示出目标组织中真实的软件过程状况,并能对所有影响软件过程的机制与活动加以评判。
ISO在其ISO/IEC15504标准中定义实施过程评估要求,作为使用过程改进和能力测定的基础。过程评估建立在二维模型之上,包括过程维和能力维。过程维由外部的过程参考模型提供,它用来定义一个过程集合,过程由陈述过程的目的和结果来表征。能力维由测量框架组成,包括6个过程能力级别和与其相连的过程属性.评估输出称为过程剖面,由每个过程评估获得的分数的集合构成,同时也包括该过程达到的能力等级。
评估通常要对照过程改进路线图,评估的结果要能表明,从提高过程有效性方面看哪些是强项,哪些是弱项。改进措施应能导致过程成熟度沿着改进路线图提高。

4)软件过程改进计划
软件过程评估并不是最终的目标,评估后需要把发现的问题转化为软件过程改进的行动计刚,事实上制定出软件过程改进计划才是希望的。
IS()在其ISo/IEC15504标准中为在过程改进和过程能力测定中,怎样利用过程评估,提供肯南。在一个过程改进的环境中,过程评估利用选择的过程和能力,提供了表征~个组织单元的疗法,并指出基于过程评价的软件过程改进活动应该包括如下步骤:
(1)确定机构的需求和商业目标。
(2)初始化过程改进。
(3)准备并实施过程评价。
(4)分析评价结果和指定改进活动计划。
(5)实施改进活动。
(6)确认改进结果。
(7)维持改进结果。
(8)监督改进后的过程性能。
(9)重复(2)~(8)的步骤。
过程改进包括改进过程基础设施及提高其有效性必须采取的措施等,过程改进应导致改进的过程规范和过程的有效性。通过这些活动,将会提高现有的服装品牌管理软件过程水平,而过程的改进又会提高过程的规范化程度及过程的有效性。

总之,一个持续改进的过程环境中会存在着一个良好的反馈系统,对反馈的分析有助于开发团队及管理者跟踪低质量产品产生的原因,从而能够确定如何着手改进过程并提高质量。

文章来源:秘奥软件网,中小企业信息化领跑者!全国咨询热线:400-9908-527_www.misall.com

最新新闻: