[小学实验室建设和管理规范——配好实验器材是重点]当学校建好了实验室,器材的配置是非常重要的,也是开展科学教育的关键所在,所以一定要当好选购器材的主人,建议从以下几方面来配备器材。 1.掌握配备标准,以不变应万变。 我们江苏...+阅读
在笔者进行CMMI的培训和咨询中经常遇到很多软件技术人员并不清楚软件产品集成是做什么的,在什么时候会进行产品的集成。产品集成对广大软件开发和测试人员来说是既熟悉又陌生的。熟悉是因为产品集成的概念经常被提及,例如集成测试等等,陌生是因为在现实项目中产品集成的过程并不显著)产品集成的英文是Product Integration,在CMMI中的缩写是PI,它是一个单独的PA(过程域),可见产品集成在软件项目中的重要性。针对CMMI实施过程中发现的问题,笔者进行以下总结供大家对产品集成进行理解。
(一)产品集成的目的
产品集成的目的就是组合产品组件终形成产品,并要确保已集成的产品是符合用户和设计需要的。CMMI对该过程提供了进一步的描述,产品集成的过程就是将产品组件集成为更复杂的产品组件或完整的产品。
通过以上定义大家应该注意以下两个点:
1、 产品集成出来的部件不一定就是终的产品,也可能是项目过程中某一个中间的组件。
2、 集成出来的产品或组件要符合用户和相关设计文档的要求。 通过对产品集成目的的分析,大家可以了解到产品集成在日常软件开发过程中是个持续的过程,因为软件产品是一步一步逐渐完成的,所以产品集成在软件开发过程中应该是一个经常性的活动。那到底什么时候会进行产品集成呢?接下来大家就一起对产品集成的时机进行分析。
(二)产品集成的时机
在很多软件开发模型的理论中都有提到过何时开展产品集成的活动,其中比较先进的理论是在敏捷式开发模型中提出的“持续集成”,以及微软的MSF开发模型中倡导的“日构建”理论,这些理论对软件项目的开发具有指导性的意义。大家应该在尽可能的情况下将产品集成的工作日常化、自动化,这样做的好处是可以尽早发现产品集成时由于各种接口不匹配的问题所带来的风险,而且可以使项目团队成员对整体项目的进展有所了解。谈到自动化产品集成就不得不提到“自动化日构建”的工具,项目组成员可以利用NAnt或Ant来实现。这些工具都是基于XML的,使用起来非常简单。因此在软件项目中除了里程碑或重大变更需要进行产品集成外,笔者还建议可以开展“自动化日构建”工作,将产品集成日常化、自动化。
(三)产品集成的原理
软件开发和其他传统行业的开发流程和方法在原理上都是具有相同性的,下面以一只笔的组装过程来对产品集成的原理进行探讨。首先拿出一只普通的签字笔,该签字笔就代表软件项目终所需交付的产品,然后将该签字笔进行拆分,如图1-1所示可以分解出“笔帽”、“笔杆前半部分”、“笔杆后半部分”、“笔芯”四个部分,这四个部分将分别代表软件项目中的四个组件或模块。
通过对以上项目背景的描述,我们开始进入项目的开发过程,大多数软件项目都是团队合作完成的,在本项目中分别由四个小组来开发“笔帽”、“笔杆前半部分”、“笔杆后半部分”、“笔芯”四个模块。
● 产品集成顺序对CMMI对产品集成所要求实现的第一个特殊目标“准备产品集成”,它的第一个工作就是要先确定“产品集成的顺序”。假如大家在组装签字笔的四个部件时,先将“笔杆前半部分”与“笔杆后半部分”进行组合,再将组合出来的“笔杆”与“笔芯”进行组合,那就可能导致事倍功半,甚至会出现返工。因此确定正确的“产品集成顺序”是个非常重要而又需要尽早确定的工作。产品集成的顺序常见的是“自上而下”和“自下而上”的方式。当使用“自上而下”的方式进行产品集成时往往会使用到测试桩的对象,该功能通常可以由Mock对象来实现;当使用“自下而上”的方式进行产品集成时可以使用NUnit或JUnit等单元测试工具,通过单元测试用例来进行驱动,使组装得以顺利进行。
● 产品集成的环境实现(了)第一个特殊目标“准备产品集成”,的第二个工作就是确定“集成的环境”,这点非常容易,简单来说就是项目组需要指定一台服务器作为产品集成的环境,需要注意的是该服务器的配置应该能够满足项目的需要。
● 建立产品集成的步骤和准则产品具体怎么集成应该有一套详细的方案和步骤,项目组可在适当的时候将其详细制定出来并通过相关的评审。如何确定产品集成是否成功,项目组还应该制定出相应的验收准则,这样产品集成才有据可依。通过以上步骤,产品集成的准备工作就完成了,接下来就是产品集成的另外一个重要环节,检查“产品的接口”是否符合(并匹配)设计要求。
● 确保产品接口的兼容性在CMMI的产品集成过程中,第二个目标就是要“确保产品接口的兼容性”。接口想必大家都十分清楚,在软件开发和设计中都是非常重要的,产品集成是否成功很大因素取决于它。大家来回顾一下图1-1,其中“笔杆前半部分”和“笔杆后半部分”的哪个部分是“笔杆”的接口呢?大家可以发现“笔杆前半部分”和“笔杆后半部分”各有螺旋形的“接口”,大家可以通过该螺旋形的“接口”将“笔杆前半部分”和“笔杆后半部分”拧到一起,组装为一个完整的“笔杆”。假如“笔杆前半部分”和“笔杆后半部分”的螺旋形接口不匹配,那将产生次品或返工。在软件项目中项目组可以在设计文档中详细描述各个接口以及之间的关系,或者通过一个列表来维护本项目的接口。当出现变更时,产品接口的信息也务必及时更新。
● 组合产品组件并交付产品通过对CMMI产品集成过程中定义的第一和第二个特殊目标的实现,下面项目组就可以按照以上计划和准备工作开始进行产品的组装。在进行产品组装前要先确定项目组提交的各个组件或模块本身的功能是符合要求的,否则组装起来麻烦就更大了。如何确保组件在集成前的质量,以及集成后的组件或终产品是符合要求的,这就需要通过单元测试来实现。现在主流的开发工具都有其配套的单元测试工具或功能,以TDD测试驱动开发模型的要求,开发人员会在开发过程中编写并进行单元测试(当然好是先写单元测试用例再进行开发)。如果有了单元测试用例,那么在产品集成前和产品集成后通过运行相应的测试用例就可以判断产品是否符合设计的要求。后就可以将组合好的组件或终产品进行发布。但大多数时候产品集成后的发布是给测试组进行系统测试的。按照CMMI的佳实践,集成后的产品发布给测试组的时候应该有一个交接、确认的过程,测试组只需要检查相关单元测试用例是否全部通过测试即可作为交接的依据。
● 产品集成与配置管理之间的关系笔者继续以签字笔为例,在项目起初阶段只将“笔芯”和“笔杆后半部分”生产出来,那么按照“产品集成的顺序”可以先将其进行集成,组合成为一个新的组件A,当该组件A通过单元测试后,可以将其放入配置管理的“受控库”中进行保存。当“笔杆前半部分”生产出来后,再将组件A与“笔杆前半部分”进行集成产生新的组件B,新的组件B通过测试后仍旧提交“受控库”进行保存。依次类推将各个组件进行集成直到生成终的产品。
总结
产品集成是软件开发日常性的工作,是和广大软件开发和测试人员息息相关的基础性工作,笔者提倡将产品的集成日常化、自动化起来。大家可以通过手中的笔就可以很好的将产品集成概念进行理解,只要把握住产品集成的“顺序”、“环境”、“步骤”、“接口”、“集成测试”五个部分,那产品集成的管理就简单可行了。为了便于理解,大家只要看看手中的笔就可以了:)
以下为关联文档:
教育教学常规管理工作检查小结6月9-17日,八一中心校组织进行了一年一度的 学校教育教学常规工作检查 ,本人主要负责学校和科组教学教研工作计划与总结、科组工作手册、课程设置、学校档案管理等板块。本次...
班级管理、主题设计、观察记录和主题活动设计网络学习本次的网络教育培训又将进入尾声了,在本次的培训中分为了三个单元进行学习,分别为班级管理、主题设计、观察记录和主题活动设计。在三个单元的学习中,我学到了很多,接下来我对于...
“三化”管理,构建园本特色课程——小议古镇特色资源当今社会,幼儿园课程的资源开发与利用是幼儿园课程改革的重要内容,同时也是构建幼儿园特色的重要途径。园本特色课程的建设具有极其重要的价值。 园本特色课程,其主要特征是从...
温暖的半日活动,管理中的智慧老师通过观摩半日活动,我最大的感觉就是细致和温暖,感受到的是杨老师的一言一行,都透露出多年如一日的坚持和对孩子发自内心的爱。 以往走过小三班,我都可以看到杨老师低头弯腰的身...
小学实验室建设和管理规范——制度管理是保障一切工作的成败都与管理有着密切关系。首先要有明确的实验室管理机构,其次要根据实验室管理的目标、任务和要求,建立健全仪器设备管理制度,要合理组织实验教学。实验室管理不能...
情感管理的特殊作用湖北省秭归县周坪幼儿园 王 琼 未来的社会是人才竞争的社会,无论在什么领域,人才是一个永恒的话题。幼教管理事业的发展也不例外。目前,我国幼教事业正面临着各种挑战,如何提高...
小学实验室建设和管理规范——用好实验室是关键用好实验室,归根到底就是要靠人。靠科学教师。1.加强业务学习,提高教师专业素质。实践证明,要管理好实验室,要开展实验教学,没有一支有良好素质的实验教师队伍是不行的,这是一个很...
浅谈影响业务园长管理教育教学的内在因素幼儿园的教育教学管理是幼儿园管理的核心内容,是管理者为实现预定的教育目标,采取各种有效手段,对各种要素实行最佳组合,以达到贯彻《幼儿园工作规程》,提高保教质量,促进幼儿身心...
班级课程管理与评价——幼小班区域活动观摩计划区 域 内容 儿童发展目标 主题名称:我是小小兵 主题目标:本主题通过图片、故事、讲解、讨论等各种活动,帮助幼儿了解解放军,知道解放军听命令、守纪律、打敌人、保卫国家和人民...