商品簡介
軟件產品是軟件企業和技術持續發展的關鍵。軟件產品架構師是軟件產品得以發展的核心角色。本書全面介紹軟件產品架構師工作所需要的各方面的知識和技能,包括軟件產品特性、管理、日常工作任務、責任和能力要求、常見的架構設計、如何與各方面人員協作等。大部分內容在傳統軟件開發書籍中沒有涉及。本書可供軟件產品架構師日常工作參考,幫助初、中級軟件開發人員規劃職業發展,供本科生和研究生瞭解信息領域高級技術人員的工作要求以進行職業規劃,也可供軟件企業管理人員瞭解高級軟件技術人員應該具有的水平。·
作者簡介
賴有賢,1992年以《大唐遊記》、《真命天子》進軍漫畫界,隨後以連環漫畫作品《小和尚》連載七年創造了臺灣週刊最長連載紀錄,單行本更授權至法國、荷蘭、比利時等歐洲國家。·
名人/編輯推薦
《軟件產品架構師手記》可供軟件產品架構師日常工作參考,幫助初、中級軟件開發人員規劃職業發展,供本科生和研究生了解信息領域高級技術人員的工作要求以進行職業規劃,也可供軟件企業管理人員了解高級軟件技術人員應該具有的水平。
目次
PART 1 軟件產品特性01 你在開發軟件產品嗎02 如何評判軟件產品的價值03 產品要實現用戶需求嗎04 為什麼說非功能特性決定產品成功與否05 為什麼說軟件產品是信息系統的高級階段06 軟件產品為什麼需要支持定制和二次開發07 軟件產品如何支持移動設備08 什麼是軟件產品服務化09 硬件化對軟件產品有什麼影響10 為什麼說維護和技術支持工作會影響軟件產品的命運11 為什麼說軟件產品有生命力12 雲計算對軟件產品有什麼影響PART 2 職責與任務13 產品架構師的主要任務是什麼14 軟件產品的功能和架構用什麼形式說明15 怎樣規劃和評選產品新功能16 如何編寫和審核用例17 如何設計軟件產品的操作界面18 設計產品升級需要考慮哪些問題19 怎樣設計產品族和衍生產品20 如何領導開發產品原型21 如何估計開發工作量22 如何評價和設計產品質量23 產品需要符合標準還是創造標準24 如何成為危機中的英雄而不是犧牲品25 如何將非產品軟件產品化PART 3 產品管理26 如何為產品指明方向27 好產品為什麼需要好的商業模式28 如何發現產品市場潛力29 軟件產品為何要支持多種收費方法30 如何爭取更多的合作夥伴31 為什麼產品的發佈要早於上市日期32 軟件產品成本與收入有什麼特殊關係33 軟件產品文檔為什麼很重要34 如何瞭解企業產品譜PART 4 產品架構設計35 如何表示軟件產品架構36 如何設計產品集成架構37 如何平衡架構與功能的關係38 如何設計產品合併的架構39 如何設計封閉軟件產品架構40 如何設計開放軟件產品架構41 軟件產品安裝結構有什麼作用42 軟件產品為什麼要支持多個平臺43 如何統計軟件使用量44 如何設計軟件產品兼容性45 如何設計聰明軟件產品的架構46 如何設計軟件產品安全性47 如何制定架構設計原則PART 5 與各個組織和人員合作48 軟件企業的組織結構有什麼特點49 產品架構師在企業中處在什麼地位50 架構師如何處理與主任程序員的關係51 架構師如何與開發/測試部門合作52 架構師如何與研究部門合作53 如何與客戶合作54 如何與外包公司打交道55 如何與技術公司合作56 如何與產品經理合作57 如何與高級經理合作58 如何與界面設計師合作PART 6 知識產權59 為什麼知識產權對架構師有特別意義60 軟件產品專利都有什麼內容61 如何評估一個想法的專利價值62 需要瞭解哪些版權和標識的知識63 如何產生產品創新的想法64 為什麼有些好想法不適合申請專利65 如何創造和保護商業和技術秘密66 如何證明企業和自己的知識產權PART 7 知識與能力67 如何總結和設計知識能力體系68 為什麼總提算法和數據結構69 為什麼要使用編程框架70 如何進行軟件的國際化/本地化71 如何做一個程序解釋器72 如何設計和實現軟件產品界面73 如何讓任何人都可以使用軟件產品74 如何設計不兼容架構的產品升級75 網絡發展對軟件產品有什麼影響76 什麼是信息系統架構77 軟件開發過程的發展趨勢是什麼78 如何利用團隊開發工具進行團隊開發79 如何發現軟件產品的質量80 如何改進軟件產品質量81 如何充分利用開源軟件並且避免潛在問題82 應該如何瞭解競爭產品和企業83 如何從CMM歷史看到其實際價值84 如何從成熟度判斷企業水平和發展能力85 如何進行軟件產品的風險評估和處理PART 8 社會活動86 為什麼參加社會活動對個人發展有重要意義87 如何參與企業的市場活動88 如何參與組織會議和論壇89 如何參加組織企業內部社會活動90 如何參與客戶交流活動91 如何參與大學交流活動92 發表文章和出版書對職業發展有什麼作用PART 9 職業發展93 為什麼軟件技術人員的職業生命不止30歲94 從軟件設計師到軟件架構師的發展有什麼特點95 為什麼說職業是發展和穩定的平衡96 如何更好地管理時間97 如何發現、創造和解決問題98 如何領導變革99 如何利用集體大樹的蔭涼並躲開陰影100 為什麼說利用工具是職業發展的重要能力101 為什麼說“產品是某人的孩子”是忽悠102 為什麼說態度決定一切103 如何找到適合自己風格的企業·
書摘/試閱
04 為什么說非功能特性決定產品成功與否
常言說“功夫在詩外”。軟件產品的功夫表現在功能之外,體現在非功能特性上。很多產品由于非功能特性和問題而成功或失敗。非功能特性的意義
軟件產品使用戶通過操作完成某種信息處理功能。軟件在實現功能操作時的各種前提條件和操作時的各種特性屬于非功能特性。非功能特性對用戶的購買行為和使用滿意度有重大影響。某些非功能特性需求對技術和開發成本是巨大的挑戰。任何軟件產品在計劃、開發和銷售時都要綜合考慮用戶需求、成本和市場反饋,仔細計劃非功能特性,保證產品滿足市場需求和企業成本管理兩方面要求。
非功能特性包括使用功能的條件和特性。使用條件包括軟件產品運行的平臺、資源要求、全球化、可用性(Accessibility)、與其他軟件的集成等。使用特性包括性能、可靠性、可服務/維護性、出錯恢復、易用性。使用特性評價有客觀數量和主觀感受兩種衡量方法。
非功能特性的要求和目標與市場、政府和企業規范有密切關系。某個非功能特性達不到要求可能影響產品市場、收入和長遠發展,使產品不能投入市場甚至產生客戶訴訟而給企業造成巨大損失。為了實現某個非功能特性的目標可能需要很多設計和編碼的成本。良好的非功能特性可以使產品在市場上有很大競爭力。因此在產品計劃、實現和銷售中一般需要尋找真正影響客戶使用的非功能特性和指標。