選擇java 進(jìn)入自由開(kāi)放的國(guó)度

          隨筆 - 49, 文章 - 3, 評(píng)論 - 154, 引用 - 1
          數(shù)據(jù)加載中……

          我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品

                   每個(gè)創(chuàng)業(yè)者都會(huì)有第一桶金,這對(duì)于創(chuàng)業(yè)者來(lái)說(shuō),是啟動(dòng)資金,是公司能開(kāi)航的動(dòng)力;對(duì)于聽(tīng)眾或者觀眾來(lái)說(shuō),有的可能就是奇跡、神話、傳奇,等等之類的。對(duì)我來(lái)說(shuō),這第一“桶”金,是我創(chuàng)業(yè)的直接“導(dǎo)火索”,同時(shí)也是我的啟動(dòng)資金,這中間更多的是我的沖動(dòng),是一種藏在心底里長(zhǎng)久的一種火苗的突然燃燒。所以對(duì)于聽(tīng)眾來(lái)說(shuō),可能比較平淡無(wú)奇了。
                  公司的第一個(gè)項(xiàng)目,也是我第一桶金的資金來(lái)源,既然是公司做的東西了,肯定不能象toy軟件了,要真正當(dāng)作一個(gè)軟件產(chǎn)品來(lái)做了,要有需求分析,軟件架構(gòu)設(shè)計(jì),數(shù)據(jù)庫(kù)設(shè)計(jì),編寫源代碼,測(cè)試,維護(hù)等環(huán)節(jié)了。因?yàn)閯傞_(kāi)始公司就我們兩個(gè)人,所以我們兩個(gè)就充當(dāng)了架構(gòu)設(shè)計(jì)師,軟件工程師,測(cè)試工程師,售后工程師等角色。
                 雖然以前也做過(guò)很多項(xiàng)目,也和很多人合作開(kāi)發(fā)過(guò),但是真正的流程還是理解的不夠,其實(shí)在軟件開(kāi)發(fā)中這個(gè)流程是非常重要的。下面我就以我的親身體驗(yàn)來(lái)說(shuō)明軟件開(kāi)發(fā)中的各個(gè)環(huán)節(jié),這同時(shí)也是我的教訓(xùn),其中有許多可能也是不對(duì)的,希望朋友們給予指正。
                 項(xiàng)目描述:是一個(gè)生產(chǎn)企業(yè)的綜合計(jì)劃管理系統(tǒng),包括了訂單管理,排產(chǎn)管理,令號(hào)管理,銷售管理,發(fā)運(yùn)管理五個(gè)模塊,另外還有綜合查詢等統(tǒng)計(jì)信息。
                  需求——你受客戶的影響有多大?了解了基本需求之后,我做了一個(gè)解決方案,其中包括了J2EE架構(gòu)和.NET架構(gòu),并詳細(xì)描述了各自的有缺點(diǎn)和環(huán)境需求,讓客戶來(lái)選擇。我向客戶推薦的是采用J2EE架構(gòu),一方面是我的原因,我想在J2EE設(shè)計(jì)中積累更多的經(jīng)驗(yàn),二是客戶的公司的訂單的處理將來(lái)可以移到Internet,實(shí)施E-commerce。當(dāng)把方案拿給客戶以后,我自然的推薦了J2EE模式,但是這個(gè)客戶他本身還是很了解技術(shù)的,他說(shuō)J2EE比較復(fù)雜,將來(lái)維護(hù)的費(fèi)用會(huì)比較高,另外他也不是太懂,因?yàn)橐郧八_(kāi)發(fā)了公司的網(wǎng)站系統(tǒng),使用ASP開(kāi)發(fā)的,所以他就建議我們使用ASP開(kāi)發(fā),一是ASP的環(huán)境要求比較低,二是將來(lái)他可以自己維護(hù),譬如需要什么報(bào)表,他就可以自己加進(jìn)去。因?yàn)槭俏业牡谝粋€(gè)項(xiàng)目,所以我也接受了他的建議。說(shuō)句實(shí)話,對(duì)于生產(chǎn)企業(yè)的管理系統(tǒng),我還是第一次做,其中的一些流程我一點(diǎn)都不清楚,好多名詞更是第一次聽(tīng)說(shuō),如“令號(hào)”,“排產(chǎn)”等。這也給我寫需求造成了困難,在和客戶交流了一周多后,我基本熟悉了流程,客戶也把數(shù)據(jù)表的要求寫出來(lái)了,綜合了我所了解的業(yè)務(wù)后,我寫了一篇洋洋灑灑的《需求分析說(shuō)明書》,這也是我第一次這么完整、規(guī)范的一個(gè)需求分析。
                 架構(gòu)設(shè)計(jì)——能設(shè)計(jì)出一種彈性、合理的架構(gòu)嗎?以前設(shè)計(jì)的軟件,我沒(méi)有這個(gè)環(huán)節(jié),直接拿來(lái)題目,根據(jù)經(jīng)驗(yàn)馬上就開(kāi)始編碼。但我現(xiàn)在是公司了,必須要按照規(guī)范來(lái)作,即使我做的不好,我也必須加入這個(gè)環(huán)節(jié)。當(dāng)然要想設(shè)計(jì)出彈性靈活的架構(gòu),不是一朝一夕就有這個(gè)功力的,對(duì)于一個(gè)軟件也不是一次就能設(shè)計(jì)出非常好的架構(gòu)的。李維在《面向?qū)ο笤O(shè)計(jì)實(shí)踐之路》中提到的PFM系統(tǒng),之前也是為了完成任務(wù)而做的,我之前設(shè)計(jì)的軟件可能都是這樣的,沒(méi)有什么架構(gòu)而言的,現(xiàn)在要對(duì)PFM改造,進(jìn)行重新設(shè)計(jì),使之有一個(gè)彈性靈活的架構(gòu),但也要經(jīng)過(guò)幾次反復(fù)之后才行。
                 界面設(shè)計(jì)——能設(shè)計(jì)出簡(jiǎn)潔美觀符合習(xí)慣的界面嗎?以前不很注意,界面隨便搞一下就可以了,以前看了林銳的《Web界面設(shè)計(jì)》覺(jué)得沒(méi)有什么看的,覺(jué)得我都知道,當(dāng)這次我要真正的要進(jìn)行界面設(shè)計(jì)的時(shí)候,我覺(jué)得他說(shuō)得好多我可能正要碰到或者將要碰到,覺(jué)得很多“規(guī)則”還是很有道理的。我不見(jiàn)得要設(shè)計(jì)出非常有創(chuàng)意的界面,但是我應(yīng)該設(shè)計(jì)出標(biāo)準(zhǔn)的界面,不能讓用戶一看,啊!真難看啊!所以這次我對(duì)于界面非常的注重,因?yàn)檫@個(gè)是給用戶的第一感覺(jué)。功能是軟件的第一要素,如果軟件連客戶的功能都沒(méi)有實(shí)現(xiàn),就別提別的了,當(dāng)功能實(shí)現(xiàn)以后,就要讓用戶用著舒服,看著舒服,界面一致。軟件的界面和寫文檔一樣,有沒(méi)有用心一看就有結(jié)果了。
                 程序編碼——是反思一下編程技巧的時(shí)候了?編碼,以前變了很多,C/C++,Delphi,VB,ASP,PHP,JAVA等等,都編過(guò),但那種編碼缺少一種藝術(shù)性,當(dāng)然也缺乏規(guī)范,那是為了完成任務(wù)而寫的。但這次不同,這次是做為公司的產(chǎn)品,是代表我公司的形象的,是該反思一下編碼的問(wèn)題了,不能讓客戶一看我的代碼,就覺(jué)得我象個(gè)業(yè)余的似的。以前使用ASP,關(guān)鍵代碼和界面一起,顯得非常的混亂,即使最后發(fā)覺(jué)了,也懶得去改了,一個(gè)軟件到最后,自己都不想看自己的代碼了,這種情況在這一次絕對(duì)不能出現(xiàn)。我要實(shí)現(xiàn)數(shù)據(jù)和界面的分離,要實(shí)現(xiàn)統(tǒng)一的錯(cuò)誤機(jī)制,實(shí)現(xiàn)單一登錄,實(shí)現(xiàn)靈活而嚴(yán)謹(jǐn)?shù)臋?quán)限管理等等。
                 軟件測(cè)試——程序員加入了單元測(cè)試了嗎?是不是應(yīng)該寫出完整的測(cè)試用例和測(cè)試文檔?測(cè)試,這是以前根本不當(dāng)回事的,但這次一定不但要加入這個(gè)環(huán)節(jié),而且還要建立一套測(cè)試流程,不能給客戶的軟件,出現(xiàn)一些注釋,出現(xiàn)一下不該有的錯(cuò)誤。我對(duì)每個(gè)模塊建立了詳細(xì)的測(cè)試用例,寫了測(cè)試跟蹤表,寫了測(cè)試報(bào)告,并且我和另外一個(gè)開(kāi)發(fā)人員互相測(cè)試,也理解了“不能讓自己看自己代碼”,當(dāng)然這次測(cè)試都是手工進(jìn)行的,以后要加入自動(dòng)化測(cè)試。
                 軟件周期管理——能控制住軟件的進(jìn)度嗎?這是做為管理者,做為經(jīng)理應(yīng)該具備的,要能保證控制住軟件開(kāi)放的進(jìn)度和周期。這次我也充當(dāng)了管理的角色,這也是第一次。
                 軟件交付——軟件能讓自己滿意嗎?

                 思考:流程、管理對(duì)于一個(gè)公司是非常重要的,拿軟件產(chǎn)品來(lái)說(shuō),流程和管理的規(guī)范應(yīng)能使得軟件的交付更加及時(shí),但是對(duì)于剛起步的小公司來(lái)說(shuō),是一上來(lái)就規(guī)范呢?還是先按作坊式發(fā)展?

          (由于時(shí)間太緊,細(xì)節(jié)沒(méi)有列出,將來(lái)補(bǔ)上)
          2006年3月4日

          下一篇:我的創(chuàng)業(yè)日記2(公司愿景)——我們的目標(biāo)

          posted on 2006-03-04 19:16 soochow_hhb 以java論成敗 以架構(gòu)論英雄 閱讀(3266) 評(píng)論(7)  編輯  收藏 所屬分類: 我的創(chuàng)業(yè)日記

          評(píng)論

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          保持平常心就好了,有些變化不是一下子可以實(shí)現(xiàn)的,公司的發(fā)展也是一個(gè)日程月累的過(guò)程,別給自己太大的壓力
          2006-03-05 09:30 | shaofan

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          我最近也有創(chuàng)業(yè)的計(jì)劃,

          可以多交流。


          不過(guò),看了你寫的東西,我覺(jué)得你的東西前途堪憂。
          2006-03-06 12:54 | sog

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          開(kāi)始盡量采用簡(jiǎn)單的架構(gòu)和過(guò)程,創(chuàng)業(yè)之初很缺錢,架構(gòu)和過(guò)程都是很耗錢(或者時(shí)間)的。
          找一種簡(jiǎn)單可行的方式開(kāi)始運(yùn)作,然后把注意力放在業(yè)務(wù)上,畢竟是在經(jīng)營(yíng)一個(gè)公司,而不是開(kāi)研究所。
          僅供參考。
          2006-04-13 11:32 | 黃金時(shí)代已過(guò)

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          令號(hào)可能指工單,又稱工令單,制令,work order
          排產(chǎn)可能指排程,schedule
          2006-04-13 11:39 | 黃金時(shí)代已過(guò)

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          好樣的!
          2006-08-05 20:08 | 朱開(kāi)番

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          我也經(jīng)常有這個(gè)沖動(dòng)的,但有些idea不是缺市場(chǎng)就是缺錢,直到現(xiàn)在還沒(méi)開(kāi)始,萬(wàn)事開(kāi)頭難啊,如有機(jī)會(huì)能請(qǐng)教你嗎?
          2006-08-28 18:01 | 激情燃燒的歲月

          # re: 我的創(chuàng)業(yè)日記1(第一“桶”金)——理解軟件產(chǎn)品  回復(fù)  更多評(píng)論   

          朱開(kāi)番你在那兒?看到后給我郵件lanqiwen@126.com
          2007-08-05 10:42 | 藍(lán)
          主站蜘蛛池模板: 汝州市| 河津市| 平潭县| 麻江县| 淳安县| 临沂市| 扎囊县| 威远县| 武隆县| 林甸县| 航空| 华池县| 昂仁县| 濮阳县| 冀州市| 伊通| 闽侯县| 资阳市| 辛集市| 阜宁县| 大兴区| 林甸县| 安顺市| 合水县| 安新县| 扎兰屯市| 垫江县| 洪湖市| 稻城县| 当阳市| 四会市| 株洲县| 枣阳市| 修水县| 达日县| 中江县| 县级市| 金川县| 固镇县| 桐城市| 本溪|