app開發(fā)流程注意事項(xiàng) 為什么軟件工程特別強(qiáng)調(diào)必須先有設(shè)計(jì),然后才能編程?
為什么軟件工程特別強(qiáng)調(diào)必須先有設(shè)計(jì),然后才能編程?不僅軟件工程強(qiáng)調(diào)先設(shè)計(jì)后編程,其實(shí)任何項(xiàng)目都是先設(shè)計(jì)后編程,因?yàn)闆](méi)有設(shè)計(jì)的編程是盲目的行動(dòng),編程只是整個(gè)項(xiàng)目的一部分,設(shè)計(jì)才是整個(gè)項(xiàng)目的靈魂,就像蓋房
為什么軟件工程特別強(qiáng)調(diào)必須先有設(shè)計(jì),然后才能編程?
不僅軟件工程強(qiáng)調(diào)先設(shè)計(jì)后編程,其實(shí)任何項(xiàng)目都是先設(shè)計(jì)后編程,因?yàn)闆](méi)有設(shè)計(jì)的編程是盲目的行動(dòng),編程只是整個(gè)項(xiàng)目的一部分,設(shè)計(jì)才是整個(gè)項(xiàng)目的靈魂,就像蓋房子時(shí)的框架,其次是預(yù)算和材料,最后才是施工。
我之前做過(guò)幾年自動(dòng)化工程,不管是設(shè)備改造還是幫別人做一個(gè)純軟件項(xiàng)目,基本上下單之后,第一步就是設(shè)計(jì),因?yàn)檫x好材料和成本之后,就是下單和簽合同了。然后開始做這個(gè)項(xiàng)目,第一步是工程設(shè)計(jì),目的是在完成任務(wù)的前提下形成一個(gè)完整的方案:如何降低成本,提高產(chǎn)品性能,如何優(yōu)化項(xiàng)目,從而達(dá)到性價(jià)比最高,安全性最高。
所以,設(shè)計(jì)很重要,就像戰(zhàn)爭(zhēng)中的作戰(zhàn)計(jì)劃一樣。設(shè)計(jì)是一場(chǎng)戰(zhàn)爭(zhēng)中的作戰(zhàn)計(jì)劃,編程就像下一個(gè)具體的作戰(zhàn)任務(wù)。如果你不 沒(méi)有作戰(zhàn)計(jì)劃,只是沖向敵人,打一會(huì)兒,必然會(huì)被打敗,甚至是胡說(shuō)八道。同樣,沒(méi)有設(shè)計(jì)的編程是沒(méi)有計(jì)劃的,沒(méi)有效率的。
例如,如果我們使用plc來(lái)控制變頻器和觸摸屏作為上位機(jī),我們當(dāng)然可以 不要首先編寫這個(gè)相對(duì)較小的軟件項(xiàng)目,因?yàn)槟氵€沒(méi)有 還沒(méi)有設(shè)計(jì)出來(lái)。你怎么給它編程?用那種編程?用什么語(yǔ)言編程?我們可以 不要這樣做。我們必須首先設(shè)計(jì)它。
首先需要設(shè)計(jì)先用哪種控制,因?yàn)橛?終端控制控制逆變器,這種的優(yōu)點(diǎn)是編程簡(jiǎn)單,但成本稍高,因?yàn)榻o定的逆變器需要額外的d/a模塊或其他給定的源;通信控制的優(yōu)點(diǎn)是成本低,但編程相對(duì)復(fù)雜,技術(shù)要求略高,這要提前設(shè)計(jì)。
第二,選材有備,同樣的性能,肯定選價(jià)格最低的,但同時(shí)保證質(zhì)量;同時(shí)要確保萬(wàn)無(wú)一失,一定要設(shè)計(jì)第二套方案作為備用。假設(shè)第一個(gè)方案出現(xiàn)意外,那么第二個(gè)方案可以彌補(bǔ)第一個(gè)方案的漏洞,做到萬(wàn)無(wú)一失。
第三,我們可以編程,展示自己的才華,在設(shè)計(jì)的框架下,就像給了我們一個(gè)游泳池,你想怎么表現(xiàn)就怎么表現(xiàn)!
所以,不管是什么樣的軟件工程,雖然編程很重要,但是一定要先設(shè)計(jì),后編程。
管理信息系統(tǒng)的開發(fā)及優(yōu)缺點(diǎn)?
第一步:需求調(diào)查分析。1.產(chǎn)品經(jīng)理對(duì)來(lái)自用戶的需求進(jìn)行初步了解,進(jìn)行市場(chǎng)調(diào)研,然后在word中列出要開發(fā)的系統(tǒng)的主要功能模塊,每個(gè)主要功能模塊有哪些小功能模塊。當(dāng)與某些需求相關(guān)的接口清晰時(shí),可以在這一步初步定義設(shè)計(jì)。2.產(chǎn)品經(jīng)理和項(xiàng)目經(jīng)理對(duì)需求進(jìn)行深入的理解和分析,然后根據(jù)自己的經(jīng)驗(yàn)和市場(chǎng)情況,用辦公工具和原型設(shè)計(jì)工具做出詳細(xì)的功能需求文檔。這份文件將清楚地列出該系統(tǒng)的概況。大功能模塊,大功能模塊有哪些小功能模塊,還列出了相關(guān)的接口和接口函數(shù)。審核項(xiàng)目的整體需求,第一步優(yōu)先考慮哪些功能?哪些功能很難實(shí)現(xiàn)?3.產(chǎn)品經(jīng)理向用戶重新確認(rèn)需求,簽訂合同,進(jìn)入研發(fā)。
第二步:設(shè)計(jì)1。概要設(shè)計(jì):首先開發(fā)者需要對(duì)軟件系統(tǒng)進(jìn)行設(shè)計(jì),也就是系統(tǒng)設(shè)計(jì)。概要設(shè)計(jì)需要考慮軟件系統(tǒng)的設(shè)計(jì),包括基本處理流程、組織結(jié)構(gòu)、模塊劃分、功能分配、界面設(shè)計(jì)、操作設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和錯(cuò)誤處理設(shè)計(jì),從而為軟件的詳細(xì)設(shè)計(jì)提供依據(jù)。2.詳細(xì)設(shè)計(jì):在概要設(shè)計(jì)的基礎(chǔ)上,開發(fā)人員需要對(duì)軟件系統(tǒng)進(jìn)行詳細(xì)設(shè)計(jì)。在詳細(xì)設(shè)計(jì)中,需要描述具體模塊實(shí)現(xiàn)所涉及的主要算法、數(shù)據(jù)結(jié)構(gòu)、類的層次結(jié)構(gòu)和調(diào)用關(guān)系,并說(shuō)明軟件系統(tǒng)各個(gè)層次上每個(gè)程序(每個(gè)模塊或子程序)的設(shè)計(jì)考慮,以便進(jìn)行編碼和測(cè)試。你應(yīng)該確保軟件的需求完全分布到整個(gè)軟件中。詳細(xì)設(shè)計(jì)應(yīng)足夠詳細(xì),以便根據(jù)詳細(xì)設(shè)計(jì)報(bào)告進(jìn)行編碼。
第三步:編碼開發(fā)在軟件編碼階段,根據(jù)軟件系統(tǒng)詳細(xì)設(shè)計(jì)方案中數(shù)據(jù)結(jié)構(gòu)、算法分析、模塊實(shí)現(xiàn)的設(shè)計(jì)要求,開發(fā)人員開始編寫具體的程序,分別實(shí)現(xiàn)各個(gè)模塊的功能,從而實(shí)現(xiàn)目標(biāo)系統(tǒng)在功能、性能、接口等方面的要求。
第四步:產(chǎn)品測(cè)試就是軟件測(cè)試。測(cè)試過(guò)程分四步進(jìn)行,即單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試和發(fā)布測(cè)試。測(cè)試書面系統(tǒng),如果沒(méi)有問(wèn)題,準(zhǔn)備交付。
第五步:軟件交付的準(zhǔn)備工作在軟件測(cè)試證明軟件符合要求后,軟件開發(fā)者應(yīng)向用戶提交開發(fā)的目標(biāo)安裝程序、數(shù)據(jù)庫(kù)數(shù)據(jù)字典、用戶安裝手冊(cè)、用戶指南、需求報(bào)告、設(shè)計(jì)報(bào)告、測(cè)試報(bào)告以及雙方約定的其他產(chǎn)品。
第六步:驗(yàn)收交付項(xiàng)目、交付項(xiàng)目、尾款的交付。雙方合作愉快!
第七步:售后服務(wù)根據(jù)需求方的需求和雙方合同的規(guī)定,開發(fā)者履行合同對(duì)產(chǎn)品進(jìn)行運(yùn)營(yíng)和維護(hù)。以上是對(duì)軟件系統(tǒng)開發(fā)過(guò)程的粗略介紹,由沈達(dá)邊肖根據(jù)行業(yè)情況和網(wǎng)絡(luò)資料整理而成。沈達(dá)是全球?qū)I(yè)的軟件協(xié)同產(chǎn)業(yè)生態(tài)鏈平臺(tái),不同領(lǐng)域的專業(yè)產(chǎn)品經(jīng)理為你解答軟件系統(tǒng)開發(fā)的難題。