Java 企業(yè)應用
          不要溫柔的走入那個良夜

          2009-12-05 13:34 41人閱讀 評論(0) 收藏 舉報

          前天,偶然的機會聽了一場IBM軟件工程師的講座,也偶然的接觸了一種思想---agile.講師是賈迎,參與過Lotus Notes/Domin的開發(fā),如今是IBM的顧問軟件工程師。

             Agile這種思想和現(xiàn)在的敏捷開發(fā)有著相同的角度考慮問題。以人為核心,循序漸進的開發(fā)方式。

             回來再學習,看了幾篇文章,總結一下:

          ------------------------------------------------------

              敏捷軟件開發(fā)是一個概念意義上的框架,用來取代軟件工程項目的概念;它強調在項目的整個生命周期中擁抱并促進由于軟件進化式的發(fā)展所帶來的變化
                請注意其中的三個關鍵詞:
          在項目的整個生命周期中:這就涉及到了【敏捷項目管理】、【敏捷需求獲取】、狹義的【敏捷軟件開發(fā)】三個主要的領域和過程。要注意的是,上述三個過程并不是互相分開的,而是你中有我,我中有你。
          擁抱并促進變化:世界上唯一不變的是變化。不論在任何領域,漠視、甚至否認、抗拒變化,都不是一個理性,嚴肅的人所應有的態(tài)度。學會如何識別變化的大勢,并在可能的時候,促使變化向好的方向發(fā)展。這才是面對變化的正確應對之法。
          軟件進化式的發(fā)展:雖然上面提到促進變化的發(fā)展,但是軟件的演化過程,我相信是有其自身內在邏輯的,存在一些根本規(guī)律和指導方針;并不是完全以人的主觀意識為主導。
            了解了這三個方面,下面引入大名鼎鼎、如雷貫耳、耳朵都要磨出糨子來的敏捷宣言(Manifesto for Agile Software Development)
          We are uncovering better ways of developing software by doing it and helping others do it.
          Through this work we have come to value:
          Individuals and interactions over processes and tools
          Working software over comprehensive documentation
          Customer collaboration over contract negotiation
          Responding to change over following a plan

          That is, while there is value in the items on the right, we value the items on the left more.

          在敏捷宣言的背后,有其遵循的12條原則
          Principles behind the Agile Manifesto
          We follow these principles:
          ☆ Our highest priority is to satisfy the customer through early and continuous delivery of vaphp?name=lua" onclick="tagshow(event)" class="t_tag">luable software.
          ☆ Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
          ☆ Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
          ☆ Business people and developers must work together daily throughout the project.
          ☆ Build projects around motivated individuals. Give them the environment and support they need,
          and trust them to get the job done.
          ☆ The most efficient and effective method of conveying information to and within a development
          team is face-to-face conversation.
          ☆ Working software is the primary measure of progress.
          ☆ Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
          ☆ Continuous attention to technical excellence and good design enhances agility.
          ☆ Simplicity--the art of maximizing the amount of work not done--is essential.
          ☆ The best architectures, requirements, and designs emerge from self-organizing teams.
          ☆ At regular intervals, the team reflects on how to become more effective, then tunes and adjusts
          its behavior accordingly.
          ------------------------------------------------------------------

                想想我們聽說過的一些AOP的開發(fā)方法,有哪些和這種思想是一致的?

                很多,不斷的迭代和不斷的簡單化來完成目標就是這樣的呀!

              《輕快的java》鼓勵人們使用SSH的方法來開發(fā)軟件,因為他們不用考慮EJB帶來的過度耦合,因為他們使代碼簡單,透明。

                吃什么就像什么,使用大量的Bean而沒有容器,就使Servlet很難管理,Spring的IoC的依賴注入完美的解決了問題。

          ------------------------------------------------------------------

                而日常的生活中,又有那些問題可以被Agile解決呢?

                我發(fā)現(xiàn)eclipse的流行就可以用這種思想來說明,開始我們的需求就是像記事本一樣的做代碼。然后運行的時候要控制臺,那就集成控制臺,需要調試的時候,就集成Ant,需要什么就加什么。

                就像我們爬山的時候,為了尋找最短的路徑可能會走下山的路。

          ------------------------------------------------------------------

                                                            這些只是個人學習上一些理解。

                                                            歡迎指正。

          posted on 2012-03-08 10:55 cpegtop 閱讀(213) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
           
          主站蜘蛛池模板: 仁化县| 金门县| 桐柏县| 榆林市| 台安县| 黔西县| 阳高县| 沾化县| 大理市| 察雅县| 崇信县| 凉城县| 徐州市| 松江区| 长泰县| 舟山市| 乐陵市| 佳木斯市| 大洼县| 冀州市| 九龙县| 商丘市| 福清市| 大名县| 尉犁县| 达州市| 如东县| 安岳县| 阜新市| 祁东县| 佛学| 商水县| 措美县| 巩留县| 杨浦区| 如皋市| 荣成市| 上饶县| 汕头市| 望城县| 鹤壁市|