各位前輩學長大家好。我最近在開發需要外送的點餐系統,用的是php+laravel。
現在在地址的部份我們一直想看能怎麼快速輸入。我的案主說,像必勝客、達美樂他們點餐的時候一定有特殊的方式。不然地址那麼多字,接電話當下怎麼即時記錄?
我原本已經寫了這樣的機制:
選縣市,然後選鄉鎮市區,然後路名用autocomplete的方式用ajax去呼叫,例如輸入"中",下方選單會出現
新北市_新店區_中正路
新北市_新店區_中央路
新北市-土城區_中正路
新北市-土城區_中央路
新北市-土城區_中華路
...
我在路名把行政區也帶出來,是因為,假設選了縣市,但是不知道鄉鎮市區,此時打路名,我把這縣市符合模糊比對的路名叫出前十筆。然後選定之後,幫你把鄉鎮市區補上。這個主要用在哪裡?台北市。因為台北市很多路名大家不會去記什麼區。
然後現在我的案主說,這樣要打字還是花時間。(我心裡想說:打一兩個字也花時間?) 看能不能把路名全叫出來,然後用分頁的方式去點選。我是覺得他們對於打字有一點執迷不悟的排斥。他們想要盡量像POS那樣使用觸控螢幕的視覺介面。
為什麼人家POS機要設計成那樣?我個人覺得那是應用程式的風格(餘毒?)。應用程式本來就都長那樣。但網頁式才是22世紀新潮流(?)
把一個縣市的路名全叫出來,再去分頁,然後靠視力去看,這頁沒有就下一頁,靠視力去挑選路名。這樣會比較輕鬆?我是不太相信。
寫的有點長了。主要是想請問,彼蕯店怎麼接單記錄地址?
一個字一個字從頭打到尾?還是有分段落,例如 xx縣 xx市 xx區 xx路 xx巷 xx號,輸入框只處理 xx 的部份?還是先手寫在紙上,掛掉電話再補單?
它們會覺得打幾個字也很煩是因為:
打中文需要用鍵盤拼字組合, 關鍵在鍵盤輸入.
提供您郵局系統以及某些醫療院所系統的做法 (所有中文欄位, 不限定是地址):
它們用的是注音字母搜尋法, 例如打: ㄅ 這個字, 會把有 ㄅ 字音的字全部搜出來, 所以使用者不需要再打第二個字母, 只需要將游標往下拉就好了.
萬一用戶接著再打第二個注音 (例如: ㄠ) ,
系統會把範圍縮小到: 這兩個字母前後加起來的字 (ㄅ+ㄠ)列出來讓它們選
選字可以透過很多工具: 鍵盤游標, 滑鼠游標, 觸控螢幕....並不限定用鍵盤.
當然這個搜尋, 不需要把辭海裡面所有的字都搜出來, 只要搜這個行業常用的排前面就好.
(這也代表: 你不能再依賴用戶端OS內建的輸入法, 必須自己在前端介面刻一個輸入機制)
工程師的疑問:
為什麼使用者會覺得這樣的方式 (字母+游標選), 比拼出幾個完整的中文字還要快?
其實這是工程師的迷思:因為工程師擅長打字, 並不覺得拼出完整中文字有甚麼困難, 或者速度會慢多少? 所以你用自身的經驗, 想當然爾的去評斷: 直接打出完整的中文字比較快.
但實際在第一線操作的人, 他們的生活背景, 不見得都非常擅長打字 (例: 50 歲的長輩, 或者 30 幾歲但平常很少用電腦的人), 對他們來說, 在螢幕上用眼睛依照順序選字, 會比他:去鍵盤上, 找沒有排列規則的字母來按, 要快許多.(很多人對後者操作有心理恐懼, 會延遲)
更何況, 就算用鍵盤打出完整的拼音, 還是有很多重複字需要選, 對吧? 那麼既然都要選第二次, 為何不讓他打一個字之後就能選到? 這樣就不需要多浪費兩個或三個打字時間.
另外一個比較深層的問題是: 餐飲是個動作非常快速, 且環境雜亂的場所(其實郵局/醫院也都是), 操作者不見得能夠很準確的在小小的鍵盤上, 完成打字作業(工程師會問另外一個問題:鍵盤有很小嗎? 其實不是小, 是排列問題...), 往往很容易被其他移動的同事衝撞位移, 導致打錯字. 當然, 你會質疑: 改用選的難道就比較不會錯嗎? 我手邊沒有數據, 但顯然某些, 或者多數操作者是這樣認定的, 你必須在意, 並處理他們的感覺.
這屬於 UX (使用者體驗) 裡面, 人機介面的研究範圍, 必須深入探討操作心理學, 並大量去量測受測者實際操作的時間才會了解, 同時工程師需要有換位思考的想像力.
您說的用戶背景,這個我知道。我在資訊業也不少年了,經常聽到案主這樣說。只是說,所欲轉換的行為模式是否真的有簡化。還是只是一種偏執。把一個區的路名全都叫出來,這得有多少路名。然後再按下一頁下一頁去選,用視力去挑選,這對餐飲業五十歲的打單人員也是個考驗。這不就矛盾了。1是多按按鈕 2是考驗視力。路名打中字,筆劃少,還可以排在前面。但是如果地址是敦、復這些筆劃複雜,要挑到那個路名,我是真的覺得也不簡單啦。
請問您說的「注音字母搜尋法」,是軟體系統內的功能,還是可安裝在Windows的輸入法?如果說郵局系統是系統內的獨立一套輸入法,那就是要另外開發一套輸入法囉?那… 我的報價可能要提高n倍… 一人獨立開發,我太難了。
有時候業主是缺乏想像力, 只想到他認為有利的, 卻沒看到他認為不利的地方, 這時候, 我們會先做一些假畫面來給他 PoC, 讓他實際體驗看看, 這是不是真的他要的?
通常這些事情會在 UX 階段進行討論, 還不會進入程式開發階段.
有些軟體例如: Adobe XD 或者 Axure RP 都可以在程式還沒寫之前, 先做出模擬畫面, 讓業主去體驗那個動線流程, 或者視覺操作感, 以利後續的討論.
要改變業主的偏執, 很難只靠口述或辯論, 有時候直接把他要的東西拿出來, 讓他實際操作看看, 想法就立刻改變.
至於先前的那些輸入功能都不是系統內建或外加的, 需要自己刻一套出來.
據我所知,必勝客、達美樂每家分店有自己所屬的外送區域,地址在其外的就不接單,或許他們的地址選項比你的少很多也說不一定(?)
回錯地方了,我要回應原PO的說,哈哈~ raytracy大大的回覆讓人獲益良多
我的案主說,像必勝客、達美樂他們點餐的時候一定有特殊的方式。不然地址那麼多字,接電話當下怎麼即時記錄?
解鈴還須繫鈴人
我建議你直接跑一趟必勝客(最好連達美樂也去)
想辦法看他們如何輸入地址
結果有三個可能
1.他們的輸入法比你的好....你就跟案主說明,接受的話你就照抄
2.他們的輸入法比你的差....你就跟案主說明
3.他們跟你用一模一樣的輸入法....你就跟案主說明「你的做法跟他們一樣」
另外囉嗦一句話:
上課才要講道理,接案只要能趕快結案就好
公司機密怎麼可能會告訴你
人家做生意的人活水不缺
你案主開給你多少價碼你就做多少東西給他就好
UI介面好看一點就好
工程師不要想太複雜
現在的人人手一把手機 正常人就是打專線到披薩店訂購披薩好嗎? 你看我待公司永遠不會倒 設備WIN2000
人家叫你開發接單東西要有自己風格和創新好嗎? 你先做一個出來簡單功能 後續在增加其他功能
個人在軟體開發職涯中,也碰過很多類似的要求,ChatGPT火紅後,相信不少業主也會說『ChatGPT可以,你為什麼不可以?』,這類的問題的解決都是靠『話術』,不是靠技術。當然,如果技術能夠解決,你可能就可以綁住該業主了。
一般我會設計成,「下拉+打字」
不打字的情況下,當然會出現你說很多路的問題。
但可以給使用者慢慢滑,也可以給使用者打個字過濾少滑。