Development
« Previous Entries封閉測試的意義
Tuesday, December 18th, 2007RandBall從九月九日開始進行封閉測試,至今已經過了三個多月,目前系統的運行狀況漸趨穩定,但仍然偶爾會經由註冊用戶的報告中,得到一些回饋訊息找到隱藏的bug。
這就是封閉測試的意義。
在一個系統正式上線公開之前,難免會有些系統規劃或程式撰寫的謬誤存在。有時候bug很明顯,一下子就顯現出錯誤狀況,有時候bug是隱性的,非得要等到使用者行為的多樣性達到一定規模,或是資料庫裡面的記錄超過多少數量,這種問題才會漸漸浮現。RandBall這個網站系統是由我一個人獨自設計與實作完成,無論我如何誇耀智商與反應有多麼聰捷,都難能將一個複雜系統的每個面向設想周全。因此各位用戶的測試,對於RandBall系統後續的健康有很大的幫助。
最近的例子是,rendbell 這位用戶自定了一個遊戲,但在遊戲時間終止前手動清算了該遊戲,接著 rendbell 發現應該撥發的遊戲紅利並未入帳。經過來回多次反應與溝通,最終發現到造成此問題的程式錯誤所在。
在這裡很感謝 rendbell 的協力測試,也非常感謝其他諸位用戶們這段時間的參與,使得 RandBall 這個網站的機制得以進一步驗證其商業模式的可行性與邏輯計算上的嚴謹性。希望在明年度,我們可以找得到資金奧援,更進一步在大眾面前推廣這個有趣的小遊戲給整個 Internet 共享。
API::get_gc
Saturday, November 10th, 2007為便利進階玩家計算遊戲可能重心落點,系統釋出 API::get_gc。
Request Syntax
http://cb.randball.com/api/get_gc?total=TATOL[&CELL=WEIGHT]
TOTAL: 全部格數。若沒有指定為數字格式將引發錯誤結果 -1。
CELL: 投注格位。小於等於0或大於全部格數者忽略不計。
WEIGHT: 投注重量。
[&CELL=WEIGHT] 可以多組輸入,但重複相同格位的參數以後者為準。
範例: http://cb.randball.com/api/get_gc?total=6&1=2&2=3&3=4
Response Result
-1: Error occur 有錯誤狀況或無法計算
0: 重心落於原點
n: 重心落於某格
n, m: 重心落於某兩格中間
新功能 Avatar 暫停實施
Tuesday, September 11th, 2007原本今日開發完畢了一個新功能:Avatar,可以讓用戶上傳多組 Avatar 頭像圖檔,然後隨時切換選用。Avatar 的用途不是很必要,但卻可以替未來的社群功能發展提供一個有趣的元素。
開發完成的模組在我工作電腦上測試運作一切正常,根據系統維護守則,於正式上線啟用前須得經過併行的測試系統確認無誤後,才會再次 Deploy 佈置至 Production AP Server。按照標準安裝程序施作,卻發現此功能的縮圖部份停止反應,並將整個測試系統的 Mongrel service 搞掛。
懷疑是 Avatar 所必需的 RMagick 模組有問題,查詢系統的狀態後才發現,原來測試主機和天字一號AP Server的ruby版本,因為比較晚期安裝的緣故是1.8.6,我工作電腦和天字二號AP Server的ruby版本反倒是較早期的1.8.5。雖說RandBall的功能不受到此1.8.5/1.8.6 migration的影響,但為了後續系統維護時的一致性,仍然抓緊時間將天字一號AP Server的ruby版本降回1.8.5。幸好ruby系統是copy/paste安裝法,只需要將我工作電腦的ruby目錄複製至AP Server即可,但因為檔案容量很大,透過LAN網路複製也很花時間。在這段時間內RandBall服務暫時由天字二號AP Server獨挑大梁, 然遊戲回合啟閉的自動核心還是放在天字一號AP Server上面,為了不要讓每個小時一局的「時時樂」開天窗,我內心裡不斷祈禱檔案複製速度加快點。
還好就在時時樂即將要停盤清算的前一刻,系統降版完成,並且及時啟動了所有天字一號AP Server上面的服務。只是很奇怪的是,Avatar這個新功能仍舊無法測試通過。只好偏勞天字二號AP Server幫忙跑另外一個測試程序,作為比對天字一號AP Server上測試系統的問題。沒料到,天字二號測試系統也同樣在上傳檔案縮圖的那段停止回應,遍查log也找不到原因所在。最後忍痛決定,Avatar這個新功能在還沒找到可以正確運作的訣竅之前,只得暫緩實施了。
整理簡體中文翻譯
Monday, September 10th, 2007今日除了監控封閉測試的系統狀況之外,只稍微調整了界面上用戶暱稱字串長度的破格問題。感謝霹靂噗的 LONG-NICKNAME-TEST 測試。
另外還將簡體中文版的界面文字翻譯檔,徹底清查了一回,將開發過程中省略的簡體翻譯檔、文字參照檔補齊,免得瀏覽器使用簡體中文語系 zh-CN 的朋友看到的會是翻譯得更懶更爛的預設英文版。
同時間,發現到各語系的文字參照檔數量不斷增長,即便我採用 Aptana IDE 編輯器,仍舊很難以管理編輯多個語系的各檔案。幸而當初的 MultiLingual 模組很彈性,將文字參照檔多加入一階目錄後,看起來清爽多了。
剩下的英語版翻譯,我自認為英文程度不足以潤飾現在很工程師口吻的文字內容,只能留著等待其他熱心的朋友幫助完成。
此外還修正了一個小bug,若用戶將暱稱設定為空白,會至少顯示NONAME的字樣。
要出貨了還在想配方
Saturday, September 8th, 2007周日就要開始封閉測試,結果今天還在思考該再新增加什麼功能進去。
先是寫好登入記錄的功能。期間發現原來我的 Apache for WIN32 有問題,REMOTE_ADDR 總是只能得到 0.0.0.0,花了好長時間去找問題和解答。相關記錄寫在 這裡。
再來完成了「我的好友」,功能還挺陽春的,只能夠將某人加入好友名單和「絕交」排除,至於好友名單可以拿來幹嘛,目前還是個謎,但應該是未來網站提供漸趨複雜的社群功能的基底吧。
最後又想要替用戶加入頭像Avatar的功能,找霹靂噗幫忙討論了一下,發覺這個功能說大不大,但如果要達到我理想中的「用戶可擁有多組Avatar隨時切換選用」,管理控制界面得要完善,這樣的話就可能不是一天兩天做得完的,得要寫code、測試,至少得一個禮拜左右。那就先擱著吧,等哪個晚上失眠,就來挑燈夜戰。
封閉測試即將展開
Friday, September 7th, 2007延宕了一個多月之後,RandBall 的封閉測試真的要開始了。
這次的封閉測試,其實有點「醜媳婦總得要見公婆」的意味。我內心裡一方面努力在抗拒面對這沒有人想來玩的失敗事實,但又一方面理智地知道唯有經過封閉測試才能得到用戶的直接反應回饋。RandBall 的功能愈寫愈完整,畫面也愈修愈漂亮,從八月中開始我就知道其實封閉測試應該啟動了,但總是找藉口說要去面試工作啦,太勞累了想放假休息打電動啦,還有個核心程式沒修正完畢系統不會跑啦等等,把這件事情壓下不表。
直到容易寫的程式都寫完了,剩下不容易寫的程式也沒有動力驅使我繼續寫,整個人攤在這裡動也不動,鋒面的雨勢把我困在家裡哪裡都去不成。此時我終於下定決心,該面對的,就讓他來吧。
這個周日,九月九日,如果各位剛好有閒有空,歡迎先到 http://randball.com 網站首頁,瞧瞧封閉測試從哪裡連結進去,當然我這裡也將會同步發文宣傳。這次的封閉測試僅開放前一千名註冊會員,採用 Email 啟動註冊方式,額滿停止。
封閉測試的目的在於蒐集使用者使用意見,並據以修正網站功能的正確性、方便性。我不敢說在這 close-beta 版本的 RandBall 有多好玩多足以吸引玩家持續上線,但唯一的利基是,玩家在封測版所累積的贏點,將可以持續沿用到日後的開放測試版與正式版。
贏點可以幹嘛?….聽說可以兌換 Wii 唷,還有 Nissan 350Z….. 不能說了不能說了,一切都還是商業機密,講多了就破功了。
(原文發表於 http://takol.tw/data/2828946de4cd7af7a2.html )
美工自理
Tuesday, August 28th, 2007之前協請幫忙 RandBall 美工設計部份工作的朋友,因為時間有限無法繼續參與創業團隊而退出了。我反正也有一搭沒一搭地寫網站程式,所以對美工部份打定了主意,第一次的封閉測試索性就扔出個醜到斃也無妨的工程版吧。不好看,沒關係,反正只是認識的朋友內部間的測試而已,就算被罵被嫌,日後都仍有改善的空間。
目前 RandBall 的網站功能寫到已經差不多就要完成了,開始回頭加強一些行銷與說明性的內容。這時候有個很麻煩不知道如何解決的,是資料的語系問題。
界面上的語系切換,已經設計和使用得非常順手。但資料的語系究竟該如何是好?有些基本資訊,例如遊戲球的介紹文字等等,該如何有效率、有彈性和便利日後延伸管理地儲存與顯示,是個非常不好解決的難題。儘管目前封閉測試的對象都是台灣的朋友,但以我這種工程師個性,仍然會考慮到日後「萬一」要提供網站給其他語系玩家閱讀參與,究竟該怎麼辦是好的燙手問題和亟思解決方案。
想到腦袋打結還是沒有答案,乾脆來畫一些 Logo 之類的美工圖案,當作消遣,也避免什麼都不做會就此懶惰消散。
將 Logo 定調後,又回頭修正原來的網站 Layout。歪著腦袋東瞧西瞧,怎麼看都覺得醜。去網路上看 怎麼設計 WEB 2.0 網站 的文章,看完以後決定拿起菜刀,重新切割版面,將使用率不高的 Sidebar 拿掉,將畫面縮減置中,增加視覺凝聚力,並且繪了一個 Banner 作為日後設計的基調範例。
接著想到有人反應不知道遊戲怎麼玩,想要寫說明教學,但我既不會用 Flash,Photoshop 和 Illustrator 又用得不熟,最後決定抓了張 A3 列印紙,拿簽字筆手畫了幾個簡圖,然後用數位相機拍下來,進 Photoshop 修正對比後,搞了個很好笑的遊戲說明。
其實我心裡非常清楚,目前這些自理的美工圖案,頂多可以撐過沒什麼用戶的開發前期,若是要吸引意外進入的不請自來客願意花時間了解網站服務內容,進而願意註冊開始試用,美工部份絕對要花重心聘請專人或專家重新操刀再來一遍的呢。
(原文刊載於 http://takol.tw/data/1488346d304a9e8b29.html)
續耕
Friday, August 17th, 2007先前曾經公告過即將公開的創業網站 http://randball.com/ ,目前狀態重新歸零,進行內部功能整頓與細部微調。尤其前兩週發生了團隊內部成員不合的事件,也間接導致我整個人意興闌珊,懶得去想,懶得去作,或者應該說完全不知道這整件事情所為何來,究竟應否持續投資心力下去。
自從六月初我有了這個創業的創意之後,就開始四下招募團隊的成員。很可惜的是大部分的成員都有自己的工作和生活,能夠如我這般全力投入 RandBall 的時間和興趣並不太多。因此事實上從頭至今,RandBall 幾乎就只有我一個人在搞。寫 Blog,寫連絡信函,寫Business Plan,寫系統分析,寫程式,寫網站文案,寫中英文翻譯字句。這段期間也曾邀請成員一起參與腦力激盪會議,從中獲取了許多寶貴的意見,因此儘管大家對我的實質幫助有限,卻仍很感激這些朋友們的鼎力支持。
現在人雖懶,仍有在緩慢開發系統。只是一整個網站各樣功能和需求千頭萬緒,加上我這人又老沒定性,經常寫到一個有趣的元件,就偏離主軸把一整天的精神都耗費在一件微不足道的事情上面。完成後很開心,但進度卻落後了一天光陰。寫起程式來沒人討論,很悶,若是沒有特別專注的項目,三個小時體力極限過後,就得跑去電視前面待上另外三個小時回神。較慘的是,偶爾全神貫注在某個功能主題上面,雙手飛快的在電腦鍵盤上翩舞來回,突然身旁大毛竄出,大叫「爸爸你來看!」就得毅然地離開書桌,陪公子畫畫彈琴捏泥偶。然後忘了剛才開發程式的前因後果,決定今天到此為止,凡事還是以兒子為重。
其實在七月中旬,RandBall 的基本功能已經完成並交付給內部成員檢視,作為討論更進一步功能的基礎建設。但老實說,就連我也覺得第一個版本的 RandBall 很無趣,即便可以選球下注輸贏,卻絲毫不感覺除了預定的獎品 NDS 之外,還有什麼地方值得一般玩家產生興趣,願意花時間「黏」在這個虛擬的遊戲網站裡。幸好腦力激盪會議中,團隊成員們提供了很好的想法,建議應該提供「使用者自定遊戲」的功能,讓 user 可以主持一個遊戲,並可將遊戲的概況以插件方式嵌入至個人網站內,然後從贏家抽佣分紅。
這個功能說起來不算困難,但因為控制權由官方交付給用戶自決後,得要考慮到許多邏輯規則的嚴謹和彈性,使得原本只有「球」+「遊戲」+「人」這個簡單的三元化架構,增加了「人」+「人」和「人」+「遊戲」這兩個維度,讓網站系統的複雜度瞬間提高五成以上。
可惜沒人得以討論這事兒,平常說話的對象又都儘在聊ㄅㄆㄇ和ABC,使得我的腦袋反應降階至幼兒園程度,很難應付系統分析與網站設計這樣專業的工作內容。怎麼辦?只好拉長戰線,將原本計畫八月推出封測版的計畫無止盡地延後,每日持續耕耘一點點功能,看看今年聖誕節檔期、新年檔期、明年情人節檔期、春節檔期、暑假檔期….有沒有可能將這理論上應該很 Fun & Kuso 的虛擬球戲網站盛大推出公開。
(原文刊載於 http://takol.tw/data/971146c47f2dc65d9.html)
Visual art has gone
Thursday, August 9th, 2007Our visual art designer quit the team last week. It is really pitty that we lose this partner before pushing this funny site out to the world. The reason he decided to stop participanting internal meeting is that he had no any idea about how the web site should look like to. He asked me, […]
RandBall’s internationalization solution
Wednesday, August 1st, 2007From the first day we begin to plan the RandBall web site layout that we decide to provide as more as we can languages’ interface to help promoting RandBall to each regions and countries over the Internet. Usually, this feature is called internationalization and short as i18n. We choose English, Simplified Chinese and Traditional Chinese […]
« Previous Entries