第一篇:中南大學(xué)軟件學(xué)院-IT項(xiàng)目管理-考試必備-濃縮版
→軟件項(xiàng)目失敗的原因主要是因?yàn)轫?xiàng)目的復(fù)雜性和缺乏合格的項(xiàng)目管理。人們體會(huì)到缺乏有效的項(xiàng)目管理是導(dǎo)致軟件項(xiàng)目失控的直接原因(3分技術(shù)、7分管理、12分?jǐn)?shù)據(jù))作業(yè)連續(xù)不斷、周而復(fù)始的活動(dòng)。項(xiàng)目臨時(shí)性的、一次性的活動(dòng)。
項(xiàng)目是把利用有限資源、在一定的時(shí)間內(nèi),完成滿足一系列特定目標(biāo)的多項(xiàng)相關(guān)工作 項(xiàng)目作為一類特殊的活動(dòng)具有主要7個(gè)特征是:目標(biāo)的獨(dú)特性、項(xiàng)目的一次性、項(xiàng)目的整體性、項(xiàng)目的臨時(shí)性、項(xiàng)目的不確定性、資源的多變性、項(xiàng)目有發(fā)起人。
項(xiàng)目范圍是指:產(chǎn)生項(xiàng)目產(chǎn)品所包括的所有工作以及這些產(chǎn)品經(jīng)過(guò)的所有過(guò)程。項(xiàng)目范圍管理是指對(duì)項(xiàng)目包括什么與不包括什么的定義與控制過(guò)程,沒(méi)有包含在工作分解結(jié)構(gòu)(即WBS)里的工作是不應(yīng)該做的。項(xiàng)目三約束
范圍(界定):項(xiàng)目的任務(wù)是什么?顧客或發(fā)起人要通過(guò)項(xiàng)目獲得什么樣的產(chǎn)品或服務(wù)? 進(jìn)度(時(shí)間):完成該項(xiàng)目需要多長(zhǎng)時(shí)間?項(xiàng)目進(jìn)度應(yīng)該怎樣安排? 費(fèi)用(成本):完成該項(xiàng)目需要花費(fèi)多少?
活動(dòng)具有的三個(gè)基本特點(diǎn)是 目的性、依存性、知識(shí)性,這些特點(diǎn),回答了項(xiàng)目和項(xiàng)目管理實(shí)踐歷史和人類歷史 同樣悠久的原因。有組織的活動(dòng)分化為兩種類型:項(xiàng)目和作業(yè)。
項(xiàng)目活動(dòng)的定義極其重要,它是項(xiàng)目進(jìn)度計(jì)劃和控制的基礎(chǔ),很多情況下活動(dòng)沒(méi)有被充分定義,這就導(dǎo)致了不好的進(jìn)度計(jì)劃和溝通問(wèn)題。
→項(xiàng)目管理就是以項(xiàng)目為對(duì)象的系統(tǒng)管理方法,通過(guò)一個(gè)臨時(shí)性的專門(mén)的柔性組織,對(duì)項(xiàng)目進(jìn)行高效率的計(jì)劃、組織、指導(dǎo)和控制,以實(shí)現(xiàn)項(xiàng)目全過(guò)程的動(dòng)態(tài)管理和項(xiàng)目目標(biāo)的綜合協(xié)調(diào)與優(yōu)化。
軟件項(xiàng)目管理是一門(mén)實(shí)踐性很強(qiáng)的工作,它與軟件應(yīng)用領(lǐng)域各具特色的項(xiàng)目本身緊密聯(lián)系在一起,所以必須培養(yǎng)個(gè)人的綜合素質(zhì)和努力。
軟件項(xiàng)目管理是軟件人的基礎(chǔ)和靈魂,是保證軟件人和軟件企業(yè)走向成功的利器,誰(shuí)掌握了項(xiàng)目管理,誰(shuí)就控制了成功。
項(xiàng)目管理是指在項(xiàng)目活動(dòng)中運(yùn)用相關(guān)的知識(shí)、技能、工具和方法,以實(shí)現(xiàn)或超過(guò)項(xiàng)目干系人的需要和期望。
項(xiàng)目管理框架由干系人、知識(shí)領(lǐng)域和管理工具與方法三部分組成。IT行業(yè)正致力于改進(jìn)項(xiàng)目管理方法,以改變IT項(xiàng)目成功率較低的現(xiàn)狀。
項(xiàng)目管理大致經(jīng)歷了潛意識(shí)階段、傳統(tǒng)項(xiàng)目管理階段、項(xiàng)目管理的傳播階段和現(xiàn)代項(xiàng)目管理的發(fā)展階段。
IT產(chǎn)業(yè)對(duì)項(xiàng)目經(jīng)理的需求在不斷增長(zhǎng),項(xiàng)目管理資格認(rèn)證在不斷發(fā)展。
PMI于2004年發(fā)布的項(xiàng)目管理知識(shí)體系 PMBOK把項(xiàng)目管理劃分為9 個(gè)知識(shí)域和44 個(gè)管理過(guò)程。九大知識(shí)領(lǐng)域:范圍管理、時(shí)間管理、費(fèi)用管理、質(zhì)量管理、人力資源管理、風(fēng)險(xiǎn)管理、溝通管理、采購(gòu)與合同管理及綜合管理。
PMBOK(項(xiàng)目管理)核心的4個(gè)只是領(lǐng)域:范圍管理、時(shí)間管理、費(fèi)用管理、質(zhì)量管理。稱其為核心知識(shí)領(lǐng)域,因?yàn)樵谶@幾個(gè)方面將形成具體的項(xiàng)目目標(biāo)。四個(gè)輔助知識(shí)領(lǐng)域:人力資源管理、溝通管理、風(fēng)險(xiǎn)管 理、采購(gòu)管理
→ IT項(xiàng)目計(jì)劃首先應(yīng)從組織整體環(huán)境和戰(zhàn)略計(jì)劃角度 來(lái)考慮,確定IT戰(zhàn)略計(jì)劃的主要成果是明確IT戰(zhàn)略滿足組織戰(zhàn)略的發(fā)展方向,識(shí)別關(guān)鍵業(yè)務(wù)領(lǐng)域。
→ IT項(xiàng)目管理具有明顯的特殊性,表現(xiàn)在:與戰(zhàn)略目標(biāo)的相關(guān)性,與業(yè)務(wù)規(guī)則的一致性,環(huán)境基礎(chǔ)的重要性,管理的集成性,人力資源管理的特殊性,項(xiàng)目過(guò)程的可控性和文檔的完整性
項(xiàng)目管理是一系列相互聯(lián)系的過(guò)程,項(xiàng)目管理過(guò)程主要包括5個(gè)過(guò)程組,它們分別是啟動(dòng)、規(guī)劃、執(zhí)行、監(jiān)控、收尾
越來(lái)越多的企業(yè)引入項(xiàng)目管理,將它作為主要的運(yùn)營(yíng)模式和提高企業(yè)運(yùn)作效率的解決方案,項(xiàng)目已成為企業(yè)發(fā)展與進(jìn)步的主要?jiǎng)恿Α?/p>
→項(xiàng)目管理的許多理論和概念其實(shí)不難理解,難的是如何運(yùn)用它們,其主要原因是由于 項(xiàng)目的運(yùn)作環(huán)境不是靜態(tài)和獨(dú)立的,啟動(dòng)項(xiàng)目必須從戰(zhàn)略計(jì)劃和組織整體環(huán)境角度來(lái)考慮。項(xiàng)目經(jīng)理在管理軟件項(xiàng)目時(shí)必須考慮很多不同的成分,比如使用軟件項(xiàng)目管理環(huán)境、系統(tǒng)方法、項(xiàng)目生命周期和組織環(huán)境。
項(xiàng)目經(jīng)理主要從整體上綜合運(yùn)用各領(lǐng)域的知識(shí)以成功地實(shí)現(xiàn)項(xiàng)目的運(yùn)作。
優(yōu)秀的項(xiàng)目經(jīng)理必須具有充分利用好的環(huán)境、及時(shí)適用不利環(huán)境、不斷調(diào)整惡劣環(huán)境的勇氣和能力。
了解項(xiàng)目管理過(guò)程組,提高軟件項(xiàng)目管理技能、是運(yùn)用項(xiàng)目管理理論與概念的基礎(chǔ)。
→環(huán)境:組織外部存在的一切客觀因素和條件。組織:按照一定目的、任務(wù)和形式加以編制的群體。
組織環(huán)境:存在于組織外部,和組織密切聯(lián)系,決定組織存在和發(fā)展的自然、經(jīng)濟(jì)、技術(shù)、政治、社會(huì)的各種因素和條件的總和。任何一個(gè)組織都離不開(kāi)外部因素和條件而獨(dú)立存在。環(huán)境與過(guò)程是軟件項(xiàng)目成功的基本保證。
環(huán)境對(duì)軟件項(xiàng)目的效益和效率起關(guān)鍵作用。對(duì)項(xiàng)目組的建立起決策作用。是軟件項(xiàng)目管理的基礎(chǔ)和必要條件。
→系統(tǒng):按一定的關(guān)系組成的同類事物;具體說(shuō),是指在一個(gè)特定環(huán)境下,為某個(gè)目標(biāo)發(fā)揮作用的一系列因素集。項(xiàng)目管理工作需要采用系統(tǒng)的方法。系統(tǒng)方法: 包括系統(tǒng)觀念、系統(tǒng)分析和系統(tǒng)管理。系統(tǒng)觀念:一整套系統(tǒng)地思考事物的思維模式。
系統(tǒng)分析:確定范圍、分解要素、識(shí)別和評(píng)價(jià)要素、提出方案與計(jì)劃、進(jìn)行檢驗(yàn)。系統(tǒng)管理:在一個(gè)系統(tǒng)中進(jìn)行變革時(shí)解決諸如業(yè)務(wù)、技術(shù)和組織等事宜。
→項(xiàng)目的生命周期指IT項(xiàng)目需要經(jīng)歷一個(gè)從開(kāi)始到結(jié)束的時(shí)間過(guò)程,項(xiàng)目工作在這一過(guò)程中顯現(xiàn)出一定的階段性和特征。項(xiàng)目生命周期的每一個(gè)階段都存在項(xiàng)目管理工作?;倦A段:概念,開(kāi)發(fā)(項(xiàng)目可行性階段),實(shí)施,收尾(項(xiàng)目獲取階段)
從項(xiàng)目生命周期具有的一些共同特點(diǎn)來(lái)看,項(xiàng)目開(kāi)始時(shí),成功地完成項(xiàng)目的把握性較低。因此風(fēng)險(xiǎn)和不確定性是最高的。隨著項(xiàng)目逐步地向前發(fā)展,成功的可能性也越來(lái)越高 項(xiàng)目計(jì)劃是項(xiàng)目實(shí)施的藍(lán)本。并給出更為準(zhǔn)確的成本估算和更為詳細(xì)的工作分解結(jié)構(gòu)(WBS)。
項(xiàng)目必須順利通過(guò)每一個(gè)項(xiàng)目階段評(píng)價(jià)才能得以繼續(xù)?!到y(tǒng)開(kāi)發(fā)生命周期:計(jì)劃,分析,設(shè)計(jì),實(shí)施,維護(hù)。
周期模型:主要有瀑布模型、螺旋模型、漸進(jìn)模型、原型模型、第四代技術(shù)模型、構(gòu)件組裝模型和混合模型。
→組織:由于生理上的、心理上的、物質(zhì)的、社會(huì)的限制,人們?yōu)榱诉_(dá)到個(gè)人的和共同的目標(biāo)就必須合作,于是形成群體
組織框架:結(jié)構(gòu)框架:解決組織如何結(jié)構(gòu)化的問(wèn)題 人力資源:形成組織與個(gè)人之間的平衡與協(xié)調(diào)
政治框架:組織團(tuán)體和個(gè)人的政治,表現(xiàn)為團(tuán)體和個(gè)人為爭(zhēng)奪權(quán)力和領(lǐng)導(dǎo)地位的競(jìng)爭(zhēng)。標(biāo)識(shí)框架:符號(hào)和含義
組織結(jié)構(gòu):智能型、項(xiàng)目型、矩陣型
組織環(huán)境包括:自然環(huán)境和社會(huì)環(huán)境,是組織系統(tǒng)所處的換屆。
→項(xiàng)目感干系人是指與項(xiàng)目相干的人(參與項(xiàng)目或受項(xiàng)目活動(dòng)影響的人),包括參與項(xiàng)目和受項(xiàng)目活動(dòng)影響的人,在IT項(xiàng)目管理中,應(yīng)該重點(diǎn)關(guān)注的干系人主要有客戶、用戶、項(xiàng)目投資人、項(xiàng)目經(jīng)理、項(xiàng)目組成員、高層管理人員、反對(duì)項(xiàng)目的人、施加影響者。→項(xiàng)目管理過(guò)程:是為實(shí)現(xiàn)某個(gè)特定目標(biāo)而進(jìn)行的一系列活動(dòng)。項(xiàng)目管理可以被視做一系列相互關(guān)聯(lián)的過(guò)程。
項(xiàng)目管理過(guò)程組:是從啟動(dòng)到計(jì)劃、執(zhí)行、控制和收尾的一系列活動(dòng)。
→項(xiàng)目整體管理任務(wù)是在項(xiàng)目生命周期中協(xié)調(diào)所有其他項(xiàng)目管理知識(shí)領(lǐng)域所涉及的過(guò)程。它確保項(xiàng)目所有的組成要素在恰當(dāng)?shù)臅r(shí)間、正確的地方、合適的人物結(jié)合在一起,以成功地完成項(xiàng)目。
項(xiàng)目整體管理圍繞項(xiàng)目計(jì)劃進(jìn)行,主要過(guò)程有:計(jì)劃制定、計(jì)劃執(zhí)行和計(jì)劃變更控制。整體管理是實(shí)現(xiàn)整體項(xiàng)目成功的關(guān)鍵。
項(xiàng)目經(jīng)理的主要任務(wù):是作好項(xiàng)目的整體管理,特別是:
主動(dòng)控制項(xiàng)目的人員、計(jì)劃、工作。及時(shí)協(xié)調(diào)各項(xiàng)目目標(biāo)之間或人員之間的沖突。適時(shí)認(rèn)真向高層匯報(bào)重要的項(xiàng)目信息。
→項(xiàng)目計(jì)劃是一個(gè)用來(lái)協(xié)調(diào)所有其他計(jì)劃,以指導(dǎo)項(xiàng)目執(zhí)行和控制的可操作的文件。關(guān)系:項(xiàng)目計(jì)劃與項(xiàng)目執(zhí)行應(yīng)該是相互滲透的,誰(shuí)負(fù)責(zé)做這件事,就該由誰(shuí)來(lái)做這個(gè)計(jì)劃。內(nèi)容:一個(gè)項(xiàng)目計(jì)劃主要包括:整體介紹、組織描述、管理程序、技術(shù)程序、任務(wù)范圍、時(shí)間進(jìn)度、經(jīng)費(fèi)預(yù)算等。
組織情況描述包括:組織結(jié)構(gòu)圖、項(xiàng)目責(zé)任(分工)、與組織或過(guò)程相關(guān)的信息。項(xiàng)目的管理和方法:管理目標(biāo)、項(xiàng)目控制、風(fēng)險(xiǎn)管理、項(xiàng)目人員、技術(shù)過(guò)程。項(xiàng)目進(jìn)度:進(jìn)度概要、進(jìn)度細(xì)要、與進(jìn)度有關(guān)的其他信息 項(xiàng)目預(yù)算:預(yù)算概要、預(yù)算細(xì)要、其他信息
→缺少正確的項(xiàng)目需求、定義和范圍核實(shí)是導(dǎo)致項(xiàng)目失敗的主要因素。
→目前IT項(xiàng)目最大的問(wèn)題是項(xiàng)目需求與范圍的不確定性和易動(dòng)性。
項(xiàng)目范圍管理主要過(guò)程 :項(xiàng)目啟動(dòng)、范圍計(jì)劃、范圍定義、范圍核實(shí)、變更控制。項(xiàng)目風(fēng)險(xiǎn)管理是為減輕潛在的不理時(shí)間對(duì)項(xiàng)目的影響而采取的義項(xiàng)活動(dòng),風(fēng)險(xiǎn)管理的主要過(guò)程包括,風(fēng)險(xiǎn)管理規(guī)劃,風(fēng)險(xiǎn)識(shí)別,定性風(fēng)險(xiǎn)分析,定量封信啊分析,風(fēng)險(xiǎn)應(yīng)對(duì)規(guī)劃,風(fēng)險(xiǎn)監(jiān)控。
項(xiàng)目成本管理包括的主要過(guò)程有:成本估算、成本預(yù)算、成本控制。
→克服分歧、解決沖突的有效過(guò)程是面對(duì)與正視 →固定總價(jià)合同為正方提供了最小的風(fēng)險(xiǎn)。
→項(xiàng)目管理組織的過(guò)程中,執(zhí)行過(guò)程最耗費(fèi)時(shí)間與資金 →范圍確認(rèn)需要最終確定項(xiàng)目資源之前完成。
→管理是社會(huì)組織中為了實(shí)現(xiàn)預(yù)期目標(biāo),以人為活動(dòng)中心進(jìn)行協(xié)調(diào)活動(dòng),這一表達(dá)包括五個(gè)觀點(diǎn):管理的目的是為實(shí)現(xiàn)預(yù)期目標(biāo);管理的本質(zhì)是協(xié)調(diào);協(xié)調(diào)的是社會(huì)組織的人;協(xié)調(diào)的方法是多種多樣的;協(xié)調(diào)的關(guān)鍵是人?!杀竟芾碛?jì)劃包含的描述是如何管理成本偏差。正式承認(rèn)項(xiàng)目存在的文檔是:項(xiàng)目章程
確定項(xiàng)目干系人的信息和溝通需求是人力資源計(jì)劃編制的一部分。→質(zhì)量管理3個(gè)過(guò)程:質(zhì)量規(guī)劃,質(zhì)量保證,質(zhì)量控制。
→信息技術(shù)是以電子計(jì)算機(jī)和現(xiàn)代化通信為主要手段,實(shí)現(xiàn)信息的獲取、加工、傳遞、應(yīng)用等功能的技術(shù)總和。
→信息戰(zhàn)略由組織的部門(mén)職能戰(zhàn)略提升為組織的核心戰(zhàn)略,信息系統(tǒng)也成為組織戰(zhàn)略的核心。
→溝通就是意義的傳遞與理解,意義指:信息,情感,思想。項(xiàng)目溝通管理目標(biāo)是:及時(shí)而適當(dāng)?shù)貏?chuàng)建,收集,發(fā)送,儲(chǔ)存和處理項(xiàng)目的信息。
→項(xiàng)目溝通是為了實(shí)現(xiàn)項(xiàng)目管理目標(biāo),項(xiàng)目團(tuán)隊(duì)與其他組織、項(xiàng)目團(tuán)隊(duì)成員之間進(jìn)行信息、思想、情感的傳遞和理解的過(guò)程
→ISO對(duì)質(zhì)量的定義:質(zhì)量是反應(yīng)試題滿足明確和隱含需要的能力和特性的總和?!到y(tǒng)思維所體現(xiàn)的系統(tǒng)方法是解決復(fù)雜問(wèn)題的一個(gè)整體方法,包括系統(tǒng)觀念、系統(tǒng)分析 和系統(tǒng)管理。
→項(xiàng)目的關(guān)鍵路徑是指能夠決定項(xiàng)目最早完成時(shí)間的一系列活動(dòng),它是項(xiàng)目網(wǎng)絡(luò)圖中最長(zhǎng)的路徑,具有最少浮動(dòng)時(shí)間或時(shí)間差。
系統(tǒng)項(xiàng)目的上線運(yùn)行和后期維護(hù)長(zhǎng)于系統(tǒng)開(kāi)發(fā)時(shí)間,當(dāng)系統(tǒng)投入運(yùn)行后,需要有效的系統(tǒng)運(yùn)營(yíng)管理和服務(wù)來(lái)實(shí)現(xiàn)業(yè)務(wù)的需求。
→流程管理是一種管理技術(shù),更體現(xiàn)了現(xiàn)代管理的理想
項(xiàng)目管理作為管理學(xué)的一個(gè)子集,具有管理學(xué)在通常意義上的價(jià)值。
項(xiàng)目定義階段中啟動(dòng)過(guò)程的重要成果:一是選了一位項(xiàng)目經(jīng)理。二是形成了一個(gè)項(xiàng)目章程 項(xiàng)目范圍管理是指對(duì)項(xiàng)目包括什么與不包括什么的定義與控制過(guò)程。
→軟件系項(xiàng)目正在進(jìn)行中,項(xiàng)目經(jīng)理正在與質(zhì)量保證部門(mén),試圖提高個(gè)人對(duì)項(xiàng)目將要滿足質(zhì)量標(biāo)準(zhǔn)的責(zé)任心和信心,在開(kāi)始該過(guò)程之前需要確定質(zhì)量控制測(cè)量指標(biāo)。正式承認(rèn)項(xiàng)目存在的文檔是項(xiàng)目章程。
→項(xiàng)目大部分完成,客戶要求做重大變更,此時(shí)項(xiàng)目經(jīng)理第一步應(yīng)該與項(xiàng)目團(tuán)隊(duì)開(kāi)會(huì),決定是否可以做此變更
→項(xiàng)目進(jìn)行到一半時(shí),客戶想要取消剩余的工作和合同,最佳方法是查看項(xiàng)目章程中的目的、目標(biāo)和商業(yè)案例 來(lái)確定項(xiàng)目的目的。
→由于IT項(xiàng)目管理的復(fù)雜性,使得影響項(xiàng)目成本的因素很多。在這些因素中質(zhì)量、進(jìn)度和范圍對(duì)項(xiàng)目成本影響的關(guān)聯(lián)性非常強(qiáng)。
→軟件項(xiàng)目的配置管理員貫是對(duì)軟件版本進(jìn)行管理,然而它還遠(yuǎn)遠(yuǎn)不止這些,它是改進(jìn)軟件過(guò)程,提高過(guò)程能力成熟度的理想切入點(diǎn) 項(xiàng)目型組織中項(xiàng)目經(jīng)理的權(quán)力最大
一個(gè)軟件系統(tǒng)通常包括那幾個(gè)部分,他們的作用是什么
一個(gè)軟件系統(tǒng)通常包括在計(jì)算機(jī)運(yùn)行能夠提供所希望的功能和性能的程序;是程序能夠正確運(yùn)行的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù);描述系統(tǒng)結(jié)構(gòu)的系統(tǒng)文檔和如何使用與維護(hù)該系統(tǒng)的用戶文檔。程序是按照事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列;數(shù)據(jù)是使程序能夠正常、正確操縱信息的設(shè)計(jì)結(jié)構(gòu);文檔時(shí)與程序的開(kāi)發(fā)、維護(hù)和使用有關(guān)的圖文資料。
大多數(shù)項(xiàng)目都有共同的管理過(guò)程,這一過(guò)程包含哪幾個(gè)過(guò)程組?主要工作和成果是什么?
包括啟動(dòng)、規(guī)劃、執(zhí)行、監(jiān)督和結(jié)束5個(gè)過(guò)程組。
啟動(dòng)過(guò)程組的主要任務(wù)是確定并核準(zhǔn)項(xiàng)目或項(xiàng)目階段。在項(xiàng)目開(kāi)始階段啟動(dòng)過(guò)程的主要成果就是形成一個(gè)項(xiàng)目章程和選擇一位項(xiàng)目經(jīng)理。
規(guī)劃過(guò)程組的主要任務(wù)是確定和細(xì)化目標(biāo),并規(guī)劃為實(shí)現(xiàn)項(xiàng)目目標(biāo)和項(xiàng)目范圍的行動(dòng)方針與路線,確保實(shí)現(xiàn)項(xiàng)目目標(biāo)。主要成果包括完成工作任務(wù)分解結(jié)構(gòu)、項(xiàng)目進(jìn)度計(jì)劃和項(xiàng)目預(yù)算。
執(zhí)行過(guò)程組的主要任務(wù)是通過(guò)采用必要的行動(dòng),協(xié)調(diào)人力資源和其他資源,整體
地、有效地實(shí)施項(xiàng)目計(jì)劃。執(zhí)行過(guò)程組的主要成果就是交付實(shí)際的項(xiàng)目工作。
監(jiān)控過(guò)程住的主要任務(wù)是定期測(cè)量和實(shí)施監(jiān)控項(xiàng)目進(jìn)展情況,發(fā)現(xiàn)偏離項(xiàng)目管理計(jì)劃之處,即使采取糾正措施和變更控制,確保項(xiàng)目目標(biāo)的實(shí)現(xiàn)。監(jiān)控過(guò)程的主要成果是在要求的時(shí)間、成本和質(zhì)量限制范圍內(nèi)獲得滿意的結(jié)果。
收尾過(guò)程組的主要任務(wù)是采取正式的方式對(duì)項(xiàng)目成果、項(xiàng)目產(chǎn)品、項(xiàng)目階段進(jìn)行
驗(yàn)收,確保項(xiàng)目或項(xiàng)目階段有條不紊地結(jié)束。收尾過(guò)程組的主要成果包括項(xiàng)目的正式驗(yàn)收、項(xiàng)目審計(jì)報(bào)告和項(xiàng)目總結(jié)報(bào)告編制以及項(xiàng)目組成員的妥善安置。項(xiàng)目的生命周期包括哪幾個(gè)階段?主要工作和任務(wù)?
主要包括定義、開(kāi)發(fā)、實(shí)施和收尾4個(gè)基本階段。
定義階段的主要任務(wù)是制定項(xiàng)目建議書(shū),它主要描述為什么要做和做什么,對(duì)于
項(xiàng)目目標(biāo)來(lái)說(shuō),項(xiàng)目建議書(shū)決定著其未來(lái)的藍(lán)圖與框架。
開(kāi)發(fā)階段的主要任務(wù)是規(guī)劃項(xiàng)目怎么做,誰(shuí)來(lái)做,項(xiàng)目主要更具項(xiàng)目建議書(shū),制
定出更為詳細(xì)的項(xiàng)目計(jì)劃。
實(shí)施階段的主要工作是執(zhí)行項(xiàng)目計(jì)劃,并驚醒項(xiàng)目的監(jiān)督和控制,其目的就是把
項(xiàng)目的內(nèi)容完成。
收尾階段的主要任務(wù)是完成項(xiàng)目的額驗(yàn)收與工作總結(jié),為后續(xù)的項(xiàng)目提供經(jīng)驗(yàn)、教訓(xùn)和幫助。
你認(rèn)為要管理好一個(gè)軟件項(xiàng)目,項(xiàng)目經(jīng)理應(yīng)該具備怎樣的素質(zhì)和條件;他應(yīng)該如何工作來(lái)確保項(xiàng)目的成功。
一個(gè)優(yōu)秀的項(xiàng)目經(jīng)理至少需要具備3中基本能力:解讀項(xiàng)目信息的能力、發(fā)現(xiàn)和整合項(xiàng)目資源的能力、將項(xiàng)目構(gòu)想變成項(xiàng)目成果的能力。
項(xiàng)目經(jīng)理的素質(zhì)要求:良好的道德品質(zhì)。健康的身體和心理素質(zhì)。強(qiáng)烈的客戶意識(shí)。專業(yè)的素質(zhì)和素養(yǎng)。牢固的大局觀。優(yōu)秀的項(xiàng)目管理能力。強(qiáng)大的信心與堅(jiān)強(qiáng)的意志。膽大、心細(xì)。
項(xiàng)目經(jīng)理的職責(zé)主要包括以下幾點(diǎn):
確保項(xiàng)目目標(biāo)實(shí)現(xiàn),保證用戶滿意。制定項(xiàng)目階段性目標(biāo)和項(xiàng)目總體控制計(jì)劃。組織精干的項(xiàng)目管理班子。及時(shí)決策。履行合同義務(wù),監(jiān)督和噢太難根治性,處理合同變更。
產(chǎn)生軟件質(zhì)量問(wèn)題的主要原因,以及解決軟件質(zhì)量問(wèn)題的手段與方法。
產(chǎn)生軟件質(zhì)量問(wèn)題的13個(gè)原因:管理者缺乏質(zhì)量觀念,未從一開(kāi)始就強(qiáng)調(diào)質(zhì)量。開(kāi)發(fā)者未將保證質(zhì)量作為他們的重要而且是必須完成的任務(wù)。沒(méi)有真正執(zhí)行 “決不把不合格的中間產(chǎn)品帶到下一階段”。沒(méi)有良好的激勵(lì)機(jī)制。大家看不到提高質(zhì)量對(duì)公司的生存發(fā)展有多重要,普遍缺乏主人翁責(zé)任感。沒(méi)有解決好質(zhì)量管理者和開(kāi)發(fā)者的關(guān)系。對(duì)用戶的質(zhì)量要求不了解,缺乏使用戶滿意的思想。用戶對(duì)軟件需求不清晰、存在二義性。開(kāi)發(fā)人員對(duì)用戶的需求理解有偏差甚至錯(cuò)誤。開(kāi)發(fā)與管理文檔對(duì)質(zhì)量控制作用小。軟件開(kāi)發(fā)工
具引發(fā)質(zhì)量控制困難。不遵守軟件開(kāi)發(fā)標(biāo)準(zhǔn)和規(guī)范。缺乏有效的質(zhì)量控制和管理。手段和方法:因果圖、控制圖和7點(diǎn)運(yùn)行法則、流程圖、帕累托圖 怎樣來(lái)進(jìn)行項(xiàng)目管理以確保IT項(xiàng)目的成功。
軟件項(xiàng)目管理是為了使 軟件項(xiàng)目能夠按照預(yù)定的范圍、成本、進(jìn)度、質(zhì)量順利完成,而對(duì)范圍、費(fèi)用、時(shí)間、質(zhì)量、人力資源、風(fēng)險(xiǎn)、采購(gòu)等進(jìn)行分析和管理的活動(dòng)。通過(guò)軟件項(xiàng)目管理過(guò)程來(lái)對(duì)軟件任務(wù)進(jìn)行組織、計(jì)劃、實(shí)施、管理和評(píng)估,以明確和滿足范圍、時(shí)間、成本、質(zhì)量等方面的約束限制??刂祈?xiàng)目范圍、保障項(xiàng)目進(jìn)度、控制項(xiàng)目成本、保證項(xiàng)目質(zhì)量、協(xié)調(diào)項(xiàng)目人力資源、改善項(xiàng)目的溝通、應(yīng)對(duì)項(xiàng)目風(fēng)險(xiǎn)
第二篇:中南大學(xué)軟件學(xué)院軟件工程基礎(chǔ)復(fù)習(xí)
1.瀑布模型是以文檔為驅(qū)動(dòng)、適合于(軟件需求確定的)軟件項(xiàng)目的開(kāi)發(fā)。
2.需求分析的基本任務(wù)是(確定用戶需要軟件做什么)。
3.若有一個(gè)計(jì)算類型的程序,它的輸入量只有一個(gè)X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測(cè)試用例:-1.001,-1.0,1.0,1.001。設(shè)計(jì)這組測(cè)試用例的方法是(邊界值分析法)。
4.根據(jù)程序流程圖劃分的模塊通常是(過(guò)程)內(nèi)聚的模塊。
5.軟件的分類,按其功能可分為:系統(tǒng)軟件、(支撐軟件)和應(yīng)用軟件。
6.UML的定義包括UML語(yǔ)義和(UML表示法)兩個(gè)部分。
7.客觀世界中的若干類,通常有兩種主要的結(jié)構(gòu)關(guān)系:即分類結(jié)構(gòu)和(整體與部分結(jié)構(gòu))。
8.IDEF1X圖用來(lái)描述系統(tǒng)的(數(shù)據(jù))模型,主要有實(shí)體、聯(lián)系和(屬性)三種成分,其中實(shí)體可分為獨(dú)立實(shí)體和(從屬實(shí)體),且一個(gè)實(shí)體只能在圖中出現(xiàn)一次。
9、軟件是計(jì)算機(jī)程序、(描述計(jì)算機(jī)程序的文檔)及(數(shù)據(jù))的完整集合,將其統(tǒng)稱為軟件配置,這些項(xiàng)稱為軟件配置項(xiàng)。通過(guò)正式復(fù)審的軟件配置項(xiàng)稱為(基線),只有通過(guò)正式的變化控制過(guò)程才能改變它。
10、通常,將軟件生命周期全過(guò)程中使用的一整套技術(shù)方法的集合稱為方法學(xué),包含三個(gè)要素,即方法、(工具)和(過(guò)程)。傳統(tǒng)方法學(xué)采用(結(jié)構(gòu)化)技術(shù)來(lái)自頂向下順序地完成軟件開(kāi)發(fā)的各項(xiàng)任務(wù),而面向?qū)ο蠓椒ㄊ且环N以(數(shù)據(jù))為主線,把數(shù)據(jù)和對(duì)數(shù)據(jù)的操作緊密地結(jié)合起來(lái)的方法,其開(kāi)發(fā)過(guò)程是一個(gè)多次迭代的演化過(guò)程。
11、軟件測(cè)試的目標(biāo)是(暴露程序中的錯(cuò)誤),因而從心理學(xué)角度來(lái)看,由程序作者對(duì)自己編寫(xiě)的程序進(jìn)行測(cè)試是不恰當(dāng)?shù)?。設(shè)計(jì)測(cè)試方案是測(cè)試階段的關(guān)鍵技術(shù)問(wèn)題,測(cè)試方案一般包括(測(cè)試目的)、輸入的測(cè)試數(shù)據(jù)和(預(yù)期的結(jié)果)。
12、模型是為了理解事物而對(duì)事物作出的一種抽象,由(一組圖示符號(hào))和(組織這些符號(hào)的規(guī)則)組成。對(duì)象模型描述了系統(tǒng)的靜態(tài)結(jié)構(gòu),通常使用UML提供的(類圖)圖來(lái)描述。
13、需求分析的基本任務(wù)是(準(zhǔn)確地回答系統(tǒng)必須做什么),在需求分析結(jié)束前,系統(tǒng)分析員應(yīng)該寫(xiě)出(軟件需求規(guī)格說(shuō)明書(shū)),以書(shū)面的形式準(zhǔn)確描述軟件需求。
14、面向數(shù)據(jù)流的設(shè)計(jì)方法把(信息流)映射成軟件結(jié)構(gòu),依據(jù)其類型的不同,有兩種不同的映射方法,分別是(變化分析)和(事物分析)方法。
15、軟件設(shè)計(jì)一般分為(概要設(shè)計(jì))和(詳細(xì)設(shè)計(jì))兩個(gè)階段。
16.如果一個(gè)模塊完成多個(gè)邏輯上相近或相關(guān)的功能,并且每次調(diào)用只選擇該模塊中的一個(gè)功能執(zhí)行,則稱此模塊為 邏輯內(nèi)聚的模塊。
17.在數(shù)據(jù)流圖中,每個(gè)加工至少有一個(gè)輸入數(shù)據(jù)流 和一個(gè) 輸出數(shù)據(jù)流。
18.軟件項(xiàng)目計(jì)劃是計(jì)劃(策劃)階段的結(jié)果產(chǎn)品。但由于是在高層次進(jìn)行系統(tǒng)分析,未能考慮軟件系統(tǒng)開(kāi)發(fā)的細(xì)節(jié)情節(jié),因此軟件項(xiàng)目計(jì)劃一般在需求分析 階段完成后才定稿的。
19.在面向?qū)ο箢悓哟谓Y(jié)構(gòu)中,子類只繼承一個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為 單重繼承。如果子類繼承了多個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為多重繼承。
20.在軟件測(cè)試過(guò)程中,α測(cè)試是由 一個(gè)用戶在開(kāi)發(fā) 環(huán)境下進(jìn)行的測(cè)試,而β測(cè)試是由多個(gè)用戶在 實(shí)際使用環(huán)境下進(jìn)行的測(cè)試。
21.統(tǒng)一建模語(yǔ)言UML提供了兩種描述整體/部分關(guān)系的方法,分別是聚合 和 組合。
22.瀑布模型是以文檔 驅(qū)動(dòng)的軟件生存周期模型,適合需求明確的軟件系統(tǒng)開(kāi)發(fā)。23.IDEF1X方法用來(lái)建立系統(tǒng)的數(shù)據(jù) 模型。
24.在單元測(cè)試期間,應(yīng)該為被測(cè)模塊編寫(xiě)相應(yīng)的測(cè)試軟件,一般地驅(qū)動(dòng) 模塊接收測(cè)試數(shù)據(jù),并把數(shù)據(jù)傳給被測(cè)模塊,而樁 模塊則模擬實(shí)際模塊完成少量數(shù)據(jù)處理。
25.評(píng)估軟件企業(yè)的質(zhì)量管理有兩種方法,一種是按照ISO9001 認(rèn)證,另外一種是按照CMM認(rèn)證。
1.軟件測(cè)試的目的是(發(fā)現(xiàn)錯(cuò)誤)。
2.軟件按服務(wù)對(duì)象可分為項(xiàng)目軟件和(產(chǎn)品軟件)。
3.在常見(jiàn)的軟件生存期模型中,(螺旋)模型是風(fēng)險(xiǎn)驅(qū)動(dòng)的。
4.UML通過(guò)三種擴(kuò)展機(jī)制來(lái)擴(kuò)充UML的建模能力,分別是(約束)、構(gòu)造型和(標(biāo)記值)。
5.在軟件測(cè)試用例的設(shè)計(jì)方法中,白盒法以(程序內(nèi)部數(shù)據(jù)結(jié)構(gòu))為依據(jù)設(shè)計(jì)測(cè)試用例,6.在面向?qū)ο笤O(shè)計(jì)原則中,(組裝復(fù)用)原則要求在新的對(duì)象里盡量使用已有的類對(duì)應(yīng)的對(duì)象,并通過(guò)(委派)達(dá)到復(fù)用已有功能的目的。
7.狀態(tài)圖描述一個(gè)類對(duì)象所經(jīng)歷的(各種狀態(tài))以及事件發(fā)生時(shí)狀態(tài)的(轉(zhuǎn)移條件).8.SOFL軟件開(kāi)發(fā)方法學(xué)認(rèn)為,在需求分析和規(guī)格說(shuō)明階段應(yīng)該采用(結(jié)構(gòu)化)方法,而在設(shè)計(jì)和實(shí)現(xiàn)階段則應(yīng)該采用(面向?qū)ο螅┓椒ā?/p>
9.可行性研究的內(nèi)容包括(技術(shù)可行性)、經(jīng)濟(jì)可行性和(操作可行性)。軟件按服務(wù)對(duì)象可分為(項(xiàng)目軟件)和產(chǎn)品軟件在常見(jiàn)的軟件生存周期模型中,(瀑布)模型是文檔驅(qū)動(dòng)的UML采用(用例)圖描述系統(tǒng)與外部用戶的交互行為在軟件測(cè)試用例的設(shè)計(jì)方法中,黑盒法以(外部功能)為依據(jù)設(shè)計(jì)測(cè)試用例定性度量模型獨(dú)立性的兩個(gè)標(biāo)準(zhǔn)是(內(nèi)聚度)和(耦合度)8 在SA方法的需求描述工具中,(層次方框圖)描述系統(tǒng)的分解,即描述系統(tǒng)由哪幾個(gè)部分組成,各部分之
間有什么聯(lián)系等等;(數(shù)據(jù)詞典(和加工說(shuō)明))定義了數(shù)據(jù)流圖中每個(gè)圖形元素;結(jié)構(gòu)化語(yǔ)言、判定
表或判定樹(shù)則詳細(xì)描述、數(shù)據(jù)流圖中不能被分解的(基本加工)IDEFO圖主要元素是簡(jiǎn)單的盒子及箭頭,其中盒子代表(活動(dòng))。而箭頭表示系統(tǒng)處理的(數(shù)據(jù)約束)
1.什么是軟件工程?軟件工程和計(jì)算機(jī)科學(xué)有何區(qū)別? 答:軟件工程是指導(dǎo)軟件開(kāi)發(fā)和維護(hù)的工程性學(xué)
科;計(jì)算機(jī)科學(xué)著重于原理和理論,軟件工程與計(jì)算機(jī)科學(xué)不同,軟件工程著重于如何建造軟件系統(tǒng),軟
件是計(jì)算機(jī)中看不見(jiàn)摸不著的邏輯部分,以程序、數(shù)據(jù)和文檔的形式出現(xiàn)。
2.面向?qū)ο蠓椒ê徒Y(jié)構(gòu)化方法有何區(qū)別與聯(lián)系? 答:區(qū)別: 面向?qū)ο髲乃幚淼臄?shù)據(jù)入手,以數(shù)據(jù)為中
心來(lái)描述系統(tǒng),其基本思想是盡可能模擬人類習(xí)慣的思維方式,使開(kāi)發(fā)軟件的方法與過(guò)程盡可能接近人類
認(rèn)識(shí)世界的方法與過(guò)程,基本原則為:對(duì)象+類+繼承+消息通信 結(jié)構(gòu)化方法首先關(guān)心的是功能,強(qiáng)調(diào)以模
塊為中心,其基本思想是自頂向下,逐步求精,單入口,單出口,基本原則為:抽象與功能的分解 聯(lián)系:
軟件開(kāi)發(fā)過(guò)程中,在需求分析和規(guī)格說(shuō)明階段采用結(jié)構(gòu)化方法,在設(shè)計(jì)和實(shí)現(xiàn)階段采用面向?qū)ο蠓椒ā?/p>
3.什么是模塊的作用域和模塊的控制域?為何要求模塊的控制域必須在作用域內(nèi)? 答:模塊的作用域是
指模塊中判定的作用范圍,它是指所有受這個(gè)判定范圍影響的模塊;模塊的控制域是指模塊本身及其直接
或間接調(diào)用的模塊;如果模塊的作用域不在控制域內(nèi),則會(huì)增加數(shù)據(jù)間的傳遞量,使模塊間出現(xiàn)控制耦合4.什么是設(shè)計(jì)模式?試舉例說(shuō)明組合設(shè)計(jì)模式的應(yīng)用。答:設(shè)計(jì)模式是指系統(tǒng)命名,解釋和評(píng)價(jià)某一重要的,可復(fù)用的面向?qū)ο蟮脑O(shè)計(jì)方案。組合設(shè)計(jì)模式:使用迭代器模式來(lái)遍歷組合結(jié)構(gòu)。
5.什么是依賴倒置原則?它和開(kāi)閉原則有何聯(lián)系? 答:依賴倒置是類設(shè)計(jì)原則的一種,它要求高層不應(yīng)
依賴于底層,抽象不應(yīng)依賴于細(xì)節(jié);依賴倒置原則的本質(zhì)其實(shí)就是通過(guò)抽象(抽象類或接口)使各個(gè)類或
模塊的實(shí)現(xiàn)彼此獨(dú)立,不相互影響,實(shí)現(xiàn)模塊間的松耦合,如果沒(méi)有實(shí)現(xiàn)這個(gè)原則,則開(kāi)閉原則也無(wú)法實(shí)
現(xiàn)。
6.軟件生存期過(guò)程和軟件生存期模型有何聯(lián)系?瀑布模型有何特點(diǎn)?答:軟件生存期過(guò)程沒(méi)有規(guī)定一個(gè)特
定的生存周期模型,各軟件開(kāi)發(fā)機(jī)構(gòu)可視其項(xiàng)目的需要選擇一種軟件生存周期模型,并將軟件生存期過(guò)程
所含過(guò)程、活動(dòng)和任務(wù)映射到選定的軟件生存周期模型中。軟件生存期模型是軟件生存期過(guò)程所含過(guò)程、活動(dòng)和任務(wù)的映射。瀑布模型特點(diǎn):各階段相互依賴;每階段都進(jìn)行評(píng)審;強(qiáng)調(diào)需求分析和設(shè)計(jì)。
1.瀑布模型是軟件工程中應(yīng)用最廣泛的過(guò)程模型,試述采用瀑布模型進(jìn)行軟件開(kāi)發(fā)的基本過(guò)程,該過(guò)程有
何特點(diǎn)? 答:瀑布模型規(guī)定了各項(xiàng)軟件工程活動(dòng),包括需求分析、規(guī)格說(shuō)明、設(shè)計(jì)、編碼、測(cè)試和維護(hù),并規(guī)定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級(jí)而下。瀑布模型的特點(diǎn)是:階段間具
有順序性和依賴性;清楚區(qū)分邏輯設(shè)計(jì)和物理設(shè)計(jì),盡可能推遲程序的物理實(shí)現(xiàn);每個(gè)階段都必須完成規(guī)
定文檔,且每階段結(jié)束前需要對(duì)完成的文檔進(jìn)行評(píng)審。
2、什么是軟件配置管理?軟件配置管理和軟件維護(hù)有何不同? 答:軟件配置管理是在軟件生命周期內(nèi)管理變
化的一組活動(dòng),用來(lái):標(biāo)識(shí)變化、控制變化、確保適當(dāng)?shù)貙?shí)現(xiàn)了變化、向相關(guān)人員報(bào)告變化。
軟件配置管理和軟件維護(hù)的區(qū)別是:軟件配置管理是一組追蹤和控制活動(dòng),在軟件項(xiàng)目啟動(dòng)時(shí)就開(kāi)始,并
一直持續(xù)到軟件被淘汰后才終止;軟件維護(hù)是一組軟件工程活動(dòng),發(fā)生于軟件交付給用戶并投入運(yùn)行之后。
3、試舉例說(shuō)明聚集關(guān)系中共享聚集和組合聚集有何不同。答:如果在聚集關(guān)系中部分對(duì)象可同時(shí)參與多個(gè)
整體對(duì)象的構(gòu)成,則該聚集稱為共享聚集。例如,一個(gè)課題組包含許多成員,每個(gè)成員又可以是另一個(gè)課
題組的成員,則課題組和成員之間是一種共享聚集的關(guān)系。
如果部分對(duì)象完全隸屬于整體對(duì)象,并與整體對(duì)象共存,則該聚集稱為組合聚集。例如,在屏幕上一個(gè)窗
口由文本框、列表框、按鈕和菜單等構(gòu)成,且一旦關(guān)閉了窗口,則各組成部分也消失,則窗口和它的組成部分之的關(guān)系為組合聚集關(guān)系。
1非漸增式測(cè)試與漸增式測(cè)試有何區(qū)別? 答:非漸增式測(cè)試,一般應(yīng)先經(jīng)過(guò)單元測(cè)試,然后再把所有模塊一
次性組裝在一起進(jìn)行測(cè)試,最終得到要求的軟件系統(tǒng);而漸增式測(cè)試則采用逐步加入模塊或功能簇的方式
進(jìn)行,在加入過(guò)程中邊連接邊測(cè)試,比較容易定位和修正錯(cuò)誤,且接口也可以更容易進(jìn)行徹底地測(cè)試2.試舉例說(shuō)明什么是功能性需求,什么是非功能性需求?為何非功能性需求往往比功能性需求還要重
要? 答:功能性需求是說(shuō)有具體的完成內(nèi)容的需求。例如:比如客戶登錄、郵箱網(wǎng)站的收發(fā)郵件、論壇網(wǎng)
站的發(fā)帖留言等。非功能性需求是指軟件產(chǎn)品為滿足用戶業(yè)務(wù)需求而必須具有且除功能需求以外的特性,包括系統(tǒng)的性能、可靠性、可維護(hù)性、可擴(kuò)充性和對(duì)技術(shù)和對(duì)業(yè)務(wù)的適應(yīng)性等。例如:性能要求:要求系
統(tǒng)能滿足100個(gè)人同時(shí)使用,頁(yè)面反應(yīng)時(shí)間不能超過(guò)6秒;非功能性需求往往比功能性需求還要重要是因?yàn)?/p>
非功能性需求描述的是軟件的質(zhì)量屬性,直接影響著用戶體驗(yàn),因此非功能性需求在決定系統(tǒng)成敗的因素
中起更重要的作用。
3.層次圖和層次方框圖有何區(qū)別? 答:不同:1,層次圖描繪軟件的層次結(jié)構(gòu).層次方框圖描繪的是數(shù)據(jù)結(jié)
構(gòu)。2,層次圖的方框表示模塊或子模塊。層次方框圖的方框表示數(shù)據(jù)結(jié)構(gòu)整體或其子集。3,層次圖的連線表
示調(diào)用關(guān)系,層次方框圖表示組成關(guān)系。
4.快速原型模型有幾種?各有何特點(diǎn)?答:快速原形模型根據(jù)原型的不同作用,有三類原型模型:
(1)探索型原型:把原型用于開(kāi)發(fā)的需求分析階段,目的是要弄清用戶的需求,確定所期望的特性,并探索
各種方案的可行性。它主要針對(duì)開(kāi)發(fā)目標(biāo)模糊,用戶與開(kāi)發(fā)者對(duì)項(xiàng)目都缺乏經(jīng)驗(yàn)的情況,通過(guò)對(duì)原型的開(kāi)
發(fā)來(lái)明確用戶的需求。
(2)實(shí)驗(yàn)型原型:主要用于設(shè)計(jì)階段,考核實(shí)現(xiàn)方安是否合適,能否實(shí)現(xiàn)。對(duì)于一個(gè)大型系統(tǒng),若對(duì)設(shè)計(jì)方
案心中沒(méi)有把握時(shí),可通過(guò)這種原型的開(kāi)發(fā)來(lái)證實(shí)設(shè)計(jì)方案的正確性。
(3)演化型原型:它將原型思想擴(kuò)展到軟件開(kāi)發(fā)的全過(guò)程,就是及早向用戶提交一個(gè)原型系統(tǒng),在得到用戶
認(rèn)可后,將原型系統(tǒng)不斷擴(kuò)充演化為最終的軟件系統(tǒng)。
2.什么是模塊的作用域?為何設(shè)計(jì)軟件結(jié)構(gòu)時(shí)要求模塊的作用域必須在控制域之內(nèi)? 答:所謂模塊的作
用域是指模塊判定的影響范圍。作用域在控制域之內(nèi),可使得軟件修改時(shí)代碼局部化。
3.什么是動(dòng)態(tài)測(cè)試?為何靜態(tài)測(cè)試方法往往比動(dòng)態(tài)測(cè)試方法效率高? 答:動(dòng)態(tài)測(cè)試是指經(jīng)運(yùn)行程序代碼
而檢查代碼是否存在錯(cuò)誤。靜態(tài)測(cè)試往往不是運(yùn)行代碼,而在軟件開(kāi)發(fā)的早期進(jìn)行,而早期錯(cuò)誤發(fā)現(xiàn)要比
錯(cuò)誤晚發(fā)現(xiàn)付出的成本少,而靜態(tài)測(cè)試往往在發(fā)現(xiàn)錯(cuò)誤后還可繼續(xù)進(jìn)行,但動(dòng)態(tài)測(cè)試往往需要停下來(lái)改進(jìn)后才能進(jìn)一步測(cè)試。1 試簡(jiǎn)要說(shuō)明面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法相比有何優(yōu)越性,至少列出三點(diǎn)。答:(1)強(qiáng)調(diào)從現(xiàn)實(shí)世界中客觀
存在的事物(對(duì)象)出發(fā)來(lái)認(rèn)識(shí)問(wèn)題域和構(gòu)造系統(tǒng),這就使系統(tǒng)開(kāi)發(fā)者大大減少了對(duì)問(wèn)題域的理解難度,從而使系統(tǒng)能更準(zhǔn)確地反映問(wèn)題域。(2)運(yùn)用人類日常的思維方法和原則(體現(xiàn)于OO方法的抽象、分類、繼承、封裝、消息通訊等基本原則)進(jìn)行系統(tǒng)開(kāi)發(fā),有益于發(fā)揮人類的思維能力,并有效地控制了系統(tǒng)復(fù)
雜性。(3)對(duì)象的概念貫穿于開(kāi)發(fā)過(guò)程的終,使各個(gè)開(kāi)發(fā)階段的系統(tǒng)成分具良好的對(duì)應(yīng),從而顯著地提高
了系統(tǒng)的開(kāi)發(fā)效率與質(zhì)量,并大大降低系統(tǒng)維護(hù)的難度。(4)對(duì)象概念的一致性,使參與系統(tǒng)開(kāi)發(fā)的各類
人員在開(kāi)發(fā)的各所段具有共同語(yǔ)言,有效地改善了人員之間的交流和協(xié)作。(5)對(duì)象的相對(duì)穩(wěn)定性和對(duì)易
變因素隔離,增強(qiáng)了系統(tǒng)的應(yīng)變能力。(6)對(duì)象類之間的繼承關(guān)系和對(duì)象的相對(duì)獨(dú)立性,對(duì)軟件復(fù)用提供
了強(qiáng)有力的支持。1.什么是軟件危機(jī)?軟件危機(jī)是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。這些問(wèn)題
表現(xiàn)在以下幾個(gè)方面:(1)用戶對(duì)開(kāi)發(fā)出的軟件很難滿意。(2)軟件產(chǎn)品的質(zhì)量往往靠不住。(3)一般軟件很
難維護(hù)。4)軟件生產(chǎn)效率很低。(5)軟件開(kāi)發(fā)成本越來(lái)越大。(6)軟件成本與開(kāi)發(fā)進(jìn)度難以估計(jì)。7)軟件技術(shù)的發(fā)展遠(yuǎn)遠(yuǎn)滿足不了計(jì)算機(jī)應(yīng)用的普及與深入的需要。
2.什么是軟件生存周期?軟件生存周期是指從軟件定義、開(kāi)發(fā)、使用、維護(hù)到淘汰的全過(guò)程。
1.軟件開(kāi)發(fā)模型有幾種?它們的開(kāi)發(fā)方法有可特點(diǎn)?軟件開(kāi)發(fā)模型有瀑布型、漸增型和變換型。瀑布型開(kāi)
發(fā)方法是按照軟件生存周期的劃分依次實(shí)施,每一個(gè)階段有明確規(guī)定的任務(wù)。它的特點(diǎn):(1)各個(gè)階段的順
序性和依賴性;(2)劃分邏輯設(shè)計(jì)與物理設(shè)計(jì),盡可能推遲程序的物理實(shí)現(xiàn);3)每個(gè)階段必須完成規(guī)定的文
檔,對(duì)其中問(wèn)題通過(guò)復(fù)審及早發(fā)現(xiàn),及早解決。漸增型開(kāi)發(fā)方法及特點(diǎn):1)從部分需求出發(fā),先建立一個(gè)不
完全的系統(tǒng),通過(guò)測(cè)試運(yùn)行該系統(tǒng)取得經(jīng)驗(yàn)和信息反饋,加深對(duì)軟件需求的理解,進(jìn)一步使系統(tǒng)擴(kuò)充和完
善。如此反復(fù),直至軟件人員和用戶對(duì)所設(shè)計(jì)完成的軟件系統(tǒng)滿意為止。2)在漸增型開(kāi)發(fā)下的軟件是隨軟
件開(kāi)發(fā)的過(guò)程而逐漸形成的。(3)漸增型開(kāi)發(fā)方法適合于知識(shí)型軟件的開(kāi)發(fā),設(shè)計(jì)系統(tǒng)時(shí)對(duì)用戶需求的認(rèn)識(shí)
開(kāi)始不是很清楚的,需要在開(kāi)發(fā)過(guò)程中不斷認(rèn)識(shí)、不斷獲得新的知識(shí)去豐富和完善系統(tǒng)。多數(shù)研究性質(zhì)的試驗(yàn)軟件,一般采用此方法。變換型開(kāi)發(fā)方法及特點(diǎn):(1)從軟件需求的形式化規(guī)格說(shuō)明出發(fā),經(jīng)過(guò)一系列的程序變換,得到最終的程序系統(tǒng)。(2)該方法必須有嚴(yán)格的數(shù)學(xué)理論和形式化技術(shù)的支持。
2.功能與對(duì)象的區(qū)別?
1、功能比對(duì)象容易變化(功能相對(duì)不穩(wěn)定)
2、功能是主觀的,對(duì)象是可觀的。
3、功能是可以調(diào)用的,要么全有,要么全無(wú),而對(duì)象可以部分的繼承使用。
3. 軟件開(kāi)發(fā)過(guò)程可視化的兩種方法?文檔驅(qū)動(dòng)、小批量發(fā)布
4.風(fēng)險(xiǎn)分析的目的?對(duì)風(fēng)險(xiǎn)進(jìn)行管理。
5. 傳遞信息的方法?
1、參數(shù)。
2、全局變量。
3、公共可訪問(wèn)區(qū)域。
6.?dāng)?shù)據(jù)建模的作用?
1、抓住問(wèn)題的主要方面---理解問(wèn)題。
2、便于交流。
3、可以進(jìn)行分析(性能、可靠
性、、、、、、)。
4、可以自動(dòng)生成代碼。
7. 描述模型的兩種方法?
1、結(jié)構(gòu)化方法:結(jié)構(gòu)化方法首先關(guān)心的是功能,強(qiáng)調(diào)以模塊為中心,采用模
塊化、自頂向下、逐步求精設(shè)計(jì)過(guò)程(分層),適合需求明確的模型。其不足之處:不太適應(yīng)規(guī)模大及
特別復(fù)雜的項(xiàng)目,難于解決軟件重用問(wèn)題,難于適應(yīng)需求變化或模糊的問(wèn)題,軟件維護(hù)比較復(fù)雜。
2、面向
對(duì)象方法:面向?qū)ο蠓椒▌t從所處理的數(shù)據(jù)入手,以數(shù)據(jù)為中心來(lái)描述系統(tǒng),適合迭代增量式分解(網(wǎng)狀)。
其不足之處:類作為復(fù)用單元,有時(shí)顯得太小,類繼承會(huì)增加類間的耦合度,該方法不夠成熟。
8. 描述作業(yè)之間的關(guān)系?
1、畫(huà)PERT圖。
2、確定最晚發(fā)生時(shí)刻與最早發(fā)生時(shí)刻。
3、計(jì)算機(jī)動(dòng)時(shí)間,為0 的為關(guān)鍵事件。
4、Gantt圖的方法進(jìn)行描述。
9. 用例與功能的區(qū)別?
1、完成一個(gè)用例需要若干功能。
2、用例是從用戶使用系統(tǒng)的角度來(lái)描述系統(tǒng)的行為的。
3、用例往往是對(duì)用戶有價(jià)值的結(jié)果。
4、用例滿足用戶的業(yè)務(wù)目標(biāo)。
10. 描述模塊獨(dú)立性的標(biāo)準(zhǔn)??jī)?nèi)聚度(內(nèi)聚度是指模塊內(nèi)部各成分聯(lián)系緊密的程度,內(nèi)聚度越高,模塊獨(dú)
立性越強(qiáng))耦合度(耦合度是指模塊之間相互關(guān)聯(lián)的緊密程度。耦合度越低,模塊獨(dú)立性越強(qiáng))
11.什么是黑盒測(cè)試?黑盒測(cè)試主要采用的技術(shù)有哪些? 黑盒測(cè)試也稱為功能測(cè)試,它著眼于程序的外部特
征,而不考慮程序的內(nèi)部邏輯結(jié)構(gòu)。測(cè)試者把被測(cè)程序看成一個(gè)黑盒,不用關(guān)心程序的內(nèi)部結(jié)構(gòu)。黑盒測(cè)試是
在程序接口處進(jìn)行測(cè)試,它只檢查程序功能是否能按照規(guī)格說(shuō)明書(shū)的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟?/p>
收輸入數(shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫(kù)或文件)的完整性。黑盒測(cè)試主要采用的技
術(shù)有:等價(jià)分類法、邊沿值分析法、錯(cuò)誤推測(cè)法和因果圖等技術(shù)。
12.什么是白盒測(cè)試?白盒測(cè)試主要采用的技術(shù)有哪些?測(cè)試者了解被測(cè)程序的內(nèi)部結(jié)構(gòu)和處理過(guò)程,對(duì)程序的所有邏輯路徑進(jìn)行測(cè)試,在不同點(diǎn)檢查程序狀態(tài),確定實(shí)際狀態(tài)與預(yù)期狀態(tài)是否一致。白盒測(cè)試主要采用的技術(shù)有:路徑測(cè)試技術(shù)和事務(wù)處理流程技術(shù),對(duì)包含有大量邏輯判斷或條件組合的程序采用基于邏輯的測(cè)試技術(shù)。
13. 瀑布模型的優(yōu)缺點(diǎn)??jī)?yōu)點(diǎn):1.流水線生產(chǎn)比個(gè)人生產(chǎn)效率高,質(zhì)量好。2.將邏輯設(shè)計(jì)與物理實(shí)施分開(kāi),避免無(wú)用功。減少成本,能盡量推遲物理實(shí)施。3.文檔驅(qū)動(dòng)使得開(kāi)發(fā)過(guò)程可視化,便于管理和控制。缺點(diǎn):
1.當(dāng)需求不明確時(shí),流水線被阻塞。2.得不到用戶的反饋,開(kāi)發(fā)過(guò)程得不到修正,導(dǎo)致有可能出現(xiàn)大的失誤。3.最后將產(chǎn)品一次提交給用戶,用戶感到不適應(yīng),成本增加,市場(chǎng)風(fēng)險(xiǎn)加大。
14.軟件工程的目的?以期用較少的代價(jià)獲取高質(zhì)量的軟件。
第三篇:中南大學(xué)軟件學(xué)院架構(gòu)超強(qiáng)復(fù)習(xí)
? JDBC是用來(lái)執(zhí)行SQL的Java API,開(kāi)發(fā)人員可以使用這些標(biāo)準(zhǔn)API來(lái)迎接和操作數(shù)據(jù)庫(kù),實(shí)現(xiàn)數(shù)據(jù)庫(kù)
應(yīng)用程序的開(kāi)發(fā)。JDBC是Java的規(guī)范,考慮到規(guī)范的適應(yīng)性,JDBC只提供了最直接的數(shù)據(jù)庫(kù)操作規(guī)范,在Java.sql包中。2種主要的JDBC連接方式:ODBC橋驅(qū)動(dòng)技術(shù)和JDBC純驅(qū)動(dòng)模式。ODBC驅(qū)動(dòng)程序是由微軟設(shè)計(jì)和開(kāi)發(fā)的一種通用的標(biāo)準(zhǔn)的操作數(shù)據(jù)庫(kù)的API,也可以認(rèn)為是一種數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用程序的接口規(guī)范。純驅(qū)動(dòng)技術(shù)是一種由各個(gè)數(shù)據(jù)庫(kù)廠商提供的驅(qū)動(dòng)程序,其通過(guò)協(xié)議的方式,將應(yīng)用程序的SQL語(yǔ)句直接發(fā)送到數(shù)據(jù)庫(kù)的DBMS執(zhí)行,并返回結(jié)果。JDBC 可做三件事:與數(shù)據(jù)庫(kù)建立連接執(zhí)行SQL 語(yǔ)句、處理結(jié)果。使用JDBC直連DB的缺點(diǎn):1.在某一時(shí)刻連接必須服務(wù)于一個(gè)用戶,以免造成事務(wù)沖突。2.創(chuàng)建連接需要耗費(fèi)時(shí)間。3.保持連接打開(kāi)狀態(tài)的代價(jià)很大。使用數(shù)據(jù)庫(kù)連接池的優(yōu)點(diǎn):1.資源重用 2. 更快的系統(tǒng)響應(yīng)速度 3. 統(tǒng)一的連接管理,避免數(shù)據(jù)庫(kù)連接泄漏? Servlet是一種獨(dú)立于平臺(tái)和協(xié)議的服務(wù)器端的Java應(yīng)用程序,可以生成動(dòng)態(tài)的Web頁(yè)面。Servlet
能干什么:1.根椐請(qǐng)求創(chuàng)建并響應(yīng)整個(gè) HTML Web 頁(yè)面,根據(jù)客戶請(qǐng)求的性質(zhì)而具有動(dòng)態(tài)內(nèi)容。2.創(chuàng)建 HTML Web 頁(yè)面的動(dòng)態(tài)部分,并嵌入到現(xiàn)有靜態(tài) HTML 頁(yè)面中。3.使用服務(wù)器上的其他資源,如數(shù)據(jù)庫(kù)、其他Java程序。4.處理與多個(gè) Web 客戶端的連接,接收來(lái)自多個(gè) Web 客戶端的輸入信息。生命周期包括加載、實(shí)例化、處理客戶端請(qǐng)求和移除,該生命周期由javax.servlet.Sercvet接口的init、setvlet、destroy方法實(shí)現(xiàn)。該生命周期由部署Servlet的容器來(lái)控制。
? JSP是Servlet來(lái)編寫(xiě)服務(wù)端代碼過(guò)于繁瑣和復(fù)雜,所以將響應(yīng)頁(yè)面的動(dòng)態(tài)部分和靜態(tài)部分分開(kāi)。JSP
與Servlet的關(guān)系:1 JSP是一種建立在Servlet規(guī)范提供的功能之上的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù) 2.JSP文件在用戶第一次請(qǐng)求時(shí),會(huì)被編譯成Servlet,然后由這個(gè)Servlet處理用戶的請(qǐng)求 3.JSP可以看成是運(yùn)行時(shí)的Servlet。JSP執(zhí)行過(guò)程:1.客戶端發(fā)出請(qǐng)求(Request)2.JSP 容器將JSP轉(zhuǎn)譯成Servlet的源代碼 3.編譯Servlet,并加載到內(nèi)存執(zhí)行 4.將結(jié)果響應(yīng)(Response)至客戶端。JSP語(yǔ)法提供3種腳本元素:1.聲明(Declarations)——聲明變量或方法 2.Scriptlets——編寫(xiě)有效的Java程序片段 3.表達(dá)式(Expressions)——合法的Java表達(dá)式。servlet 對(duì)象包括:page和config。JSP中會(huì)話跟蹤的方法:
1.隱藏域 2.URL傳值 3.session 4.cookie
? JavaBean往往封裝了程序的頁(yè)面邏輯,它是可重用的組件。通過(guò)使用JavaBean,可以減少在JSP中
腳本代碼的使用,這樣使得JSP易于維護(hù)。JavaBean 的優(yōu)點(diǎn):變更方便、可重用組件、可在多個(gè)應(yīng)用程序中使用、可以跨平臺(tái)
? 頁(yè)面關(guān)聯(lián):Web應(yīng)用程序最突出的優(yōu)點(diǎn)是其能夠聚合大量的信息資源。單個(gè)Web組件所提供的信
息和功能是有限的,因此需要通過(guò)Web組件間的關(guān)聯(lián)來(lái)實(shí)現(xiàn)信息資源和功能的聚合。Web組件之間共有三種關(guān)聯(lián)關(guān)系:請(qǐng)求轉(zhuǎn)發(fā)、請(qǐng)求重定向、包含。Web作用數(shù)據(jù)域:頁(yè)面范圍、請(qǐng)求范圍、會(huì)話范圍、應(yīng)用范圍‘
? MVC模式(三層架構(gòu)模式)(Model-View-Controller)
織代碼用一種業(yè)務(wù)邏輯和數(shù)據(jù)顯示分離的方法。把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)。控制器負(fù)責(zé)轉(zhuǎn)發(fā)請(qǐng)求,對(duì)請(qǐng)求進(jìn)行處理。視圖實(shí)現(xiàn)數(shù)據(jù)的顯示。模型封裝與應(yīng)用程序的業(yè)務(wù)邏輯相關(guān)的數(shù)據(jù)以及對(duì)數(shù)據(jù)的處理方法
? Model1和model2的區(qū)別 Model1模式的實(shí)現(xiàn)比較簡(jiǎn)單,適用于快速開(kāi)發(fā)小規(guī)模項(xiàng)目。但從工程
化的角度看,它的局限性非常明顯:JSP頁(yè)面身兼View和Controller兩種角色,將控制邏輯和表現(xiàn)邏輯混雜在一起,從而導(dǎo)致代碼的重用性非常低,增加了應(yīng)用的擴(kuò)展性和維護(hù)的難度。Model2已經(jīng)是基于MVC架構(gòu)的設(shè)計(jì)模式。在model2架構(gòu)中,servlet作為前端控制器,負(fù)責(zé)接受客戶端發(fā)送的請(qǐng)求,在servlet中只包含控制邏輯和簡(jiǎn)單的前端處理;然后,調(diào)用后端的JavaBean來(lái)完成實(shí)際的邏輯處理;最后,轉(zhuǎn)發(fā)到相應(yīng)的JSP頁(yè)面處理顯示邏輯。區(qū)別:本質(zhì)區(qū)別在于處理批量請(qǐng)求的位置不同。說(shuō)明Strusts2是如何實(shí)現(xiàn)MOdel2的?在struts2中,Model對(duì)應(yīng)業(yè)務(wù)邏輯組件,它通常用于實(shí)現(xiàn)業(yè)務(wù)邏輯方法以及以及與底層數(shù)據(jù)庫(kù)的交互等;View對(duì)應(yīng)視圖組件,通常是指JSP頁(yè)面,但也適用于其他視圖顯示技術(shù),如Velocity或者Excel文檔;Control對(duì)應(yīng)系統(tǒng)核心控制器和業(yè)務(wù)邏輯控制器,系統(tǒng)核心控制器為Struts2框架提供的FilterDispatcher,它根據(jù)請(qǐng)求自動(dòng)調(diào)用相應(yīng)的Action。而業(yè)務(wù)邏
輯控制器是指開(kāi)發(fā)人員自行定義的一系列Action,在Action中負(fù)責(zé)調(diào)用相應(yīng)的業(yè)務(wù)邏輯組件來(lái)完成處理。
? JSTL(JSP Standard Tag Library)是基于SUN公司所定義規(guī)范,由許多公司共同開(kāi)發(fā)完善的開(kāi)放源代
碼的jsp標(biāo)簽庫(kù),為實(shí)現(xiàn)Web應(yīng)用程序中常用功能提供了一個(gè)單一的標(biāo)準(zhǔn)解決方案,是由apache維護(hù)的。
? Servlet過(guò)濾器是Web中的一個(gè)小型組件,它能攔截來(lái)自客戶端的請(qǐng)求和響應(yīng)信息,進(jìn)行查看提取
或者對(duì)客戶端和服務(wù)器之間交換的數(shù)據(jù)信息進(jìn)行一些特定的操作。Servlet過(guò)濾器常用的應(yīng)用場(chǎng)景:
1、對(duì)用戶請(qǐng)求進(jìn)行統(tǒng)一認(rèn)證
2、用戶的訪問(wèn)進(jìn)行記錄和審核
3、對(duì)用戶發(fā)送的數(shù)據(jù)進(jìn)行過(guò)濾或替換
4、轉(zhuǎn)換圖像格式
5、對(duì)響應(yīng)內(nèi)容進(jìn)行壓縮,減少傳輸量
6、對(duì)請(qǐng)求和響應(yīng)進(jìn)行加解密處理 ? 什么是Ajax?AJAX是一種異步交互技術(shù),是JavaScript、CSS、DOM、XmlHttpRequest四種技術(shù)的集合體,主要應(yīng)用于異步獲取后臺(tái)數(shù)據(jù)和局部刷新。異步交互方式:異步發(fā)送請(qǐng)求,消除了傳統(tǒng)的“發(fā)送請(qǐng)求-等待-發(fā)送請(qǐng)求-等待”,極大的提高用戶體驗(yàn)。異步:發(fā)送請(qǐng)求后不等返回結(jié)果,由回調(diào)函數(shù)處理結(jié)果。JavaScript:向服務(wù)器發(fā)起請(qǐng)求,獲得返回結(jié)果,更新頁(yè)面。XML:封裝數(shù)據(jù)。Ajax應(yīng)用的處理流程
1、一個(gè)客戶端事件觸發(fā)一個(gè)Ajax事件;
2、創(chuàng)建XMLHttpRequest對(duì)象的一個(gè)實(shí)例;
3、向服務(wù)器做出請(qǐng)求;
4、服務(wù)器完成業(yè)務(wù)邏輯;
5、請(qǐng)求返回到瀏覽器;
6、處理響應(yīng)數(shù)據(jù)。Ajax框架:瀏覽器端1.Dojo 2.Google AJAXSLT 3.jQuery 服務(wù)器端1.JSON/JSON-RPC 2.Rails 3.DWR
? XMLHttpRequest是ajax的核心機(jī)制,是一種支持異步請(qǐng)求的技術(shù)。簡(jiǎn)單的說(shuō),也就是javascript可
以及時(shí)向服務(wù)器提出請(qǐng)求和處理響應(yīng),而不阻塞用戶,達(dá)到無(wú)刷新的效果。XMLHttpRequest對(duì)象的常用方法:1.Open(”method”,”url”):建立對(duì)服務(wù)器的調(diào)用。Method參數(shù)可以是POST,GET或PUT。url路徑可以使絕對(duì)路徑也可以是相對(duì)路徑。另外這個(gè)方法還有三個(gè)可選的參數(shù)。2.Send(content):向服務(wù)器發(fā)送請(qǐng)求。
? AJAX優(yōu)點(diǎn):
1、最大的一點(diǎn)是頁(yè)面無(wú)刷新,在頁(yè)面內(nèi)與服務(wù)器通信,給用戶的體驗(yàn)非常好。
2、使用
異步方式與服務(wù)器通信,不需要打斷用戶的操作,具有更加迅速的響應(yīng)能力。
3、可以把以前一些服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)嫁到客戶端,利用客戶端閑置的能力來(lái)處理
4、基于標(biāo)準(zhǔn)化的并被廣泛支持的技術(shù),不需要下載插件或者小程序。AJAX缺點(diǎn):1.缺少一個(gè)沒(méi)有標(biāo)準(zhǔn)之爭(zhēng)、沒(méi)有back和history的瀏覽器2.對(duì)搜索引擎的支持不好3.安全問(wèn)題4.語(yǔ)言問(wèn)題
? 同步通信和異步通信 同步通信方式---請(qǐng)求響應(yīng)模型,在傳統(tǒng)的web應(yīng)用模型下,大部分的用戶操
作都會(huì)發(fā)送一個(gè)http請(qǐng)求給服務(wù)器,然后服務(wù)器開(kāi)始處理(接收數(shù)據(jù),執(zhí)行業(yè)務(wù)邏輯,訪問(wèn)數(shù)據(jù)庫(kù)),最后向?yàn)g覽器返回html頁(yè)面。異步通信方式---XMLHttpRequest對(duì)象,異步發(fā)送請(qǐng)求,消除了傳統(tǒng)的“發(fā)送請(qǐng)求-等待-發(fā)送請(qǐng)求-等待”的特性,極大的提高了用戶體驗(yàn)。
?
? JavaScript是一種廣泛用于客戶端的腳本語(yǔ)言,一種動(dòng)態(tài)、弱類型、基于原型的語(yǔ)言,內(nèi)置支持類 XML(可拓展標(biāo)記語(yǔ)言)是SMGL的子集,其目標(biāo)是允許普通的SGML在Web上以目前HTML的方式被服務(wù)、接受和處理,被設(shè)計(jì)成易于實(shí)現(xiàn),且可在SGML和HTML之間互相操作。商業(yè)優(yōu)勢(shì):信息共享、單一應(yīng)用使用、內(nèi)容交付。技術(shù)優(yōu)勢(shì):數(shù)據(jù)重用、數(shù)據(jù)和表示分離、可拓展性、語(yǔ)義信息、容易理解、易于編程
? 由于軟件已經(jīng)實(shí)現(xiàn)了基本的MVC架構(gòu),開(kāi)發(fā)者可以基于這個(gè)軟件,添加自己特定的業(yè)務(wù)邏輯,這樣的軟件就可以被稱為Web框架。通過(guò)Web框架:規(guī)范軟件的架構(gòu)、減輕開(kāi)發(fā)的難度、提高效率、降低維護(hù)成本。
?
? Struts1的缺陷:Formbean與ActionServlet有關(guān)、控制器無(wú)法脫web、不能做單元測(cè)試 Struts2的大致工作流程可描述為: 瀏覽器發(fā)送請(qǐng)求。Control中的核心控制器FilterDispatcher
根據(jù)請(qǐng)求調(diào)用相應(yīng)的業(yè)務(wù)邏輯控制器(Action)。WebWork的攔截器鏈自動(dòng)對(duì)請(qǐng)求應(yīng)用通用功能,如數(shù)據(jù)校驗(yàn)和文件上傳等功能?;卣{(diào)Action中的execute()方法,并在方法體內(nèi)調(diào)用業(yè)務(wù)邏輯組件來(lái)處理請(qǐng)求(Model)。execute()方法將調(diào)用業(yè)務(wù)邏輯組件(Model)得到的數(shù)據(jù)返還并更新視圖層(View)。
? Struts2應(yīng)用的開(kāi)發(fā)步驟:第一步:在web.xml文件中定義核心Filter來(lái)攔截用戶請(qǐng)求;第二步:
如果需要以POST方式提交請(qǐng)求,則定義包含表單數(shù)據(jù)的JSP頁(yè)面。如果僅僅是以GET方式發(fā)送請(qǐng)求,則無(wú)須經(jīng)過(guò)這一步;第三步:定義處理用戶請(qǐng)求的Action類;第四步:在Struts.xml中配置action;第五步:在Struts.xml中配置處理結(jié)果和物理視圖資源之間的對(duì)應(yīng)關(guān)系;第六步:編寫(xiě)資源視圖.Struts 2的配置文件: web.xml:Web部署描述符,包括所有必需的框架組件。Struts.xml:主要的配置文件,包含result映射、action映射、攔截器配置等。struts.properties:Struts 2的屬性配置。struts-default.xml:Struts 2的默認(rèn)配置文件。struts-plugin.xml:Struts 2框架的插件所用的配置文件。Action映射:將一個(gè)請(qǐng)求URI映射到一個(gè)action類。name action的名字,用于匹配請(qǐng)求URI。Class Action實(shí)現(xiàn)類的完整類名。method 執(zhí)行Acition時(shí)調(diào)用的方法。Converther 應(yīng)用于action的類型轉(zhuǎn)換器的完整類名。Result映射 daspatcher 轉(zhuǎn)發(fā)。Redirect 重定向到另外的URL。redirectAction 重定向到另外的Action。chain 用于Action的鏈?zhǔn)教幚怼lainText 用于顯示某些特定頁(yè)面的原始內(nèi)容。Xslt 用于顯示XML的內(nèi)容。? 輸入校驗(yàn):輸入校驗(yàn)的內(nèi)容一般包括驗(yàn)證輸入數(shù)據(jù)的有效性和驗(yàn)證失敗后向用戶提供錯(cuò)誤信息兩部
分。輸入驗(yàn)證的方式可分為客戶端驗(yàn)證和服務(wù)器端驗(yàn)證。手動(dòng)驗(yàn)證:1.在Action的方法中編寫(xiě)驗(yàn)證代碼。2.在validateXxx方法中編寫(xiě)驗(yàn)證代碼。validateXxx即可由框架在業(yè)務(wù)代碼執(zhí)行前自動(dòng)被調(diào)用。如果多個(gè)方法調(diào)用同一段驗(yàn)證代碼,則可以將驗(yàn)證代碼編寫(xiě)在名為validate的方法中即可。內(nèi)置驗(yàn)證框架:通過(guò)在外部配置文件中定義驗(yàn)證規(guī)則的方式來(lái)簡(jiǎn)化對(duì)輸入數(shù)據(jù)的驗(yàn)證,驗(yàn)證框架通過(guò)validator攔截器來(lái)調(diào)用,通過(guò)讀取驗(yàn)證文件中的驗(yàn)證規(guī)則對(duì)輸入數(shù)據(jù)進(jìn)行驗(yàn)證,驗(yàn)證文件的命名為ClassName-alias-validation.xml。ClassName表示實(shí)際的Action類名,alias表示在struts.xml中配置的Action的名字。其中,驗(yàn)證器還分為普通驗(yàn)證器和字段驗(yàn)證器。自定義驗(yàn)證器(以實(shí)現(xiàn)驗(yàn)證碼功能為例):1.編寫(xiě)ValidationCodeAction,用于產(chǎn)生驗(yàn)證碼圖像。2.編寫(xiě)自定義的結(jié)果類型,用于輸出驗(yàn)證碼。3.在struts.xml中配置自定義結(jié)果類型和ValidationCodeAction。4.修改UserAction,添加驗(yàn)證碼屬性。5.修改login.jsp,添加驗(yàn)證碼輸入框。6.編寫(xiě)字段驗(yàn)證器類ValidationCodeValidator 7.注冊(cè)驗(yàn)證器類ValidationCodeValidator 8.為驗(yàn)證碼編寫(xiě)驗(yàn)證規(guī)則。? 類型轉(zhuǎn)換::在Http協(xié)議中,瀏覽器(客戶端)和服務(wù)器端的傳輸都是字符串形式的數(shù)據(jù),但在服
務(wù)端的java程序中數(shù)據(jù)是有各種類型的,所以類型轉(zhuǎn)換是不可避免的。(1)使用合法的OGNL表達(dá)式命名表單元素時(shí),Struts2就會(huì)自動(dòng)的進(jìn)行類型轉(zhuǎn)換。(2)Struts2提供基本的類型轉(zhuǎn)換功能。String—int,long,double,boolean,char,date,array,collection(3)Struts2對(duì)集合類型的轉(zhuǎn)換提供了很好的支持。(4)當(dāng)Struts2提供的內(nèi)置類型轉(zhuǎn)換器不能滿足應(yīng)用需求時(shí),還可以編寫(xiě)自己的類型轉(zhuǎn)換器。
? 什么是AOP?面向切面編程(也叫面向方面),可以通過(guò)預(yù)編譯方式和運(yùn)行期動(dòng)態(tài)代理實(shí)現(xiàn)在不修改
源代碼的情況下給程序動(dòng)態(tài)統(tǒng)一添加功能的一種技術(shù)。為什么需要AOP?AOP可以說(shuō)是OOP的補(bǔ)充和完善。OOP引入封裝、繼承和多態(tài)性等概念來(lái)建立一種對(duì)象層次結(jié)構(gòu),用以模擬公共行為的一個(gè)集合。然而OOP在某些場(chǎng)合無(wú)能為力,比如當(dāng)需要分散的、不具有繼承層次的對(duì)象引入公共行為的時(shí)候,OOP則無(wú)法避免代碼的重復(fù)。抽象的說(shuō),OOP允許定義從上倒下的關(guān)系,但并不適合定義從左到右的關(guān)系。具體而言,比如安全驗(yàn)證和記錄日志功能,這類代碼往往平均的分散在所有對(duì)象層次中,而與它所散步到的對(duì)象的核心功能毫無(wú)關(guān)系。Spring AOP采用純java實(shí)現(xiàn),無(wú)須特別編譯。不僅提供AOP基礎(chǔ)框架,還提供很多現(xiàn)成的切面實(shí)現(xiàn)。Spring AOP和Spring IoC容器無(wú)縫的集成,AOP組件享受Spring提供的一切優(yōu)勢(shì),比如可將攔截器、切入點(diǎn)都當(dāng)做Spring Bean來(lái)管理。
? AOP的一些概念:關(guān)注點(diǎn):一個(gè)關(guān)注點(diǎn)可以是一個(gè)特定的問(wèn)題、概念、或是應(yīng)用程序一個(gè)關(guān)注點(diǎn)可
以被識(shí)別為核心關(guān)注點(diǎn)或橫切關(guān)注點(diǎn)。核心關(guān)注點(diǎn):完成核心業(yè)務(wù)邏輯的關(guān)注點(diǎn)。橫切關(guān)注點(diǎn):在AOP中,將那些具有公共邏輯、與其他模塊的核心邏輯糾纏在一起的行為稱為“橫切關(guān)注點(diǎn)”,它不是給定編程模型的核心職責(zé)。比如:身份驗(yàn)證、日志記錄。切面(Aspect):一個(gè)切面是對(duì)一個(gè)橫切關(guān)注點(diǎn)的模塊化,它將那些散落在各處的、實(shí)現(xiàn)關(guān)注點(diǎn)的代碼歸整在一起,其實(shí)就是共有功能的實(shí)現(xiàn)。如日志切面、權(quán)限切面、事務(wù)切面等。在實(shí)際應(yīng)用中通常是一個(gè)存放共有功能實(shí)現(xiàn)的普通Java類。連接點(diǎn)(join point):它是指應(yīng)用中執(zhí)行的某個(gè)點(diǎn),即程序執(zhí)行流程中的某個(gè)點(diǎn)??赡苁欠椒ㄕ{(diào)用、字
段訪問(wèn)、異常拋出。建議或通知(Advice):是切面的具體實(shí)現(xiàn)。以目標(biāo)方法為參照點(diǎn),根據(jù)放置的地方不同,可分為前置通知(Before)、后置通知(AfterReturning)與環(huán)繞通知(Around)。切入點(diǎn)(Pointcut):一組join point的總稱,用于定義通知應(yīng)該切入到哪些連接點(diǎn)上。不同的通知通常需要切入到不同的連接點(diǎn)上。主要的功能是:日志記錄,性能統(tǒng)計(jì),安全控制,事務(wù)處理,異常處理等等。主要的意圖是:將日志記錄,性能統(tǒng)計(jì),安全控制,事務(wù)處理,異常處理等代碼從業(yè)務(wù)邏輯代碼中劃分出來(lái),通過(guò)對(duì)這些行為的分離,我們希望可以將它們獨(dú)立到非指導(dǎo)業(yè)務(wù)邏輯的方法中,進(jìn)而改變這些行為的時(shí)候不會(huì)影響業(yè)務(wù)邏輯代碼。AOP的實(shí)現(xiàn)技術(shù):JavaSE動(dòng)態(tài)代理、動(dòng)態(tài)字節(jié)碼生成、Java代碼生成、語(yǔ)言擴(kuò)展。建議(advice)是point cut的執(zhí)行代碼,是“切面”執(zhí)行的具體邏輯。前置建議(before advice)在連接點(diǎn)調(diào)用之前,先調(diào)用advice。后置建議(after advice)在連接點(diǎn)調(diào)用之后,再調(diào)用advice成功執(zhí)行后(after returning advice)拋出異常后(after throwing advice)不管是否異常后(after advice)環(huán)繞建議(around advice)完全控制所有連接點(diǎn)引介(introduction)為一個(gè)現(xiàn)有的Java類或接口添加方法或字段?;烊肜^承(mixin inheritance)一個(gè)混入類封裝了一組功能,這組功能可能被“混入”到現(xiàn)有的類中,并且無(wú)需求助于傳統(tǒng)的繼承手段。在AOP里,mixin通過(guò)introduction來(lái)實(shí)現(xiàn)??椚耄╳eaving)將切面整合到完整的執(zhí)行流程或完成的類。動(dòng)態(tài)橫切:通過(guò)切入點(diǎn)和連接點(diǎn)在一個(gè)切面中創(chuàng)建行為的過(guò)程。動(dòng)態(tài)橫切通常用于幫助向?qū)ο髮哟沃械母鞣N方法添加安全驗(yàn)證或日志記錄。在很多應(yīng)用場(chǎng)景中,動(dòng)態(tài)橫切基本代表了AOP。動(dòng)態(tài)橫切的核心技術(shù)包括連接點(diǎn)、切入點(diǎn)、建議、切面。靜態(tài)橫切:靜態(tài)橫切和動(dòng)態(tài)橫切的區(qū)別在于,靜態(tài)橫切不修改一個(gè)給定對(duì)象的執(zhí)行行為。相反,它可以把擴(kuò)展和實(shí)現(xiàn)附加到對(duì)象的基本結(jié)構(gòu)中。此外,它通過(guò)引入附加的方法字段和屬性來(lái)修改對(duì)象的結(jié)構(gòu)。在AOP的實(shí)現(xiàn)中,通常靜態(tài)橫切也就是引入或混入。
? 什么是IOC?控制反轉(zhuǎn),強(qiáng)制將組件的創(chuàng)建和使用分離,通過(guò)反射機(jī)制,動(dòng)態(tài)的創(chuàng)建組件已達(dá)到解
耦目的。IOC最大的好處是什么?因?yàn)榘褜?duì)象生成放在了XML里定義,所以當(dāng)我們需要換一個(gè)實(shí)現(xiàn)子類將會(huì)變成很簡(jiǎn)單(一般這樣的對(duì)象都是實(shí)現(xiàn)于某種接口的),只要修改XML就可以了,這樣我們甚至可以實(shí)現(xiàn)對(duì)象的熱插撥(有點(diǎn)象USB接口和SCSI硬盤(pán)了)IOC最大的缺點(diǎn)是什么?(1)生成一個(gè)對(duì)象的步驟變復(fù)雜了(事實(shí)上操作上還是挺簡(jiǎn)單的),對(duì)于不習(xí)慣這種方式的人,會(huì)覺(jué)得有些別扭和不直觀。(2)對(duì)象生成因?yàn)槭鞘褂梅瓷渚幊蹋谛噬嫌行p耗。但相對(duì)于IoC提高的維護(hù)性和靈活性來(lái)說(shuō),這點(diǎn)損耗是微不足道的,除非某對(duì)象的生成對(duì)效率要求特別高。(3)缺少I(mǎi)DE重構(gòu)操作的支持,如果在Eclipse要對(duì)類改名,那么你還需要去XML文件里手工去改了,這似乎是所有XML方式的缺憾所在。
?
? MyBatis實(shí)現(xiàn)步驟:
1、編寫(xiě)Configuration.xml文件
2、獲取SqlSessionFactory
3、編寫(xiě)映射器UserMapper.xml;
4、編寫(xiě)UserDao的實(shí)現(xiàn)。使用Hibernate的步驟(三個(gè)準(zhǔn)備,七個(gè)步驟)三個(gè)準(zhǔn)備:
1、導(dǎo)入Hibernate庫(kù)(jar包);
2、添加Hibernate配置文件
3、添加對(duì)應(yīng)表的實(shí)體類和映射文件。七個(gè)步驟:
1、configuration
2、創(chuàng)建SessionFactory3、打開(kāi)Session4、開(kāi)始一個(gè)事務(wù)
5、持久化操作
6、提交事務(wù)
7、關(guān)閉Session、?
? 使用HQL步驟
1、得到session2、編寫(xiě)HQL語(yǔ)句
3、創(chuàng)建Query對(duì)象 持久化對(duì)象的狀態(tài):1.持久化對(duì)象的臨時(shí)狀態(tài)(不在Session的緩存中,不與任何的Session
實(shí)例相關(guān)聯(lián)。在數(shù)據(jù)庫(kù)中沒(méi)有與之相對(duì)應(yīng)的記錄)2.持久化對(duì)象的持久化狀態(tài)(存在Session的緩存中。持久化對(duì)象映射了數(shù)據(jù)庫(kù)中的相關(guān)記錄。Session在清理緩存時(shí),會(huì)同步更新數(shù)據(jù)庫(kù)。Session的load()或get()方法返回的對(duì)象總是處于持久化狀態(tài))3.持久化對(duì)象的游離狀態(tài)(脫離Session緩存。游離對(duì)象在數(shù)據(jù)庫(kù)中可能存在與之對(duì)應(yīng)的紀(jì)錄,但游離對(duì)象與數(shù)據(jù)庫(kù)記錄失去了映射關(guān)系)
? Hibernate---全自動(dòng)化ORM框架 Hibernate是一個(gè)輕量級(jí)、功能強(qiáng)大的ORM框架;提供了完全
透明的持久化機(jī)制,客戶代碼可通過(guò)一種完全面向?qū)ο蟮姆绞絹?lái)處理持久化,而無(wú)需和SQL打交道;Hibernate管理Java類到數(shù)據(jù)庫(kù)的映射(包括Java數(shù)據(jù)類型到SQL數(shù)據(jù)類型的映射)、提供數(shù)據(jù)的CRUD操作;Hibernate內(nèi)置一種稱為HQL的語(yǔ)言,和SQL的語(yǔ)法接近,但不與特定的數(shù)據(jù)庫(kù)表或字段發(fā)生直接關(guān)聯(lián),卻又提供了SQL的大部分功能,并且支持類似連接、統(tǒng)計(jì)函數(shù)、批量數(shù)據(jù)等關(guān)系型概念。
使用Hibernate框架進(jìn)行ORM,可大幅度減少開(kāi)發(fā)時(shí)手工使用SQL和JDBC的出錯(cuò)。優(yōu)點(diǎn):簡(jiǎn)單。缺點(diǎn):多了查詢,慢(但實(shí)際對(duì)于一個(gè)JAVA EE應(yīng)用而言,hibernate通常的處理流程是:從數(shù)據(jù)看里加載記錄->將信息發(fā)送到表現(xiàn)層供用戶修改或刪除->將所做修改重新保存到數(shù)據(jù)庫(kù)。在這種處理流程下,應(yīng)用本身就需要兩條SQL語(yǔ)句)。
?
? iBats---半自動(dòng)化ORM框架 提供了基于JDBC之上的一層簡(jiǎn)單抽象,是一種基于SQL語(yǔ)句映射的低級(jí)別ORM方案,使用原生態(tài)SQL作為查詢語(yǔ)言。OGNL是Object Graph Navigation Language,對(duì)象圖導(dǎo)航語(yǔ)言。ONGL是一種強(qiáng)大的表達(dá)式語(yǔ)言,它通
過(guò)簡(jiǎn)單一致的表達(dá)式語(yǔ)法來(lái)讀取和設(shè)置Java對(duì)象的屬性,調(diào)用對(duì)象的方法,遍歷整個(gè)對(duì)象的結(jié)構(gòu)圖,實(shí)現(xiàn)字段類型轉(zhuǎn)換等功能。WEB容器是指一種安裝在服務(wù)端計(jì)算機(jī)中的特定軟件。此類軟件遵循HTTP協(xié)議,主要功能是負(fù)責(zé)偵聽(tīng)指定端口,接收客戶端的請(qǐng)求并解析,然后將指定的響應(yīng)頁(yè)面發(fā)送到客戶端。EL表達(dá)式EL是一種簡(jiǎn)單而強(qiáng)大的語(yǔ)言,提供了在JSP腳本元素范圍外使用運(yùn)行時(shí)表達(dá)式的功能。Web Services應(yīng)用程序組件,使用開(kāi)放協(xié)議進(jìn)行通信,獨(dú)立的并可自我描述,可通過(guò)使用UDDI來(lái)發(fā)現(xiàn),可以被其他應(yīng)用程序使用,XML是其基礎(chǔ)。
? Mybatis一個(gè)持久數(shù)據(jù)映射框架,提供了基于JDBC之上的一層簡(jiǎn)單抽象,是一種基于SQL語(yǔ)句映射的低級(jí)別ORM方案,使用原生態(tài)SQL作為查詢語(yǔ)言,用來(lái)完成數(shù)據(jù)持久化MyBaits基本原理:在XML文件中定義SQL語(yǔ)句,預(yù)留參數(shù)占位符;在運(yùn)行時(shí),占位符被指定的參數(shù)值取代,參數(shù)可能來(lái)自參數(shù)映射表、JavaBean屬性、或者簡(jiǎn)單的參數(shù)對(duì)象。在執(zhí)行SQL查詢時(shí),結(jié)果字段被映射到對(duì)象,映射的方式與參數(shù)映射一樣。
? ORM框架ORM, Object-Relational Mapping, 對(duì)象-關(guān)系數(shù)據(jù)庫(kù)映射框架。在關(guān)系型數(shù)據(jù)庫(kù)和業(yè)務(wù)實(shí)體對(duì)
象之間作一個(gè)映射,這樣,我們?cè)诰唧w的操作業(yè)務(wù)對(duì)象的時(shí)候,就不需要再去和復(fù)雜的SQL語(yǔ)句打交道,只要像平時(shí)操作對(duì)象一樣操作它就可以了。
? 攔截器(Interceptor)是Struts2的一個(gè)重要特性。Struts2的大多數(shù)核心功能都是通過(guò)攔截器來(lái)實(shí)現(xiàn)的,如類型轉(zhuǎn)換、對(duì)象組裝、輸入校驗(yàn)、文件上傳等。Struts2將其大多數(shù)核心功能通過(guò)攔截器來(lái)實(shí)現(xiàn),而不是分散在Action中實(shí)現(xiàn),有利于系統(tǒng)的解耦,實(shí)現(xiàn)“hot-plug”。需要某個(gè)功能就“plug-in”一個(gè)攔截器,而不需要修改和業(yè)務(wù)相關(guān)的Action代碼。編寫(xiě)一個(gè)用于安全驗(yàn)證的攔截器第一步:修改UserAction第二步:編寫(xiě)攔截器類AuthenticationInterceptor extends AbstractInterceptor第三步:配置攔截。
? DI強(qiáng)制將組件的構(gòu)建和使用分開(kāi)。(組件的生產(chǎn)、組件的使用、接口的定義、運(yùn)行時(shí)注入)。借
助spring框架,實(shí)現(xiàn)工廠的效果。如果類與類之間沒(méi)有依賴(不能提取接口),則不用IOC(如果橫向有依賴,即action與action之間有關(guān)系,說(shuō)明沒(méi)有設(shè)計(jì)好)功能太小,也不用IOC,spring是做大系統(tǒng)的。DI有兩種最常用的方式:構(gòu)造注入——保留依賴的先后順序。Set注入——更多使用 步驟:定義組件接口:墨盒接口ink;紙張接口paper;使用接口開(kāi)發(fā)打印機(jī):printer(使用ink和paper接口)組裝打印機(jī):在printer里。給ink和paper創(chuàng)建set方法創(chuàng)建或得到ink和paper的實(shí)現(xiàn)類。組裝——在src下創(chuàng)建applicationContext.xml(依賴注入)。運(yùn)行打印機(jī)
? Spring框架的一項(xiàng)最基本的功能就是充當(dāng)創(chuàng)建對(duì)象的工廠,具體步驟為:第一步:讀取并
分析spring配置文件(如XML配置文件);第二步:通過(guò)反射機(jī)制,創(chuàng)建并集成上述配置文件中的對(duì)象;第三步:將創(chuàng)建的對(duì)象傳回給應(yīng)用代碼。
第四篇:中南大學(xué)軟件學(xué)院架構(gòu)復(fù)習(xí)
? 使用Hibernate框架進(jìn)行ORM,可大幅度減少開(kāi)發(fā)時(shí)手工使用SQL和JDBC的出錯(cuò)。優(yōu)點(diǎn):簡(jiǎn)單。缺
點(diǎn):多了查詢,慢(但實(shí)際對(duì)于一個(gè)JAVA EE應(yīng)用而言,hibernate通常的處理流程是:從數(shù)據(jù)看里加載記錄->將信息發(fā)送到表現(xiàn)層供用戶修改或刪除->將所做修改重新保存到數(shù)據(jù)庫(kù)。在這種處理流程下,應(yīng)用本身就需要兩條SQL語(yǔ)句)。
?
? iBats---半自動(dòng)化ORM框架 提供了基于JDBC之上的一層簡(jiǎn)單抽象,是一種基于SQL語(yǔ)句映射的低級(jí)別ORM方案,使用原生態(tài)SQL作為查詢語(yǔ)言。OGNL是Object Graph Navigation Language,對(duì)象圖導(dǎo)航語(yǔ)言。ONGL是一種強(qiáng)大的表達(dá)式語(yǔ)言,它通
過(guò)簡(jiǎn)單一致的表達(dá)式語(yǔ)法來(lái)讀取和設(shè)置Java對(duì)象的屬性,調(diào)用對(duì)象的方法,遍歷整個(gè)對(duì)象的結(jié)構(gòu)圖,實(shí)現(xiàn)字段類型轉(zhuǎn)換等功能。WEB容器是指一種安裝在服務(wù)端計(jì)算機(jī)中的特定軟件。此類軟件遵循HTTP協(xié)議,主要功能是負(fù)責(zé)偵聽(tīng)指定端口,接收客戶端的請(qǐng)求并解析,然后將指定的響應(yīng)頁(yè)面發(fā)送到客戶端。EL表達(dá)式EL是一種簡(jiǎn)單而強(qiáng)大的語(yǔ)言,提供了在JSP腳本元素范圍外使用運(yùn)行時(shí)表達(dá)式的功能。Web Services應(yīng)用程序組件,使用開(kāi)放協(xié)議進(jìn)行通信,獨(dú)立的并可自我描述,可通過(guò)使用UDDI來(lái)發(fā)現(xiàn),可以被其他應(yīng)用程序使用,XML是其基礎(chǔ)。
? Mybatis一個(gè)持久數(shù)據(jù)映射框架,提供了基于JDBC之上的一層簡(jiǎn)單抽象,是一種基于SQL語(yǔ)句映射的低級(jí)別ORM方案,使用原生態(tài)SQL作為查詢語(yǔ)言,用來(lái)完成數(shù)據(jù)持久化MyBaits基本原理:在XML文件中定義SQL語(yǔ)句,預(yù)留參數(shù)占位符;在運(yùn)行時(shí),占位符被指定的參數(shù)值取代,參數(shù)可能來(lái)自參數(shù)映射表、JavaBean屬性、或者簡(jiǎn)單的參數(shù)對(duì)象。在執(zhí)行SQL查詢時(shí),結(jié)果字段被映射到對(duì)象,映射的方式與參數(shù)映射一樣。
? ORM框架ORM, Object-Relational Mapping, 對(duì)象-關(guān)系數(shù)據(jù)庫(kù)映射框架。在關(guān)系型數(shù)據(jù)庫(kù)和業(yè)務(wù)實(shí)體對(duì)
象之間作一個(gè)映射,這樣,我們?cè)诰唧w的操作業(yè)務(wù)對(duì)象的時(shí)候,就不需要再去和復(fù)雜的SQL語(yǔ)句打交道,只要像平時(shí)操作對(duì)象一樣操作它就可以了。
? 攔截器(Interceptor)是Struts2的一個(gè)重要特性。Struts2的大多數(shù)核心功能都是通過(guò)攔截器來(lái)實(shí)現(xiàn)的,如類型轉(zhuǎn)換、對(duì)象組裝、輸入校驗(yàn)、文件上傳等。Struts2將其大多數(shù)核心功能通過(guò)攔截器來(lái)實(shí)現(xiàn),而不是分散在Action中實(shí)現(xiàn),有利于系統(tǒng)的解耦,實(shí)現(xiàn)“hot-plug”。需要某個(gè)功能就“plug-in”一個(gè)攔截器,而不需要修改和業(yè)務(wù)相關(guān)的Action代碼。編寫(xiě)一個(gè)用于安全驗(yàn)證的攔截器第一步:修改UserAction第二步:編寫(xiě)攔截器類AuthenticationInterceptor extends AbstractInterceptor第三步:配置攔截。
? DI強(qiáng)制將組件的構(gòu)建和使用分開(kāi)。(組件的生產(chǎn)、組件的使用、接口的定義、運(yùn)行時(shí)注入)。借
助spring框架,實(shí)現(xiàn)工廠的效果。如果類與類之間沒(méi)有依賴(不能提取接口),則不用IOC(如果橫向有依賴,即action與action之間有關(guān)系,說(shuō)明沒(méi)有設(shè)計(jì)好)功能太小,也不用IOC,spring是做大系統(tǒng)的。DI有兩種最常用的方式:構(gòu)造注入——保留依賴的先后順序。Set注入——更多使用 步驟:定義組件接口:墨盒接口ink;紙張接口paper;使用接口開(kāi)發(fā)打印機(jī):printer(使用ink和paper接口)組裝打印機(jī):在printer里。給ink和paper創(chuàng)建set方法創(chuàng)建或得到ink和paper的實(shí)現(xiàn)類。組裝——在src下創(chuàng)建applicationContext.xml(依賴注入)。運(yùn)行打印機(jī)
? Spring框架的一項(xiàng)最基本的功能就是充當(dāng)創(chuàng)建對(duì)象的工廠,具體步驟為:第一步:讀取并
分析spring配置文件(如XML配置文件);第二步:通過(guò)反射機(jī)制,創(chuàng)建并集成上述配置文件中的對(duì)象;第三步:將創(chuàng)建的對(duì)象傳回給應(yīng)用代碼。
一、輸入校驗(yàn)(自定義驗(yàn)證器的開(kāi)發(fā))
1、編寫(xiě)ValidationCodeAction,用于產(chǎn)生驗(yàn)證碼圖像;
2、編寫(xiě)自定義的結(jié)果類型,用于輸出驗(yàn)證碼;
3、在struts.xml中配置自定義結(jié)果類型和ValidationCodeAction;
4、修改UserAction,添加驗(yàn)證碼屬性;
5、修改login.jsp,添加驗(yàn)證碼輸入框;
6、編寫(xiě)字段驗(yàn)證器類ValidationCodeValidator;
7、注冊(cè)字段驗(yàn)證器類ValidationCodeValidator;
8、為驗(yàn)證器編寫(xiě)驗(yàn)證規(guī)則。
二、Ajax應(yīng)用的處理流程
1、一個(gè)客戶端事件觸發(fā)一個(gè)Ajax事件;
2、創(chuàng)建XMLHttpRequest對(duì)象的一個(gè)實(shí)例;
3、向服務(wù)器做出請(qǐng)求;
4、服務(wù)器完成業(yè)務(wù)邏輯;
5、請(qǐng)求返回到瀏覽器;
6、處理響應(yīng)數(shù)據(jù)。
三、MyBatis實(shí)現(xiàn)步驟
1、編寫(xiě)Configuration.xml文件;
2、獲取SqlSessionFactory;
3、編寫(xiě)映射器UserMapper.xml;
4、編寫(xiě)UserDao的實(shí)現(xiàn)。
四、使用Hibernate的步驟(三個(gè)準(zhǔn)備,七個(gè)步驟)
三個(gè)準(zhǔn)備:
1、導(dǎo)入Hibernate庫(kù)(jar包);
2、添加Hibernate配置文件
3、添加對(duì)應(yīng)表的實(shí)體類和映射文件。
七個(gè)步驟:
1、configuration2、創(chuàng)建SessionFactory3、打開(kāi)Session4、開(kāi)始一個(gè)事務(wù)
5、持久化操作
6、提交事務(wù)
7、關(guān)閉Session
六、為什么需要AOP
AOP可以說(shuō)是OOP的補(bǔ)充和完善。OOP引入封裝、繼承和多態(tài)性等概念來(lái)建立一種對(duì)象層次結(jié)構(gòu),用以模擬公共行為的一個(gè)集合。
然而OOP在某些場(chǎng)合無(wú)能為力,比如當(dāng)需要分散的、不具有繼承層次的對(duì)象引入公共行為的時(shí)候,OOP則無(wú)法避免代碼的重復(fù)。
抽象的說(shuō),OOP允許定義從上倒下的關(guān)系,但并不適合定義從左到右的關(guān)系。
具體而言,比如安全驗(yàn)證和記錄日志功能,這類代碼往往平均的分散在所有對(duì)象層次中,而與它所散步到的對(duì)象的核心功能毫無(wú)關(guān)系。
Spring AOP采用純java實(shí)現(xiàn),無(wú)須特別編譯。不僅提供AOP基礎(chǔ)框架,還提供很多現(xiàn)成的切面實(shí)現(xiàn)。
Spring AOP和Spring IoC容器無(wú)縫的集成,AOP組件享受Spring提供的一切優(yōu)勢(shì),比如可將攔截器、切入點(diǎn)都當(dāng)做Spring Bean來(lái)管理。
七、Model I和Model II的區(qū)別
本質(zhì)區(qū)別在于處理批量請(qǐng)求的位置不同。
Model1:結(jié)合JSP頁(yè)面和JavaBean來(lái)開(kāi)發(fā)Web應(yīng)用程序。jsp頁(yè)面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回客戶端。這里仍然存在表達(dá)和內(nèi)容的分離,因?yàn)樗械臄?shù)據(jù)存取都是由bean完成的。缺點(diǎn):內(nèi)容和表示沒(méi)有完全解耦,jsp頁(yè)面內(nèi)被嵌入大量的腳本片段或java代碼 Model2:采用MVC的設(shè)計(jì)模式,C負(fù)責(zé)轉(zhuǎn)發(fā)請(qǐng)求,對(duì)請(qǐng)求進(jìn)行處理,V顯示數(shù)據(jù),M封裝與應(yīng)用程序的業(yè)務(wù)邏輯相關(guān)的數(shù)據(jù)以及對(duì)數(shù)據(jù)的處理方法。
八、同步通信和異步通信
同步通信方式---請(qǐng)求響應(yīng)模型,在傳統(tǒng)的web應(yīng)用模型下,大部分的用戶操作都會(huì)發(fā)送一個(gè)http請(qǐng)求給服務(wù)器,然后服務(wù)器開(kāi)始處理(接收數(shù)據(jù),執(zhí)行業(yè)務(wù)邏輯,訪問(wèn)數(shù)據(jù)庫(kù)),最后向?yàn)g覽器返回html頁(yè)面。
異步通信方式---XMLHttpRequest對(duì)象,異步發(fā)送請(qǐng)求,消除了傳統(tǒng)的“發(fā)送請(qǐng)求-等待-發(fā)送請(qǐng)求-等待”的特性,極大的提高了用戶體驗(yàn)。
九、Spring1、核心關(guān)注點(diǎn):完成業(yè)務(wù)邏輯的關(guān)注點(diǎn)
2、橫切關(guān)注點(diǎn):實(shí)現(xiàn)代碼散落在很多個(gè)類或方法之中的關(guān)注點(diǎn)。
3、切面:一個(gè)切面是對(duì)一個(gè)橫切關(guān)注點(diǎn)的模塊化,它將那些散落在各處的、實(shí)現(xiàn)關(guān)注點(diǎn)的代碼歸整在一起。
十、持久化對(duì)象的狀態(tài)
? 持久化對(duì)象的臨時(shí)狀態(tài)
不在Session的緩存中,不與任何的Session實(shí)例相關(guān)聯(lián)。在數(shù)據(jù)庫(kù)中沒(méi)有與之相對(duì)應(yīng)的記錄
? 持久化對(duì)象的持久化狀態(tài)
存在Session的緩存中。持久化對(duì)象映射了數(shù)據(jù)庫(kù)中的相關(guān)記錄。Session在清理緩存時(shí),會(huì)同步更新數(shù)據(jù)庫(kù)。Session的load()或get()方法返回的對(duì)象總是處于持久化狀態(tài)
? 持久化對(duì)象的游離狀態(tài)
脫離Session緩存。
游離對(duì)象在數(shù)據(jù)庫(kù)中可能存在與之對(duì)應(yīng)的紀(jì)錄,但游離對(duì)象與數(shù)據(jù)庫(kù)記錄失去了映射關(guān)系
名詞解釋
1、AJAX
一種異步交互技術(shù),JavaScript、CSS、DOM、XmlHttpRequest四種技術(shù)的集合體,主要應(yīng)用于異步獲取后臺(tái)數(shù)據(jù)和局部刷新。消除了傳統(tǒng)的“發(fā)送請(qǐng)求-等待”的特性,極大的提高了用戶體驗(yàn)。
2、XMLHttpRequest(XHR)對(duì)象
XMLHttpRequest是Ajax的核心機(jī)制,是一種支持異步請(qǐng)求的技術(shù)。JavaScript可以及時(shí)向服務(wù)器提出請(qǐng)求和處理響應(yīng),而不阻塞用戶,達(dá)到無(wú)刷新的效果。
3、JSTL
JSP Standard Tag Library,由許多公司共同開(kāi)發(fā)完善的開(kāi)放源代碼的jsp標(biāo)簽庫(kù),是由apache維護(hù)的。
4、Web Services
應(yīng)用程序組件,使用開(kāi)放協(xié)議進(jìn)行通信,獨(dú)立的并可自我描述,可通過(guò)使用UDDI來(lái)發(fā)現(xiàn),可以被其他應(yīng)用程序使用,XML是其基礎(chǔ)。
5、MVC
一種軟件架構(gòu)模式,把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制
器(Controller)
6、AOP
面向切面編程,AOP思想的核心是“橫切”,將對(duì)象剖開(kāi),抽出一些內(nèi)部的屬性和行為,處理后再將剖面復(fù)原,不留痕跡。
7、Hibernate---全自動(dòng)化ORM框架
Hibernate是一個(gè)對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù),主要用來(lái)完成數(shù)據(jù)持久化的重任。
8、iBats---半自動(dòng)化ORM框架
提供了基于JDBC之上的一層簡(jiǎn)單抽象,是一種基于SQL語(yǔ)句映射的低級(jí)別ORM方案,使用原生態(tài)SQL作為查詢語(yǔ)言。
9、ORM
用Java語(yǔ)言設(shè)計(jì)的程序是面向?qū)ο?Object)的,而持久數(shù)據(jù)是存儲(chǔ)在關(guān)系型數(shù)據(jù)庫(kù)(Relation)中的,所以需要一種映射機(jī)制(Mapping)。
10.OGNL
ONGL對(duì)象圖導(dǎo)航語(yǔ)言。ONGL是一種強(qiáng)大的表達(dá)式語(yǔ)言,它通過(guò)簡(jiǎn)單一致的表達(dá)式語(yǔ)法來(lái)讀取和設(shè)置Java對(duì)象的屬性,調(diào)用對(duì)象的方法,實(shí)現(xiàn)字段類型轉(zhuǎn)換等功能。
11、國(guó)際化(Internationalization)是使程序在不做任何修改的情況下,就可以在不同的國(guó)家或地區(qū)和不同的語(yǔ)言環(huán)境下,按照當(dāng)?shù)氐恼Z(yǔ)言和格式習(xí)慣顯示字符,又被稱為I18N。
12、AOP
意為面向切面編程,可以通過(guò)預(yù)編譯方式和運(yùn)行期動(dòng)態(tài)代理實(shí)現(xiàn)在不修改源代碼的情況下給程序動(dòng)態(tài)統(tǒng)一添加功能的一種技術(shù)。
13、IOC
控制反轉(zhuǎn),強(qiáng)制將組件的創(chuàng)建和使用分離,通過(guò)反射機(jī)制,動(dòng)態(tài)的創(chuàng)建組件已達(dá)到解耦目的。
14.WEB容器
是指一種安裝在服務(wù)端計(jì)算機(jī)中的特定軟件。此類軟件遵循HTTP協(xié)議,主要功能是負(fù)責(zé)偵聽(tīng)指定端口,接收客戶端的請(qǐng)求并解析,然后將指定的響應(yīng)頁(yè)面發(fā)送到客戶端。
15.SERVLET
Servlet是一種獨(dú)立于平臺(tái)和協(xié)議的服務(wù)器端Java應(yīng)用程序。Servlet由Servlet容器加載和運(yùn)行,在Java Web環(huán)境中Servlet容器一般嵌入在Web容器中。主要功能就是響應(yīng)來(lái)自客戶端的請(qǐng)求。
16.JSP
用Servlet來(lái)編寫(xiě)Web應(yīng)用,導(dǎo)致服務(wù)端代碼過(guò)于繁瑣和復(fù)雜,將Servlet中的靜態(tài)部分和動(dòng)態(tài)部分分開(kāi)來(lái)編寫(xiě),同時(shí)提供類似HTML的寫(xiě)法.JSP是一種建立在Servlet規(guī)范提供的功能之上的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)
17.JSP頁(yè)面的執(zhí)行過(guò)程
1客戶端發(fā)出請(qǐng)求(Request:Counter.jsp);2.JSP容器將JSP轉(zhuǎn)譯成Servlet的源代碼;
3編譯Servlet,并加載到內(nèi)存執(zhí)行;4將結(jié)果響應(yīng)(Response:Output.html)至客戶端。
18.EL表達(dá)式
EL是一種簡(jiǎn)單而強(qiáng)大的語(yǔ)言,提供了在JSP腳本元素范圍外使用運(yùn)行時(shí)表達(dá)式的功能
19.jdbc
JDBC是Java數(shù)據(jù)庫(kù)連接(Java Database Connectivity)的簡(jiǎn)稱。
是Java平臺(tái)(JavaSE)中用來(lái)規(guī)范客戶端程序如何來(lái)訪問(wèn)數(shù)據(jù)庫(kù)的應(yīng)用程序接口(API),提供了諸如查詢和更新數(shù)據(jù)庫(kù)中數(shù)據(jù)的方法。
軟件開(kāi)發(fā)人員使用這些標(biāo)準(zhǔn)API來(lái)連接和操作數(shù)據(jù)庫(kù),實(shí)現(xiàn)數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā)。
第五篇:2012上半年中南大學(xué)軟件學(xué)院軟件工程碩士招生公告
2012年(上半年)中南大學(xué)
軟件工程碩士自主招生公告
一、培養(yǎng)目標(biāo)
根據(jù)國(guó)民經(jīng)濟(jì)信息化建設(shè)和軟件產(chǎn)業(yè)迅速發(fā)展的需要,面對(duì)企事業(yè)單位、特別是軟件企業(yè)對(duì)高素質(zhì)軟件工程技術(shù)人才的迫切需求,培養(yǎng)有創(chuàng)新精神、具有國(guó)際競(jìng)爭(zhēng)力的高層次復(fù)合型軟件人才。
二、報(bào)考條件
1、身體健康,品行端正,遵紀(jì)守法;
2、具有國(guó)民教育系列大學(xué)本科學(xué)歷和學(xué)士學(xué)位;應(yīng)屆、往屆畢業(yè)生均可;
3、較系統(tǒng)掌握計(jì)算機(jī)專業(yè)基礎(chǔ)知識(shí),具有一定的軟件開(kāi)發(fā)或軟件項(xiàng)目管理等方面的經(jīng)驗(yàn)和能力,或從事企、事業(yè)單位信息化建設(shè)工作的管理人員和技術(shù)人員。
三、專業(yè)研究方向
1、軟件工程;
2、生物醫(yī)學(xué)信息技術(shù):該方向是現(xiàn)代生命科學(xué)、醫(yī)學(xué)、計(jì)算機(jī)科學(xué)與信息科學(xué)等領(lǐng)域相互交叉,并融合生物信息學(xué)、計(jì)算與系統(tǒng)生物學(xué)、藥物信息學(xué)、醫(yī)學(xué)影像信息學(xué)、醫(yī)學(xué)信息學(xué)等學(xué)科而形成的一門(mén)嶄新的前沿學(xué)科。生物醫(yī)學(xué)信息技術(shù)的發(fā)展和應(yīng)用已成為解決現(xiàn)代生物醫(yī)學(xué)領(lǐng)域許多重大問(wèn)題的關(guān)鍵技術(shù)。該方向研究生歸口我校軟件學(xué)院和生物科學(xué)與技術(shù)學(xué)院共同培養(yǎng)管理。
3、能源系統(tǒng)工程:該方向是工業(yè)節(jié)能、建筑節(jié)能、新能源、新型動(dòng)力技術(shù)、能源管理、節(jié)能評(píng)價(jià)與信息科學(xué)等學(xué)科領(lǐng)域相互交叉形成的一門(mén)新興學(xué)科,旨在培養(yǎng)我國(guó)能源領(lǐng)域節(jié)能減排、能源管理、能源審計(jì)、能源評(píng)估、節(jié)能技術(shù)評(píng)價(jià)等工作的專業(yè)人才,為我國(guó)能源領(lǐng)域各相關(guān)單位儲(chǔ)備人才。該方向研究生歸口我校軟件學(xué)院和能源科學(xué)與工程學(xué)院共同培養(yǎng)管理。
4、金融風(fēng)險(xiǎn)與數(shù)據(jù)挖掘:該方向是根據(jù)國(guó)民經(jīng)濟(jì)及軟件產(chǎn)業(yè)發(fā)展的需要,緊密聯(lián)系我國(guó)國(guó)民經(jīng)濟(jì)和金融保險(xiǎn)業(yè)的發(fā)展趨勢(shì),充分發(fā)揮計(jì)算機(jī)技術(shù)與金融風(fēng)險(xiǎn)分析技術(shù)密切結(jié)合的特色,培養(yǎng)精通現(xiàn)代風(fēng)險(xiǎn)分析、控制與數(shù)據(jù)挖掘理論,掌握扎實(shí)的計(jì)算機(jī)、金融風(fēng)險(xiǎn)分析與數(shù)據(jù)挖掘技術(shù),具有運(yùn)用數(shù)據(jù)挖掘技術(shù)進(jìn)行金融風(fēng)險(xiǎn)分析、處理、評(píng)估及相關(guān)計(jì)算機(jī)軟件的應(yīng)用與開(kāi)發(fā)能力的高層次復(fù)合型人才。該方向研究生歸口我校軟件學(xué)院和數(shù)學(xué)科學(xué)與計(jì)算技術(shù)學(xué)院共同培養(yǎng)管理。
四、招生人數(shù)
本次計(jì)劃招收200人。
五、報(bào)名、考試及入學(xué)時(shí)間
(一)網(wǎng)上報(bào)名時(shí)間:2012年3月19日 ~ 4月20日。
報(bào)名系統(tǒng)地址:http://202.197.33.69/yjsbm,請(qǐng)報(bào)名考生按照要求填寫(xiě)本人真實(shí)信息,并上傳本人近期免冠登記電子照片,照片規(guī)格150×200像素(JPG格式)。網(wǎng)上報(bào)考信息不完整者不接受報(bào)名。
(二)現(xiàn)場(chǎng)報(bào)名:
1、報(bào)名時(shí)間:2012年4月21 ~ 22日。
2、報(bào)名地點(diǎn):中南大學(xué)軟件學(xué)院(鐵道校區(qū)電子樓107室-研究生工作辦公室)。
3、報(bào)名程序:
(1)提交下列材料進(jìn)行資格審查
①考生所在單位加蓋人事部門(mén)公章(必須)的報(bào)名資格審查表(一式二份,見(jiàn)附件); ②本科畢業(yè)證書(shū)原件和復(fù)印件(往屆生提供); ③學(xué)士學(xué)位證書(shū)原件和復(fù)印件(往屆生提供); ④本科學(xué)生證原件和復(fù)印件(應(yīng)屆生提供)。
⑤近期同底免冠一寸彩照4張(背面用鉛筆標(biāo)注考生姓名)。
以上5類材料請(qǐng)務(wù)必用檔案袋裝好,檔案袋正面標(biāo)注考生姓名、聯(lián)系電話?,F(xiàn)場(chǎng)
報(bào)名材料不完整者不接受報(bào)名。
(2)繳納報(bào)名考試費(fèi)320元。
4、考試時(shí)間:2012年5月5日。
5、入學(xué)時(shí)間:2012年秋季。
六、考試科目
1、綜合考試(200分):內(nèi)容包括數(shù)學(xué)、英語(yǔ)。參考書(shū)目:全國(guó)工程碩士專業(yè)學(xué)位教育指導(dǎo)委員會(huì)指定的復(fù)習(xí)資料《工程碩士專業(yè)學(xué)位研究生入學(xué)資格考試指南》(科學(xué)技術(shù)文獻(xiàn)出版社)和《工程碩士專業(yè)學(xué)位研究生入學(xué)考試考前輔導(dǎo)教程》(清華大學(xué)出版社)。
2、專業(yè)基礎(chǔ)考試(100分),按報(bào)考方向選一: ?軟件工程方向:軟件工程基礎(chǔ)。
?生物醫(yī)學(xué)信息技術(shù)方向:生物醫(yī)學(xué)信息技術(shù)(軟件工程基礎(chǔ)60%,普通生物學(xué)40%)?能源系統(tǒng)工程方向:能源系統(tǒng)工程(軟件工程基礎(chǔ)60%,傳熱學(xué)20%、工程熱力學(xué)20%)?金融風(fēng)險(xiǎn)與數(shù)據(jù)挖掘方向:專業(yè)綜合(軟件工程基礎(chǔ)60%,統(tǒng)計(jì)學(xué)基礎(chǔ)40%)。參考書(shū)目:
陳松喬 主編,《現(xiàn)代軟件工程》,清華大學(xué)出版社。陳閱增 主編,《普通生物學(xué)》,高等教育出版社。楊世銘 主編,《傳熱學(xué)》第三版,高等教育出版社。沈維道 主編,《工程熱力學(xué)》第三版,高等教育出版社。賈俊平主編,《統(tǒng)計(jì)學(xué)》第三版,中國(guó)人民大學(xué)出版社。
3、復(fù)試:前兩項(xiàng)筆試成績(jī)達(dá)到學(xué)校要求之后,參加學(xué)院組織的復(fù)試。復(fù)試內(nèi)容:專業(yè)綜合考試及面試。
參加2010年由國(guó)家統(tǒng)一組織的工程碩士專業(yè)學(xué)位研究生入學(xué)資格考試(GCT),總成績(jī)不低于150分(其中英語(yǔ)和數(shù)學(xué)單科成績(jī)不低于30分)的考生可持本人的GCT成績(jī)單申請(qǐng)免試數(shù)學(xué)和英語(yǔ)(現(xiàn)場(chǎng)報(bào)名時(shí)在軟件學(xué)院研究生辦公室提出書(shū)面申請(qǐng))。
七、學(xué)費(fèi)
人民幣3.6萬(wàn)元/全程(分兩學(xué)年交清,每次1.8萬(wàn)元)。
八、學(xué)制
彈性學(xué)制2~4年。根據(jù)實(shí)際情況安排在職學(xué)習(xí)形式,上課時(shí)間為節(jié)假日及雙休日。
九、主修課程
軟件工程方向:基礎(chǔ)英語(yǔ)、工程數(shù)學(xué)、自然辯證法、高級(jí)軟件開(kāi)發(fā)過(guò)程、軟件需求工程、面向?qū)ο笙到y(tǒng)分析與設(shè)計(jì)、軟件體系結(jié)構(gòu)、分布式數(shù)據(jù)庫(kù)系統(tǒng)、軟件項(xiàng)目管理、軟件能力成熟度模型、軟件測(cè)試技術(shù)、IT知識(shí)產(chǎn)權(quán)與法律、國(guó)際IT專業(yè)認(rèn)證等。
生物醫(yī)學(xué)信息技術(shù)方向:基礎(chǔ)英語(yǔ)、自然辯證法、軟件基礎(chǔ)、高級(jí)分子生物學(xué)、高級(jí)生物化學(xué)、高級(jí)細(xì)胞生物學(xué)、分子生物學(xué)技術(shù)、生物統(tǒng)計(jì)學(xué)、生物信息學(xué)、藥物信息學(xué)、科研設(shè)計(jì)與選題、生命科學(xué)技術(shù)前沿、生物醫(yī)藥新興產(chǎn)業(yè)、醫(yī)院信息系統(tǒng)與應(yīng)用、衛(wèi)生事業(yè)管理學(xué)、管理心理學(xué)、專題講座、現(xiàn)代人文護(hù)理、軟件工程等。
能源系統(tǒng)工程方向:基礎(chǔ)英語(yǔ)、自然辯證法、軟件基礎(chǔ)、高等傳熱學(xué)、高等工程熱力學(xué)、高等流體力學(xué)、能源系統(tǒng)工程、能源審計(jì)概論、現(xiàn)代熱工測(cè)控技術(shù)、能源評(píng)估技術(shù)、節(jié)能技術(shù)及評(píng)價(jià)、鍋爐及熱力系統(tǒng)專論、專題講座、軟件工程等。
金融風(fēng)險(xiǎn)與數(shù)據(jù)挖掘方向:基礎(chǔ)英語(yǔ)、高等工程數(shù)學(xué)、自然辯證法、金融工程、金融風(fēng)險(xiǎn)管理、應(yīng)用統(tǒng)計(jì)學(xué)、期權(quán)期貨及金融衍生產(chǎn)品、商業(yè)銀行管理、精算學(xué)、高級(jí)數(shù)據(jù)庫(kù)技術(shù)、軟件應(yīng)用與開(kāi)發(fā)、數(shù)據(jù)挖掘、軟件項(xiàng)目管理等。
十、學(xué)位授予
學(xué)生在規(guī)定年限之內(nèi)修滿培養(yǎng)方案劃所規(guī)定的學(xué)分,成績(jī)合格,完成學(xué)位論文并通過(guò)碩士學(xué)位論文答辯,經(jīng)學(xué)位評(píng)定委員會(huì)審核通過(guò)后,授予軟件工程碩士專業(yè)學(xué)位,頒發(fā)軟件工程碩士學(xué)位證書(shū)。
十一、項(xiàng)目特色
1、中南大學(xué)軟件學(xué)院是全國(guó)37所示范性軟件學(xué)院之一,擁有自主劃線招生的資格;
2、工程化特色鮮明:重在培養(yǎng)高層次、實(shí)用型、復(fù)合型、國(guó)際化人才,培養(yǎng)模式上更貼近行業(yè)需求;
3、國(guó)際化特色鮮明:國(guó)際師生互派、交流,國(guó)外名師來(lái)校講座,國(guó)際頂級(jí)IT企業(yè)技術(shù)支持;
4、課程體系靈活:與國(guó)內(nèi)外知名高校和頂級(jí)IT企業(yè)合作,借鑒國(guó)際上先進(jìn)教學(xué)方法,采用和開(kāi)發(fā)優(yōu)秀教學(xué)資源;
5、學(xué)習(xí)方式靈活:在職或脫產(chǎn)均可,彈性學(xué)制2~4年;
6、完成所有課程、考試合格、通過(guò)論文答辯者,由國(guó)家學(xué)位辦授權(quán)中南大學(xué)頒發(fā)軟件工程碩士學(xué)位證書(shū);
7、畢業(yè)生就業(yè)渠道及狀況良好,深受企事業(yè)單位歡迎。
十二、聯(lián)系信息
研究生院招生辦辦公地址:中南大學(xué)校本部三辦公樓3樓
聯(lián)系電話:0731-88876806、0731-88876474(傳真)
軟件學(xué)院辦公地點(diǎn):中南大學(xué)鐵道校區(qū)電子樓107室
聯(lián)系電話/傳真:0731-82539736
生物科學(xué)與技術(shù)學(xué)院辦公地點(diǎn):中南大學(xué)湘雅新校區(qū)后棟471室
聯(lián)系電話/傳真:0731-82650230
能源科學(xué)與工程學(xué)院辦公地點(diǎn):中南大學(xué)能源科學(xué)與工程學(xué)院208室
聯(lián)系電話:0731-88830282,***(陳老師)傳真:0731-8887986
3數(shù)學(xué)科學(xué)與計(jì)算技術(shù)學(xué)院辦公地點(diǎn):中南大學(xué)校本部南校區(qū)第二教學(xué)樓一樓辦公室
聯(lián)系電話:0731-8866017
1中南大學(xué)研究生院招生辦公室 中南大學(xué)軟件學(xué)院
2012年3月10日
附件:資格審查表
2012年在職人員攻讀碩士學(xué)位報(bào)考資格審查表
報(bào)考學(xué)校名稱:中南大學(xué)報(bào)考學(xué)位類別:工程碩士
注:
1、本表須由考生本人如實(shí)填寫(xiě),否則所產(chǎn)生的一切后果由考生本人負(fù)責(zé)。
2、學(xué)歷學(xué)位等相應(yīng)信息請(qǐng)一律按照所獲證書(shū)上內(nèi)容填寫(xiě)。如證書(shū)上號(hào)碼多于一個(gè),上表中各證書(shū)編號(hào)欄請(qǐng)?zhí)顚?xiě)注冊(cè)號(hào);如無(wú)注冊(cè)號(hào),請(qǐng)?zhí)顚?xiě)證書(shū)上的“證書(shū)編號(hào)”或“學(xué)校編號(hào)”等由發(fā)證院校(科研單位)編排的號(hào)碼。通過(guò)自學(xué)考試獲得畢業(yè)證書(shū)者,“畢業(yè)學(xué)?!闭?qǐng)?zhí)顚?xiě)相應(yīng)?。ㄊ校┳詫W(xué)考試委員會(huì)。
3、考生所在單位人事部門(mén)須對(duì)考生本人填寫(xiě)情況進(jìn)行審查確認(rèn)后簽署意見(jiàn),并在考生照片上加蓋人事部門(mén)公章。
4、此資格審查表連同相關(guān)材料一并報(bào)送有關(guān)招生單位,招生單位審核通過(guò)后存檔備查。