把旅行記憶裝進App,我的國家公園打卡App開發故事: 一人團隊
一個人創作APP,我不僅是開發者,還是設計師、專案經理等多重角色⋯
即使是挑戰自己不擅長的領域
看到自己的靈感逐步成為成品
那樣的成就感是無可取代的!
今天,我想要分享在創作國家公園打卡App時,我透過哪些方法、技術和工具幫助我身兼多職!
先來複習一下,MVP必須要有的功能:
- 無需網路即可使用。
- 清晰顯示已造訪和未造訪的國家公園。
- 僅在國家公園內能夠打卡和蒐集印章。
App設計:
為了清晰呈現已造訪的國家公園,我計劃在App中列出所有國家公園的名稱,旁邊加上圖示以標示已造訪的地點。另外,App頂端將顯示已探訪和未探訪的國家公園數量,讓使用者一目了然地了解自己的探險進度。我用最簡單的紙筆畫出了這個概念,並打算利用iOS內建的UITableView來呈現這些資訊。當點擊國家公園名稱時,使用者便可以開始蒐集印章或查看已蒐集的印章。
資料工程:
要羅列所有國家公園並獲取它們的地理位置,我使用了國家公園的API和開源資料。然而,沒有想像中的這麼簡單,例如,Kings Canyon National Park和Sequoia National Park雖然相鄰,而且也是有界線分開來的,但是有些資料說他們兩個是同一個公園,也有資料是分開的⋯我查閱了各種資料來源,甚至詢問過公園管理員,但仍然沒有辦法確定。最終,我決定在我的App中將它們視為一個公園。這些都需要寫一些Python Script去清理、整理資料。
iOS工程:
為了保證即使在沒有網路的情況下也能使用App,我使用iOS內建的Local Data(Core Data)去儲存國家公園的資訊。當使用者在第一次開啟app的時,所有國家公園的資訊就會自動存到Local Database。此外,Core Data還支持多個iOS的裝置之間的資料同步,即使更換手機也不擔心丟失打卡記錄。
另外,為了要讓使用者看到自己與國家公園的位置、卡蒐集印章,我選用了MapBox SDK來顯示地圖。它已經廣泛被許多iOS工程師使用,也有很完善的文件。最重要的是,只要沒超過一定流量,是不需要付費的。
技術支援:
為了監控App運作是否正常,是否有任何錯誤或Bug,我引入了Bugsnag,一款錯誤監控和報告工具。這個工具我在工作的時候已經有用到,我覺得非常好用直覺,且同樣在一定流量內免費。
專案管理:
以上每一個角色的任務,都會分配在Trello(專案管理工具)上面,有效地管理每個角色的工作。遇到暫時沒辦法或者不需要解決的問題時,我就會放進“icebox”(冷凍庫),待適合的時間再來思考和解決。這方法幫助我管理雜亂的想法,我也推薦給所有創業者。
快速開發低成本開發原則:
大量使用第三方、內建工具
以文件完善、有口碑、有免費版的工具為優先
你有自己創作產品的經驗嗎?你是不是也覺得一人分飾多角忙不過來呢?你怎麼樣管理各種角色的任務呢?留言跟我分享!
Member discussion