软件开发-MSF方法(《构建之法》读书笔记2)

MSF-微软解决方案框架,是一套大型系统开发指南,它描述了如何用组队模型、过程模型和应用模型来开发Client/Server结构的应用程序,是在微软的工具和技术的基础上建立并开发分布式企业系统应用的参考。在现在的软件开发项目中每一个软件开发项目都要经过 一个生命周期。MSF过程模型是从传统的软件开发瀑布模型和螺旋模型发展而来的,它瀑布模型中基于里程碑的规划与螺旋模型中的增量迭代的长处结合起来。MSF作为现在流行的软件开发思路,其有自己的基本原则。

MSF基本原则:

1:推动信息共享和沟通

2:为共同的远景而工作

3:充分授权和信任

4:各司其职,对项目共同负责

5:交付增量的价值

6:保持敏捷,语气和适应变化

7:投资质量

8:学习所有的经验

9:与顾客合作

第一条原则,推动信息共享与沟通。在一个软件开发的团队中,因为软件开发属于比较复杂的项目,所以合作必不可少。团队成员之间需要信息共享。举个例子:当一个小团队开发一个小型的软件时,或许成员也就3、4个人,大家如果相互了解的比较深,知根知底,那么工作起来或许遇到的困难不是很麻烦。但是,随着项目复杂度和团队规模的增加,没有信息共享与沟通是万万不行的。什么事该告诉团队、什么事没必要告诉团队,这也成为了一个新的问题。有的人会说了“那就把 一切的事,反正跟软件开发有关的事都告诉团队不就行了”。可是,问题在于如何将重要的事情与团队共享,而不把无关紧要的事拿出来耽误大家时间。人不能被规则累死,最好事让这些通知能随着时间的发生而自然地传递给关心这些事情的人。有人犯了一些比较愚蠢的错误(比如一个很低级的bug),TFS把他们都记录下来了,从个人角度来看,有人会说:“我知道我做错了,已经改正,那最好把原来的记录删除了吧。”这样做,不是有利于打造和谐团队吗?可是,在另一些人的眼中,和谐的“谐”,是一个“言”和一个“皆”字,说的就是大家都可以发言,所有的事情都要记录。记录留下来,可以做事后分析,给后来的同事,或者别的项目的同事学习。如果删除,则会造成损失一次学习经验的机会。“君子之过也,如日月之食焉:过也,人皆见之;更也,人皆仰之。”

MAF过程模型的基本元素是阶段和里程碑。所谓“阶段”,就是在这一段时间里团队集中精力做某一件事情,每一阶段的结束都代表了项目的进展和团队工作重心的变化。

MSF过程模型MSF过程模型解释了如何基于:范围、进度和资源,规划和控制面向结果的项目。它是基于四个可见里程碑交互的、允许修改的过程模型。过程模型中的“设计”阶段在面向商业解决方案内容,结合过程模型、组队模型和应用模型的组件方案设计过程(Designing Component Solutions Process)中,进行了详细的介绍。

软件开发是一种复杂的、有创造力的过程。在较大的开发队伍中,采用自上而下的方法,将会抑制创造力、有效的交流和真正的方案开发。通过在软件开发过程中应用MSF基本模型,帮助软件组织克服这些障碍。

时间: 2024-12-20 13:27:05

软件开发-MSF方法(《构建之法》读书笔记2)的相关文章

软件 = 程序 + 软件工程(构建之法读书笔记一)

在我正式开始阅读这本书之前,我对于软件工程这个词汇的概念还是模糊的,认为它只是停留在是一门学科,一个专业,或者是一大堆硬生生的理论知识,然而当我读完构建之法这本书的推荐序和第一,第二版前言开始,我就深刻意识到我之前对于软件工程的肤浅认识是多么错误. 我看书一般喜欢从从书的封面开始看起,或许这也是大多数人看书的习惯,·在本书的封面素描着一副鲁班锁,刚开始让人感觉有点奇怪,明明是一本讲软件工程的书,为什么要用鲁班锁做为封面图案呢?原来玄机深藏于鲁班锁的内部,这鲁班锁从外部看,是严丝合缝的十字立方体,

构建之法——读书笔记(8)

<构建之法>第十&十一章 主要讲述了在软件设计前期的需求分析问题上的方法和实践经验,分为"典型用户和场景"以及"软件设计与实现". 其中第十章大部分内容包含: 用户的分类(典型用户可以包括以下内容: 1. 名字(越自然越好) 2. 年龄(不同年龄和收入的用户有不同的需求) 3. 收入 4. 代表的用户在市场上的比例和重要性(比例大不等同于重要性高,如付费的用户比例较少,但是影响大,所以更重要 5. 使用这个软件的典型场景 6. 使用本软件/服务的

构建之法读书笔记

周末我抽空将<构建之法>第一章读完,感觉对软件工程又有了新的认识. <构建之法>开篇便写到:软件=程序+软件工程.我认为这是对软件的一种及其精炼的解释.程序即是指一行行代码,软件工程则包含了各种软件开发活动,包括构建管理.源代码管理.软件设计.软件测试.项目管理等等,是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程. 作为一名机械专业的学生,我认为软件设计是我们必须掌握的一门技能.机械行业,除了大家普遍所能看到的机械结构,每一个设备还包含有控制.软件等部分,一个

构建之法读书笔记_1

本周我快速地阅读了一遍<构建之法>,提出以下几个问题: 1在满足客户需要的同时,我们有些什么原则需要坚持. 2软件测试方法有什么?做软件测试只是找BUG吗? 3什么是敏捷流程?怎样去根据自己的项目选择开发方法? 4第三章中有提及考级的相关内容,但是在社会工作中,实践经验比证书更重要,我们应该如何平衡理论知识与实践之间的关系? 5当今市场对软件有哪些主要需求,安全软件并不能填满所有的漏洞,它的发展前景真的有那么好吗?

构建之法读书笔记3

软件开发流程: 写了再改模式:适合只用一次的小程序 RUP统一流程:将不同类型的工作划分为规程和工作流. 老板驱动的流程:老板在整个流程中占据领导地位. 渐进交付的流程:现发布一个版本,然后根据反馈进行修改然后再发布,不断反复直到用户满意或无法进行下去时停止.MVP:最小可行产品,即先做出一个实现了关键功能的很小的软件供用户使用体验,然后根据用户反馈继续开发.MBP:最强最美产品,即等到产品做得完美了后再进行发布. TSP原则:优秀的模式和流程的共同点的总结. 瀑布模型以及瀑布模型的各种变形:适

构建之法读书笔记之二

由于近几周进行构建之法的学习很少,所以这周一下子看了三个周期的内容. 既然选择了软件工程专业,就决定了我们将来要朝着软件工程师的方向发展.那么,问题来了,如何成为一名合格的软件工程师,在成为一名软件工程师的过程中,我们又有那些需要注意和学习的地方呢. 软件工程师的成长道路上,首先对我们自己的专业技能有很高的要求.所以第一步,我们要丰富自己的专业技能,并奇瑞要很好的衡量自己的能力.这样一来,就有涉及到了衡量我们能力的标准.这里又有一个问题,对于这些衡量标准,我们不能抱着仅仅不被OUT的态度,不能只

构建之法读书笔记之五

今天我学习了构建之法的第五章——典型用户与典型场景.我们都知道,软件开发最终都是服务于用户,所以用户主导着我们的开发方向.软件开发离不开用户,所以能够搞清楚用户隐藏的要求也是软件开发过程中的的一个重要的课题,这就涉及到了典型用户. 典型用户,顾名思义,能够代表大部分用户的用户.很多时候,不考虑典型用户的话,软件的开发不可能把所有的方面都做的尽善尽美,开发人员不可能把所有的方面都能考虑到.这时候,典型用户就站了出来.但同时,典型用户也有两面性——受欢迎的与不受欢迎的.那些能够按照开发者期望进行操作

构建之法——读书笔记(5)

第七章 MSF What is MSF?--Microsoft Solution Framework(微软解决方案框架)即一个方法论,也就是微软推荐的软件开发方法. MSF基本原则: MSF没有像敏捷那样搞一个宣言,但是它也有一套思想框架-9条基本原则 1. 推动信息共享与沟通(Foster open communications) 第一个原则,就是所有信息都保留并公开,讨论要包括所有涉及的角色,决定要公开并告知所有人.当然,对牵涉到技术机密.安全性等信息要采取必要的保护措施 看不到所有的信息,

构建之法读书笔记之三

在学习了构建之法第四章,第五章之后,写一下我的感想. 代码规范一直是我们在学习过程中一个老生常谈的话题.专业技能过硬与否只是一方面,代码规范同样也是一个举足轻重的方面.比如最开始的注释,在我们写一些很短的代码十几行,几十行代码的时候,如果不写注释,说白了,那么短的代码,谁都能找得到.但是,万一代码量上了三位数呢.几百行的代码,找那么一个错误,难度可是不小.再加点难度,四位数,五位数,甚至做项目的时候呢.没有注释,八成项目经理都不要你了. 代码规范有很多方面,处了注释,还有缩进,行宽,括号,分行,