今天突然发现 WWW.SOSO.COM 居然很好用,呵呵,还有GOOGLE,真是太让我热爱了,想要什么资料都可以搜到,真是太感谢了。。。。 http://group.vsharing.com/Article.aspx?aid=1095457 近 20 年来,国内 IT 项目和软件开发的主流是瀑布式流程(Process)。与瀑布模型相对的是 IID(迭代递增式开发)模型。 敏捷大师 Craig Larman 和软件工程权威 Victor Basili 教授在 2003 年发表于 IEEE Computer 杂志的封面文章《Iterative and Incremental Development: A Brief History》中为我们讲解了一段非常精彩的有关瀑布模型的历史故事,这也可以说是世界软件工程史最大的误解之一。 google:iterative+and+incremental+development+a+brief+story 几十年来大家所熟悉的软件工程瀑布模型(waterfall model)概念,起源于 Winston Royce 发表于 1970 年的著名文章 "Managing the Development of Large Software Systems" (Proc. Westcon, IEEE CS Press, 1970, pp. 328-339)。 自此,世界上很多人错误地认为 Royce 大师在这篇文章中倡导的是对于软件开发,尤其大型、复杂系统和产品的开发,应当采用当今大家早已烂熟于胸的瀑布模型,即一个严格、顺序(sequential)、单次(single-pass)的瀑布生命周期,也就是说一个 IT/软件项目应该包括这样几个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码实现阶段和测试阶段、部署阶段等等。 而实际上瀑布之父 Winston Royce 真正倡导的是什么?他建议的其实是 do it twice,一个两次瀑布的“迭代”模型! If the computer program in question is being developed for the first time, arrange matters so that the version finally delivered to the customer for operational deployment is actually the second version in so far as critical design/operations areas are concerned. Winston Royce 的儿子、著名软件工程专家、RUP 创始人之一 Walker Royce 后来这样形容他父亲和那篇著名的文章: He was always a proponent of iterative, incremental, evolutionary development. His paper described the waterfall as the simplest description, but that it would not work for all but the most straightforward projects. The rest of his paper describes within the context of the 60s/70s government-contracting models (a serious set of constraints). 好了,几十年来被大家所公认的“瀑布之父”其实一直倡导的是迭代、递增和演进式开发,他在那篇经典文章中描述的瀑布模型,其实只是一种最简单的情况,并不是普遍适用所有的软件产品和系统开发、信息化和系统集成项目。而现在看,瀑布也肯定不是一种先进和最佳的软件生命周期解决方案。 怎么样,业界的以讹传讹现象很严重吧,从 1970 年代开始,一传就传了近 40 年! CMM 和 CMMI 是过去 10 年的主流。令人遗憾的是,很多人误以为 CMM、CMMI 的缺省、默认标准就是瀑布式,瀑布式是全球软件工程界的最佳实践! 附录: waterfall.pdf history-of-iterative-larman-and-basili-ieee-computer.pdf
这是一本介绍C语言及软件工程方面的书籍,书名《A Structured Programming Approach using C, Third Edition》,作者是 B. A. Forouzan and R. F. Gilberg.本书适合计算机系的本科学生、初学者。比较重要的部分就是指针及其应用、字符串处理等。花了将近两天的时间看完这本书,多少还是有些收获的。觉得这本书缺乏有趣的例子和实际的项目,如果添加了这些,会更完美。总之,还是要多实践,多编程,否则很快就忘了!
推荐三本书关于农业系统与软件工程技术,通俗点说就是,教你怎样把公式编制成软件。可不要太高看自己哟。 Petraq J. Papajorgji and Panos M. Pardalos. Software engineering techinques applied to agricultural sysetems: An Object-Oriented and UML Approach, 2006, Springer Press. Petraq J. Papajorgji and Panos M. Pardalos. Advances in modeling agricultural systems. 2009, Springer Press. 这是两本关于软件工程技术与模型相结合的书。书中介绍了新的软件建模方法,如UML, OCL, MDA和ontologies,还介绍了一些高级数学工具。 D.W.G. van Kraalingen, The FSE system for crop simulation, version 2.1, 1995 这是一本非常经典的作物模型教材。