適應(計算機科學)
編輯計算機科學中的"適應"一詞是指一個交互式系統(適應性系統)根據所獲得的關于用戶和環境的信息,將其行為適應于個別用戶的過程。適應是Scrum中經驗主義的三大支柱之一。
適應的需要
編輯一個軟件系統要經過一個可能很長的軟件工程周期,在交付之前,需求工程師、設計師和軟件開發人員要實現系統的各個組成部分。然而,不可能預見到所有用戶的需求,單一的最佳或最優的系統配置是不可能的。用戶的積極參與和對用戶和任務要求的清晰理解是基于計算機的交互系統開發中的一個挑戰,原因有二。潛在的用戶群在項目開始時可能并不清楚,需要根據未來如何使用軟件系統的情景來確定。這些群體需要隨著系統設計的發展而修改,因為可能會有各種潛在的受影響的用戶群體。項目的設計可能包括與用戶目前對系統的體驗相比的重大變化;因此,用戶可能對他們關于這個未來系統的需求沒有信心和準確的認識。國際標準化組織通過其交互系統的以人為本的設計過程的規范,對基于計算機的交互系統的整個生命周期中以用戶為中心的設計活動給予指導。以用戶為中心的設計的核心任務之一是在眾所周知的用戶與開發者之間的差距中進行協商并促進溝通,同時承認每一方不同的表達形式和不同的要求。然而,盡管實施了以人為本的設計過程,一些類型的現代應用由于暴露在越來越多的情景動態中而需要即時的適應。
適應性和適應性
編輯即使在一個項目中實施的以用戶為中心的設計過程保證了一定程度的用戶接受,并產生了對使用環境的更豐富的理解,完成的產品適應不斷變化的條件的能力仍然對廣泛的接受起著核心作用。操作環境將發生變化,任務將是不同的,終端用戶將是異質的,他們的能力和期望將不斷發展。在這里,開發人員也不可能預測到所有可能的需求修改。因此,由于專業開發所需的時間太短或新功能的成本太高,條件的動態變化將系統特性的定制過程從開發階段轉移到使用和操作階段。出于這個原因,開發人員在系統中實施了適應性技術,以便盡可能快地對變化的條件做出反應。這個應用場景的例子清楚地顯示了關于這種適應技術的一個重要區別:手動和自動執行的適應過程之間的區別。
因此,術語適應性被分解為兩個術語:適應性和可適應性。適應性指的是一個根據不斷變化的條件自動適應其用戶的系統,也就是一個自適應系統。適應性指的是用戶可以通過自己的定制活動對系統進行實質性的定制,也就是一個可適應的系統。自適應和可適應系統是相互補充的。一旦系統開發完成,這兩種方法都能增加用戶需求和系統行為之間的匹配。因此,系統在使用過程中保持了靈活性。
適應性的催化劑
編輯不斷變化的條件引發了適應性的執行。許多特征都可以作為適應過程的催化劑來考慮。它們可以分為三大類:個體間差異、個體內差異和環境差異。
個體間的差異
編輯個體間的差異是指幾個使用者之間在多方面的差異。如果應用程序設計者想讓他們的系統被廣大社區所接受,那么像殘疾這樣的生理特征是他們最關心的。對用戶偏好的考慮,如語言、顏色方案、交互方式、菜單選項或安全屬性,以及其他無數的個人偏好,都是流行的適應性來源,可以在不同的應用中重復使用。其他來源是用戶的興趣和不興趣,心理個性特征,如情緒、自信、動機或信仰,這些都很難自動評估。
個體內部差異
編輯個體內部差異考慮的是單個用戶的演變和進一步發展,以及任務隨時間的變化。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/174875/