孫爽 王岌
摘要:針對(duì)傳統(tǒng)日程管理系統(tǒng)中缺乏面向團(tuán)隊(duì)協(xié)同管理功能的問(wèn)題,結(jié)合移動(dòng)CSCW思想,設(shè)計(jì)并實(shí)現(xiàn)了基于Android平臺(tái)的協(xié)同日程管理系統(tǒng)。闡述了移動(dòng)CSCW應(yīng)用于日程管理的必要性,分析了協(xié)同日程管理系統(tǒng)的功能需求,描述了相關(guān)開(kāi)發(fā)技術(shù),提出了系統(tǒng)概要設(shè)計(jì),并重點(diǎn)說(shuō)明了協(xié)同日程管理系統(tǒng)中日程查看與日程管理模塊的實(shí)現(xiàn)流程。研究表明,系統(tǒng)應(yīng)用效果良好,能滿(mǎn)足一般群體協(xié)作對(duì)日程管理協(xié)同的應(yīng)用需求。
關(guān)鍵詞關(guān)鍵詞:CSCW;日程管理;安卓;計(jì)算機(jī)支持協(xié)同工作系統(tǒng)
DOIDOI:10.11907/rjdk.171852
中圖分類(lèi)號(hào):TP319
文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào)文章編號(hào):16727800(2017)011008403
0引言
隨著網(wǎng)絡(luò)技術(shù)發(fā)展與各種基于新技術(shù)的管理理念產(chǎn)生,團(tuán)隊(duì)協(xié)作在企業(yè)發(fā)展與決策過(guò)程中的作用日益重要。企業(yè)在處理重大項(xiàng)目和任務(wù)時(shí),要求整合多個(gè)部門(mén)的信息達(dá)到資源共享,實(shí)現(xiàn)跨領(lǐng)域協(xié)調(diào)與合作,對(duì)系統(tǒng)協(xié)同性有很高要求。在此趨勢(shì)下,傳統(tǒng)日程管理系統(tǒng)雖然已能通過(guò)智能手機(jī)等移動(dòng)電子設(shè)備,滿(mǎn)足用戶(hù)的日程安排與定時(shí)提醒等需求,但無(wú)法提供面向團(tuán)隊(duì)的協(xié)同管理功能,如何彌補(bǔ)系統(tǒng)在協(xié)同管理上的不足便成為當(dāng)前急需解決的問(wèn)題。本文分析了日程管理系統(tǒng)在使用過(guò)程中因協(xié)同功能缺失導(dǎo)致的一些問(wèn)題,結(jié)合移動(dòng)CSCW思想開(kāi)發(fā)出移動(dòng)協(xié)同日程管理系統(tǒng),既保留了傳統(tǒng)日程管理系統(tǒng)可移動(dòng)化管理的優(yōu)勢(shì),又實(shí)現(xiàn)了日程管理過(guò)程中異地協(xié)作與成員間的協(xié)作感知[1]。
1開(kāi)發(fā)技術(shù)概述
1.1Afinal網(wǎng)絡(luò)通信框架
協(xié)同日程管理系統(tǒng)中網(wǎng)絡(luò)請(qǐng)求通信功能由Afinal開(kāi)源框架實(shí)現(xiàn),Afinal是一個(gè)開(kāi)源Android orm與IOC應(yīng)用開(kāi)發(fā)框架,可以通過(guò)注釋自動(dòng)綁定UI與事件,快捷實(shí)現(xiàn)對(duì)sqlite數(shù)據(jù)庫(kù)的增刪改查等操作,同時(shí)也提供了http請(qǐng)求工具,提高了程序開(kāi)發(fā)效率。主要組件結(jié)構(gòu)如圖1所示。
FinalHttp:實(shí)現(xiàn)以ajax方式請(qǐng)求http數(shù)據(jù),完成文件上傳、下載與斷點(diǎn)續(xù)傳等功能;FinalBitmap:在無(wú)需考慮bitmap加載過(guò)程中線(xiàn)程并發(fā)控制或內(nèi)存溢出等問(wèn)題的情況下,實(shí)現(xiàn)對(duì)bitmap圖片的顯示;FinalActivity:以注釋方式綁定控件與事件;FinalDb:調(diào)用sqlite的orm框架,快捷完成增刪改查操作。
1.2ListView控件概述
ListView控件由于其可實(shí)現(xiàn)遞增加載特性[2],是Android應(yīng)用開(kāi)發(fā)中極其重要且使用頻率最為頻繁的控件之一。ListView控件繼承自AdapterView類(lèi),可通過(guò)Adapter(適配器)向子類(lèi)視圖填充數(shù)據(jù)[3],ListView繼承關(guān)系類(lèi)如圖2所示。ListView由View、適配器、數(shù)據(jù)3個(gè)元素組成,是單個(gè)View的集合,工作原理如圖3所示。其每個(gè)列表子項(xiàng)都是一個(gè)獨(dú)立的View,通常由一個(gè)xml文件指定,并顯示一條數(shù)據(jù)集合。為了顯示批量數(shù)據(jù),ListView必須與Adapter綁定。
2系統(tǒng)分析與設(shè)計(jì)
2.1需求分析
協(xié)同日程管理系統(tǒng)在實(shí)現(xiàn)個(gè)人日程記錄、安排、查看與定時(shí)提醒等功能的同時(shí),還能滿(mǎn)足團(tuán)隊(duì)人員對(duì)日程移動(dòng)化、協(xié)同化管理的需求[4],例如在共享環(huán)境下為用戶(hù)提供協(xié)作感知等。系統(tǒng)應(yīng)提供以下基礎(chǔ)功能[5]:
(1)日程查看功能。該模塊將顯示用戶(hù)個(gè)人日程與協(xié)作日程,并且綜合日程緊急程度與起止時(shí)間進(jìn)行排序。
(2)日程管理功能。該模塊包含日程新增、修改與刪除功能。為滿(mǎn)足系統(tǒng)協(xié)同性需要,在管理模塊中將日程類(lèi)型分為個(gè)人日程與協(xié)作日程,并通過(guò)設(shè)置相關(guān)優(yōu)先級(jí)對(duì)個(gè)人工作進(jìn)行調(diào)整與集成,以保證群體共同目標(biāo)的完成。為防止出現(xiàn)協(xié)作日程管理混亂,僅對(duì)協(xié)作日程創(chuàng)建者賦予修改與刪除權(quán)限。
(3)消息提醒功能。為了實(shí)現(xiàn)用戶(hù)在共享工作環(huán)境中的協(xié)作感知(每個(gè)用戶(hù)對(duì)共享信息的訪(fǎng)問(wèn)與操作都能被其他用戶(hù)感知),引入消息提醒模塊,當(dāng)協(xié)作日程發(fā)生新增、修改、刪除等狀態(tài)改變時(shí),系統(tǒng)以推送通知的形式告知日程協(xié)作者。
2.2概要設(shè)計(jì)
為了在移動(dòng)終端環(huán)境下實(shí)現(xiàn)面向團(tuán)隊(duì)的日程協(xié)同管理,要求系統(tǒng)能兼容不同型號(hào)智能手機(jī);為了解決不同層次用戶(hù)設(shè)備性能差異較大的問(wèn)題,要求手機(jī)客戶(hù)端輕量化、弱聯(lián)網(wǎng)且服務(wù)器數(shù)據(jù)查找高效[6]。綜合需求、性能與運(yùn)行環(huán)境要求,系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)如圖4所示。
協(xié)同日程管理系統(tǒng)具體功能模塊設(shè)計(jì)如下:
(1)日程查看模塊。主要實(shí)現(xiàn)日程顯示、查看與流轉(zhuǎn)操作,通過(guò)主菜單下方導(dǎo)航欄點(diǎn)擊日程查看進(jìn)入查看界面,顯示日程主題創(chuàng)建時(shí)間、屬性與詳情簡(jiǎn)介,點(diǎn)擊對(duì)應(yīng)日程進(jìn)入該日程詳情界面。在日程查看界面通過(guò)向右滑動(dòng)日程子項(xiàng)呼出日程編輯與刪除的操作按鈕,點(diǎn)擊相應(yīng)按鈕進(jìn)入日程的編輯界面。
(2)日程管理模塊。主要實(shí)現(xiàn)日程新增、修改與刪除等操作,在日程查看界面右劃點(diǎn)擊相應(yīng)操作按鈕進(jìn)入日程編輯,對(duì)日程主題、結(jié)束時(shí)間、詳細(xì)內(nèi)容、計(jì)劃等進(jìn)行修改,點(diǎn)擊右上角保存按鈕完成編輯。協(xié)作日程僅日程創(chuàng)建人具備修改與刪除權(quán)限。
(3)消息提醒模塊。主要實(shí)現(xiàn)在日程與業(yè)務(wù)生成、流轉(zhuǎn)、修改、銷(xiāo)毀的過(guò)程中通知參與人員及定時(shí)提醒等功能。當(dāng)日程狀態(tài)或相關(guān)信息發(fā)生改變時(shí),系統(tǒng)會(huì)對(duì)協(xié)作成員推送通知,可在系統(tǒng)通知欄查看該通知。
3系統(tǒng)實(shí)現(xiàn)
協(xié)同日程管理系統(tǒng)由日程查看、日程管理、消息提醒3個(gè)功能模塊組成,其中消息提醒通過(guò)調(diào)用第三方服務(wù)加以實(shí)現(xiàn),在此本文不作詳細(xì)分析。日程管理主要以日程查看、編輯與新建功能為主。由于日程查看與日程新增界面功能較多,實(shí)現(xiàn)步驟復(fù)雜,故本文詳細(xì)介紹日程查看與新建的實(shí)現(xiàn),其它頁(yè)面與功能可依此類(lèi)推。
3.1日程查看模塊實(shí)現(xiàn)
實(shí)現(xiàn)日程查看核心功能即日程列表的顯示功能,主要使用ListView組件。通過(guò)繼承BaseAdapter重寫(xiě)Schedule ListView。endprint
使用Adapter進(jìn)行列表子項(xiàng)UI外觀(guān)自定義與數(shù)據(jù)填充。由FinalHttp網(wǎng)絡(luò)請(qǐng)求工具連接對(duì)應(yīng)日程列表API,得到服務(wù)器返回日程信息,通過(guò)Translator類(lèi)對(duì)服務(wù)器返回的數(shù)據(jù)進(jìn)行XML解析,并保存為一個(gè)ArrayList
由圖5可知,ListView控件注冊(cè)在SceduleListActivity類(lèi)中完成,主要通過(guò)調(diào)用Adapter.adapte()方法實(shí)現(xiàn)。該適配器通過(guò)繼承BaseAdapter改寫(xiě)其中的getView()方法,完成列表子項(xiàng)數(shù)據(jù)填充與UI自定義,其中數(shù)據(jù)由FinalHttp網(wǎng)絡(luò)請(qǐng)求工具,通過(guò)連接對(duì)應(yīng)的getData API接口得到。
3.2新建日程模塊實(shí)現(xiàn)
為滿(mǎn)足協(xié)作需求,新增日程功能分為新增個(gè)人日程與新增協(xié)作日程。程序中控件注冊(cè)與調(diào)用集中在AddPlanActivity類(lèi)中完成。系統(tǒng)主界面包含日程名稱(chēng)、日程起止時(shí)間、日程內(nèi)容等基本屬性的顯示,以及對(duì)創(chuàng)建日程類(lèi)型的控制(由slidSwitcher控件完成是否為協(xié)作日程屬性的選擇)。在協(xié)作日程新建過(guò)程中系統(tǒng)會(huì)連接一次獲取協(xié)作人API向服務(wù)器請(qǐng)求協(xié)作人列表,當(dāng)完成對(duì)應(yīng)信息填寫(xiě)與選擇后點(diǎn)擊確定按鈕,程序會(huì)將EditText中得到的數(shù)據(jù)組建成請(qǐng)求參數(shù),通過(guò)FinalHttp網(wǎng)絡(luò)請(qǐng)求工具連接新增個(gè)人日程或協(xié)作日程,API完成對(duì)日程的ID分配與創(chuàng)建。程序時(shí)序如圖6所示,業(yè)務(wù)流程如圖7所示。為實(shí)現(xiàn)協(xié)作人對(duì)日程信息的協(xié)作感知,協(xié)作日程創(chuàng)建成功或狀態(tài)改變后,服務(wù)端會(huì)調(diào)用通知系統(tǒng)對(duì)應(yīng)的API完成對(duì)協(xié)同日程創(chuàng)建、修改與刪除相關(guān)動(dòng)態(tài)的同步及通知推送。
4結(jié)語(yǔ)
移動(dòng)協(xié)同日程管理系統(tǒng)在提供傳統(tǒng)日程管理系統(tǒng)可
移動(dòng)化、高效化處理及提醒功能的基礎(chǔ)上,注重提高系統(tǒng)的協(xié)同性,滿(mǎn)足企事業(yè)單位不斷增長(zhǎng)的協(xié)同工作需求。通過(guò)分析傳統(tǒng)日程管理系統(tǒng)的缺陷,結(jié)合移動(dòng)CSCW思想構(gòu)建了完備的協(xié)同化日程管理平臺(tái),實(shí)現(xiàn)了簡(jiǎn)化團(tuán)隊(duì)管理流程、減少團(tuán)隊(duì)溝通時(shí)間、方便團(tuán)隊(duì)事務(wù)追蹤與審查、提高團(tuán)隊(duì)協(xié)作效率的目標(biāo)。系統(tǒng)應(yīng)用效果良好,滿(mǎn)足了一般群體協(xié)作對(duì)日程協(xié)同管理的應(yīng)用需求,同時(shí)也促進(jìn)了團(tuán)隊(duì)日程管理協(xié)同化工作的開(kāi)展與企業(yè)協(xié)同能力的提高。
參考文獻(xiàn)參考文獻(xiàn):
[1]宋海剛,陳學(xué)廣.計(jì)算機(jī)支持的協(xié)同工作(CSCW)發(fā)展述評(píng)[J].計(jì)算機(jī)工程與應(yīng)用,2004(1):711.
[2]丁振凡,吳小元.Android系統(tǒng)ListView控件數(shù)據(jù)遞增顯示研究[J].智能計(jì)算機(jī)與應(yīng)用,2014(2):4953.
[3]孔令宏.Android中的ListView控件的優(yōu)化方法[J].電子技術(shù)與軟件工程,2013(21):270.
[4]馮晨華,徐捷,王鴻谷,等.CSCW系統(tǒng)中共享對(duì)象的協(xié)作支持模型[J],計(jì)算機(jī)研究與發(fā)展,1999(3):304308.
[5]顧冉.移動(dòng)CSCW系統(tǒng)模型的研究與實(shí)現(xiàn)[D].北京:中國(guó)科學(xué)院,2004.
[6]武成偉,姜東民.移動(dòng)協(xié)同辦公研究綜述[J].中國(guó)管理信息化,2009(24):8587.
責(zé)任編輯(責(zé)任編輯:何麗)