西门子交换机一级代理商
仅靠一个团队绝不足以建立这样的理论体系。作为一门庞大的科学,它需要依靠团队之间的合作。研究结果也需要被高效地共享,比如可以建立一个存放不断完善中的模型以及经验教训的知识库,研究人员可以使用和更新其中的内容。
5.3 NASA软件工程实验室:一个充满活力的实证研究测试平台
为了支持我在本章提到的非正式学习的观点,我将我们在NASA(National Aeronautics and Space Administration,美国宇航局)软件工程实验室(SEL)25年的经验。在SEL,我们不仅通过实验来学习,通过分析问题、应用可行的解决方法、并找出其不足之处来不断学习经验。我们也进行了对照实验与案例研究,是在一个不断改进的更大型的学习流程中执行的。
SEL建立于1976年,旨在为卫星系统的软件开发提供地面支持,并且在可能的情况下用观察、实验、学习和建立模型的方法为位于Goddard1的飞行动力学部门优化流程和提高产品质量[3]。实验室的研究团队由NASA与CSC电脑科技集团(CSC)的开发人员,以及马里兰大学的一个研究团队组成,三者组成了一个联盟。SEL决定支持我们的实证研究,并且将其并入组织的整体工作中。实验支出来自项目自身的经费,而非来自NASA的研究经费。
环境差异并不单纯指软件开发人员的不同。软件的每一部分都不尽相同,软件开发环境亦是如此。这也就意味着,流程是变量,目标是变量等。我们需要为所研究的环境选择合适的目标和合适的流程。在决定如何研究某种技术之前,我们需要对其环境和特性做一些了解。
的模型特质使其成为进行实证研究的沃土。实验室各方面的平衡创造了一个理想的学习环境,大家通过彼此合作及反馈可以相互学习。
从1976年到2001年,我们在不断犯错中学到了很多。所犯下的错误包括:在全面认识环境之前就妄下断言;是数据主导,而非目标主导或是模型主导;用其他环境下得出的模型解释我们的环境。
学习的进化流程是渐进的而非跃进的。利用每次学习的经历,我们试图把学习到的知识运用到流程模型,产品与组织机构上。开始就是如此。随着对执行流程的观察,我们久而久之用所得到的知识改进了每个步骤之后终形成了这个方法。之后我将会讨论步骤的改进以及得到的启发,在这里,正式实验对主要理念的证明只起到支持的作用。
整个学习流程跨越25个年头,本章中我将集中介绍前20年的研究所得。它们之间存在角色重叠,我的讨论将覆盖QIP中的6个步骤。对于每一个案例,我会介绍我们在应用科学方法时得到的经验教训,以及我们在NASA/GSFC的飞行动力学部门中改进软件开发时得到的经验。
从1976年起,我们进行了如下一些活动,对应于质量改进范式的6个步骤:表征、设立目标、选择流程、执行流程、分析、封装。
SEL请大学研究人员验证高风险的方案。我们建立模型并测试假设。我们开发技术、模型和理论来解决问题,从而了解哪些方案是有用的。我们在应用中借鉴他人的方案,也研究出一些自己的方案。实验室的研究就是如此进行的。
浔之漫智控技术(上海)有限公司(xzm-wqy-sqw)
是中国西门子的合作伙伴,公司主要从事工业自动化产品的集成,销售和维修,是全国的自动化设备公司。
公司坐落于中国城市上海市,我们真诚的希望在器件的销售和工程项目承接、系统开发上能和贵司开展多方面合作。
以下是我司主要代理西门子产品,来电来函咨询,我们将为您提供优惠的价格及快捷细致的服务!
习都至关重要。分析方法的变迁用一致性和支持工具的缺乏迫使我们不得不手动采集数据。我们与开发人员分享中间结果,以便他们提出反馈,修正错误的理解,并且提出更好的方法采集数据。随着时间的推移,我们使用GQM手动采集的数据越来越少,我们把数据采集直接嵌入到开发流程中,这样数据更加准确,开销更少,并且使我们能够评估流程的一致性。通过开发人员与实验工作人员的互动,我们获取了开发人员经验的详细信息,为局部需求和目标提供有效反馈。通过普遍的信息反馈流程合并对照试验与案例研究,对特定方法技术提供更正规的分析。我们从事的是探索性研究,我们比很多科学都更多地依赖于方法和技巧的实证应用。在1976年,几乎没有关于软件工程的实证研究,而建立一个研究软件开发的实验室更是前所未有的。该实验室的建立提供们对新技术进行实验,以研究流程应用与相应产品特征之间的关系。这些技术的选择是基于我们在SEL中观察到的各类问题,以特定的目标为对象,比如小化缺陷。为了识别需求中的问题,我们开发了一系列阅读技巧了一个良好的学习环境,在实验室中,人们设计并运用潜在的解决方案、检验其有效性、从中经验,从而优化员紧密交流,这是一个开发人员和管理人员组成的团队,他们性格各异,拥有不同的职责和目标。以上这些起初,我们试图使用已经存在的一些模型来帮助我们理解环境(比如雷利波曲线或是MTTF模型)。
永远不会是静态的,Glass的观点可能需要做一些改进。先把这个问题放一放。我们现在感兴趣的是其所引发的三个问题,它们也自成一体。这些问题把软件开发作为一个整体,而不只有编程,更具有普遍意义。25年中,我们对软件改进有了深刻的了解。我们的学习流程也和软件开发改进本身一样,不断改进。我们把所学到的应用到流程,产品以及组织构架中。演变流程依赖于研究与实践的共生关系。这种关系需要双方面的耐心和理解,一旦成熟,就会带来收益。
我们在应用中学习,并适当地配合了各种预先实验设计,准实验,对照试验和案例研究,并得出了丰富的实践及理论结果,这样的结果是无法从单纯的正式试验中得到的。这种大规模学习流程还促成了诸如GQM、QIP和经验工厂等多种技术和方法的评估和发后,我们认识并让人认识到从组织内部汲取的经验和获得的知识需要和项目开发组织拆分开来。典型的项目组织活动把一个问题分成简单的几份,解决方法的实施,设计与实现,验证与确认。目标是在成本之内按时完成项目。经验工厂的活动包括统一不同的解决方案,重新定义问题,一般化、形式化和整合经验。通过综合分析观察结果,用实验测试各种意见来完成。其目标是获取经验并为项目提供推荐意见。它的主要责任是评估、修改、封装经验以备重用。
经验工厂不能单纯基于小型的、已验证的实验。人们需要观察实际应用中的意见、概念、流程等,从中得到启发,加之理性的判断,以此为基础建立经验工厂。