移動app開發四個關鍵階段分析
2018-03-06

移動APP開發的四個關鍵階段

盡管我們可以將杭州app開發看作是一個迭代過程,但將過程概念化是有幫助的,因為它涉及到許多定義階段。我將一一描述APP開發的每一個階段,同時你要記住,每一個階段都不是與其它階段完全分開的。

階段1:調研和規劃

開發一款移動應用的第一階段需要回答兩個基本的問題:

(1)為什么我要開發這款APP?這款APP為什么需要存在?它將如何為世界帶來價值?人們真的想使用這款APP嗎?哪些人會使用這款APP?為什么會使用?

(2)市面上是否已經這種類型的APP了?如果已經存在的話,我為什么相信我開發的APP能戰勝其它競爭對手?我的APP與其它現有同類APP的區別和優勢分別是什么?

從本質上看,要想回答諸如“我想要我的APP做什么?我的APP為什么要存在?我的APP如何擊敗競爭對手?”這些問題,這就需要你對你的目標市場和目標客戶群有深入的了解。

你需要對市場需求和客戶需求進行廣泛的研究,確保:

(1)確認并證實一個能夠為你帶來盈利的客戶痛點;

(2)計算目標市場規模;

(3)驗證你的產品想法。

此外,你還必須研究你的競爭對手,包括他們的APP、客戶和商業策略。

很難準確地指出你需要花多長時間來收集和確認這些重要的信息,但是你很有可能需要花幾個星期的時間來調研和驗證想法。

階段2:功能和特性

在收集了足夠多有關理想客戶的需要和需求數據后,確定你打算提供的解決方案確實是有很大的市場需求的,接下來你必須決定應該要為你的杭州app開發哪些具體的功能和特性。很多移動APP開發者都會迷失在這個階段。

在這個階段,你要精確地確定你想讓你的APP以何種方式運行:你希望你的APP能夠做些什么?

它將執行哪些任務、功能和操作?(一對一聊天?與其他應用集成?等等)

它將如何處理數據?它將從用戶那里收集原始數據,還是利用現有的數據框架?

這時,你就需要創建故事板(storyboard)了,例如應用程序的用戶界面的可視化展示,顯示內容的屏幕和這些屏幕之間的聯系和連接:

故事板有助于你發現可用性方面的問題,并改善用戶體驗。

在確定移動APP的功能和特性階段,你還要開發用例,這些用例作為理想用戶與應用進行交互的模板。正如Crew的團隊成員所說的那樣,你開發的功能越多,你的產品就會越復雜,開發應用所需的時間也就越長。

你在這個階段必須做的最重要的決策之一就是你的APP要支持多操作系統和設備,還是只支持一種操作系統和設備。實際上,這通常意味著你必須決定你的APP是否有iOS、Android和Windows版本。

為什么這個選擇從時間表的角度來看非常重要呢?主要因為兩個原因:

(1)為多個操作系統和設備開發一款APP需要更長的時間才能開發完成。

(2)雖然隨著時間的推移,這一差別變得越來越不明顯,但開發一款安卓APP比開發一款iOS APP通常需要更多的時間(通常需要多花20-30%的時間)。

關于這一點,Valeriia Timokhina曾表示:“iOS通常是最開始推出應用的首選平臺,因為只有少量的目標設備和操作系統需要適配。相對于一次性需要適配多個操作系統,一次只確保你的應用在一個操作系統上完美地運行容易得多。此外,在市面上有超過12000個不同的Android設備,幾乎不可能將APP針對每一款Android設備都進行優化。因此,開發和測試Android APP往往需要花費更多的時間,除非你限制支持的設備和支持的屏幕分辨率的數量。如果你想同時開發iOS和Android APP,那么你開發APP所需要的時間和預算可能會翻倍?!?/span>

關于你應該如何同時開發面向多個操作系統的應用,Cruxlab的工作人員指出:“傳統上,Android APP程序是用Java開發的,而iOS APP則是用Swift和objective-objective編寫的。盡管如此,仍然存在大量其他可替代的替代工具,Xamarin、React Native和Ionic是其中的一些比較受歡迎的替代工具?!?/span>

在沒有深入技術細節之前,如果你想同時開發iOS和Android APP(也可能包括Windows應用),那么你可以選擇下面兩種路徑中的一種:

(1)使用兩種完全不同的編程語言來開發APP的兩個不同的版本;

(2)使用跨平臺的開發工具(React Native、Ionic等)同時開發APP的兩個版本,從而簡化流程。

這里再強調一遍,雖然無法準確預測確定APP的核心功能特性所需要的時間,不過大概的時間范圍是肯定的:3-5周左右。

階段3:技術可行性、設計和開發

在確定了你想要APP做什么以及期望它如何運行之后,你接下來必須要明確地確認將這些功能和特性開發出來并正常運行是能夠做到的。在這個過程中,需要讓你的技術團隊參與確認,你想要給用戶帶來的功能和產品前端交互體驗是能夠在后端通過編程來實現的。換句話說,你需要確保前端和后端系統之間的兼容性。為此,你必須咨詢你的技術人員并與其合作。

前端系統包括一個軟件、應用程序或網站的可視化前端元素,它們可以被終端用戶直接查看和訪問。相反,后端系統由一個網站、軟件或信息系統的核心計算邏輯組成,這些系統是可以供用戶通過前端應用程序或系統間接訪問的。

前端開發主要集中在開發的客戶端。前端開發人員將參與分析代碼、設計和調試應用程序,同時確保提供一個無縫的用戶體驗。你可以管理和控制人們在瀏覽器或應用中首先會看到的東西,作為前端開發者,你要負責網站的外觀、感覺和最終設計。

后端開發指的是服務器端的開發,你主要關注的點是網站是如何工作的。這種類型的web開發通常由三個部分組成:一臺服務器、一個應用和一個數據庫。后臺開發人員編寫的代碼是將數據庫信息傳到瀏覽器或應用中。任何你無法輕易看到的東西,比如數據庫和服務器,都是后臺開發人員的工作。

從技術上講,前端流程包括緩存、同步、線框圖、UI設計、UI開發等。數據存儲、用戶管理、服務器端邏輯、數據集成和版本控制等都屬于后端開發。由于后端流程負責計算、業務邏輯、數據庫交互和性能等方面的操作,讓應用運行的大部分代碼都是后端代碼。

后端工程師要與前端設計人員保持持續的溝通,這一點至關重要。否則你就有可能陷入這樣一種危險的境地:后端工程師無法開發前端設計人員想要的東西。

如果你想與后端基礎架構一起來開發前端移動APP,那么最重要的是你要對所要開發的功能進行優先級排序。讓你的后端工程師先開發,這樣你的前端工程師才可以開發功能代碼。如果后端沒有很好地定義,也沒有相應的功能,那么前端工程師的工作效率就會低很多。

開發APP的一個關鍵部分在于需要能成功地訪問你的應用運行的核心數據。你是會使用公共API密匙,還是會開發自己的抽象層?

API的全稱是Application Programming Interface(應用程序接口),它代表了一種獨特的代碼,允許應用與應用之間(開發者)相互訪問。一些全球知名的應用都有開放的API,比如Dropbox、Facebook、Instagram、Skype、Twitter和Uber,開發人員可以利用這些API來開發自己的應用。

階段4:測試與改進

開發一款APP的最后一個階段(除了實際發布和相關的營銷活動之外)是測試和改進階段。

現在,從某種層面上說,測試是開發階段的一部分,因為你的程序員和Alpha測試工程師在開發過程中會不斷地嘗試打破你的APP,以便在其發布之前發現并糾正代碼中存在的錯誤。

Alpha測試是你的公司內部的進行的,因為你的開發人員(無論是員工還是外包)將會在你的APP發布到真實的終端用戶手里之前對應用進行標準化的診斷。

Beta測試的目的是在實驗室外測試你的APP:當真正的用戶有機會按照他們自己喜歡的方使用APP而不是按照你設想的方式使用APP時,這時會發生什么呢?Beta測試的關鍵是要弄清楚當日常用戶將你的應用下載到他們的手機上并按照他們喜歡的方式使用應用時,你的應用是否能支撐住。

Alpha測試需要發現主要的bug和小故障,而Beta測試需要能夠發現APP在真實用戶的真實使用環境中可能會出現的問題。

Alpha測試(開發階段)和Beta階段(測試階段)對于打造一款可靠的應用都是必不可少的組成部分。

一旦你在你自己的開發團隊中對應用完成了Alpha測試后,你就應該將APP開放給特定的公眾進行Beta測試。

你如何才能為即將發布的應用找到合格的Beta測試者呢?你可以通過一些基于Web的服務和平臺來找到測試者,包括BetaFamily、BetaList、ErliBird、PreApps、TestElf、Reddit和UserTesting等。

如果你已經完成了一輪或幾輪Alpha測試,那么你的Beta測試階段需要花的時間應該不會超過3-4周。


av狼公告_丁香五月开心婷婷综合缴情_亚洲在日韩a无v码在线观看