軟件開發(fā)作為互聯(lián)網行業(yè)最基礎也是最重要的崗位之一,其復雜性不言可喻。而要做好一個真正的軟件產品,需要注意很多環(huán)節(jié)。中培偉業(yè)《軟件系統(tǒng)詳細設計最佳實踐》培訓專家龔老師在這里進行詳細介紹。
用戶體驗
現(xiàn)在對于我們來說,用戶體驗是一個說爛了的詞。那是因為,用戶體驗真的很重要,決定了一個產品的成敗。產品開發(fā)完成后,最終到達用戶的手中。產品好不好,用戶說了算。哪些因素影響到用戶體驗呢?我想大概可以從5個角色各自的職責出發(fā)來看,產品的設計是否直達用戶痛點?交互是否符合人的喜好、習慣,UI是否讓用戶覺得舒適?軟件的性能好不好?軟件的缺陷是否多不多?
軟件性能
從技術的角度來講,我們可以通過軟件的性能來分析一個軟件產品的質量。今年許多的技術文章都在談性能優(yōu)化,軟件的性能主要從軟件的啟動速度、流暢度、內存、功耗、流量、apk體積等幾個方面來評判。如果想做好一個應用,性能優(yōu)化應該納入到日常的開發(fā)中持續(xù)進行。具體如何優(yōu)化,這里就不再多說了。
產品安全
產品的安全性可以從兩個角度來看,產品的生產商和產品的最終用戶。對于生產商而言,有許多的內容是需要受到法律保護的,有許多的敏感信息,核心技術、網絡接口等是不可以泄露的。對于用戶而言,我們肯定在本地或者服務器存儲了大量的用戶信息,比如賬號密碼,一些信息一旦泄露將嚴重傷害到用戶的個人利益。所以,為了保護自己以及用戶利益,我們必須要生產一個安全可靠的產品。那么對于一個應用端的開發(fā)者而言,我們的編譯出的apk最終會到用戶手中。所以,我們需要通過代碼混淆、數(shù)據加密、權限限制等一些技術手段來保護我們的應用。
質量評測
一個應用做的好不好,我認為可以主要從上述用戶體驗、軟件性能、產品安全三個維度來進行評判。那么,我們該如何組織這些評判工作呢?我們有在進行這些工作嗎?就目前而言,我相信大多數(shù)的產品、開發(fā)、測試人員都或多或少的參與到這些工作當中,但是也許沒有將一些數(shù)據量化、沒有系統(tǒng)的組織這些工作。目前大部分的應用都集成了行為采集,產品的下載量、用戶的活躍度等也都是體現(xiàn)產品用戶體驗的主要參數(shù)。開發(fā)團隊內部一直在進行性能優(yōu)化的工作,比如異常修復、bug修復、內容泄露,過度繪制,apk瘦身。我們也進行了代碼混淆、數(shù)據加密、apk簽名加密的工作。但是,你知道你的產品質量如何嗎?相比同類產品來,你哪些做的好,哪些做的不好嗎?所以,我覺得將上述這些零碎的工作有系統(tǒng)的組織起來,將一些影響因素進行量化,讓我們更加清楚的了解我們的產品質量是一件非常有意義的事情。