`
robbin
  • 浏览: 4814807 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
377a9ecd-1ea1-34ac-9530-9daa53bb2a7b
robbin谈管理
浏览量:136556
社区版块
存档分类
最新评论

RoR背后的软件开发方法学思考

    博客分类:
  • Ruby
阅读更多
是的,使用RoR肯定需要新的软件开发方法论来指导,但是这一点尚且需要更多实践项目的探索才能有更进一步的想法。这不像单纯钻研技术,看看文档,写写code观点就可以出来的。


不过从更加宏观的角度来说,RoR需要你采用一种完全不同的开发软件的思路和方式,也就是ozzzzzz说的方法论吧。例如在我们开发JavaEye2.0网站之前就确定了一些原则,这些思路和传统软件思路完全不同,例如:

1、传统软件要求明确需求之后再开发,而我们只有一个大致的想法就开始把原型做出来

2、传统软件要做出来之后,内部测试,才会正式发布,用户才会接触到,而我们还没有开始之前,就开始放风说一个月后新网站上线,把用户参与的时间点提前到了软件开发之前

3、传统软件采用封闭开发,而我们从有想法,到设计原型,一步一步开发,测试,上线所有步骤全程网络直接和用户实时交流

4、传统软件要没有bug才推出,而我们是抢先推出,让用户来反馈bug。

使用RoR是从技术上确保了我们这种开发软件思路能够顺利执行下来,但是这种做软件的思路是从成功的web2.0网站开发和运营的经验借鉴过来的,具体来说我是受了37signals的《Getting Real》的影响才决定这样去做的。

RoR这两年这么流行,其实也不单纯是技术的原因,更加主要的是RoR顺应了互联网Web2.0软件开发的需要:敏捷,快速反馈,用户参与。当然我们也有一些创新的做法,例如把用户反馈提前到软件还没有开发之前。

其实企业应用软件开发未来几年的主旋律也无非就是:敏捷,快速开发,用户参与,再加上一个异构系统整合而已。因此RoR的流行深层次的原因可能是一种应用软件行业开发方法的变迁。

就这个话题我已经准备在12月1日的中国软件大会上讲一个topic了,到时候希望得到更多探讨和交流。

分享到:
评论
2 楼 helloworld 2006-12-29  
让用户反馈bug对很多团队是很难做到的。开发城市的客户可能会更理解软件开发工作的特点。大部分用户在每反馈一个bug时,你项目验收的难度就会增加一点。他会对你开发的东西失去信心,以致于怀疑一切。但是我从技术角度赞同你的观点,而非技术人员,你的上司,客户和业务代表就很难做到。
我们做软件时一般采用2次开发法,根据用户的需求迅速推出一个东西让部分用户用1个月左右,然后1个月内跟踪用户的需求,再推出第二个版本,也就是验收版本。当然事先要和用户说清楚,第一个东西是用来交流需求用的,不是最终的产品。
1 楼 iceskysl 2006-11-07  
不能不说《Getting Real》是个好东西,使我们明白,现阶段什么是根本,抓住中心,才能跟上变化。。
敏捷越来越重要,现在只有在 电信行业 还可以按照原来的模式来开发,赶进度的话就只能是加班拼时间,没有一个模式的改变,所以速度和效率都比较低下。。

相关推荐

    RoR性能优化经验谈

    RoR(Ruby on Rails)是一种流行的开源Web开发框架,以其高效和简洁的代码著称。然而,随着网站规模的增长,性能优化成为必不可少的环节。在本文中,我们将探讨一些RoR性能优化的关键方面,主要基于JavaEye网站在...

    ror中文资料

    Ruby on Rails(RoR)是一个基于Ruby编程语言的开源Web应用框架,遵循MVC(Model-View-Controller)架构模式,旨在简化Web开发过程,提高开发效率。RoR强调“约定优于配置”,提供了一套完整的工具链,使得开发者...

    ror

    NULL 博文链接:https://xuxiangpan888.iteye.com/blog/266696

    RoR选题方向—源代码

    Ruby on Rails(RoR)是一种基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web开发过程。在这个选题方向中,我们主要探讨的是与RoR相关的源代码分析和学习。源代码是...

    敏捷开发第二版ROR必看

    "敏捷开发第二版ROR必看"这个主题,指的是对敏捷开发方法论与Ruby on Rails的结合应用进行深入学习的教程。此教程特别强调了2006年度的最佳出版物,旨在为开发者提供与时俱进的敏捷开发实践指导。 **敏捷开发介绍**...

    ror实例

    Ruby on Rails(简称RoR或Rails)是一种基于Ruby语言的开源Web应用框架,它遵循Model-View-Controller(MVC)架构模式,旨在提高开发效率并提供简洁、优雅的代码结构。"ror实例"可能指的是在学习或实践中,通过创建...

    神经网络ror resenet模型

    **神经网络Ror ResNet模型详解** 在深度学习领域,ResNet(残差网络)模型是具有里程碑意义的创新,由He et al.在2015年提出。该模型解决了深度神经网络训练中的梯度消失问题,允许构建非常深的网络结构。而“Ror”...

    ROR安装必备所有架包

    在Ruby on Rails(ROR)开发环境中,安装和配置正确的依赖包是至关重要的。这个压缩包包含了一系列用于ROR框架的基础组件,但不包括Ruby本身。让我们深入了解一下这些包的作用和重要性。 首先,`actionpack`是Rails...

    初探ROR

    Ruby on Rails(简称ROR)是一个基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在促进开发过程的简洁性和效率。Ruby on Rails的核心理念是“Don't Repeat Yourself”(DRY,...

    软件开发对比工具

    - ror.nfo 可能是关于Ruby on Rails(RoR)框架的信息文件,RoR的开发也离不开对比工具,用来对比代码库的版本差异和进行调试。 - 使用说明.txt 提供了关于如何使用这些工具的指南,可能是对比工具的使用教程,帮助...

    RoRBlog 基于RoR的博客系统

    基于RoR的博客系统,代码风格简单清晰,前后太完善,适合初学者。

    Windows 上搭建 ROR环境

    随着Web开发技术的不断发展,Ruby on Rails(简称Rails或ROR)作为一种高效、简洁且优雅的Web开发框架,受到了广大开发者的青睐。然而,在Windows环境下搭建Rails开发环境却让不少初学者感到头疼。本文将详细介绍...

    机遇ROR 的图书管理系统

    通过学习和实践《机遇ROR的图书管理系统》,你不仅能掌握Ruby on Rails的核心技能,还能提升对Web开发整体流程的理解,为未来开发更复杂的Web应用打下坚实基础。而提供的"EasyKey1.1.exe"可能是用于辅助学习的工具,...

    RoR 培训课程PPT

    - **书籍推荐**:《Agile Web Development with Rails》是一本经典的RoR教程,适合进一步深入了解RoR的开发实践。 - **在线社区**:参与Ruby on Rails官方论坛或Stack Overflow等社区,获取最新的技术资讯和解答开发...

    ROR环境配置

    在IT行业中,Ruby on Rails(简称ROR)是一款基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web应用开发过程,提高开发效率。本文将深入探讨如何配置ROR开发环境,以及...

    ROR 文件的上传与下载

    ### ROR 文件的上传与下载:深入解析与实践 在Ruby on Rails(简称ROR)框架下,处理文件的上传与下载是一项常见的需求,尤其是在构建包含媒体内容的应用程序时。本文将基于给定的文件信息,详细阐述如何在Rails...

    freemis 基于ror框架的mis

    3. **Scaffolding**:RoR提供快速原型开发工具,能自动生成基本的CRUD(创建、读取、更新、删除)操作的视图、控制器和模型代码,加速开发进程。 4. **Convention over Configuration**:RoR强调约定优于配置,减少...

    learnRoR:艰难地学习RoR

    RoR,或Rails,是由David Heinemeier Hansson开发的一个开源Web应用程序框架,它完全用Ruby编程语言编写。Ruby是一种面向对象的、动态的、易于理解的语言,它以其简洁和表达力强而受到开发者们的喜爱。 【描述】中...

    ROR介绍演讲课件 ruby on rails

    TDD(测试驱动开发)也是RoR强调的一个重要方面,它鼓励开发者先写测试,再编写满足测试的代码,确保软件质量。 Rails社区活跃,拥有丰富的插件和gem(Ruby的库包),如Devise用于身份验证,CanCanCan进行权限控制...

Global site tag (gtag.js) - Google Analytics