.net 架構下快速Web開發(一)——糾結的裡程

來源:互聯網
上載者:User

  從事軟體開發也有有五、六年了,在部落格上寫文章比較少。這裡有很多技術精英,也有和我一樣熱愛編程的朋友,所以決定把我的企業開發體會寫出來,以便於和大家一起討論、學習、提高。

      我從正式使用.NET進行開發也有五年多時間,從.net 2003到現在的2010一路走來,由於公司項目比較繁雜,所以也沒有專註對.net進行深入學習,一般都是公司指到哪裡打到哪裡,相信做企業開發的朋友也有和我一樣的體會。

     第一個接觸的項目是開發一個企業辦會系統(OA),裡面涉及到當時比較主流的模組“單據自訂”、“工作流程”、“待辦工作提醒”、“許可權集”、“使用者”、“組織機構”等。項目因時間緊,一開始就進入編碼階段,調研也同時進行。主要是人員不夠,記得當時項目組就四個人,一個負責調研寫文檔,一個是項目主要管理員,還有和我另一個程式員。進入開發階段,調研也同時進行,因此沒有相應的業務需求報告,由於事先已經確定了一些功能性的模組,開發就同時展開了。加班。。討論。。返工。。等不可避免。其中過程就不詳細說了,這是我的第一個項目,但是欣慰的是結果還是令人滿意的。四個人的項目組,在四個月內完成了這個OA系統。記得當時最難做的就是單據定義,特別是涉及到主從表單據時特別煩索。通過這個項目我最大的收穫就是:開發一個快速平台再做業務可以大大提高效率,同時也為業務變更提供了很大的放便。比如加減欄位通過平台可以方便的變更,基本不需要再編碼,也就不需要編譯、部署這一系列的過程。

再後來我進入了另一個項目,這個項目進行了兩年多的時間,到現在還沒有完全驗收。當然原因有很多,這裡不討論其它原因,只說說開發過程中的一些體會。這個項目有一套半成熟的平台進行開發。剛接觸到這個平台時確定感覺還是不錯的。很多功能的實現思路和我做過的OA有相似的地方。只不過不同的是引入了資料對象等概念,就是把有關係的實體表抽象成一個對象,表中的欄位抽象成對象的屬性。這個平台有兩個大的模組,一個是開發平台,一個是設計平台。設計平台相對簡單,就是就是調研人員加入資料項目,結果可以匯出成SQL,產生資料表。開發平台通過設計平台定義好的實體進行抽象成一個對象。這個平台初期的確給我們提供了方便,很快軟體的原型就出來了,基本模組也出來了。可是沒過多久,項目功能的變動就出了很多問題。比如平台中有一個複製功能,就是把模組速複製一份,問題也就出在這裡了,初期的快速因為有它,後來的問題也是因為它。複製模組通常使用同一個資料對象,如果兩個模組後期要使用不同的資料對象,就會導致整個模組的根基的變動。相當於重新從資料對象,頁面,事務,校正等做起,工作量巨大。客戶感覺一個很小的改動。我們忙了很長時間還沒有解決,工期就這樣拖下來了。還有平台本身的一些缺陷因為當時沒有源碼和完整的協助文檔,沒有解決。這樣直到現在這個項目也沒有完全驗收。這個項目讓我體會到:(1)專案管理是重中之重,由於這個項目更換了至少四個以上的專案經理,導致項目的模組之間的耦合性的問題沒有解決,而為項目日後的維護埋下了毒瘤,牽一髮而動全身。(2)還是管理,項目的管理除了人員的合理調動,配套的文檔,計劃書等一定要有,這些是指導方針。(3)還是管理,項目的風險評估一定要做好,比如使用第三方平台、外掛程式等要充分評估好是否可控,風險的大小。這些也是專案管理者應該做好的。當然在時間允許的情況下,能自己研發是最好的(4)通過快速平台開發在帶來快速的同時,因為耦合性太高給項目也帶來了巨大的風險。

當然沒有風雨就沒有彩虹,通過這些糾結的裡程,才有進步。後面會繼續討論.Net平台下快速Web開發,也希望和大家共同討論,共同學習。

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.