人教口語(yǔ)app系統(tǒng)軟件技術(shù)委托開(kāi)發(fā)項(xiàng)目投標(biāo)方案(技術(shù)方案)_第1頁(yè)
人教口語(yǔ)app系統(tǒng)軟件技術(shù)委托開(kāi)發(fā)項(xiàng)目投標(biāo)方案(技術(shù)方案)_第2頁(yè)
人教口語(yǔ)app系統(tǒng)軟件技術(shù)委托開(kāi)發(fā)項(xiàng)目投標(biāo)方案(技術(shù)方案)_第3頁(yè)
人教口語(yǔ)app系統(tǒng)軟件技術(shù)委托開(kāi)發(fā)項(xiàng)目投標(biāo)方案(技術(shù)方案)_第4頁(yè)
人教口語(yǔ)app系統(tǒng)軟件技術(shù)委托開(kāi)發(fā)項(xiàng)目投標(biāo)方案(技術(shù)方案)_第5頁(yè)
已閱讀5頁(yè),還剩187頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

目錄TOC\o"1-2"\h\u12985第一章、生產(chǎn)研發(fā)部分 223588第一節(jié)、項(xiàng)目需求理解 219935第二節(jié)、方案整體設(shè)計(jì) 4422570第三節(jié)、系統(tǒng)功能 5424195第四節(jié)、系統(tǒng)性能 7220671第二章、項(xiàng)目組織管理 12319302第一節(jié)、項(xiàng)目角色與職責(zé) 123973第二節(jié)、項(xiàng)目進(jìn)度計(jì)劃 12819511第三節(jié)、項(xiàng)目管理方案 1327691第三章、售后服務(wù) 16526504第一節(jié)、售后服務(wù)方案 16519860第二節(jié)、運(yùn)行保障體系 1705523第三節(jié)、培訓(xùn)方案 17418977第四節(jié)、知識(shí)轉(zhuǎn)移 180

第一章、生產(chǎn)研發(fā)部分第一節(jié)、項(xiàng)目需求理解1.系統(tǒng)功能性需求分析(1)功能劃分本次開(kāi)發(fā)任務(wù)對(duì)如下功能模塊進(jìn)行功能的新增和調(diào)整:注冊(cè)登錄業(yè)務(wù)流程重構(gòu)、賬號(hào)的數(shù)據(jù)操作權(quán)限調(diào)整、頁(yè)面的優(yōu)化和兼容性調(diào)整、支付優(yōu)化、會(huì)員策略調(diào)整、視頻音頻課下架開(kāi)關(guān)、單詞增加關(guān)聯(lián)詞組、教輔綁定改版。(2)功能描述1、注冊(cè)登錄業(yè)務(wù)流程重構(gòu)應(yīng)用場(chǎng)景針對(duì)新用戶,用戶在進(jìn)行賬號(hào)注冊(cè)時(shí),強(qiáng)制綁定手機(jī)號(hào);針對(duì)老用戶,如果沒(méi)有綁定過(guò)手機(jī)號(hào)的用戶,進(jìn)入APP時(shí),需要彈窗提示用戶去進(jìn)行手機(jī)號(hào)綁定,才可以使用APP功能;需求分析需求實(shí)現(xiàn)用戶注冊(cè)時(shí)選擇第三方登錄,進(jìn)入綁定手機(jī)號(hào)頁(yè)面;2、綁定手機(jī)號(hào)頁(yè)面,“跳過(guò)”按鈕去掉,強(qiáng)制用戶進(jìn)行手機(jī)號(hào)綁定;歷史登錄賬號(hào)應(yīng)用場(chǎng)景用戶可以通過(guò)歷史登錄賬號(hào),查看登錄過(guò)人教口語(yǔ)APP的全部賬號(hào);需求分析在“我的”頁(yè)面新增歷史登錄賬號(hào)功能;需求實(shí)現(xiàn)在“我的”頁(yè)面新增“歷史登錄賬號(hào)”功能欄,點(diǎn)擊進(jìn)入歷史登錄賬號(hào)頁(yè)面,可查看歷史登錄賬號(hào)列表,顯示歷史登錄賬號(hào)和對(duì)應(yīng)登錄設(shè)備;游客賬號(hào)取消應(yīng)用場(chǎng)景針對(duì)新用戶進(jìn)入APP的賬號(hào)必須要先走注冊(cè)登錄流程,APP不在支持游客賬號(hào);針對(duì)存在注冊(cè)賬號(hào)和游客賬號(hào)兩種權(quán)限的老用戶,進(jìn)行賬號(hào)數(shù)據(jù)的合并;需求分析游客賬號(hào)取消;需求實(shí)現(xiàn)不提供游客查看功能,關(guān)閉游客賬號(hào)權(quán)限,進(jìn)入APP必須注冊(cè);根據(jù)登錄設(shè)備查找歷史賬號(hào)應(yīng)用場(chǎng)景根據(jù)用戶登錄端口的不同,管理后臺(tái)需實(shí)現(xiàn)可查看登錄賬號(hào)所使用的設(shè)備,并且通過(guò)用戶的登錄設(shè)備可查詢,此設(shè)備歷史登錄過(guò)的賬號(hào);需求分析需求實(shí)現(xiàn)實(shí)現(xiàn)賬號(hào)、設(shè)備雙向查找;注銷賬號(hào)驗(yàn)證應(yīng)用場(chǎng)景在用戶注銷賬號(hào)時(shí),增加手機(jī)驗(yàn)證功能,需要用戶發(fā)送并正確填寫驗(yàn)證碼,才可以注銷賬號(hào);需求分析注銷賬號(hào),增加手機(jī)驗(yàn)證功能;需求實(shí)現(xiàn)用戶進(jìn)入注銷賬號(hào)頁(yè),點(diǎn)擊“確認(rèn)注銷”按鈕后,增加手機(jī)驗(yàn)證功能;VIP相關(guān)調(diào)整應(yīng)用場(chǎng)景我的頁(yè)面,非會(huì)員不顯示VIP標(biāo)識(shí);VIP頁(yè)面,調(diào)整非會(huì)員的VIP卡片;需求分析頁(yè)面樣式調(diào)整;需求實(shí)現(xiàn)我的頁(yè)面,非會(huì)員不顯示VIP標(biāo)識(shí);VIP頁(yè)面,調(diào)整非會(huì)員的VIP卡片;關(guān)于我們應(yīng)用場(chǎng)景刪除客服相關(guān)文案;需求分析頁(yè)面樣式調(diào)整;需求實(shí)現(xiàn)刪除客服相關(guān)文案;兼容性問(wèn)題ipad13單詞展示的兼容問(wèn)題,android首頁(yè)和我的頁(yè)面兼容問(wèn)題,大字體兼容問(wèn)題;買錯(cuò)課本優(yōu)化在購(gòu)買課本時(shí),新增新手引導(dǎo)的引導(dǎo)頁(yè),降低用戶買錯(cuò)課本的操作,同時(shí)考慮到用戶交互的友好性,允許用戶跳過(guò);針對(duì)買錯(cuò)課本的用戶,通過(guò)后臺(tái)配置支持策略,用戶可查看買錯(cuò)課本后,APP支持的對(duì)應(yīng)策略,進(jìn)行對(duì)應(yīng)操作;支付優(yōu)化單科、會(huì)員、包月會(huì)員鑒權(quán)流程與權(quán)限時(shí)間調(diào)整,優(yōu)化前后端校驗(yàn)機(jī)制;帳號(hào)歷史權(quán)限、歷史訂單記錄;定時(shí)任務(wù)新增報(bào)警機(jī)制,增加執(zhí)行日志,代碼優(yōu)化;客戶端訂單與權(quán)限合并,前后端權(quán)限一致。增強(qiáng)客戶端訂單可讀性,增加兌換碼、激活碼訂單、管理員授權(quán)內(nèi)容;訂單權(quán)限校驗(yàn)優(yōu)化,異常訂單處理流程(自動(dòng)續(xù)費(fèi)、訂單期間無(wú)權(quán)限情況);11、包月會(huì)員策略調(diào)整到期短信提示功能,微信續(xù)費(fèi)簽約,1天內(nèi)未完成支付發(fā)送短息提醒,超X天未完成支付則解約;微信續(xù)費(fèi)權(quán)限延時(shí)2天(不疊加),蘋果續(xù)費(fèi)新增過(guò)渡期;增加解約策略:注銷賬號(hào)自動(dòng)解約,包月會(huì)員購(gòu)買會(huì)員產(chǎn)品時(shí)詢問(wèn)是否解約。新增解約入口;客戶端新增簽約狀態(tài),后臺(tái)優(yōu)化簽約狀態(tài)和記錄;鑒權(quán)流程及權(quán)限時(shí)間調(diào)整;12、視頻音頻課下架開(kāi)關(guān)新用戶無(wú)法看到入口;老用戶可査看入口,不可購(gòu)買;13、單詞增加關(guān)聯(lián)詞組客戶端增加關(guān)聯(lián)詞組模塊、如近義詞、反義詞、相關(guān)短語(yǔ)等。后臺(tái)對(duì)單詞內(nèi)容增加詞組字段及相關(guān)編輯功能。例句支持多個(gè)展示;14、教輔綁定改版教輔首次綁定、更換改版;教輔分冊(cè)次統(tǒng)計(jì)埋點(diǎn),記錄綁定數(shù)據(jù);針對(duì)上述需求,首先需要經(jīng)雙方協(xié)調(diào),形成《需求調(diào)研計(jì)劃》及《需求調(diào)研大綱》,確定準(zhǔn)備工作、需求調(diào)研的內(nèi)容、方法方式以及人員和日程安排等內(nèi)容,經(jīng)雙方同意后按此計(jì)劃開(kāi)始調(diào)研。調(diào)研正式開(kāi)始前項(xiàng)目開(kāi)發(fā)組應(yīng)檢查所有必要的準(zhǔn)備工作已經(jīng)圓滿完成。項(xiàng)目開(kāi)發(fā)組根據(jù)調(diào)研中系統(tǒng)實(shí)際技術(shù)需求和各個(gè)子系統(tǒng)的業(yè)務(wù)需求,編寫并向工程領(lǐng)導(dǎo)小組提交符合CMMILEVEL3規(guī)范要求的《系統(tǒng)需求分析報(bào)告》,并由項(xiàng)目組評(píng)審,不合格的部分進(jìn)一步完善調(diào)研;評(píng)審?fù)ㄟ^(guò)后由雙方共同簽署評(píng)審意見(jiàn),并正式生效。對(duì)于軟件生產(chǎn)過(guò)程而言,需求階段是整個(gè)過(guò)程中最重要的階段,需求分析成果的好壞將直接導(dǎo)致項(xiàng)目的成功與否,因此合作雙方在此階段多投入是值得的。而且一旦評(píng)審?fù)ㄟ^(guò)并生效,則需求報(bào)告將成為系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)、測(cè)試、實(shí)施試運(yùn)行和項(xiàng)目驗(yàn)收的基本依據(jù)之一,因此原則上用戶需求將不再因?yàn)槠渌蛩氐母淖兌兏?,如需進(jìn)行此種變更,需經(jīng)雙方項(xiàng)目負(fù)責(zé)人協(xié)商確定。

2.系統(tǒng)非功能性需求分析(1)質(zhì)量需求代碼質(zhì)量需求(1) 對(duì)于重構(gòu)或新功能開(kāi)發(fā),要求使用行業(yè)內(nèi)通用的編碼規(guī)范進(jìn)行約束。(2) 代碼應(yīng)具有良好可讀性、可擴(kuò)展性、可維護(hù)性以及可重用性和可測(cè)試性。(3) 要求以自動(dòng)化代碼質(zhì)量檢查和團(tuán)隊(duì)成員共同代碼走查相結(jié)合的方式,保證所有上線的代碼都經(jīng)過(guò)機(jī)器與人工多個(gè)環(huán)節(jié)的檢查。(4) 基于git進(jìn)行代碼版本管理,代碼分支劃分科學(xué)、合理,確保代碼安全、穩(wěn)定。服務(wù)質(zhì)量需求(1) 本期開(kāi)發(fā)內(nèi)容無(wú)功能問(wèn)題,項(xiàng)目整體功能測(cè)試用例通過(guò)率高于95%(2) App崩潰率低于0.5%(3) 故障修復(fù)需在1小時(shí)內(nèi)做出明確響應(yīng)和安排,在4小時(shí)內(nèi)為甲方提供維修服務(wù),故障修復(fù)時(shí)間不得超過(guò)36小時(shí)。若需要現(xiàn)場(chǎng)服務(wù)才能解決問(wèn)題,應(yīng)在8小時(shí)內(nèi)到達(dá)用戶現(xiàn)場(chǎng)。(2)性能需求(1) 7期開(kāi)發(fā)期間,需要對(duì)人教口語(yǔ)app分階段優(yōu)化產(chǎn)品系統(tǒng)架構(gòu)、技術(shù)架構(gòu)、應(yīng)用架構(gòu),以降低用戶增長(zhǎng)對(duì)原系統(tǒng)帶來(lái)的性能和安全風(fēng)險(xiǎn)以及資源成本。(2) 為保證口語(yǔ)系統(tǒng)在開(kāi)學(xué)季高并發(fā)下的用戶體驗(yàn),滿足在現(xiàn)有2臺(tái)8cl6g應(yīng)用服務(wù)器3臺(tái)8cl6g數(shù)據(jù)庫(kù)(讀寫分離一寫兩讀)條件下接口達(dá)到lOOOqps并且響應(yīng)時(shí)間在1s。(3)安全需求漏洞修復(fù)應(yīng)按照甲方需求按時(shí)完成人教口語(yǔ)App的漏洞修復(fù)工作,并配合完成漏洞修復(fù)驗(yàn)證工作。等保測(cè)評(píng)應(yīng)按照甲方要求按時(shí)配合完成人教口語(yǔ)App以及后臺(tái)服務(wù)的年度等保測(cè)評(píng)工作,包括但不限于安全內(nèi)容整改、資料撰寫、人員配合等。App安全認(rèn)證應(yīng)按照甲方要求按時(shí)配合完成App安全認(rèn)證相關(guān)工作,包括但不限于安全內(nèi)容整改、資料撰寫、人員配合等。(4)兼容性需求乙方應(yīng)在七期開(kāi)發(fā)期間,確保應(yīng)用軟件在實(shí)際用戶toplO的機(jī)型、分辨率、操作系統(tǒng)、新出設(shè)備和操作系統(tǒng)上,功能測(cè)試用例通過(guò)率高于95%,app崩潰率低于0.5%,兼容測(cè)試用例通過(guò)率高于90%;(5)其他需求數(shù)據(jù)支撐需求,包括但不限于財(cái)務(wù)系統(tǒng)、賬號(hào)中心、大數(shù)據(jù)平臺(tái)等。維保服務(wù)需求,軟件驗(yàn)收合格之日起向甲方提供12個(gè)月的維保服務(wù)。在維保期間,乙方承諾向甲方提供免費(fèi)的應(yīng)用軟件的答疑、修復(fù)、技術(shù)支持及免費(fèi)版本升級(jí),以保證甲方的正常使用及整個(gè)系統(tǒng)正常運(yùn)行。(6)技術(shù)服務(wù)需求1、產(chǎn)品交付人教口語(yǔ)存在多個(gè)版本交付情況,在每個(gè)版本交付前需要交付人充分測(cè)試,包含單元測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試,要求制定測(cè)試計(jì)劃、編寫測(cè)試用例、出具相應(yīng)的測(cè)試報(bào)告,確保交付物質(zhì)量。2、產(chǎn)品驗(yàn)收開(kāi)發(fā)完成后,需要在驗(yàn)收時(shí)提供第三方測(cè)試公司出具的測(cè)試報(bào)告,測(cè)試報(bào)告相關(guān)指標(biāo)需要滿足招標(biāo)文件技術(shù)需求的各項(xiàng)要求。3、項(xiàng)目進(jìn)度管理項(xiàng)目在開(kāi)發(fā)階段,每個(gè)開(kāi)發(fā)任務(wù)有明確的版本計(jì)劃和上線時(shí)間點(diǎn),進(jìn)度落實(shí)到個(gè)人。以周會(huì)或雙周會(huì)對(duì)項(xiàng)目進(jìn)度進(jìn)行校準(zhǔn)。4、運(yùn)營(yíng)維護(hù)支持產(chǎn)品的運(yùn)營(yíng)需求,如財(cái)務(wù)對(duì)賬、運(yùn)營(yíng)活動(dòng)等相關(guān)產(chǎn)品數(shù)據(jù)的提供。支持客服反饋的技術(shù)答疑。5、系統(tǒng)維護(hù)開(kāi)發(fā)完成后,交付方需要在維保期內(nèi)提供bug修改、運(yùn)營(yíng)維護(hù)等相關(guān)服務(wù)。(7)業(yè)務(wù)運(yùn)營(yíng)及維護(hù)工作日常功能改進(jìn)、bug修復(fù);運(yùn)營(yíng)活動(dòng)支持;對(duì)賬報(bào)表、數(shù)據(jù)統(tǒng)計(jì)、埋點(diǎn)管理等日常維護(hù)工作;配合數(shù)字公司要求,進(jìn)行相關(guān)系統(tǒng)測(cè)試、代碼及漏洞修復(fù)工作;(8)項(xiàng)目安全、合規(guī)相關(guān)工作配合等保、安全認(rèn)證相關(guān)合規(guī)工作的資料編撰,功能開(kāi)發(fā)、修復(fù)和升級(jí)。(9)目標(biāo)前景1.能夠如期完成約定的委托開(kāi)發(fā)任務(wù),確保人教口語(yǔ)業(yè)務(wù)穩(wěn)定運(yùn)行的持續(xù)性和連貫性。2.提供成熟可行的移動(dòng)端產(chǎn)品運(yùn)營(yíng)咨詢服務(wù)。3.提供業(yè)務(wù)相關(guān)的數(shù)據(jù)支持、技術(shù)咨詢支持。3.項(xiàng)目重點(diǎn)難點(diǎn)分析本次開(kāi)發(fā)任務(wù)中,主要包含對(duì)現(xiàn)有系統(tǒng)的升級(jí)優(yōu)化和新功能的開(kāi)發(fā),重點(diǎn)難點(diǎn)如下:(1)系統(tǒng)功能對(duì)接要求開(kāi)發(fā)團(tuán)隊(duì)在對(duì)現(xiàn)有系統(tǒng)進(jìn)行需求理解的基礎(chǔ)上進(jìn)行系統(tǒng)優(yōu)化,并在此基礎(chǔ)上開(kāi)發(fā)新功能,開(kāi)發(fā)團(tuán)隊(duì)必須具備新老系統(tǒng)對(duì)接的開(kāi)發(fā)能力;系統(tǒng)接口標(biāo)準(zhǔn):RESTful架構(gòu),就是目前最流行的一種互聯(lián)網(wǎng)軟件架構(gòu)。它結(jié)構(gòu)清晰、符合標(biāo)準(zhǔn)、易于理解、擴(kuò)展方便,所以正得到越來(lái)越多網(wǎng)站的采用。REST(RepresentationalStateTransfer),REST的名稱"表現(xiàn)層狀態(tài)轉(zhuǎn)化"中,省略了主語(yǔ)。“表現(xiàn)層"其實(shí)指的是"資源”(Resources)的"表現(xiàn)層"。資源(Resources)所謂"資源",就是網(wǎng)絡(luò)上的一個(gè)實(shí)體,或者說(shuō)是網(wǎng)絡(luò)上的一個(gè)具體信息。它可以是一段文本、一張圖片、一首歌曲、一種服務(wù),總之就是一個(gè)具體的實(shí)在。你可以用一個(gè)URI(統(tǒng)一資源定位符)指向它,每種資源對(duì)應(yīng)一個(gè)特定的URI。要獲取這個(gè)資源,訪問(wèn)它的URI就可以,因此URI就成了每一個(gè)資源的地址或獨(dú)一無(wú)二的識(shí)別符。所謂"上網(wǎng)",就是與互聯(lián)網(wǎng)上一系列的"資源"互動(dòng),調(diào)用它的URI。表現(xiàn)層(Representation)"資源"是一種信息實(shí)體,它可以有多種外在表現(xiàn)形式。我們把"資源"具體呈現(xiàn)出來(lái)的形式,叫做它的"表現(xiàn)層"(Representation)。比如,文本可以用txt格式表現(xiàn),也可以用HTML格式、XML格式、JSON格式表現(xiàn),甚至可以采用二進(jìn)制格式;圖片可以用JPG格式表現(xiàn),也可以用PNG格式表現(xiàn)。URL只代表資源的實(shí)體,不代表它的形式。嚴(yán)格地說(shuō),有些網(wǎng)址最后的".html"后綴名是不必要的,因?yàn)檫@個(gè)后綴名表示格式,屬于"表現(xiàn)層"范疇,而URI應(yīng)該只代表"資源"的位置。它的具體表現(xiàn)形式,應(yīng)該在HTTP請(qǐng)求的頭信息中用Accept和Content-Type字段指定,這兩個(gè)字段才是對(duì)"表現(xiàn)層"的描述。狀態(tài)轉(zhuǎn)化(StateTransfer)訪問(wèn)一個(gè)網(wǎng)站,就代表了客戶端和服務(wù)器的一個(gè)互動(dòng)過(guò)程。在這個(gè)過(guò)程中,勢(shì)必涉及到數(shù)據(jù)和狀態(tài)的變化。互聯(lián)網(wǎng)通信協(xié)議HTTP協(xié)議,是一個(gè)無(wú)狀態(tài)協(xié)議。這意味著,所有的狀態(tài)都保存在服務(wù)器端。因此,如果客戶端想要操作服務(wù)器,必須通過(guò)某種手段,讓服務(wù)器端發(fā)生"狀態(tài)轉(zhuǎn)化"(StateTransfer)。而這種轉(zhuǎn)化是建立在表現(xiàn)層之上的,所以就是"表現(xiàn)層狀態(tài)轉(zhuǎn)化"。客戶端用到的手段,只能是HTTP協(xié)議。具體來(lái)說(shuō),就是HTTP協(xié)議里面,四個(gè)表示操作方式的動(dòng)詞:GET、POST、PUT、DELETE。四個(gè)表示操作方式對(duì)應(yīng)對(duì)應(yīng)四種基本操作GET獲取資源POST新建資源PUT更新資源DELETE刪除資源綜合上面,RESTful架構(gòu)的內(nèi)容:每一個(gè)URI代表一種資源;客戶端和服務(wù)器之間,傳遞這種資源的某種表現(xiàn)層;客戶端通過(guò)四個(gè)HTTP動(dòng)詞,對(duì)服務(wù)器端資源進(jìn)行操作,實(shí)現(xiàn)"表現(xiàn)層狀態(tài)轉(zhuǎn)化"。RESTfulAPI設(shè)計(jì)API與用戶的通信協(xié)議采用HTTPs協(xié)議域名用api關(guān)鍵字標(biāo)識(shí)接口url示例:#應(yīng)該盡量將API部署在專用域名之下。#表示前后端數(shù)據(jù)交互#應(yīng)該盡量將API部署在專用域名之下。/api/路徑路徑又稱"終點(diǎn)"(endpoint),表示API的具體網(wǎng)址。在RESTful架構(gòu)中,每個(gè)網(wǎng)址代表一種資源(resource),所以網(wǎng)址中不能有動(dòng)詞,只能有名詞,而且所用的名詞往往與數(shù)據(jù)庫(kù)的表格名對(duì)應(yīng)。HTTP動(dòng)詞對(duì)于資源的具體操作類型,由HTTP動(dòng)詞表示。示例:GET(SELECT):從服務(wù)器取出資源(一項(xiàng)或多項(xiàng))。POST(CREATE):在服務(wù)器新建一個(gè)資源。PUT(UPDATE):在服務(wù)器更新資源(客戶端提供改變后的完整資源)。PATCH(UPDATE):在服務(wù)器更新資源(客戶端提供改變的屬性)。DELETE(DELETE):從服務(wù)器刪除資源。不常用HEAD:獲取資源的元數(shù)據(jù)。OPTIONS:獲取信息,關(guān)于資源的哪些屬性是客戶端可以改變的。狀態(tài)碼示例:200OK-[GET]:服務(wù)器成功返回用戶請(qǐng)求的數(shù)據(jù),該操作是冪等的(Idempotent)。201CREATED-[POST/PUT/PATCH]:用戶新建或修改數(shù)據(jù)成功。202Accepted-[*]:表示一個(gè)請(qǐng)求已經(jīng)進(jìn)入后臺(tái)排隊(duì)(異步任務(wù))204NOCONTENT-[DELETE]:用戶刪除數(shù)據(jù)成功。301:永久重定向302:暫時(shí)重定向400INVALIDREQUEST-[POST/PUT/PATCH]:用戶發(fā)出的請(qǐng)求有錯(cuò)誤,服務(wù)器沒(méi)有進(jìn)行新建或修改數(shù)據(jù)的操作,該操作是冪等的。401Unauthorized-[*]:表示用戶沒(méi)有權(quán)限(令牌、用戶名、密碼錯(cuò)誤)。403Forbidden-[*]表示用戶得到授權(quán)(與401錯(cuò)誤相對(duì)),但是訪問(wèn)是被禁止的。404NOTFOUND-[*]:用戶發(fā)出的請(qǐng)求針對(duì)的是不存在的記錄,服務(wù)器沒(méi)有進(jìn)行操作,該操作是冪等的。406NotAcceptable-[GET]:用戶請(qǐng)求的格式不可得(比如用戶請(qǐng)求JSON格式,但是只有XML格式)。410Gone-[GET]:用戶請(qǐng)求的資源被永久刪除,且不會(huì)再得到的。422Unprocesableentity-[POST/PUT/PATCH]當(dāng)創(chuàng)建一個(gè)對(duì)象時(shí),發(fā)生一個(gè)驗(yàn)證錯(cuò)誤。500INTERNALSERVERERROR-[*]:服務(wù)器發(fā)生錯(cuò)誤,用戶將無(wú)法判斷發(fā)出的請(qǐng)求是否成功。錯(cuò)誤處理狀態(tài)碼是4xx時(shí),應(yīng)返回錯(cuò)誤信息,error當(dāng)做key。示例:{error:"InvalidAPIkey"}返回結(jié)果格式盡量采用json格式避免XML格式示例:GET/collection:返回資源對(duì)象的列表(數(shù)組)GET/collection/resource:返回單個(gè)資源對(duì)象POST/collection:返回新生成的資源對(duì)象PUT/collection/resource:返回完整的資源對(duì)象PATCH/collection/resource:返回完整的資源對(duì)象DELETE/collection/resource:返回一個(gè)空文檔(2)接口規(guī)范性設(shè)計(jì)系統(tǒng)平臺(tái)中的接口眾多,依賴關(guān)系復(fù)雜,通過(guò)接口交換的數(shù)據(jù)與接口調(diào)用必須遵循統(tǒng)一的接口模型進(jìn)行設(shè)計(jì)。接口模型除了遵循工程統(tǒng)一的數(shù)據(jù)標(biāo)準(zhǔn)和接口規(guī)范標(biāo)準(zhǔn),實(shí)現(xiàn)接口規(guī)范定義的功能外,需要從數(shù)據(jù)管理、完整性管理、接口安全、接口的訪問(wèn)效率、性能以及可擴(kuò)展性多個(gè)方面設(shè)計(jì)接口規(guī)格。(3)接口定義約定客戶端與系統(tǒng)平臺(tái)以及系統(tǒng)平臺(tái)間的接口消息協(xié)議采用基于HTTP協(xié)議的REST風(fēng)格接口實(shí)現(xiàn),協(xié)議棧如圖所示。業(yè)務(wù)消息會(huì)話數(shù)據(jù)HTTP/HTTPSTCP/IP底層承載系統(tǒng)在http協(xié)議中傳輸?shù)膽?yīng)用數(shù)據(jù)采用具有自解釋、自包含特征的JSON數(shù)據(jù)格式,通過(guò)配置數(shù)據(jù)對(duì)象的序列化和反序列化的實(shí)現(xiàn)組件來(lái)實(shí)現(xiàn)通信數(shù)據(jù)包的編碼和解碼。在接口協(xié)議中,包含接口的版本信息,通過(guò)協(xié)議版本約束服務(wù)功能規(guī)范,支持服務(wù)平臺(tái)間接口協(xié)作的升級(jí)和擴(kuò)展。一個(gè)服務(wù)提供者可通過(guò)版本區(qū)別同時(shí)支持多個(gè)版本的客戶端,從而使得組件服務(wù)的提供者和使用者根據(jù)實(shí)際的需要,獨(dú)立演進(jìn),降低系統(tǒng)升級(jí)的復(fù)雜度,保證系統(tǒng)具備靈活的擴(kuò)展和持續(xù)演進(jìn)的能力。(4)業(yè)務(wù)消息約定請(qǐng)求消息URI中的參數(shù)采用UTF-8編碼并經(jīng)過(guò)URLEncode編碼。請(qǐng)求接口URL格式:{http|https}://{host}:{port}/{appname}/{businesscomponentname}/{action};其中:協(xié)議:HTTPREST形式接口host:應(yīng)用支撐平臺(tái)交互通信服務(wù)的IP地址或域名port:應(yīng)用支撐平臺(tái)交互通信服務(wù)的端口appname:應(yīng)用支撐平臺(tái)交互通信服務(wù)部署的應(yīng)用名稱businesscomponentname:業(yè)務(wù)組件名稱action:業(yè)務(wù)操作請(qǐng)求的接口名稱,接口名字可配置應(yīng)答的消息體采用JSON數(shù)據(jù)格式編碼,字符編碼采用UTF-8。應(yīng)答消息根節(jié)點(diǎn)為“response”,每個(gè)響應(yīng)包含固定的兩個(gè)屬性節(jié)點(diǎn):“status”和“message”。它們分別表示操作的返回值和返回消息描述,其他的同級(jí)子節(jié)點(diǎn)為業(yè)務(wù)返回對(duì)象屬性,根據(jù)業(yè)務(wù)類型的不同,有不同的屬性名稱。當(dāng)客戶端支持?jǐn)?shù)據(jù)壓縮傳輸時(shí),需要在請(qǐng)求的消息頭的“Accept-Encoding”字段中指定壓縮方式(gzip),如消息可以被壓縮傳輸則平臺(tái)將應(yīng)答的數(shù)據(jù)報(bào)文進(jìn)行壓縮作為應(yīng)答數(shù)據(jù)返回,Content-Length為壓縮后的數(shù)據(jù)長(zhǎng)度。詳細(xì)參見(jiàn)HTTP/1.1RFC2616。(5)響應(yīng)碼規(guī)則約定響應(yīng)結(jié)果碼在響應(yīng)消息的“status”屬性中,相應(yīng)的解釋信息在響應(yīng)消息的“message”屬性中。解釋消息為終端用戶可讀的消息,終端應(yīng)用不需要解析可直接呈現(xiàn)給最終用戶。響應(yīng)結(jié)果碼為6位數(shù)字串。根據(jù)響應(yīng)類型,包括以下幾類響應(yīng)碼。如表中的定義。響應(yīng)碼描述0成功1XXXXX系統(tǒng)錯(cuò)誤2XXXXX輸入?yún)?shù)不合法錯(cuò)誤3XXXXX應(yīng)用級(jí)返回碼,定義應(yīng)用級(jí)的異常返回。4XXXXX正常的應(yīng)用級(jí)返回碼,定義特定場(chǎng)景的應(yīng)用級(jí)返回說(shuō)明。(6)數(shù)據(jù)管理業(yè)務(wù)數(shù)據(jù)檢查接口應(yīng)提供業(yè)務(wù)數(shù)據(jù)檢查功能,即對(duì)接收的數(shù)據(jù)進(jìn)行合法性檢查,對(duì)非法數(shù)據(jù)和錯(cuò)誤數(shù)據(jù)則拒絕接收,以防止外來(lái)數(shù)據(jù)非法入侵,減輕應(yīng)用支撐平臺(tái)系統(tǒng)主機(jī)處理負(fù)荷。對(duì)于接口,其業(yè)務(wù)數(shù)據(jù)檢查的主要內(nèi)容有以下幾個(gè)方面:數(shù)據(jù)格式的合法性:如接收到非預(yù)期格式的數(shù)據(jù)。包括接收的數(shù)據(jù)長(zhǎng)度,類型,開(kāi)始結(jié)束標(biāo)志等。數(shù)據(jù)來(lái)源的合法性:如接收到非授權(quán)接口的數(shù)據(jù)。業(yè)務(wù)類型的合法性:如接收到接口指定業(yè)務(wù)類型外的接入請(qǐng)求。對(duì)于業(yè)務(wù)數(shù)據(jù)檢查中解析出非法數(shù)據(jù)應(yīng)提供以下幾種處理方式:事件報(bào)警:在出現(xiàn)異常情況時(shí)自動(dòng)報(bào)警,以便系統(tǒng)管理員及時(shí)進(jìn)行處理。分析原因:在出現(xiàn)異常情況時(shí),可自動(dòng)分析其出錯(cuò)原因。如是數(shù)據(jù)來(lái)源非法和業(yè)務(wù)類型非法,本地記錄并做后續(xù)管理,如是數(shù)據(jù)格式非法,分析網(wǎng)絡(luò)傳輸原因或?qū)Χ藬?shù)據(jù)處理原因,并做相應(yīng)處理。統(tǒng)計(jì)分析:定期對(duì)所有的非法記錄做統(tǒng)計(jì)分析,分析非法數(shù)據(jù)的各種來(lái)源是否具有惡意,并做相應(yīng)處理。(7)接口的可擴(kuò)展性規(guī)劃與設(shè)計(jì)各個(gè)端間的通信接口版本信息限定了各個(gè)系統(tǒng)平臺(tái)間交互的數(shù)據(jù)協(xié)議類型、特定版本發(fā)布的系統(tǒng)接口功能特征、特定功能的訪問(wèn)參數(shù)等接口規(guī)格。通過(guò)接口協(xié)議的版本劃分,為客戶端升級(jí)、其他被集成系統(tǒng)的升級(jí)、以及系統(tǒng)的部署提供了較高的自由度和靈活性。系統(tǒng)可根據(jù)接口請(qǐng)求中包含的接口協(xié)議版本實(shí)現(xiàn)對(duì)接口的向下兼容。系統(tǒng)平臺(tái)可根據(jù)系統(tǒng)的集群策略,按協(xié)議版本分別部署,也可多版本并存部署。由于系統(tǒng)平臺(tái)可同時(shí)支持多版本的外部系統(tǒng)及客戶端應(yīng)用訪問(wèn)系統(tǒng),特別是新版本客戶端發(fā)布時(shí),不要求用戶強(qiáng)制升級(jí),也可降低強(qiáng)制升級(jí)安裝包發(fā)布的幾率。從而支持系統(tǒng)的客戶端與系統(tǒng)平臺(tái)分離的持續(xù)演進(jìn)。(8)系統(tǒng)性能優(yōu)化由于系統(tǒng)用戶數(shù)較大,覆蓋面廣,要求開(kāi)發(fā)團(tuán)隊(duì)具備豐富的Linux系統(tǒng)性能優(yōu)化經(jīng)驗(yàn),以保證系統(tǒng)的流暢性和穩(wěn)定性:一、影響Linux性能的各種因素1、系統(tǒng)硬件資源(1)CPU判斷多核CPU不超線程,消耗CPU的業(yè)務(wù)(2)內(nèi)存消耗內(nèi)存的業(yè)務(wù):內(nèi)存數(shù)據(jù)庫(kù)(redis/hbase/mongodb)(3)磁盤IO消耗磁盤的業(yè)務(wù):數(shù)據(jù)庫(kù)服務(wù)器(4)網(wǎng)絡(luò)帶寬消耗帶寬的業(yè)務(wù):hadoop平臺(tái)、視頻業(yè)務(wù)平臺(tái)2、操作系統(tǒng)相關(guān)資源(1)系統(tǒng)安裝優(yōu)化磁盤分區(qū)、RAID設(shè)置、swap設(shè)置(2)內(nèi)核參數(shù)優(yōu)化ulimit-n(最大打開(kāi)文件數(shù))ulimit-u(最大用戶數(shù))(3)文件系統(tǒng)優(yōu)化讀操作頻繁,同時(shí)小文件眾多的應(yīng)用:首選ext4文件系統(tǒng),接下來(lái)依次是xfs、ext3。寫操作頻繁的應(yīng)用,首選是xfs,接下來(lái)依次是ext4和ext3對(duì)性能要求不高、數(shù)據(jù)安全要求不高的業(yè)務(wù),ext3是比較好的選擇。3、程序問(wèn)題此類問(wèn)題需要開(kāi)發(fā)人員查看代碼,介入處理。但作為運(yùn)維人員需要給出程序問(wèn)題的有力證據(jù)。二、Linux性能優(yōu)化工具1、cpu性能評(píng)估工具利用vmstat命令可以對(duì)操作系統(tǒng)的內(nèi)存信息、進(jìn)程狀態(tài)、CPU活勱等進(jìn)行監(jiān)視。對(duì)上面每項(xiàng)的輸出解釋如下:●procsr列表示運(yùn)行和等待cpu時(shí)間片的進(jìn)程數(shù),這個(gè)值如果長(zhǎng)期大于系統(tǒng)CPU的個(gè)數(shù),說(shuō)明CPU不足,需要增加CPU。b列表示在等待資源的進(jìn)程數(shù),比如正在等待I/O、或者內(nèi)存交換等?!駇emoryswpd列表示切換到內(nèi)存交換區(qū)的內(nèi)存數(shù)量(以k為單位)。如果swpd的值不為0,或者比較大,只要si、so的值長(zhǎng)期為0,這種情況下一般不用擔(dān)心,不會(huì)影響系統(tǒng)性能。free列表示當(dāng)前空閑的物理內(nèi)存數(shù)量(以k為單位)buff列表示bufferscache的內(nèi)存數(shù)量,一般對(duì)塊設(shè)備的讀寫才需要緩沖。cache列表示pagecached的內(nèi)存數(shù)量,一般作為文件系統(tǒng)cached,頻繁訪問(wèn)的文件都會(huì)被cached,如果cache值較大,說(shuō)明cached的文件數(shù)較多,如果此時(shí)IO中bi比較小,說(shuō)明文件系統(tǒng)效率比較好?!駍wapsi列表示由磁盤調(diào)入內(nèi)存,也就是內(nèi)存進(jìn)入內(nèi)存交換區(qū)的數(shù)量。so列表示由內(nèi)存調(diào)入磁盤,也就是內(nèi)存交換區(qū)進(jìn)入內(nèi)存的數(shù)量。一般情況下,si、so的值都為0,如果si、so的值長(zhǎng)期不為0,則表示系統(tǒng)內(nèi)存不足。需要增加系統(tǒng)內(nèi)存?!馡O項(xiàng)顯示磁盤讀寫狀況Bi列表示從塊設(shè)備讀入數(shù)據(jù)的總量(即讀磁盤)(每秒kb)。Bo列表示寫入到塊設(shè)備的數(shù)據(jù)總量(即寫磁盤)(每秒kb)這里我們?cè)O(shè)置的bi+bo參考值為1000,如果超過(guò)1000,而且wa值較大,則表示系統(tǒng)磁盤IO有問(wèn)題,應(yīng)該考慮提高磁盤的讀寫性能?!駍ystem顯示采集間隔內(nèi)發(fā)生的中斷數(shù)in列表示在某一時(shí)間間隔中觀測(cè)到的每秒設(shè)備中斷數(shù)。cs列表示每秒產(chǎn)生的上下文切換次數(shù)。上面這2個(gè)值越大,會(huì)看到由內(nèi)核消耗的CPU時(shí)間會(huì)越多?!馛PU項(xiàng)顯示了CPU的使用狀態(tài)us列顯示了用戶進(jìn)程消耗的CPU時(shí)間百分比。us的值比較高時(shí),說(shuō)明用戶進(jìn)程消耗的cpu時(shí)間多,但是如果長(zhǎng)期大于50%,就需要考慮優(yōu)化程序或算法。(3)uptime命令uptime是監(jiān)控系統(tǒng)性能最常用的一個(gè)命令,主要用來(lái)統(tǒng)計(jì)系統(tǒng)當(dāng)前的運(yùn)行狀況,輸出的信息依次為:系統(tǒng)現(xiàn)在的時(shí)間、系統(tǒng)從上次開(kāi)機(jī)到現(xiàn)在運(yùn)行了多長(zhǎng)時(shí)間、系統(tǒng)目前有多少登陸用戶、系統(tǒng)在一分鐘內(nèi)、五分鐘內(nèi)、十五分鐘內(nèi)的平均負(fù)載。2、內(nèi)存性能評(píng)估(1)free命令free命令是監(jiān)控linux內(nèi)存使用狀況最常用的指令一般有這樣一個(gè)經(jīng)驗(yàn)公式:應(yīng)用程序可用內(nèi)存/系統(tǒng)物理內(nèi)存>70%時(shí),表示系統(tǒng)內(nèi)存資源非常充足,不影響系統(tǒng)性能,應(yīng)用程序可用內(nèi)存/系統(tǒng)物理內(nèi)存<20%時(shí),表示系統(tǒng)內(nèi)存資源緊缺,需要增加系統(tǒng)內(nèi)存,20%<應(yīng)用程序可用內(nèi)存/系統(tǒng)物理內(nèi)存<70%時(shí),表示系統(tǒng)內(nèi)存資源基本能滿足應(yīng)用需求,暫時(shí)不影響系統(tǒng)性能。(2)sar/pidstat此兩個(gè)命令主要用于監(jiān)控全部或指定進(jìn)程占用系統(tǒng)資源的情況,如CPU,內(nèi)存、設(shè)備。3、磁盤性能評(píng)估通過(guò)“iostat–d”命令組合也可以查看系統(tǒng)磁盤的使用狀況,并分析輸出。4、網(wǎng)絡(luò)性能評(píng)估(1)ping命令(2)netstat命令(3)mtr/traceroute命令跟蹤網(wǎng)絡(luò)路由狀態(tài),推薦使用mtr,勱態(tài)跟蹤網(wǎng)絡(luò)路由,用于排除網(wǎng)絡(luò)問(wèn)題非常方便。三、系統(tǒng)性能分析標(biāo)準(zhǔn)

第二節(jié)、方案整體設(shè)計(jì)1.項(xiàng)目概述為了更好地踐行教育信息化、教育資源數(shù)字化建設(shè),人教數(shù)字出版有限公司(以下簡(jiǎn)稱數(shù)字公司)依托人民教育出版社深耕數(shù)字教材市場(chǎng),按照“服務(wù)至上、示范引領(lǐng)、安全運(yùn)行”的工作要求和思路推出“人教口語(yǔ)”這款面向中小學(xué)英語(yǔ)垂直學(xué)科的數(shù)字化資源應(yīng)用。應(yīng)不斷增長(zhǎng)的用戶人數(shù)和使用需求,數(shù)字公司需要對(duì)人教口語(yǔ)app及相關(guān)業(yè)務(wù)系統(tǒng)進(jìn)行升級(jí)維護(hù)和部分產(chǎn)品功能開(kāi)發(fā),因此開(kāi)展人教口語(yǔ)app七期技術(shù)委托開(kāi)發(fā)的招標(biāo)工作。人教口語(yǔ)app的開(kāi)發(fā)范圍涉及iOS、android、鴻蒙系統(tǒng)的移動(dòng)設(shè)備(包含手機(jī)和平板電腦),以及PC端的人教口語(yǔ)運(yùn)營(yíng)管理系統(tǒng)。2.項(xiàng)目總體實(shí)施原則1.承建方成立領(lǐng)導(dǎo)親自掛帥的項(xiàng)目小組,在調(diào)研、設(shè)計(jì)、編碼、安裝調(diào)試、測(cè)試、培訓(xùn)、運(yùn)行、驗(yàn)收、售后服務(wù)等項(xiàng)目的各個(gè)階段,配合系統(tǒng)開(kāi)發(fā)方的工作,一方面可以培訓(xùn)自己的技術(shù)維護(hù)隊(duì)伍,為系統(tǒng)的使用保駕護(hù)航;另一方面,在開(kāi)發(fā)過(guò)程中,協(xié)調(diào)用戶方和承建方的關(guān)系,保證項(xiàng)目的順利進(jìn)行,及時(shí)發(fā)現(xiàn)問(wèn)題,并對(duì)項(xiàng)目進(jìn)度和質(zhì)量進(jìn)行監(jiān)督。2.采用“兩手抓”的方針,一手抓開(kāi)發(fā)、一手抓使用對(duì)于軟件項(xiàng)目,之所以稱為一個(gè)工程,很大程度上是因?yàn)檐浖?xiàng)目的建設(shè),除了技術(shù)因素外,還有很多的非技術(shù)因素需要考慮,并且必須被得到重視。衡量一個(gè)軟件項(xiàng)目是否成功,很大程度上不是看這個(gè)軟件項(xiàng)目采用了多么先進(jìn)的技術(shù),而是軟件對(duì)用戶來(lái)說(shuō)是否實(shí)用,是否能夠幫助用戶解決許多預(yù)期的問(wèn)題。國(guó)內(nèi)很多軟件項(xiàng)目的失敗,很大程度上是使用抓得不夠。建議在項(xiàng)目的試運(yùn)行過(guò)程中,在抓系統(tǒng)維護(hù)的同時(shí),也要狠抓系統(tǒng)的使用,開(kāi)發(fā)方和用戶方齊心協(xié)力幫助業(yè)務(wù)人員從原來(lái)的手工處理轉(zhuǎn)到計(jì)算機(jī)輔助處理上來(lái),在業(yè)務(wù)人員適應(yīng)計(jì)算機(jī)輔助業(yè)務(wù)處理的過(guò)程中,盡可能早發(fā)現(xiàn)系統(tǒng)中存在的問(wèn)題,從而最大可能地使系統(tǒng)保質(zhì)保量的按時(shí)完成。3.?dāng)?shù)據(jù)同程序同等重要該系統(tǒng)的建設(shè),數(shù)據(jù)位于首要的地位,程序的編寫完成,僅僅意味著系統(tǒng)完成了一半,數(shù)據(jù)的收集、整理、錄入,對(duì)系統(tǒng)的建設(shè)來(lái)說(shuō)同等重要。在項(xiàng)目實(shí)施過(guò)程中,一定要重視系統(tǒng)中數(shù)據(jù)的錄入工作,充分估計(jì)數(shù)據(jù)處理的難度,在系統(tǒng)建設(shè)之初,就將數(shù)據(jù)工作提到議事日程上來(lái),安排相應(yīng)的資金、時(shí)間等,將數(shù)據(jù)工作落到實(shí)處,只有這樣才能爭(zhēng)取系統(tǒng)早日達(dá)到實(shí)用化。3.項(xiàng)目總體推進(jìn)計(jì)劃為了有效地保證系統(tǒng)開(kāi)發(fā)的質(zhì)量,整個(gè)系統(tǒng)建設(shè)的全過(guò)程劃分為準(zhǔn)備、設(shè)計(jì)、開(kāi)發(fā)、實(shí)施和運(yùn)行階段,每個(gè)階段完成相應(yīng)的任務(wù),確保信息系統(tǒng)的建設(shè)。軟件安裝完成并確認(rèn)可在系統(tǒng)正常運(yùn)行后,開(kāi)始相關(guān)業(yè)務(wù)人員的培訓(xùn);在培訓(xùn)開(kāi)始之前需要由雙方協(xié)商形成《培訓(xùn)計(jì)劃》,明確培訓(xùn)環(huán)境、條件及方式,參加人員,課程課時(shí)等詳細(xì)內(nèi)容,由雙方現(xiàn)場(chǎng)實(shí)施負(fù)責(zé)人簽字后生效,并分別開(kāi)始著手準(zhǔn)備,在既定時(shí)間內(nèi)完成。4.項(xiàng)目總體設(shè)計(jì)原則(1)建立規(guī)范保證設(shè)計(jì)的一致性對(duì)內(nèi)部:多個(gè)設(shè)計(jì)師合作,依然能保證設(shè)計(jì)風(fēng)格的統(tǒng)一。對(duì)用戶:提高用戶體驗(yàn),提高操作效率,加深對(duì)產(chǎn)品的記憶。提高開(kāi)發(fā)效率與前端有效溝通的工具,提高設(shè)計(jì)還原度,降低對(duì)接成本。開(kāi)發(fā)可以建立公共組件庫(kù),極大的提高了開(kāi)發(fā)效率。方便產(chǎn)品迭代隨著產(chǎn)品的業(yè)務(wù)變化,發(fā)現(xiàn)一些問(wèn)題或者需要優(yōu)化用戶體驗(yàn)的時(shí)候,針對(duì)單個(gè)控件進(jìn)行調(diào)整,就可以影響全局,十分便捷。(2)字體規(guī)范文字是App中最核心的元素之一,產(chǎn)品傳達(dá)給用戶的內(nèi)容。字體有無(wú)襯線字體和襯線字體。無(wú)論iOS還是Android系統(tǒng),它們都有內(nèi)置的默認(rèn)字體可供設(shè)計(jì)師使用。用心處理好字號(hào)大小、字體顏色與字體間距的處理上。用戶界面設(shè)計(jì)中,字體是界面設(shè)計(jì)中的基本元素。設(shè)計(jì)師要設(shè)計(jì)好界面中的字體顏色、字體間距、字號(hào)的大小、字重等思考。蘋果系統(tǒng)中默認(rèn)的字體是:蘋方字體。英文字體和數(shù)字字體是:舊金山字體,SanFrancisco字體。其中數(shù)字字體比較好的字體可以用:Dinner字體。安卓系統(tǒng)默認(rèn)的中文字體是:思源黑體。

英文字體是:Roboto字體。界面設(shè)計(jì)中的字體設(shè)計(jì)規(guī)范,如下圖所示。(3)設(shè)計(jì)原則為了最大限度地提高影響力和影響范圍,請(qǐng)?jiān)谙胂髴?yīng)用程序的身份時(shí)牢記以下原則。審美完整性審美完整性表示應(yīng)用程序的外觀和行為與其功能的集成程度。例如,一個(gè)可以幫助人們執(zhí)行重要任務(wù)的應(yīng)用程序可以通過(guò)使用微妙,醒目的圖形,標(biāo)準(zhǔn)控件和可預(yù)測(cè)的行為來(lái)使他們專注。另一方面,沉浸式應(yīng)用程序(例如游戲)可以提供引人入勝的外觀,帶來(lái)樂(lè)趣和刺激,同時(shí)鼓勵(lì)發(fā)現(xiàn)。一致性一致的應(yīng)用程序通過(guò)使用系統(tǒng)提供的界面元素,知名的圖標(biāo),標(biāo)準(zhǔn)的文本樣式和統(tǒng)一的術(shù)語(yǔ)來(lái)實(shí)現(xiàn)熟悉的標(biāo)準(zhǔn)和范例。該應(yīng)用程序以人們期望的方式結(jié)合了功能和行為。直接操縱屏幕內(nèi)容的直接操作可以吸引人們并促進(jìn)理解。用戶在旋轉(zhuǎn)設(shè)備或使用手勢(shì)來(lái)影響屏幕內(nèi)容時(shí)會(huì)經(jīng)歷直接的操縱。通過(guò)直接操作,他們可以看到其操作的直接可見(jiàn)結(jié)果。反饋反饋確認(rèn)行動(dòng)并顯示結(jié)果,以使人們了解情況。內(nèi)置的iOS應(yīng)用程序可響應(yīng)每個(gè)用戶操作提供可感知的反饋。輕觸時(shí),交互元素將突出顯示,進(jìn)度指示器傳達(dá)長(zhǎng)時(shí)間運(yùn)行的操作的狀態(tài),動(dòng)畫和聲音有助于闡明操作的結(jié)果。隱喻當(dāng)應(yīng)用程序的虛擬對(duì)象和動(dòng)作是扎根于現(xiàn)實(shí)世界或數(shù)字世界的隱喻時(shí),人們會(huì)更快地學(xué)習(xí)。隱喻在iOS中可以很好地工作,因?yàn)槿藗兛梢耘c屏幕進(jìn)行物理交互。他們將視圖移開(kāi)以隱藏下面的內(nèi)容。他們拖動(dòng)和滑動(dòng)內(nèi)容。他們切換開(kāi)關(guān),移動(dòng)滑塊并滾動(dòng)選擇器值。他們甚至瀏覽書籍和雜志的頁(yè)面。

(4)組建規(guī)范ios系統(tǒng)和安卓系統(tǒng)都提供了一些固定的官方組件規(guī)范。遵循其官方組件規(guī)范,可以極大提高設(shè)計(jì)和開(kāi)發(fā)效率,同時(shí)降低用戶的學(xué)習(xí)成本。其中最常見(jiàn)的規(guī)范化組件包括頂部的狀態(tài)欄、導(dǎo)航欄、底部標(biāo)簽欄和工具欄。狀態(tài)欄ios是20pt,安卓是24dp.導(dǎo)航欄ios是44pt,安卓是56dp.標(biāo)簽欄ios的高度是49pt,安卓標(biāo)簽欄的高度是48dp.工具欄工具欄的高度是44pt,安卓是48dp.字體是蘋方字體;英文是SF英文字體。思源黑體,roboto英文字體。ios設(shè)計(jì)是11pt到29pt左右,一級(jí)主題是24pt以上,二級(jí)標(biāo)題是20pt左右。內(nèi)容,導(dǎo)航欄標(biāo)題是18pt。三級(jí)標(biāo)題是16pt。文字內(nèi)容一般是14pt品類區(qū)圖標(biāo)內(nèi)容:12pt。底部TAB圖標(biāo)文字:10pt到11pt5.項(xiàng)目建設(shè)思路在保證基礎(chǔ)的業(yè)務(wù)流程合規(guī),數(shù)據(jù)安全的前提下,根據(jù)業(yè)務(wù)需求及客戶群體特征,盡量簡(jiǎn)化操作流程。根據(jù)項(xiàng)目要求該平臺(tái)系統(tǒng)須以源碼方式部署到項(xiàng)目服務(wù)器上,通過(guò)已部署成功的后臺(tái)系統(tǒng),配置iOS、Android、鴻蒙系統(tǒng)移動(dòng)設(shè)備(包含手機(jī)和平板電腦)相關(guān)參數(shù)實(shí)現(xiàn)與前端聯(lián)通調(diào)用。6.項(xiàng)目實(shí)施策略通過(guò)業(yè)務(wù)咨詢、產(chǎn)品培訓(xùn)、系統(tǒng)操作的形式分析本次招標(biāo)范圍內(nèi)的需求,分析差異性需求,根據(jù)差異化需求的情況,我們采取產(chǎn)品功能升級(jí)與個(gè)性化需求開(kāi)發(fā)的模式進(jìn)行處理,既確保了產(chǎn)品的成熟度和穩(wěn)定性,有兼顧了個(gè)性化需求,通過(guò)敏捷開(kāi)發(fā)模式,快速迭代保障項(xiàng)目按時(shí)、高質(zhì)量的上線運(yùn)行。在項(xiàng)目中,需要多方共同努力,發(fā)起方和實(shí)施方作為一個(gè)整體,確定共同的項(xiàng)目目標(biāo),同時(shí)需要良好的溝通和配合,相互協(xié)調(diào),才可能及時(shí)發(fā)現(xiàn)問(wèn)題,及時(shí)糾偏,逐步實(shí)現(xiàn)確立的項(xiàng)目目標(biāo)。為此,必須制定確實(shí)可行的、清晰的實(shí)施策略,以及各階段的實(shí)施方法,用于指導(dǎo)項(xiàng)目計(jì)劃的制定、資源的搭配。項(xiàng)目成功實(shí)施的關(guān)鍵因素:明確的項(xiàng)目關(guān)系界定,包括:項(xiàng)目實(shí)施中的授權(quán)和職責(zé)。項(xiàng)目管理機(jī)構(gòu)項(xiàng)目管理辦公室ProjectManagementOffice(PMO)作為本項(xiàng)目的管理機(jī)構(gòu),管理項(xiàng)目的日?;顒?dòng),保證本項(xiàng)目的有效實(shí)施和最終成功上線,由項(xiàng)目發(fā)起方和實(shí)施方共同組成,負(fù)責(zé)整個(gè)項(xiàng)目的目標(biāo)確定、計(jì)劃、控制和實(shí)施,制定文檔、問(wèn)題管理、風(fēng)險(xiǎn)控制、質(zhì)量控制、評(píng)審和報(bào)告的標(biāo)準(zhǔn)和過(guò)程,同時(shí)還需要一個(gè)項(xiàng)目指導(dǎo)委員會(huì)ProjectSteeringCommittee(PSC),負(fù)責(zé)需求管理、系統(tǒng)架構(gòu)、技術(shù)設(shè)計(jì)、接口設(shè)計(jì)規(guī)范、技術(shù)開(kāi)發(fā)規(guī)范、系統(tǒng)性能和可靠性設(shè)計(jì)、問(wèn)題解決、系統(tǒng)支持等。完善有效的項(xiàng)目管理架構(gòu),成立項(xiàng)目指導(dǎo)委員會(huì)ProjectSteeringCommittee(PSC),主要由項(xiàng)目總監(jiān)、項(xiàng)目經(jīng)理、咨詢顧問(wèn)、項(xiàng)目管理辦公室成員(PMO)組成,PSC將擁有最終決定項(xiàng)目范圍、實(shí)施優(yōu)先級(jí)、資源分配、重要決策,以及處理項(xiàng)目間關(guān)系的權(quán)力;任何問(wèn)題和沖突必須通過(guò)項(xiàng)目執(zhí)行委員會(huì)ProjectWorkingCommittee(PWC)提交PSC統(tǒng)一決策,PWC主要包括項(xiàng)目總監(jiān)、項(xiàng)目顧問(wèn)和所有項(xiàng)目經(jīng)理;PWC在PMO的領(lǐng)導(dǎo)下、在PSC的指導(dǎo)下,負(fù)責(zé)整個(gè)項(xiàng)目的實(shí)施過(guò)程。

第三節(jié)、系統(tǒng)功能1.平臺(tái)整體架構(gòu)圖2.平臺(tái)總體功能圖

3.功能設(shè)計(jì)原則(1)單一職責(zé)原則(LSP)單一職責(zé)原則的含義是:只能讓一個(gè)類有且只有一個(gè)職責(zé),因?yàn)槿绻袃蓚€(gè)職責(zé),當(dāng)職責(zé)1發(fā)生改變,需要修改這個(gè)類的代碼時(shí),這個(gè)修改有可能會(huì)導(dǎo)致職責(zé)2的運(yùn)行發(fā)生問(wèn)題。單一職責(zé)的優(yōu)點(diǎn)是分類清晰,適用于接口、類、方法,一個(gè)類一個(gè)方法只完成一件事情,避免了代碼耦合出現(xiàn)的問(wèn)題。但是分得太細(xì)又會(huì)人為地增加系統(tǒng)的復(fù)雜性,為開(kāi)發(fā)制造了麻煩。(2)里氏替換原則(LSP)里氏替換原則針對(duì)的是有繼承關(guān)系的子類和父類,為了減少繼承的弊端而生,含義是只要有父親出現(xiàn)的地方子類就可以出現(xiàn),并且替換為子類也不會(huì)有任何錯(cuò)誤(相反父親未必就能完美替換子類)。為了達(dá)成這個(gè)目的,子類就必須要實(shí)現(xiàn)父類的所有方法,即父類的方法必須是子類全部需要的、在調(diào)用時(shí),必須使用父親/接口、子類可以有自己的個(gè)性、實(shí)現(xiàn)父類的方法時(shí)輸入?yún)?shù)可以被放大、實(shí)現(xiàn)父類的輸出結(jié)果時(shí)結(jié)果可以縮小。里氏替換的優(yōu)點(diǎn)是讓繼承得到最大作用發(fā)揮,并減少繼承的弊端,缺點(diǎn)是不太靈活。(3)依賴倒置原則(DIP)依賴倒置原則的定義是,實(shí)現(xiàn)類之間不發(fā)生直接的依賴關(guān)系,其依賴關(guān)系是通過(guò)接口或抽象類產(chǎn)生的,也就是面向接口編程。依賴倒置原則的優(yōu)點(diǎn)是,通過(guò)接口使各個(gè)類或模塊彼此間獨(dú)立,不相互影響,實(shí)現(xiàn)模塊之間的松耦合。缺點(diǎn)是增加了額外維護(hù)接口和類的工作量。(4)接口隔離原則(ISP)接口隔離的原則是,建立單一的接口,不要建立龐大臃腫的接口,盡量細(xì)化接口,接口中的方法盡量少。每個(gè)模塊都應(yīng)該是單一的接口,提供給幾個(gè)模塊就應(yīng)該有幾個(gè)接口,也就是接口模塊化、獨(dú)立化。與單一職責(zé)原則不一樣,單一職責(zé)原則中,一個(gè)接口可以有多個(gè)方法,這多個(gè)方法提供給多個(gè)模塊訪問(wèn),而接口隔離原則則是倡導(dǎo)一個(gè)模塊使用一個(gè)一個(gè)接口,而不是所有的方法都放在同一個(gè)接口中。這樣的設(shè)計(jì)原則雖然可以讓系統(tǒng)內(nèi)聚提高,但是也增加了結(jié)構(gòu)的復(fù)雜化,導(dǎo)致開(kāi)發(fā)難度增加。(5)迪米特法則(LOD)迪米特法則又稱最少知道法則,也就是一個(gè)對(duì)象應(yīng)該對(duì)其他對(duì)象有最少的理解,即一個(gè)類應(yīng)該對(duì)自己需要耦合或需要調(diào)用的類知道的最少。可以降低系統(tǒng)之間的耦合,提高系統(tǒng)的健壯性。在下面這個(gè)例子中,明星類和粉絲類要發(fā)生通信,就需要一個(gè)經(jīng)紀(jì)人的中間類,從而達(dá)到了最少知道法則。這樣雖然能降低耦合度,但是也大大提高了系統(tǒng)復(fù)雜性。(6)開(kāi)閉原則(OCP)開(kāi)閉原則也就是,軟件實(shí)體(類、模塊、方法)應(yīng)該對(duì)擴(kuò)展開(kāi)發(fā),對(duì)修改關(guān)閉,也就是軟件需要變化時(shí),盡量通過(guò)拓展軟件實(shí)體的行為來(lái)實(shí)現(xiàn),而不是修改已有的代碼。開(kāi)閉原則是面向?qū)ο笤O(shè)計(jì)的終極目標(biāo),其他原則可以看做是開(kāi)閉原則的實(shí)現(xiàn)方法。

4.功能安全性設(shè)計(jì)(1)“嚴(yán)禁”原則嚴(yán)禁使用明文或在程序/腳本文件中寫死密碼應(yīng)用系統(tǒng)中涉及的任何密碼,均嚴(yán)禁使用明文,并嚴(yán)禁將密碼寫在代碼/腳本文件中。嚴(yán)禁在網(wǎng)頁(yè)源碼中暴露應(yīng)用處理邏輯嚴(yán)禁在網(wǎng)頁(yè)源代碼中出現(xiàn)類似SQL、腳本、條件判斷等應(yīng)用處理邏輯。嚴(yán)禁在超鏈接中出現(xiàn)參數(shù)信息嚴(yán)禁基于Web的應(yīng)用將數(shù)據(jù)庫(kù)連接用戶、密碼等重要參數(shù)信息放在超鏈接中,超鏈接中參數(shù)信息、服務(wù)調(diào)用信息應(yīng)進(jìn)行變形(亂碼)或者隱藏,以防止SQL注入攻擊,避免黑客猜測(cè)數(shù)據(jù)庫(kù)表結(jié)構(gòu)、數(shù)據(jù)庫(kù)連接用戶和密碼。嚴(yán)禁應(yīng)用系統(tǒng)設(shè)計(jì)留有“后門”嚴(yán)禁以維護(hù)、技術(shù)支持或者特殊操作為由,設(shè)計(jì)違反或者繞過(guò)安全規(guī)則的任何類型的入口和設(shè)計(jì)文檔中未說(shuō)明的任何模式的隱藏入口。(2)必須原則必須提供應(yīng)用系統(tǒng)用戶的身份識(shí)別功能身份識(shí)別是信息安全服務(wù)的基礎(chǔ),基本原則是要做到用戶區(qū)分的唯一性,認(rèn)證是基于身份識(shí)別的,身份識(shí)別最常見(jiàn)的形式就是用戶ID,與密碼組合標(biāo)識(shí)一個(gè)用戶身份。必須對(duì)密碼加密密碼分為交易密碼和用戶登錄密碼等。應(yīng)用系統(tǒng)應(yīng)對(duì)交易密碼的全部使用環(huán)節(jié)進(jìn)行硬加密,包括密碼的產(chǎn)生、密碼錄入、密碼修改、密碼的傳輸、密碼的保存。應(yīng)用系統(tǒng)應(yīng)支持聯(lián)機(jī)密鑰修改,避免加密設(shè)備密鑰變更對(duì)應(yīng)用系統(tǒng)正常運(yùn)行的影響。應(yīng)用系統(tǒng)應(yīng)對(duì)系統(tǒng)的使用用戶密碼進(jìn)行加密(可以是軟加密),包括密碼的產(chǎn)生、密碼錄入、密碼修改、密碼的傳輸、密碼的保存。軟加密時(shí)應(yīng)確保軟加密算法具有足夠的強(qiáng)度,并且確保密鑰存儲(chǔ)安全,對(duì)密鑰的訪問(wèn)應(yīng)嚴(yán)格控制。同時(shí),還應(yīng)采取必要的措施,確保軟加密算法的安全。必須保證密碼安全傳遞應(yīng)用系統(tǒng)應(yīng)建立完善的密碼傳遞機(jī)制,如采用硬件轉(zhuǎn)加密、密碼信封等方式,確保密碼在系統(tǒng)和使用用戶(人)之間的安全傳遞。必須保證密碼強(qiáng)度應(yīng)用系統(tǒng)必須設(shè)計(jì)密碼強(qiáng)度檢查機(jī)制,密碼錯(cuò)誤次數(shù)限制等措施,避免用戶使用簡(jiǎn)單密碼,防止黑客對(duì)密碼進(jìn)行暴力破解。必須提供用戶賬戶鎖定功能當(dāng)用戶帳戶幾次登錄嘗試失敗后,必須禁用該帳戶并將事件寫入日志。同時(shí)必須提供用戶帳戶解鎖功能。必須在設(shè)計(jì)階段將這些策略明確下來(lái)。必須支持密碼有效期密碼不應(yīng)固定不變。作為常規(guī)密碼維護(hù)的一部分,通過(guò)設(shè)置密碼有效期強(qiáng)制應(yīng)用系統(tǒng)用戶對(duì)密碼進(jìn)行定期更改。在應(yīng)用程序設(shè)計(jì)階段,必須考慮提供這種類型的功能。必須對(duì)前端輸入信息進(jìn)行驗(yàn)證將輸入驗(yàn)證策略作為應(yīng)用程序設(shè)計(jì)的核心要素。應(yīng)假定所有的輸入都是惡意的,不要依賴于客戶端的驗(yàn)證,雖然使用客戶端驗(yàn)證可以減少客戶端和服務(wù)器之間的信息傳遞次數(shù)。要做到限制、拒絕或者凈化輸入,輸入驗(yàn)證的首選方法是從開(kāi)始就限制允許輸入的內(nèi)容。按照已知的有效類型、模式和范圍驗(yàn)證數(shù)據(jù)要比通過(guò)查找已知有害字符的數(shù)據(jù)驗(yàn)證方法容易。設(shè)計(jì)應(yīng)用程序時(shí),應(yīng)了解應(yīng)用程序需要輸入什么內(nèi)容。與潛在的惡意輸入相比,有效數(shù)據(jù)的范圍通常是更為有限的集合。為了使防御更為徹底,可能還需要拒絕已知的有害輸入,達(dá)到凈化輸入的效果。(3)盡可能原則盡可能實(shí)現(xiàn)用戶的權(quán)限最小化應(yīng)用用戶的權(quán)限最小化,控制應(yīng)用用戶對(duì)文件、數(shù)據(jù)的訪問(wèn),記錄并統(tǒng)計(jì)登錄歷史;對(duì)重要信息資源設(shè)置敏感標(biāo)記并控制對(duì)設(shè)置敏感標(biāo)記資源的操作。盡可能具有防木馬程序設(shè)計(jì)應(yīng)用系統(tǒng)盡可能設(shè)計(jì)必要的措施防止木馬程序?qū)γ艽a的截取。盡可能使用成熟穩(wěn)定版本的軟件或者工具軟件產(chǎn)品或者工具升級(jí)換代非常的迅速,雖然新的版本會(huì)帶來(lái)很多功能上的提升,但是也可能隱藏著新的缺陷。所以盡可能在功能滿足的情況下使用經(jīng)過(guò)驗(yàn)證的成熟穩(wěn)定的版本。盡可能保證關(guān)鍵信息安全傳遞應(yīng)用系統(tǒng)盡可能完善各種關(guān)鍵信息(例如:磁道信息、卡片校驗(yàn)碼、制卡文件等)傳遞機(jī)制,如采用硬件轉(zhuǎn)加密、密碼信封等方式,確保關(guān)鍵信息在系統(tǒng)和使用用戶(人)之間的安全傳遞。盡可能提供安全審計(jì)功能在應(yīng)用系統(tǒng)中發(fā)生的各種與安全相關(guān)的事件,應(yīng)盡可能記錄下來(lái)。審計(jì)記錄應(yīng)包括安全事件的主體、客體、時(shí)間、事件類型、事件內(nèi)容、事件結(jié)果等內(nèi)容。應(yīng)提供審計(jì)記錄查詢、分類、分析和存儲(chǔ)保護(hù);能對(duì)特定安全事件進(jìn)行報(bào)警;確保審計(jì)記錄不被破壞或非授權(quán)訪問(wèn)。應(yīng)為安全管理中心提供接口;對(duì)不能由系統(tǒng)獨(dú)立處理的安全事件,提供由授權(quán)主體調(diào)用的接口。并提供審計(jì)功能的啟動(dòng)和關(guān)閉功能。

5.總體設(shè)計(jì)階段項(xiàng)目開(kāi)發(fā)組通過(guò)對(duì)系統(tǒng)的功能、運(yùn)行和性能要求加以分析,產(chǎn)生一個(gè)高層次的系統(tǒng)結(jié)構(gòu)、軟件結(jié)構(gòu)、接口和數(shù)據(jù)格式的設(shè)計(jì),并向工程領(lǐng)導(dǎo)小組提交《系統(tǒng)設(shè)計(jì)報(bào)告》(其中包括數(shù)據(jù)庫(kù)設(shè)計(jì)),組織評(píng)審并簽署評(píng)審意見(jiàn)。對(duì)其中評(píng)審不合格的部分進(jìn)一步完善和重新策劃,評(píng)審?fù)ㄟ^(guò)后由雙方共同簽署評(píng)審意見(jiàn),并正式生效,作為后續(xù)軟件開(kāi)發(fā)和測(cè)試的基礎(chǔ)。該報(bào)告內(nèi)容的變更由雙方的現(xiàn)場(chǎng)實(shí)施負(fù)責(zé)人、技術(shù)負(fù)責(zé)人進(jìn)行交流即可確定,并需向工程領(lǐng)導(dǎo)小組匯報(bào)。6.詳細(xì)設(shè)計(jì)階段項(xiàng)目開(kāi)發(fā)組在系統(tǒng)設(shè)計(jì)報(bào)告的基礎(chǔ)上,對(duì)功能和性能要求進(jìn)一步加以分析和細(xì)化并且把軟件的詳細(xì)設(shè)計(jì)文檔化,向工程領(lǐng)導(dǎo)小組提交系統(tǒng)詳細(xì)設(shè)計(jì)報(bào)告,并由項(xiàng)目組組織評(píng)審并簽署評(píng)審意見(jiàn)。對(duì)其中評(píng)審不合格的部分進(jìn)一步完善和重新策劃,評(píng)審?fù)ㄟ^(guò)后由雙方共同簽署評(píng)審意見(jiàn),并正式生效,作為后續(xù)軟件開(kāi)發(fā)和測(cè)試的基礎(chǔ)。該報(bào)告內(nèi)容的變更由雙方的現(xiàn)場(chǎng)實(shí)施負(fù)責(zé)人、技術(shù)負(fù)責(zé)人進(jìn)行交流即可確定,并需向工程領(lǐng)導(dǎo)小組匯報(bào)。7.系統(tǒng)開(kāi)發(fā)階段為了使用戶能夠及時(shí)獲知項(xiàng)目的進(jìn)展情況,開(kāi)發(fā)小組需要每周向用戶相關(guān)領(lǐng)導(dǎo)提交《項(xiàng)目客戶周報(bào)》,用戶項(xiàng)目組可以隨時(shí)對(duì)項(xiàng)目的工作情況進(jìn)行檢查。8.系統(tǒng)實(shí)施和試運(yùn)行階段首先需要經(jīng)雙方交流協(xié)調(diào),形成《項(xiàng)目實(shí)施計(jì)劃》,確定現(xiàn)場(chǎng)實(shí)施的準(zhǔn)備工作、人員和日程安排、培訓(xùn)計(jì)劃、階段目標(biāo)等內(nèi)容,經(jīng)雙方負(fù)責(zé)人簽字后生效,按此計(jì)劃開(kāi)始現(xiàn)場(chǎng)實(shí)施。正式開(kāi)始現(xiàn)場(chǎng)實(shí)施前項(xiàng)目開(kāi)發(fā)組應(yīng)檢查所有必要的準(zhǔn)備工作是否已經(jīng)完成。9.項(xiàng)目驗(yàn)收階段在試運(yùn)行期內(nèi)系統(tǒng)存在一定的細(xì)節(jié)性問(wèn)題是工程項(xiàng)目不可避免的問(wèn)題,特別是隨著用戶應(yīng)用的逐漸深入,此類需求會(huì)逐級(jí)提出,此類問(wèn)題不屬于系統(tǒng)的致命性錯(cuò)誤;因此當(dāng)試運(yùn)行期內(nèi)所發(fā)現(xiàn)的真正的“問(wèn)題和錯(cuò)誤”收斂到一定數(shù)目以下時(shí),各業(yè)務(wù)子系統(tǒng)經(jīng)過(guò)一段時(shí)間的并行工作新系統(tǒng)已基本可靠,就可以切換到正式運(yùn)行階段,開(kāi)始正式運(yùn)行。正式運(yùn)行后,由用戶提出驗(yàn)收要求,雙方共同制定《項(xiàng)目驗(yàn)收計(jì)劃》,組成項(xiàng)目驗(yàn)收小組,共同進(jìn)行項(xiàng)目驗(yàn)收。維護(hù)期的具體工作方式請(qǐng)見(jiàn)售后服務(wù)承諾部分,所有維護(hù)工作,包括軟件出現(xiàn)問(wèn)題修改、細(xì)節(jié)性功能的增強(qiáng),用戶都要以《問(wèn)題及修改記錄》的書面形式提交給公司,修改完成后用戶應(yīng)組織相關(guān)的業(yè)務(wù)負(fù)責(zé)人進(jìn)行確認(rèn),并在《功能清單》中說(shuō)明;如遇緊急情況可事后補(bǔ)齊。項(xiàng)目驗(yàn)收分為功能驗(yàn)收和非功能驗(yàn)收,具體如下:(1)功能驗(yàn)收標(biāo)準(zhǔn)系統(tǒng)各項(xiàng)功能運(yùn)行穩(wěn)定,數(shù)據(jù)處理正確。確保應(yīng)用軟件和開(kāi)發(fā)工具符合知識(shí)產(chǎn)權(quán)相關(guān)政策法規(guī)的要求,數(shù)據(jù)處理符合信息安全的要求。(2)非功能驗(yàn)收標(biāo)準(zhǔn)參照需求規(guī)格說(shuō)明書中的要求,系統(tǒng)各項(xiàng)功能運(yùn)行穩(wěn)定,數(shù)據(jù)處理正確。

(3)分類標(biāo)準(zhǔn)錯(cuò)誤級(jí)別描述A系統(tǒng)的主要功能模塊無(wú)法正常工作系統(tǒng)與外圍系統(tǒng)的數(shù)據(jù)傳輸接口無(wú)法正常工作,或數(shù)據(jù)不正確系統(tǒng)的重要數(shù)據(jù)處理結(jié)果不正確系統(tǒng)整體運(yùn)行不穩(wěn)定系統(tǒng)主要功能模塊或渠道缺失,但雙方達(dá)成一致協(xié)議的除外系統(tǒng)不符監(jiān)管、內(nèi)控、保安需求B系統(tǒng)主要功能模塊或渠道功能不完善系統(tǒng)部分非主要交易無(wú)法正常工作系統(tǒng)與外圍系統(tǒng)的數(shù)據(jù)傳輸接口工作不穩(wěn)定C系統(tǒng)個(gè)別交易無(wú)法正常工作或處理結(jié)果錯(cuò)誤,但可通過(guò)其他替代辦法進(jìn)行處理,不影響業(yè)務(wù)的正常進(jìn)行因系統(tǒng)設(shè)計(jì)原因造成系統(tǒng)個(gè)別交易運(yùn)行效率低D系統(tǒng)在某種情況下才出現(xiàn)的錯(cuò)誤,且不影響正常的業(yè)務(wù)操作功能錯(cuò)誤級(jí)別分類功能驗(yàn)收標(biāo)準(zhǔn)驗(yàn)收結(jié)果功能驗(yàn)收錯(cuò)誤情況描述(允許錯(cuò)誤個(gè)數(shù))ABCD合格0000基本合格性能測(cè)試驗(yàn)收(錯(cuò)誤可進(jìn)行后續(xù)解決和完善)0<=3<=20<=30最終驗(yàn)收00<=10<=20不合格除以上兩種情況外的其他情況(一)驗(yàn)收標(biāo)準(zhǔn)1.功能測(cè)試:對(duì)招標(biāo)文件中的服務(wù)內(nèi)容進(jìn)行測(cè)試,所有功能均可正常使用;2.業(yè)務(wù)流程測(cè)試:針對(duì)該平臺(tái)典型的業(yè)務(wù)(優(yōu)惠劵的領(lǐng)取、查詢、核銷)進(jìn)行測(cè)試;3.易用性測(cè)試:軟件中各個(gè)模塊的界面風(fēng)格保持一致。(二)驗(yàn)收資料1.項(xiàng)目驗(yàn)收申請(qǐng)報(bào)告;2.操作手冊(cè)及使用手冊(cè);3.源代碼及安裝說(shuō)明。在服務(wù)過(guò)程中供應(yīng)商須對(duì)行方的一切有關(guān)信息進(jìn)行保密。

第四節(jié)、系統(tǒng)性能1.核心設(shè)計(jì)原則核心設(shè)計(jì)原則:系統(tǒng)各功能模塊化程度高,獨(dú)立性強(qiáng),能夠方便快捷地進(jìn)行功能擴(kuò)展;系統(tǒng)界面全部符合招標(biāo)文件技術(shù)文件的要求;系統(tǒng)能夠穩(wěn)定、快速的運(yùn)行;體現(xiàn)系統(tǒng)健壯性強(qiáng),數(shù)據(jù)安全性高,符合教育部安全等保要求;系統(tǒng)具備完善的數(shù)字版權(quán)保護(hù)能力;開(kāi)發(fā)技術(shù)能夠兼容各種操作系統(tǒng)和多種硬件設(shè)備,具備新老系統(tǒng)和設(shè)備的兼容能力等。建設(shè)后的系統(tǒng)應(yīng)具備合理性、規(guī)范性、先進(jìn)性、前瞻性、安全性、高效性、實(shí)用性、可靠性、靈活性、擴(kuò)展性、穩(wěn)定性、可維護(hù)性等性能。(1)功能性與一組功能及其指定的性質(zhì)有關(guān)的一組屬性,具體包括:適合性:與規(guī)定任務(wù)能否提供一組功能以及這組功能的適合程度有關(guān)的軟件屬性。準(zhǔn)確性:與能否得到正確或相符的結(jié)果或效果有關(guān)的軟件屬性。互用性:與同其他指定系統(tǒng)進(jìn)行交互的能力有關(guān)的軟件屬性。依從性:使軟件遵循有關(guān)的標(biāo)準(zhǔn),約定,法規(guī)及類似規(guī)定的軟件屬性。安全性:與防止對(duì)程序及數(shù)據(jù)的非授權(quán)的故意或意外訪問(wèn)的能力有關(guān)的軟件屬性.充分考慮系統(tǒng)的安全防護(hù),具備較強(qiáng)的數(shù)據(jù)管理機(jī)制和控制能力。系統(tǒng)充分考慮與外部系統(tǒng)之間的接口,實(shí)現(xiàn)系統(tǒng)的集成應(yīng)用。同時(shí),系統(tǒng)采用開(kāi)放型的應(yīng)用接口,具有靈活的擴(kuò)充性,滿足業(yè)務(wù)系統(tǒng)的整合需要。(2)可靠性與在規(guī)定的一段時(shí)間和條件下,軟件維持其性能水平的能力有關(guān)的一組屬性,具體包括:成熟性:與由軟件故障引起失效的頻度有關(guān)的軟件屬性。容錯(cuò)性:與在軟件故障或違反指定接口的情況下,維持規(guī)定的性能水平的能力有關(guān)的軟件屬性。易恢復(fù)性:與在失效發(fā)生后,重建其性能水平并恢復(fù)直接受影響數(shù)據(jù)的能力以及為達(dá)此目的所需的時(shí)間和能力有關(guān)的軟件屬性充分考慮性價(jià)比。系統(tǒng)采用具有平臺(tái)無(wú)關(guān)性、安全性、網(wǎng)絡(luò)移動(dòng)性好的基于JAVA語(yǔ)言,有嚴(yán)格的安全控制機(jī)制,可以確保系統(tǒng)的健壯、安全可靠;在網(wǎng)絡(luò)上,保證內(nèi)部系統(tǒng)的數(shù)據(jù)不被非法用戶所獲取。在應(yīng)用軟件的設(shè)計(jì)上,強(qiáng)化權(quán)限管理功能,具有多級(jí)安全機(jī)制。通過(guò)對(duì)各級(jí)部門、人員的權(quán)限分配,做到所有人員只能查看與自己相關(guān)的數(shù)據(jù),并建立完善的日志管理,做到所有操作都有據(jù)可查。(3)可操作性與一組規(guī)定或潛在的用戶為使用軟件所需作的努力和對(duì)這樣的使用所作用的評(píng)價(jià)有關(guān)的一組屬性,具體包括:易理解性:與用戶為認(rèn)識(shí)邏輯概念及其應(yīng)用范圍所花的努力有關(guān)的軟件屬性。易學(xué)性:與用戶為學(xué)習(xí)軟件應(yīng)用所花的努力有關(guān)的軟件屬性。易操作性:與用戶為操作和運(yùn)行控制所花努力有關(guān)的軟件屬性。軟件設(shè)計(jì)功能合理、應(yīng)用合理、操作性合理。在操作上,結(jié)合使用人員業(yè)務(wù)操作習(xí)慣,界面友好、方便使用。保證各級(jí)操作人員能夠迅速掌握、簡(jiǎn)單易用。(4)高效性與在規(guī)定的條件下,軟件的性能水平與所使用的資源量之間關(guān)系有關(guān)的一組屬性,具體包括:時(shí)間特性:與軟件執(zhí)行其功能時(shí)響應(yīng)和處理時(shí)間以及吞吐量有關(guān)的軟件屬性.資源特性:與在軟件執(zhí)行其功能時(shí)所使用的資源數(shù)量及其使用時(shí)間有關(guān)的軟件屬性。(5)可維護(hù)性與進(jìn)行指定的修改所需的努力有關(guān)的一組屬性,具體包括:易分析性:與為診斷缺陷或失效原因急為判定待修改的部分所需努力有關(guān)的軟件屬性.易改變性:與進(jìn)行修改,排除錯(cuò)誤或適應(yīng)環(huán)境變化所需努力有關(guān)的軟件屬性。穩(wěn)定性:與修改所造成的未預(yù)料結(jié)果的風(fēng)險(xiǎn)有關(guān)的軟件屬性。易測(cè)試性:與確認(rèn)已修改軟件所需的努力有關(guān)的軟件屬性。系統(tǒng)應(yīng)用軟件統(tǒng)一安裝在組織機(jī)構(gòu)管理服務(wù)器上,當(dāng)發(fā)生系統(tǒng)的重安裝、升級(jí)等情況時(shí),只需維護(hù)根服務(wù)器的軟件系統(tǒng),客戶端實(shí)現(xiàn)零維護(hù),大大降低維護(hù)成本。同時(shí),如果下屬部門、人員出現(xiàn)不懂的業(yè)務(wù)處理、軟件操作等情況時(shí),無(wú)須到現(xiàn)場(chǎng)處理,只需在系統(tǒng)中授權(quán),就可以在服務(wù)器完成相應(yīng)的操作。(6)可擴(kuò)展性與軟件可從某一環(huán)境轉(zhuǎn)移到另一個(gè)環(huán)境的能力有關(guān)的一組屬性,具體包括:適應(yīng)性:與軟件無(wú)需采用有別于為該軟件準(zhǔn)備的活動(dòng)或手段就可能適應(yīng)不同的規(guī)定環(huán)境有關(guān)的軟件屬性。易安裝性:與在指定環(huán)境下安裝軟件所需努力有關(guān)的軟件屬性。遵循性:使軟件遵循與可移植性有關(guān)的標(biāo)準(zhǔn)或約定的軟件屬性。易替換性:與軟件在該軟件環(huán)境中用來(lái)替代指定的其他軟件的機(jī)會(huì)和努力有關(guān)的軟件屬性.應(yīng)考慮未來(lái)業(yè)務(wù)的發(fā)展和管理的變化,根據(jù)業(yè)務(wù)量和業(yè)務(wù)擴(kuò)展情況能夠靈活部署主機(jī)設(shè)備,以支持冗余和負(fù)載均衡,滿足未來(lái)風(fēng)險(xiǎn)預(yù)警管理系統(tǒng)變化的需要。(7)標(biāo)準(zhǔn)化本項(xiàng)目涉及到的各個(gè)系統(tǒng)模塊設(shè)計(jì)、系統(tǒng)性能、代碼編寫等應(yīng)符合中國(guó)有關(guān)軟件項(xiàng)目的標(biāo)準(zhǔn)化的要求:1.軟件開(kāi)發(fā)過(guò)程中作業(yè)標(biāo)準(zhǔn)化;2.確定每個(gè)作業(yè)的表示形式;3.確定每個(gè)文檔資料的格式;4.規(guī)定組符號(hào);5.根據(jù)軟件開(kāi)發(fā)經(jīng)驗(yàn),制定出大家能夠接受的開(kāi)發(fā)原則和進(jìn)度。整個(gè)系統(tǒng)的應(yīng)用設(shè)計(jì)需符合業(yè)界標(biāo)準(zhǔn),業(yè)務(wù)、功能、界面、內(nèi)容需保持高度統(tǒng)一性和標(biāo)準(zhǔn)性,從而達(dá)到服務(wù)的規(guī)范化和管理的高效性。(8)規(guī)范性代碼命名風(fēng)格、常量定義、代碼格式、控制語(yǔ)言、注釋規(guī)范符合業(yè)界標(biāo)準(zhǔn)。采用成熟的軟硬件平臺(tái)和技術(shù),并符合IT設(shè)計(jì)原則。采用行業(yè)標(biāo)準(zhǔn)技術(shù),采用可擴(kuò)展的系統(tǒng)架構(gòu),開(kāi)放式語(yǔ)言。按照客戶信息化規(guī)劃統(tǒng)一設(shè)計(jì)系統(tǒng)結(jié)構(gòu),特別是應(yīng)用系統(tǒng)建設(shè)結(jié)構(gòu)、數(shù)據(jù)模型結(jié)構(gòu)、數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)以及系統(tǒng)擴(kuò)展規(guī)劃等內(nèi)容,從規(guī)劃的全局出發(fā)、從長(zhǎng)遠(yuǎn)的角度考慮。(9)先進(jìn)性技術(shù)水平要保證先進(jìn)性,符合當(dāng)代信息技術(shù)發(fā)展形勢(shì),代表當(dāng)前計(jì)算機(jī)科學(xué)的發(fā)展方向。所選擇的各平臺(tái)供應(yīng)商應(yīng)有能力對(duì)該項(xiàng)進(jìn)行持續(xù)開(kāi)發(fā),可以保證該項(xiàng)技術(shù)不斷地更新并可順利升級(jí)而維持系統(tǒng)的先進(jìn)性。提供良好的技術(shù)支持和技術(shù)服務(wù),以滿足當(dāng)前的業(yè)務(wù)需求,使業(yè)務(wù)或生產(chǎn)系統(tǒng)具有較強(qiáng)的運(yùn)作能力。技術(shù)上采用網(wǎng)絡(luò)計(jì)算技術(shù)和分布處理模式,保證技術(shù)上的先進(jìn)性和前瞻性。采用國(guó)際最新的科技成果,從而保證整個(gè)系統(tǒng)在整體技術(shù)架構(gòu)上處于領(lǐng)先地位,系統(tǒng)在建成后幾年內(nèi)不應(yīng)由于技術(shù)原因而進(jìn)行較大的調(diào)整,可通過(guò)升級(jí)保持系統(tǒng)的先進(jìn)性,延長(zhǎng)其生命周期,同時(shí)又要保證先進(jìn)的技術(shù)是穩(wěn)定的、成熟的??紤]在大量用戶并行的情況下,系統(tǒng)整體運(yùn)行穩(wěn)定、快速、高效。(10)前瞻性整體設(shè)計(jì)應(yīng)具有創(chuàng)新性,考慮未來(lái)業(yè)務(wù)發(fā)展的要求,對(duì)于法規(guī)政策的變動(dòng)對(duì)業(yè)務(wù)的影響有充分的認(rèn)知和考慮。便于支持行內(nèi)科技系統(tǒng)建設(shè)和發(fā)展;便于通過(guò)更換設(shè)備、參數(shù)修改、外加模塊等實(shí)現(xiàn)小成本UI組件升級(jí)。項(xiàng)目建設(shè)既充分考慮未來(lái)新業(yè)務(wù)和新需求擴(kuò)展和支持,又要充分考慮軟件體系結(jié)構(gòu)與IT規(guī)劃中其他平臺(tái)和系統(tǒng)有效銜接,滿足未來(lái)客戶業(yè)務(wù)發(fā)展及管理的需要。(11)安全性保證系統(tǒng)的安全,從多個(gè)層面提供安全保障措施;主要采用安全文件傳輸協(xié)議,保證數(shù)據(jù)的安全,包括數(shù)據(jù)傳送的安全、數(shù)據(jù)存儲(chǔ)的安全、數(shù)據(jù)操作的安全;提供健全的安全控管機(jī)制,系統(tǒng)運(yùn)行中不安全、異常因素能提出預(yù)警,可有效防范外部及內(nèi)部的操作風(fēng)險(xiǎn)。具有完善的監(jiān)控功能,對(duì)異常能提出預(yù)警,并記錄下錯(cuò)誤日志,提供錯(cuò)誤原因的分析,便于異地維護(hù)。既要采用完善的身份認(rèn)證機(jī)制、分級(jí)權(quán)限管理機(jī)制、數(shù)據(jù)加密機(jī)制保證統(tǒng)計(jì)數(shù)據(jù)真實(shí)性和完整性以及防止統(tǒng)計(jì)數(shù)據(jù)的不實(shí)和泄露,又要從網(wǎng)絡(luò)、系統(tǒng)、軟件、數(shù)據(jù)庫(kù)等方面充分考慮系統(tǒng)的安全,并具備容災(zāi)措施和監(jiān)控手段,保證信息統(tǒng)計(jì)系統(tǒng)安全運(yùn)行。(12)高效性可以及時(shí)響應(yīng)用戶請(qǐng)求。能保證高效、穩(wěn)定的運(yùn)行設(shè)計(jì)合理的業(yè)務(wù)處理流程,采取必要的技術(shù)手段增強(qiáng)系統(tǒng)的處理能力,最大限度地發(fā)揮系統(tǒng)潛能,確保系統(tǒng)對(duì)各類信息的高效處理。(13)實(shí)用性充分利用成熟的先進(jìn)技術(shù),采用性能/價(jià)格比比較高的產(chǎn)品。應(yīng)用設(shè)計(jì)符合實(shí)際,適用于信息系統(tǒng)建設(shè)。同時(shí),系統(tǒng)利于故障跟蹤、檢查和排除,具備完善的異常處理機(jī)制。(14)健壯性成熟性:由軟件故障引起系統(tǒng)失效的頻度低。容錯(cuò)性:與在軟件故障或違反指定接口的情況下,維持規(guī)定的性能水平的能力。易恢復(fù)性:與在失效發(fā)生后,重建其性能水平并恢復(fù)直接受影響數(shù)據(jù)的能力以及為達(dá)此目的所需的時(shí)間和能力有關(guān)的軟件屬性充分考慮性價(jià)比。系統(tǒng)應(yīng)能自動(dòng)地或人工地進(jìn)行每天的數(shù)據(jù)備份、支持全部和增量數(shù)據(jù)備份,且系統(tǒng)應(yīng)具有遠(yuǎn)程備份的實(shí)現(xiàn)方案;系統(tǒng)日常運(yùn)行人為干預(yù)程度應(yīng)較低。(15)靈活性可通過(guò)參數(shù)化配置選擇,靈活對(duì)業(yè)務(wù)進(jìn)行開(kāi)關(guān)控制、權(quán)限控制、流程控制等等,而不需要進(jìn)行程序編譯及服務(wù)重啟。2.系統(tǒng)開(kāi)發(fā)工具(1)JavaJava是一門\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"面向?qū)ο蟮木幊陶Z(yǔ)言,不僅吸收了\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"C++語(yǔ)言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"指針等概念,因此Java語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚?,允許程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程

。Java具有簡(jiǎn)單性、面向?qū)ο?、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"分布式、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"健壯性、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"安全性、平臺(tái)獨(dú)立與可移植性、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"多線程、動(dòng)態(tài)性等特點(diǎn)

。Java可以編寫\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"桌面應(yīng)用程序、Web應(yīng)用程序、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"分布式系統(tǒng)和\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"嵌入式系統(tǒng)應(yīng)用程序等。1.簡(jiǎn)單性Java看起來(lái)設(shè)計(jì)得很像\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"C++,但是為了使語(yǔ)言小和容易熟悉,設(shè)計(jì)者們把C++語(yǔ)言中許多可用的特征去掉了,這些特征是一般程序員很少使用的。例如,Java不支持\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"goto語(yǔ)句,代之以提供\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"break和\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"continue語(yǔ)句以及異常處理。Java還剔除了C++的操作符過(guò)載(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"overload)和多繼承特征,并且不使用主文件,免去了預(yù)處理程序。因?yàn)镴ava沒(méi)有結(jié)構(gòu),數(shù)組和串都是對(duì)象,所以不需要指針。Java能夠自動(dòng)處理對(duì)象的引用和間接引用,實(shí)現(xiàn)自動(dòng)的無(wú)用單元收集,使用戶不必為存儲(chǔ)管理問(wèn)題煩惱,能更多的時(shí)間和精力花在研發(fā)上。2.面向?qū)ο驤ava是一個(gè)面向?qū)ο蟮恼Z(yǔ)言。對(duì)程序員來(lái)說(shuō),這意味著要注意其中的數(shù)據(jù)和操縱數(shù)據(jù)的方法(method),而不是嚴(yán)格地用過(guò)程來(lái)思考。在一個(gè)面向?qū)ο蟮南到y(tǒng)中,類(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"class)是數(shù)據(jù)和操作數(shù)據(jù)的方法的集合。數(shù)據(jù)和方法一起描述對(duì)象(object)的狀態(tài)和行為。每一對(duì)象是其狀態(tài)和行為的封裝。類是按一定體系和層次安排的,使得子類可以從超類繼承行為。在這個(gè)類層次體系中有一個(gè)根類,它是具有一般行為的類。Java程序是用類來(lái)組織的。Java還包括一個(gè)類的擴(kuò)展集合,分別組成各種程序包(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"Package),用戶可以在自己的程序中使用。例如,Java提供產(chǎn)生圖形用戶接口部件的類(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"java.awt包),這里awt是抽象窗口工具集(abstractwindowingtoolkit)的縮寫,處理輸入輸出的類(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"java.io包)和支持網(wǎng)絡(luò)功能的類(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"包)。3.分布性Java設(shè)計(jì)成支持在網(wǎng)絡(luò)上應(yīng)用,它是分布式語(yǔ)言。Java既支持各種層次的網(wǎng)絡(luò)連接,又以Socket類支持可靠的流(\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"stream)網(wǎng)絡(luò)連接,所以用戶可以產(chǎn)生分布式的客戶機(jī)和服務(wù)器。網(wǎng)絡(luò)變成軟件應(yīng)用的分布運(yùn)載工具。Java程序只要編寫一次,就可到處運(yùn)行。4.編譯和解釋性Java編譯程序生成字節(jié)碼(byte-code),而不是通常的機(jī)器碼。Java字節(jié)碼提供對(duì)體系結(jié)構(gòu)中性的目標(biāo)文件格式,代碼設(shè)計(jì)成可有效地傳送程序到多個(gè)平臺(tái)。Java程序可以在任何實(shí)現(xiàn)了Java解釋程序和運(yùn)行系統(tǒng)(run-timesystem)的系統(tǒng)上運(yùn)行。在一個(gè)解釋性的環(huán)境中,程序開(kāi)發(fā)的標(biāo)準(zhǔn)“鏈接”階段大大消失了。如果說(shuō)Java還有一個(gè)鏈接階段,它只是把新類裝進(jìn)環(huán)境的過(guò)程,它是增量式的、\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"輕量級(jí)的過(guò)程。因此,Java支持快速原型和容易試驗(yàn),它將導(dǎo)致快速程序開(kāi)發(fā)。這是一個(gè)與傳統(tǒng)的、耗時(shí)的“編譯、鏈接和測(cè)試”形成鮮明對(duì)比的精巧的開(kāi)發(fā)過(guò)程。5.穩(wěn)健性Java原來(lái)是用作編寫消費(fèi)類家用電子產(chǎn)品軟件的語(yǔ)言,所以它是被設(shè)計(jì)成寫高可靠和穩(wěn)健軟件的。Java消除了某些編程錯(cuò)誤,使得用它寫可靠軟件相當(dāng)容易。Java是一個(gè)強(qiáng)類型語(yǔ)言,它允許擴(kuò)展編譯時(shí)檢查潛在類型不匹配問(wèn)題的功能。Java要求顯式的方法聲明,它不支持C風(fēng)格的\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"隱式聲明。這些嚴(yán)格的要求保證編譯程序能捕捉調(diào)用錯(cuò)誤,這就導(dǎo)致更可靠的程序??煽啃苑矫孀钪匾脑鰪?qiáng)之一是Java的存儲(chǔ)模型。Java不支持指針,它消除重寫存儲(chǔ)和\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"訛誤數(shù)據(jù)的可能性。類似地,Java自動(dòng)的“無(wú)用單元收集”預(yù)防存儲(chǔ)漏泄和其它有關(guān)動(dòng)態(tài)存儲(chǔ)分配和解除分配的有害錯(cuò)誤。Java解釋程序也執(zhí)行許多運(yùn)行時(shí)的檢查,諸如驗(yàn)證所有數(shù)組和串訪問(wèn)是否在界限之內(nèi)。異常處理是Java中使得程序更穩(wěn)健的另一個(gè)特征。異常是某種類似于錯(cuò)誤的異常條件出現(xiàn)的信號(hào)。使用try/catch/finally語(yǔ)句,程序員可以找到出錯(cuò)的處理代碼,這就簡(jiǎn)化了出錯(cuò)處理和恢復(fù)的任務(wù)。6.安全性Java的存儲(chǔ)分配模型是它防御\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"惡意代碼的主要方法之一。Java沒(méi)有指針,所以程序員不能得到隱蔽起來(lái)的內(nèi)幕和偽造指針去指向\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"存儲(chǔ)器。更重要的是,Java編譯程序不處理存儲(chǔ)安排決策,所以程序員不能通過(guò)查看\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"聲明去猜測(cè)類的實(shí)際存儲(chǔ)安排。編譯的Java代碼中的存儲(chǔ)引用在運(yùn)行時(shí)由Java解釋程序決定實(shí)際存儲(chǔ)地址。Java運(yùn)行系統(tǒng)使用字節(jié)碼驗(yàn)證過(guò)程來(lái)保證裝載到網(wǎng)絡(luò)上的代碼不違背任何Java語(yǔ)言限制。這個(gè)安全機(jī)制部分包括類如何從網(wǎng)上裝載。例如,裝載的類是放在分開(kāi)的名字空間而不是局部類,預(yù)防惡意的小應(yīng)用程序用它自己的版本來(lái)代替標(biāo)準(zhǔn)Java類。7.可移植性Java使得語(yǔ)言聲明不依賴于實(shí)現(xiàn)的方面。例如,Java顯式說(shuō)明每個(gè)基本數(shù)據(jù)類型的大小和它的運(yùn)算行為(這些數(shù)據(jù)類型由Java語(yǔ)法描述)。Java環(huán)境本身對(duì)新的硬件平臺(tái)和操作系統(tǒng)是可移植的。Java編譯程序也用Java編寫,而Java運(yùn)行系統(tǒng)用ANSIC語(yǔ)言編寫。8.高性能Java是一種先編譯后解釋的語(yǔ)言,所以它不如全編譯性語(yǔ)言快。但是有些情況下性能是很要緊的,為了支持這些情況,Java設(shè)計(jì)者制作了“及時(shí)”編譯程序,它能在運(yùn)行時(shí)把Java字節(jié)碼翻譯成特定\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/com.kingsoft.wpsoffice.mac/wps-yinzhijuan/x/_blank"CPU(中央處理器)的機(jī)器代碼,也就是實(shí)現(xiàn)全編譯了。Java字節(jié)碼格式設(shè)計(jì)時(shí)考慮到這些“及時(shí)”編譯程序的需要,所以生成機(jī)器代碼的過(guò)程相當(dāng)簡(jiǎn)單,它能產(chǎn)生相當(dāng)好的代碼。9.多線程性Java是多線程語(yǔ)言,它提供支持多線程的執(zhí)行(也稱為輕便過(guò)程),能處理不同任務(wù),使具有線索的程序設(shè)計(jì)很容易。Java的lang包提供一個(gè)\t"/private/var/folders/6v/f4ny_z_n527228lm61gf5yn80000gn/T/c

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論