zoukankan      html  css  js  c++  java
  • 微软MSF

    学习资源:

    http://www.cnblogs.com/umlonline/archive/2011/07/25/2116121.html

     

    心得体会:

     

    在学习MSF这篇网络资源前,谈一下自己对MSF的认识。

    MSF最初第一印象,就是微软解决方案框架结构,即Microsoft Solutions Framework,早期,因此我延伸出自己的一套ZSF (Zivsoft Solutions Framework),智艾悦软件解决方案框架结构。在我最初的理解,它就是一些框架,然后延伸出各种各样的解决方案。

    以上是我没看Fireball学习资源的简要印象,当我打开Faireball这篇《超越MSF - 视频分享第7弹!》,刚读完第一段摘要“MSFMicrosoft Solution Framework的简称,是微软软件开发方面的方法论。”时,我还专门打开自己的ZSF看看是不是我弄错了,我记得应该是Solutions,而非Solution,难道我理解多年的ZSF缩写竟然是Microsoft Solution Framework,经查实,MSF应该是Microsoft Solutions Framework。为何提出这个呢?因为小小一个s可见你的领悟是否够深,毕竟微软解决方案框架结构绝非仅一个方案,如果写成Microsoft Solution Framework,让人看了别扭。由于不想写太长,以下简要写写心得:

     

    MSF是一组建立、开发和实现分布式企业系统应用的工作模型、开发准则和应用指南。它帮助企业融合商业和技术的目标,降低采用新技术后系统整体的费用,以及成功的应用微软技术整合商业过程的方法。这是多么庞大的一个词汇,被MSF仅三个字符囊括。

    MSF揭示出为成功设计、构建和管理技术基础结构或商业解决方案,所需了解的重要风险、重要的设计基础假设和关键的依赖关系。它包括明确的知识库、应用指南和实践经验,如: 

    企业结构设计方案—采用交互的方式,侧重于制定长期规划,同时也能完成短期目标。 

    项目开发准则—包含组队模型和过程模型,用于建立高效的项目组,管理项目的生命周期。

    项目设计过程和多层结构的应用程序模型—用于支持设计复杂的分布式企业应用。 

    企业信息基础设施的实施方法—使用组队模型和过程模型支持实现、操作和技术上的方案。 

    最初,我理解它仅仅是一种框架结构,好比我自己的ZSF,但它远远不止这些,它不仅是一种框架结构,还是一种资源整合,像Faireball所说的方法论,更像一种工作指南,通过微软培训讲师获得。

     

    1.       MSF组队模型:

     

    针对MSF的组队模型,个人体会是它是一个环形圈圈连接起来,而不是像组织结构那样一层一层连起来,因此它没有重要性、优先级之分,它像Faireball所讲,每一个环节都同等重要,我们没有个人英雄,我们只有团队“作战室”。 个人翻译它的六种基本的角色应该是(程序管理、产品管理、开发、测试、业务逻辑和用户培训),如果了解微软工作文化的话,MS里的PM并不是项目经理(Project Manager)而是 Program Manager。同样,作为在MS工作过的自己,最大的一个体会就是开发与测试的待遇是一样的,一个SDE2和一个SDET2的薪水基本一样,也就是说老美花的MSF组队模型用圈圈连起来并不是虚无的,他们的确把各个环节看得同等重要。

    对于我们自己,中国的软件项目团队,在中国国情里,有着明显,管理高于开发,开发高于测试的潜在观念。而事实上,如果被人不看好的测试没做好,开发也不会好到哪里,管理也并非卓越。好比,中国没人愿意当农民,都跑到城市,最后假设只剩1%人种粮食了,试想有钱人也同样饿肚子。

    总而言之,通过MSF组队模型,给我的启示是,站在每一个岗位的每一个人,都要负责任的把自己的那份事干好,同时很好的与其它环节协作,从而站在一个团队的角度思考问题,将软件项目成功交付。

     

     

    2.       团队管理与开发模式

    下面再针对Faireball的“两个限死,两不确定”谈一下个人体会。我主要从团队管理和开发模式上谈体会。

    一、团队管理

    许多公司的企业文化都是以人为本,对于IT企业来说,人是企业最重要的资产,那么对IT项目来说,团队就是项目成败的要素 团队是一个集体,不是个人。没有个人英雄,只有集体作战室。因此协作责任非常重要。绝不可以推卸责任,出现踢皮球事件。虽然团队成员都非常重要,但不能忽视项目经理的作用,高效率团队协作是要靠PM良好的整合管理能力。

    沟通在团队管理里起至关重要的作用,项目组织结构跟具体企业环境有关系,但通过沟通了解团队成员各种冲突; 团队管理的第一要素即是管人,也就是要根据人的心理和思想规律,通过尊重人、关心人、激励人来改善人际关系,充分发挥人的积极性和创造性,从而提高团队工作能力和管理效率。古人云:“人事之最难在于知人,沟通可以帮助我们调动团队积极性,改善组织结构,提高效益,发展软件生产能力。

     

    二、开发模式

    明确详细的设计、需求非常重要,可以有效降低预算、时间。

    做任何项目前,不能拿到需求就开始写代码,看似很快进入测试,但出来的交付物非常不稳定,漏洞百出,最后焦头烂额不说,还浪费大量团队人力测试、维护等。

    因此拿到需求,对需求做分析非常重要,同时在架构设计上要详细推敲、论证,对各种潜在和已知的风险进行识别与评估,然后找出最佳应对方案,从而选择最佳详细设计解决方案。分析、规划,看似花了很多时间,但大大降低了编码维护、返工的时间,从而整体上保证SPI处于优势,从而大大提高进度。

    最后针对“两个限死,两不确定”,作为项目经理,应该理性对待,不能评拍脑袋将预算、进度吝啬,貌似加班赶工可以提前进度,但预算却大大增加,软件项目各种制约因素本就是一种相互矛盾,相互影响的,因此PM是要深思各种项目管理技巧和详细规划。在“两不确定”上其实跟“两个限死”是有很紧密的联系的,合理估算成本,规划进度,并要求在规定的里程碑里一步一步做好需求分析、设计、架构等环节,必然会有“两不限死,两个确定”。

    当前标签: 架构

    ASP.NET MVC 2 Beta 发布 周利华 2009-11-18 17:55 阅读:2134 评论:11  
    对某某软件架构认识与建议 周利华 2009-03-18 00:01 阅读:2175 评论:13  
    服务层框架设计(二)——服务请求示例 周利华 2009-03-17 09:56 阅读:1784 评论:7  
    服务层框架设计(一)——简要介绍 周利华 2009-03-16 09:37 阅读:2577 评论:5  
    持久数据层框架设计(一) 周利华 2009-03-09 10:41 阅读:3490 评论:35  
    PowerShell在SQL Server 2008中一些用法 [实例] 周利华 2009-05-07 15:33 阅读:1663 评论:3  
    PowerShell 经典脚本贮藏室 周利华 2009-05-05 16:51 阅读:2257 评论:7  
    PowerShell学习笔记[分享] 周利华 2009-04-27 16:48 阅读:1720 评论:5  
    用PowerShell自定义版本控制 周利华 2009-03-05 12:55 阅读:1555 评论:6  
  • 相关阅读:
    在一台Linux服务器上安装多个MySQL实例(二)--使用单独的MySQL配置文件
    在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式
    MySQL复制(四)--多源(主)复制
    MySQL复制(三)--基于全局事物标识符(GTID)配置复制
    类加载机制详解
    字符串常量池理解
    JVM内存模型
    Java设计模式之单例模式
    forkjoin及其性能分析,是否比for循环快?
    集合排序Comparable和Comparator有什么区别?
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2205085.html
Copyright © 2011-2022 走看看