阅读软件开发本质和方法的收获

英语水品有限,好几篇英文文章看了也不懂,所以也没有看完,下面主要说说有中文翻译的几篇文章。又由于没有真正参与过大的软件工程,不好针对作者的观点进行评价,要读懂作者的意思就已经很困难了。
《有人负责,才有质量:写给在集市中迷失的一代》
作者觉得.COM时代泛滥是对IT/CS的一场灾难,他反对Raymond在其书中称颂的集市模式,同意Brooks在《设计原本》中提出的所谓质量只有在某人对它负责时才有意义的观点,并且认
为Unix大教堂就是一个很好的论据。作者的意思大概就是软件的架构应该由一个人来设计,并且避免代码重用。

《新方法学》主要介绍了敏捷性方法,作者提到“敏捷型方法(agile methodologies)的发展是对这些工程方法的反叛。 对许多人来说,这类方法的吸引之处在于对繁文缛节的官僚过程的反叛。它们在无过程和过于繁琐的过程中达到了一种平衡,使得能以不多的步骤过程获取 较满意的结果。”

《为什么软件开发方法论让你觉得糟糕?》作者提出了这样的一个问题,并且在文中给出了原因,“根原因就是:环境是不规律的,做出变更与理解变更带来的结果之间的反馈过程太 长了。”

《The Rise of Worse is Better》

”I believe that worse-is-better, even in its strawman form, has better survival characteristics than the-right-thing, and that the New Jersey approach when used for software is a better approach than the MIT approach.“

《Is Worse Really Better》
”programmers from the large C community will probably appreciate C++ for its performance and adopt it if its object-oriented features help them succeed.“

时间: 2024-10-07 07:07:30

阅读软件开发本质和方法的收获的相关文章

阅读一些关于软件开发本质和开发方法的文章的体会与心得

在本次软件工程课程当中,我已经经历了一次比较成功的个人项目,一次比较失败的结对编程项目,以及即将开始的团队项目alpha阶段.在这段时间,应教师的要求,我开始阅读一些有关软件开发本质和开发方法的文章,在此记录一些体会与心得. 文章一: No Silver Bullet: Essence and Accidents of Software Engineering by Frederick P. Brooks, Jr. 文章网址: http://www.cs.umd.edu/class/spring

关于软件开发本质和开发方法的一些文章的读后感

       看了几篇与软件工程的瀑布.大泥球.教堂.集市和银弹等概念相关的经典文章,简单的谈一下自己的一些理解. 一.银弹 从自然法则上来说,我不相信银弹不会出现.或许银弹的发现会是软件工程发展的分水岭,只是不知道会不会到来,什么时候会到来. 这篇文章存在也不是一年两年了,而文章所提出的问题却还是没有得到根本性的改变.在做了这几次简单的只算得上编程而称不上软件项目的作业后,感触尤为深刻. 作者首先提出一个问题:软件开发技术的落后是由于存在软硬件发展的不协调和畸形.软件的发展远跟不上硬件.一开始

敏捷软件开发 VS. 传统软件工程

敏捷软件开发 VS. 传统软件工程 软件工程这一术语1968年被提出,之后美国软件工程专家巴利·玻姆对十多年间研究软件工程的专家学者们提出的一些准则与信条,于1983年对提出软件工程的七条基本定理,将软件工程这一学科具体化,软件工程中开发与管理软件的方法也不断完备.而敏捷软件开发于2001年由Kent Beck和其他16位知名软件开发者提出,敏捷开发是人们对于传统软件开发方式的一种提出的新的挑战.本文将具体介绍软件传统工程与敏捷软件开发两种方法,并对两者进行对比分析. 一.传统软件工程 软件工程

定论——软件开发的方法论探讨

http://www.jianshu.com/p/9593bd7b28d9 一.消除隐喻 1.隐喻 软件开发这件事情,出现得很晚.距今只有几十年的时间,关于它的定义,我们可以简单地说:"就是把软件做出来." 这基本上等于什么都没有说.而软件开发究竟是怎么回事,大家也没有搞明白,于是隐喻就派上用场了.当你要向一个完全没有概念的朋友,解释什么是软件开发的时候,你无法向解释建筑工程那样把他带到现场去看--案件开发的现场,你的朋友会以为软件开发就是一群人坐在电脑前面打键盘--你只能打比方:它就

软件开发流程(转载)

软件开发流程 迭代化软件开发技术 1. 传统开发流程的问题 传统的 软件开发流程是一个文档驱动的流程,它将整个软件开发过程划分为顺序相接的几个阶段,每一个阶段都必需完毕所有规定的任务(文档)后才可以进入下一个阶段. 如必须完毕所有的系统需求规格说明书之后才可以进入概要设计阶段,编码必需在系统设计完毕之后才可以进行.这就意味着仅仅有当所有的系统模块所有开发完毕之 后,我们才进行系统集成,对于一个由上百个模块组的复杂系统来说,这是一个很艰巨而漫长的工作. 随着我们所开发的软件项目越来越复杂,传统的瀑

软件开发概述

                                                                                       (一)软件开发概述 1.1   软件,程序与计算机语言 软件是为完成某些特定功能而编写的一到多个程序文件的集合 计算机是由电子元件组成的. 1.2  程序语言的发展 1.2.1 机器语言 电子元件的特点是他们有两种很稳定的状态:导电或不导电.早期的计算机程序员用0表示计算机不通电的状态,用1表示计算机通电的状态,然后通过集成

项目管理理论与实践(7)——软件开发报价的计算方法

1.软件开发价格估算方法软件开发价格与工作量.商务成本.国家税收和企业利润等项有关.为了便于计算,给出一个计算公式: 软件开发价格 = 开发工作量 × 开发费用/人·月 1.1开发工作量软件开发工作量与估算工作量经验值.风险系数和复用系数等项有关: 软件开发工作量 = 估算工作量经验值 × 风险系数 × 复用系数 1.1.1估算工作量经验值(以A来表示)软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度.目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也

软件开发公司所担任的角色

每个软体开发资讯公司都有一个确保软件开发质量的方法和手段.企业网站建设的生命周期涉及许多应当严格遵循的,如严格按时,按要求提供高质量的产品.下面是一些境内或境外的软件开发公司的一些做法.一旦有客户资讯软件开发咨询公司,软件开发公司就需要着手分析客户的需求.分析非常重要,他可以保证用户的所有需求已被抓取,从而使分析制定整个项目有了基本的保证,并将这些功能附着到所需的软件.一旦对项目细节进行了分析,就需要把所设定的设计方案,功能应用到所需开发的软件上,并使之具有可行性.这就是为什么软件开发公司需要聘

10年以上Java程序员的软件开发总结

在很多时候,我们总是一直往前走却忘了对过往做一个总结,继续往前走.复盘这件事情,一直都在强调,却很少人做. 以下是作为一名java程序员经过10年时间总结出的一些有关于Java软件开发的经验规则: java编程真的不是一件容易的事 不管你多喜欢或是多会Java编程,在学习和解决问题上总会碰到障碍.工作的时间越久就越能明白这个道理.不过这倒是一个让人进步的机会,因为你要一直不断的学习才能很好的解决你面前的难题.如果你已不有了进取心,那么当遇到难道无法解决时你就会想要放弃. Java编程也是最让人沮