黄色在线观看视频-黄色在线免费看-黄色在线视频免费-黄色在线视频免费看-免费啪啪网-免费啪啪网站

首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證
華為認證 | Java認證
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平
駕駛員 | 網絡編輯
衛生資格 | 執業醫師 | 執業藥師 | 執業護士
會計從業資格考試會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師
注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師
質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師
設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師
城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
您現在的位置: 考試吧(Exam8.com) > 軟件水平考試 > 計算機專業英語 > 正文

A Two-phase Process for Software Architecture Improvement

Recipe 1:

  1. Rename the files of unit U so that they get the proper prefix.
  2. Move the files of unit U to the directory (subsystem) to which the archiving module belongs.
  3. Change all import statements in all the units according to the newly created name of the header file of unit U.
  4. Adapt the build description (change file names, adapt include paths, etcetera).
  It is possible to modify the software by hand by following the recipe, but this is a tedious and error-prone task. For large systems, the build description may consist of dozens of makefiles, which must all be analysed and possibly adapted. Moreover, worst case 1518 units may need to be adapted to include the proper import statements. For this relatively simple architecture transformation we already need tools to change the software.

  Idea 2:

  In legacy systems, functions may be organised in an arbitrary unit. During construction, a developer is sometimes pressured by time constraints to put a specific function in one unit while semantically it would fit better in another unit. The architect decides to move the function to the correct unit, say function F in unit U to unit X. The detailed recipe for applying this idea to the software depends heavily on for instance the implementation languages. Let us again take the programming language C as an example, then more specifically the recipe contains the following entries.

  Recipe 2:

  1. Move the declaration and definition of function F to the header file and body file of unit X respectively.
  2. Change the #include statements in files that use function F.
  3. Adapt the build description files.

  Referring to step 1 in the recipe: moving the function declaration and definition is not trivial, and the types used in the function have to be within the scope of the new location, which means relocating type definitions or adding additional #include statements. The same holds for global variables and macros that are being used. Although idea 2 is similar to idea 1 (the same change but at a different level of abstraction) the recipes are different. Therefore we must consider these changes to be different. In general we can say that changes are dependent on the applied level of abstraction.

  Idea 3:

  Several units in the software contain identical functions or so-called function clones. The architect considers removing all but one, and changing the use relation of the units accordingly. The architect uses metrics for cohesion and coupling to determine which of the function clones should remain in the software. Once he or she has determined which function is the best choice (by trying one and using backtracking before trying the next), the following recipe can be executed.

  Recipe 3:

  1. Change the #include statements in the files that use one of the functions that will be removed.
  2. Remove the function-clones.
  3. Adapt the build description.

  The impact analysis of a change of this kind has been exercised and implemented in the Abstract-level Re-clustering Tool (ART [Bro99]) developed at Philips Research, which calculates the impact of clone elimination and re-clustering based on the cohesion and coupling metrics.
  In the case of embedded systems we should also consider the target system files (executables, dynamic libraries, scripts). These files are generated during construction and copied to the appropriate location on the target (for instance an EPROM). In a first experiment we decided to keep the target executables the same, i.e. not to change the communication protocols between the executables (which may occur if the architect moves a function from one target to another). In a next experiment, it is possible to also model the execution view of the systems, including the communication, after which the impact of such changes can also be viewed.

  In this example we have given three ideas that are of interest to an architect after inspecting the views of the model (like the one presented in Figure 3). One can also consider more automation by introducing algorithms that try several changes using architectural metrics. Architectural metrics also abstract from the details of the system and can indicate some quality aspect of the system at some level of abstraction.

上一頁  1 2 3 4 5 6 7 8 9 10 下一頁
文章責編:ak47  
看了本文的網友還看了
·計算機英語因特網(中英對照)  (2007-6-21 8:35:31)
·常見網址英文縮寫的含義匯編表  (2007-6-21 11:33:47)
·計算機專業英語名詞解釋大匯總  (2007-1-25 11:39:39)
·E-mail地址中的符號@是什么意思  (2007-1-25 11:32:20)
·了解到底什么是多媒體  (2007-1-25 11:29:34)
·A range of grid-related questions  (2007-1-25 11:26:39)
文章搜索
軟件水平考試欄目導航
版權聲明:如果軟件水平考試網所轉載內容不慎侵犯了您的權益,請與我們聯系800@exam8.com,我們將會及時處理。如轉載本軟件水平考試網內容,請注明出處。
主站蜘蛛池模板: 国产免费一级视频 | 天天操丝袜 | 日韩手机视频 | 不卡国产 | 99精品欧美 | 中文字幕一区二区三 | 欧美精品在线免费观看 | 一级做性色a爰片久久毛片免费 | 一本高清在线视频 | 国产一区二三区 | 日韩午夜大片 | 亚洲精品高清国产麻豆专区 | 精品久久久久久综合网 | 曰批全过程免费视频播放网站 | 99免费 | 色综合在 | 2022精品福利在线小视频 | 成人高清视频在线观看 | 三级黄a | 亚洲一区日韩二区欧美三区 | 成人免费一区二区三区在线观看 | 九九热线有精品视频99 | 成人免费观看一区二区 | 国产精品视频永久免费播放 | 天天舔夜夜操 | 亚洲tube | a级大片免费观看 | 中文字幕15页 | 国产高清一区二区三区免费视频 | 九九九日产 | 久草久草久草久草 | 99久久999久久久综合精品涩 | 又粗又黄又猛又爽大片免费 | 麻豆大豆行情一区 | 亚洲国产中文字幕 | 中国一级一级全黄 | 天天操天天摸天天爽 | 国产91精品一区二区视色 | 成人短视频在线在线观看 | 激情小视频网站 | 亚洲熟乱 |