連山科技

員工天地

2022-08-12?

軟件工程設(shè)計(jì)培訓(xùn)心得體會(huì)

分享到:

7月27日,我參加了公司研發(fā)中心舉辦的“軟件工程設(shè)計(jì)”主題培訓(xùn)。此次培訓(xùn),不但讓我從理論上掌握軟件工程設(shè)計(jì),還從不同的實(shí)例,很好地結(jié)合了理論和實(shí)踐。總的來(lái)說(shuō),是學(xué)到了很多東西,也將我平常工作中的內(nèi)容堆放到這整個(gè)體系中,讓我的工作更具有邏輯性。所以說(shuō),在我看來(lái)“軟件工程設(shè)計(jì)”培訓(xùn)與其說(shuō)是一個(gè)主題培訓(xùn),不如說(shuō)是一種思想培訓(xùn)。上一次培訓(xùn)“軟件產(chǎn)品設(shè)計(jì)”是軟件開(kāi)發(fā)過(guò)程的分析階段,而“軟件工程設(shè)計(jì)”是軟件開(kāi)發(fā)過(guò)程的解析階段。分析與解析繼續(xù)遞歸地用在軟件產(chǎn)品設(shè)計(jì)和軟件工程設(shè)計(jì)階段的內(nèi)部,繼續(xù)分解內(nèi)部活動(dòng),以詳細(xì)地描述設(shè)計(jì)的過(guò)程。兩者結(jié)合成為了一個(gè)能解決問(wèn)題的思想集合。

此次的“軟件工程設(shè)計(jì)”培訓(xùn)是接上次“軟件產(chǎn)品設(shè)計(jì)”培訓(xùn)來(lái)指導(dǎo)我們工作的,軟件產(chǎn)品設(shè)計(jì)是為滿(mǎn)足客戶(hù)的需要和要求,而指定軟件的特點(diǎn)、功能和界面的活動(dòng);軟件工程設(shè)計(jì)是為滿(mǎn)足產(chǎn)品的需求說(shuō)明,而指定軟件的系統(tǒng)、子系統(tǒng)以及這些系統(tǒng)的構(gòu)件和工作原理的活動(dòng)。在軟件產(chǎn)品設(shè)計(jì)中已經(jīng)形成了SRS,那么在軟件工程設(shè)計(jì)階段需要分析SRS,做架構(gòu)設(shè)計(jì)和詳細(xì)設(shè)計(jì),所以“工程設(shè)計(jì)分析活動(dòng)主要是研究SRS和產(chǎn)品設(shè)計(jì)模型,并生成新的問(wèn)題模型?!蔽覍W(xué)習(xí)到對(duì)工程設(shè)計(jì)分析最有用的動(dòng)態(tài)模型是用例模型。每個(gè)用例和用例說(shuō)明,都展示了系統(tǒng)對(duì)外提供的功能及其過(guò)程的交互;對(duì)工程設(shè)計(jì)分析最有用的面向?qū)ο箪o態(tài)模型是分析類(lèi)模型,又叫概念模型。概念模型主要描述系統(tǒng)的內(nèi)部實(shí)體,實(shí)體屬性、行為以及實(shí)體間的關(guān)系。以前寫(xiě)詳細(xì)設(shè)計(jì)時(shí)只知道寫(xiě)這個(gè)內(nèi)容,卻不知道這些專(zhuān)有名詞,這也是新學(xué)到的專(zhuān)有名詞和概念,一說(shuō)這些就頗顯高大上。我們寫(xiě)的文檔中,實(shí)現(xiàn)類(lèi)模型表示軟件系統(tǒng)中的類(lèi),包括部分或全部設(shè)計(jì)類(lèi)模型不考慮的細(xì)節(jié)。類(lèi)圖可以用于實(shí)現(xiàn)類(lèi)建模,這些模型指導(dǎo)編程人員編寫(xiě)代碼。建立概念模型的目標(biāo)是理解并記錄問(wèn)題的結(jié)構(gòu),而設(shè)計(jì)類(lèi)和實(shí)現(xiàn)類(lèi)建模的目標(biāo)是指定軟件解決方案的結(jié)構(gòu)。

培訓(xùn)中講到在產(chǎn)品設(shè)計(jì)過(guò)程中,設(shè)計(jì)人員把整個(gè)程序作為一個(gè)黑匣子來(lái)對(duì)待,僅僅指定其外部的形式和行為。在體系結(jié)構(gòu)設(shè)計(jì)過(guò)程中,設(shè)計(jì)人員“打開(kāi)”程序黑匣子,確定其高級(jí)結(jié)構(gòu),并指定其主要部件和這些部件的相互作用,其實(shí)也是我們所寫(xiě)的概要設(shè)計(jì)中的內(nèi)容。在詳細(xì)設(shè)計(jì)中,設(shè)計(jì)人員打開(kāi)各個(gè)主要部件,并指定其內(nèi)部結(jié)構(gòu)和行為。根據(jù)程序的大小,詳細(xì)設(shè)計(jì)過(guò)程中還可能有其他需要考慮的黑匣子層次。這也就是軟件工程設(shè)計(jì)階段主要工作。在工程設(shè)計(jì)解析過(guò)程中,將生成并評(píng)估設(shè)計(jì)方案。學(xué)到基本設(shè)計(jì)原則:陳述哪些特征使設(shè)計(jì)能夠更好地滿(mǎn)足風(fēng)險(xiǎn)承擔(dān)者需要和要求的原則。構(gòu)造原則的分類(lèi)有模塊性原則(在不同上下文中,在該層次結(jié)構(gòu)的,任何非樹(shù)葉層次上的單元,都可以被認(rèn)為是設(shè)計(jì)模塊。模塊是由更小的部件組成的程序單元)、可實(shí)現(xiàn)性原則(通過(guò)為判斷設(shè)計(jì)能否低成本、短時(shí)間并且成功地被構(gòu)建提供標(biāo)準(zhǔn),幫助實(shí)現(xiàn)設(shè)計(jì)的經(jīng)濟(jì)性)和美觀性原則(這里說(shuō)的時(shí)程序設(shè)計(jì)美觀,具有藝術(shù),不是說(shuō)界面的)。

培訓(xùn)中講到的“體系結(jié)構(gòu)設(shè)計(jì)與產(chǎn)品設(shè)計(jì)和詳細(xì)設(shè)計(jì)之間并沒(méi)有清晰界線”和“體系結(jié)構(gòu)設(shè)計(jì)和詳細(xì)設(shè)計(jì)之間的界線更為模糊”,其實(shí)這也是去我在實(shí)際工作中和學(xué)過(guò)軟考之后,所了解的知識(shí),有的項(xiàng)目會(huì)有概要設(shè)計(jì)和詳細(xì)設(shè)計(jì),但是有的就是總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)亦或只有詳細(xì)設(shè)計(jì)文檔,培訓(xùn)中講的這些都是非常值得肯定的!體系結(jié)構(gòu)設(shè)計(jì)中既需要靜態(tài)也需要?jiǎng)討B(tài)的設(shè)計(jì)和表示,描述和表示方法也有不少,有結(jié)構(gòu)化的,有面向?qū)ο蟮?。常用的UML及體系架構(gòu)模型框架(DODAF)。用例需要場(chǎng)景,實(shí)例化用例的場(chǎng)景是參與者與產(chǎn)品的交互作用,但通常意義上的場(chǎng)景可以是任何個(gè)體與產(chǎn)品之間的交互作用。培訓(xùn)給我們講了銀行取錢(qián)的場(chǎng)景和實(shí)例,通俗易懂。

在培訓(xùn)中講的詳細(xì)設(shè)計(jì)中,詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)之間的界線也是模糊的。在詳細(xì)設(shè)計(jì)期間,設(shè)計(jì)人員要指定類(lèi)職責(zé)、類(lèi)屬性、類(lèi)操作、對(duì)象交互作用、對(duì)象狀態(tài)、狀態(tài)變化、進(jìn)程和進(jìn)程同步。編程人員要選擇控制結(jié)構(gòu),程序?qū)嶓w的名稱(chēng)、基本類(lèi)型、參數(shù)傳遞機(jī)制和編程風(fēng)格,這些都是我們做軟件詳細(xì)設(shè)計(jì)文檔時(shí)所要體現(xiàn)的,培訓(xùn)給我們大概總結(jié)了一下。最后學(xué)到了培訓(xùn)總結(jié)的三行話:體系結(jié)構(gòu)設(shè)計(jì),體系結(jié)構(gòu)風(fēng)格很重要;詳細(xì)設(shè)計(jì)的中級(jí)設(shè)計(jì),設(shè)計(jì)模式很重要;詳細(xì)設(shè)計(jì)的低級(jí)設(shè)計(jì),算法與數(shù)據(jù)結(jié)構(gòu)很重要!總之,此次培訓(xùn)讓我受益匪淺!

研發(fā)中心:崔月

上一篇:?
下一篇: ?