[濟南軟件開發(fā)專題]濟南軟件開發(fā)的注意事項
2014-06-13 17:08:57 訪問:
濟南濟南軟件開發(fā)的注意事項
一、定義
濟南軟件開發(fā)是根據(jù)用戶要求建造出軟件系統(tǒng)或者系統(tǒng)中的軟件部分的過程。濟南軟件開發(fā)是一項包括需求捕獲,需求分析,設(shè)計,實現(xiàn)和測試的系統(tǒng)工程。軟件一般是用某種程序設(shè)計語言來實現(xiàn)的。通常采用濟南軟件開發(fā)工具可以進行開發(fā)。軟件分為系統(tǒng)軟件和應(yīng)用軟件。 軟件并不僅是包括可以在盤算機上運行的程序,與這些程序相關(guān)的文件一般也被以為是軟件的一部分。 軟件設(shè)計思路和方法的一般過程,包括設(shè)計軟件的功能和實現(xiàn)的算法和方法、軟件的總體結(jié)構(gòu)設(shè)計和模塊設(shè)計、編程和調(diào)試、程序聯(lián)協(xié)調(diào)測試以及編寫、提交程序。
二、五大注意事項
1、項目設(shè)計
項目設(shè)計的主導(dǎo)思維,我覺得可以懂得為兩種,一種是完全設(shè)計,一個是簡單設(shè)計。
完全設(shè)計是指在詳細編寫代碼之前對軟件的各種方面都考察好,做好詳細的需要剖析、編寫好全部的開發(fā)文檔,設(shè)計出程序全部流程后再開始寫代碼。換句話說,就是全體的打算好了,能看到終極的樣子,再開火。這似乎也是許多“軟件工程”書里要求的那樣。開始的時候,我感到這種方法不錯也。什么都方案好了,照著做就是了。不外這里有個顯明的問題,就是誰來做這個完善的規(guī)劃?估量只有及其BT的人了,然而大部分人的想要完全設(shè)計,并且沒有過錯,或者已經(jīng)有多少種后備的容錯方案,并能正確無誤的推行。以到達最終目的。這樣的境界,沒有良多年的工作閱歷是不可能的。我也不這樣的本領(lǐng),所以我也就廢棄了這種主意。
簡單設(shè)計:簡單設(shè)計一種概念,一種能夠接收的簡單的設(shè)計,最最少數(shù)據(jù)庫已經(jīng)定下來,根本流程已經(jīng)斷定的計劃,來作為程序設(shè)計的開端,并隨時依據(jù)實際情形的進展來修改詳細的功能設(shè)計,但這種功效修正不能是修改數(shù)據(jù)庫結(jié)構(gòu)。也就是說數(shù)據(jù)庫結(jié)構(gòu)是在編程之前經(jīng)由重復(fù)論證的。這種方式減少了前期設(shè)計的時間,把代碼編寫工作和部門設(shè)計工作放在了一起,實際縮短了項目開發(fā)的時光。假如說完全設(shè)計辦法請求有很厲害的前期設(shè)計人員,那么簡單設(shè)計要求有很有設(shè)計腦筋的編程人員。編程人員不僅僅是K代碼的人而且要負責(zé)程序架構(gòu)的設(shè)計。所以對程序員的要求就很高了。簡單設(shè)計的勝利的一個基點是編程人員設(shè)計的邏輯結(jié)構(gòu)簡單并能根據(jù)須要來調(diào)劑其邏輯構(gòu)造,就是代碼結(jié)構(gòu)機動,簡單設(shè)計帶來的另外一個變更就是會議會比擬多,編程人員之間的交換就變的很主要。當(dāng)初個別的中小型濟南軟件公司基礎(chǔ)上都是采取簡單設(shè)計的,除非那些很大型的濟南軟件公司。
總結(jié),簡略設(shè)計考驗的是開發(fā)人員的才能。完整設(shè)計考驗的是前期設(shè)計職員跟全部名目組完全能力。(各種文檔的編寫,開發(fā)人員必定會要寫一局部的。)
2、設(shè)計變化和需求變化
開發(fā)人員最怕的是什么呢?設(shè)計變化,還是需求變化?我認為需求變化是最最致命的。當(dāng)你的一個項目數(shù)據(jù)庫都定下來后,而且已經(jīng)開發(fā)了若干個工作日,忽然接到甲方公司提出,某個功能要轉(zhuǎn)變,本來的需求分析要從新改,如果這個修改是波及的數(shù)據(jù)庫的表結(jié)構(gòu)更改的話,那真是最致命的。這就象征著項目的某些部分得重新推倒重來,如果這個部分跟已實現(xiàn)的多個部分有連累的話,那就成果更恐怖了。所以當(dāng)遇到這種情況發(fā)生,作為項目經(jīng)理的你就應(yīng)當(dāng)考慮先查責(zé)任人,畢竟是自己的需求分析做的不夠好,仍是客戶在認同了需求分析后做出的修改,如果是后者的話,你完全可以要求客戶對他的這個修改負義務(wù)!那么,呵呵,客戶先生,對不起了,本次新增長的需求將納入另外一個版本。如果是改變前面某個需求的定義,那么說不定就要推倒重來了,不過這個時候到不必太在意,究竟錯的是客戶。(項目正式開始前沒有沒有說明白其需求)。所以,各位看客,在需求分析做好后,在動工之前一定要叫客戶認可簽字,并且在合同上要注明,當(dāng)由客戶起因引起的需求改變而造成開發(fā)本錢的增添,客戶要為此買單地。
如果在需求不變的情況之下,設(shè)計產(chǎn)生了變化,這個僅僅是咱們內(nèi)部之間的抵觸,磋商一下就能解決。在簡單設(shè)計中,因為前期的設(shè)計是不完整的,那么當(dāng)進入任何一個新的模塊進行開發(fā)時,都有可能引起設(shè)計的變化。開發(fā)人員的程度的高下就基本上決議了軟件的好壞。
3、代碼編寫
當(dāng)需求定下來數(shù)據(jù)庫也定下來后,實在我們就可以進行本質(zhì)性的編碼了,依照我的見解,一個人單獨編程最好,能隨時偷勤。(上網(wǎng),和MM聊聊),但是現(xiàn)在的軟件項目越來越大,工期也越來越緊,事實上我們一個小組里面,一般有3-5程序員,所以我們要強調(diào)團隊配合性。那么你寫的代碼使得別人要可能看懂,我們必須在實際的編寫代碼過程中要有詳細的編碼規(guī)范,編碼規(guī)范在很多書籍里面都提到過。但最起碼以下的一些標準是我們必需要遵照的:
一)源程序言件結(jié)構(gòu):
每個程序文件應(yīng)由標題、內(nèi)容和附加說明三部分組成。
(1)題目:文件最前面的注釋說明,其內(nèi)容主要包括:程序名,作者,版權(quán)信息,扼要說明等,必要時應(yīng)有更詳盡的說明(將以此部分以空行隔開獨自注釋)。
(2)內(nèi)容控件注冊等函數(shù)應(yīng)放在內(nèi)容部分的最后,類的定義按private、protected、pubilic、__pubished的順序,并盡量堅持每一部分只有一個,各部分中按數(shù)據(jù)、函數(shù)、屬性、事件的次序。
(3)附加說明:文件末尾的彌補說明,如參考材料等,若內(nèi)容未幾也可放在標題部分的最后。
二)界面設(shè)計風(fēng)格的一致性:
因為采用可視化編程,所有的界面均與Win32方式相似,相應(yīng)采用的控件等也大都為Windows操作體系下的標準控件,而且參考了其余一些市道上相干的企業(yè)內(nèi)部管理的運用軟件。
基于簡單易操作的原則,貼近用戶斟酌,用戶界面采用Windows作風(fēng)的尺度界面,操作方法亦同Windows風(fēng)格,這樣在實行進程,可以下降對客戶的培訓(xùn),也可以應(yīng)用戶容易上手,軟件公司,簡單易學(xué)。
三)編纂風(fēng)格:
(1)縮進:縮進以Tab為單位,一個Tab為四個空格大小。全局數(shù)據(jù)、函數(shù)原型、標題、附加說明、函數(shù)說明、標號等均頂格書寫。
(2)空格:數(shù)據(jù)和函數(shù)在其類型,修飾(如__fastcall等)名稱之間適當(dāng)空格并據(jù)情況對齊。要害字原則上空一格,不管是否有括號,對語句行后加的注釋利用適當(dāng)空格與語句隔開并盡可能對齊。
(3)對齊:準則上關(guān)聯(lián)親密的行應(yīng)答齊,對齊包括類型、潤飾、名稱、參數(shù)等各部分對齊。另每一行的長度不應(yīng)超過屏幕太多,必要時適當(dāng)換行。
(4)空行:程序文件結(jié)構(gòu)各部分之間空兩行,若不用要也可只空一行,各函數(shù)實現(xiàn)之間普通空兩行。
(5)注釋:對注釋有以下三點要求:
A、必須是有意思;
B、必需準確的描寫了程序;
C、必須是最新的。
正文必不可少,但也不應(yīng)過多,以下是四種必要的注解:
標題、附加說明
函數(shù)說明:對簡直每個函數(shù)都應(yīng)有恰當(dāng)?shù)慕忉?,通常加在函?shù)實現(xiàn)之前,在沒有函數(shù)實現(xiàn)部分的情況下則加在函數(shù)原型前,其內(nèi)容重要是函數(shù)的功能、目標、算法等說明,參數(shù)說明、返回值說明等,必要時還要有一些如特殊的軟硬件要求等說明;
在代碼不清晰或不可移植處應(yīng)有少量闡明及少量的其它解釋。
四)命名規(guī)范:
保持采用匈牙利變量命名通例,所有標識符一律用英文或英文縮寫,杜絕采用拼音,標識符中每個單詞首字母大寫,縮寫詞匯正常全部大寫,只在必要時加“_”距離詞匯。
4、BUG修補
程序呈現(xiàn)了BUG誰來修補呢,最好的措施是誰編寫誰修補,誰改壞誰修補。一個人改壞的代碼一人去修。兩個人一起改壞的代碼兩人一起修。
5、開發(fā)人員的測試
開發(fā)人員的測試是保障代碼能畸形運行,在開發(fā)時候發(fā)明的毛病往往比較容易修正。(另外一個利益就是沒有人來罵你。由于只有你本人曉得)。但是一旦軟件到了測試小組那里出了問題,那么就多了很多時間來修正BUG,如果到了客戶哪里才發(fā)現(xiàn)的BUG,那么時間就更長了,開發(fā)人員自身受到的壓力也是到了最大話了。客戶->公司->測試小組->開發(fā)人員。這個完全是倒金字塔型的,蒙受能力差的一環(huán)很輕易失事情的。
另外開發(fā)人員的測試除了保證代碼能正常運行以外,還有一個很重要的方面就是要保證上次能正常運行的代碼,這次還是能正常運行。如果做不到這點,那么BUG就一直的會涌現(xiàn),很多BUG也會反復(fù)出現(xiàn)。于是軟件看上去就有修補不完的BUG了。如果出現(xiàn)這種情況,那么開發(fā)人員有必要再教育。一般公司教育的方式有四種。第一種,扣工資,第二種,加班,反復(fù)加班+精力攻打。第三種,開革。第四種,調(diào)動聽員來輔助那個出了麻煩的家伙。但愿看這個文章的人不要受到前面三種教導(dǎo)。
選購指南:
本公司主要為山東地區(qū)供應(yīng)各品種型的開發(fā),濟南桌面濟南軟件開發(fā),濟南網(wǎng)頁濟南軟件開發(fā),濟南APP濟南軟件開發(fā),濟南WinCE嵌入式濟南軟件開發(fā),具體包含如:濟南OA開發(fā)、濟南ERP開發(fā)、濟南財務(wù)濟南軟件開發(fā)、濟南HR濟南軟件開發(fā),可以滿足各種大中小型各類企業(yè)的管理需要。