人要有夢(mèng)想

          為夢(mèng)想努力

          常用鏈接

          統(tǒng)計(jì)

          j2ee

          最新評(píng)論

          軟件架構(gòu)師

          軟件架構(gòu)師是什么?需要什么樣的知識(shí)體系?如何成為優(yōu)秀的軟件架構(gòu)師呢?

          第一個(gè)問(wèn)題:
          軟件架構(gòu)師一詞應(yīng)該是對(duì)應(yīng)系統(tǒng)架構(gòu)師,都是架構(gòu)師,但側(cè)重不同。在4+1視圖中,我覺(jué)得如果把架構(gòu)師分為這兩種的話,軟件架構(gòu)師應(yīng)該是站在邏輯視圖和開(kāi)發(fā)視圖的角度,而系統(tǒng)架構(gòu)師則更多的是過(guò)程視圖和物理視圖。當(dāng)然,這兩個(gè)角色就象是人的兩個(gè)眼睛,缺少一個(gè)都會(huì)定位不準(zhǔn)確,容易是系統(tǒng)目標(biāo)偏離。

          當(dāng)然了,現(xiàn)實(shí)世界中,一般這兩中角色集中在一個(gè)人身上體現(xiàn)出來(lái),或者一個(gè)小組。很多公司都不設(shè)置此類職位;有的公司則分工很細(xì)。

          第二個(gè)問(wèn)題:
          知識(shí)體系不好說(shuō),只說(shuō)重點(diǎn)的吧。
          軟件架構(gòu)師的職責(zé)是把需求轉(zhuǎn)換為軟件世界的模型。4+1視圖中以u(píng)se case作為核心,其中功能性需求以及部分非功能性需求會(huì)被軟件架構(gòu)師通過(guò)分析和設(shè)計(jì),映射為各種軟件設(shè)計(jì)模型。從OOA/OOD角度說(shuō),use case 在這個(gè)過(guò)程中是要轉(zhuǎn)換為各種UML,其中類圖,序列圖,狀態(tài)圖是最常用到的。這個(gè)轉(zhuǎn)換過(guò)程是需要智慧的,use case是目的,各種OO的原則是指導(dǎo),設(shè)計(jì)模式是經(jīng)驗(yàn),靈活運(yùn)用是能力。里面蘊(yùn)涵了設(shè)計(jì)的美感,我覺(jué)得這個(gè)過(guò)程是衡量一個(gè)軟件架構(gòu)師的最重要的指標(biāo)。

          當(dāng)然這個(gè)過(guò)程是迭代和反饋的,我覺(jué)得概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)只是思考同一個(gè)問(wèn)題的粒度不同而已。

          另外就是我們要熟悉語(yǔ)言,詳細(xì)設(shè)計(jì)是要轉(zhuǎn)換為代碼的,而且跟語(yǔ)言是有關(guān)系的。語(yǔ)言比如java/c++等,詳細(xì)設(shè)計(jì)的模型是有很多不同的。就需要軟件架構(gòu)師有過(guò)這個(gè)過(guò)程,并且是非常良好的映射。

          除了語(yǔ)言就是要熟悉某個(gè)技術(shù)領(lǐng)域,比如J2EE/DOTnet.從J2ee來(lái)說(shuō),可能需要了解比如jsp/servlet/ejb/jndi/jta/jdbc等。還需要了解各種web framework,o/rmapping,ioc/aop容器等等。還有的就是一些技術(shù)組件和業(yè)務(wù)組件,不如workflow,rules engine等等。另外比如各種database.熟悉這些東西的目的,是把這些軟件和組件合理并且有機(jī)的組織起來(lái)成為一個(gè)開(kāi)發(fā)的架構(gòu)。這個(gè)過(guò)程是需要?jiǎng)?chuàng)造力和想象力的。可能很多人認(rèn)為這個(gè)地方正是軟件架構(gòu)師體現(xiàn)能力的地方。

          第三個(gè)問(wèn)題:
          我不是很清楚,但我認(rèn)為意志和想象力能夠使每個(gè)有目標(biāo)的人達(dá)到彼岸。




          msn:gdq123@hotmail.com

          posted on 2006-05-30 13:31 人要有夢(mèng)想 閱讀(5638) 評(píng)論(1)  編輯  收藏 所屬分類: software architecture

          評(píng)論

          # re: 軟件架構(gòu)師 2006-11-12 15:00

          一般需要經(jīng)歷多少時(shí)間才可以修煉成一位架構(gòu)師呢?  回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 郑州市| 彭州市| 广平县| 昌宁县| 华阴市| 垫江县| 鹤岗市| 中西区| 长岭县| 文山县| 嘉兴市| 和政县| 中超| 香河县| 东方市| 谢通门县| 饶阳县| 沧源| 宁南县| 鹤壁市| 治县。| 衡南县| 天台县| 张家川| 玉门市| 大渡口区| 东莞市| 兰西县| 称多县| 枣阳市| 安溪县| 盐池县| 沈丘县| 金平| 莆田市| 临洮县| 镇赉县| 红安县| 志丹县| 海晏县| 专栏|