陳俊達(dá) 蔡泓文 李瑞洋 崔倩倩 張巧麗(西京學(xué)院,陜西 西安710123)
目前,已有很多關(guān)于車載場景燈控制的“小助手”APP,但是多數(shù)APP 功能太多復(fù)雜以至于根本就找不到或者說很難找到所需要的額功能,這對用戶來說顯然是不方便的。更有甚者有些APP 的功能根本就用不到或者很少用到,這也給用戶帶來了大大的不便。我力主車載場景燈控制的常用功能的簡化,在方便用戶使用的目的下進(jìn)行設(shè)計(jì)。
世界上現(xiàn)主流的手機(jī)系統(tǒng)為Android 系統(tǒng)和ios 系統(tǒng),顯然,安卓手機(jī)用戶人數(shù)要遠(yuǎn)大于蘋果手機(jī)用戶,從另一方面看,安卓的開放程度較高,安卓手機(jī)用戶下載APP 的途徑較蘋果手機(jī)用戶更加廣泛方便快捷。
Android 系統(tǒng)以其突出的市場占有率和開發(fā)的特性吸引了大量的開發(fā)人員,上百萬類型豐富而且創(chuàng)意獨(dú)特的應(yīng)用程序應(yīng)運(yùn)而生[6]。隨著Android 系統(tǒng)的不斷完善,越來越多的嵌入式系統(tǒng)引入Android 平臺作為系統(tǒng)平臺。Android 平臺的一大優(yōu)勢是使用觸摸屏操作APP 應(yīng)用程序,在大多數(shù)應(yīng)用場合利用這一優(yōu)勢效率很高,用戶體驗(yàn)良好[1]。
除此之外,我們還可以在可以在Android 平臺快速實(shí)現(xiàn)人臉檢測,適合算法驗(yàn)證、科研、教學(xué)和一般應(yīng)用[2]。我們可以把Android 系統(tǒng)和LED 燈有效的結(jié)合起來,實(shí)現(xiàn)更加可靠高效的LED 燈控制技術(shù),充分利用其成本低、體積小、低功耗的特點(diǎn),盡量把此次軟件開發(fā)設(shè)計(jì)同51 單片機(jī)的仿真結(jié)合起來。
當(dāng)然,Android 系統(tǒng)也存在應(yīng)用啟動時間過長,不能在短時間內(nèi)迅速對用戶輸入進(jìn)行反饋等[14]一系列問題。
運(yùn)用所學(xué)知識、學(xué)習(xí)相關(guān)java 語言以及開發(fā)方法著重進(jìn)行本課題的設(shè)計(jì)與開發(fā),在Android Studio 平臺上進(jìn)行設(shè)計(jì)。
根據(jù)多方面了解,我認(rèn)為首先要向使用者介紹軟件能實(shí)現(xiàn)的功能,這樣使用者就可以了解軟件的功能以及如何測試和使用軟件,在使用者使用軟件的同時開發(fā)者也可以根據(jù)使用者的反饋改進(jìn)和完善軟件功能,并參考同行軟件和主流趨勢使軟件的界面更加友好、操作更加現(xiàn)代化、運(yùn)行更加高效。
我們可以從六個方面來進(jìn)行此軟件的需求分析:
4.1 對所要設(shè)計(jì)開發(fā)的軟件進(jìn)行初步了解。
4.2 在開發(fā)控制方面的軟件過程中需要使用藍(lán)牙、wifi 網(wǎng)絡(luò)等把Android 手機(jī)和硬件高效連接起來。主要的功能我總結(jié)了如下幾點(diǎn):(1)了解常見的可調(diào)光調(diào)色溫的LED 燈具的控制方法;(2)熟悉安卓APP 開發(fā)技術(shù),特別是基于藍(lán)牙的系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)技術(shù);(3)設(shè)計(jì)實(shí)現(xiàn)基于安卓的車載場景燈控制APP,實(shí)現(xiàn)場景模式定義、按指定場景模式開燈、關(guān)燈、以及場景模式分享和導(dǎo)入等功能。
4.3 在設(shè)計(jì)開發(fā)軟件的過程中也要考慮除了軟件以外的功能需求。
4.4 反向軟件要求,即我們可以在獲取其他軟件所有者許可,在合法的情況下參考他人軟件的源代碼。
4.5 著手設(shè)計(jì)開發(fā)軟件要考慮到遇到各種限制問題,并予以解決。
4.6 查閱關(guān)于此軟件的支持信息。
收集的使用者的信息數(shù)據(jù)在整個Android 開發(fā)平臺的變化如圖1 所示。
圖1 使用者的信息數(shù)據(jù)流程圖
平臺上使用者的信息數(shù)據(jù)變化如圖2 所示。
圖2 數(shù)據(jù)(使用者)流圖
系統(tǒng)設(shè)計(jì)又稱物理設(shè)計(jì),是開發(fā)管理信息系統(tǒng)的第二個階段。軟件的設(shè)計(jì)開發(fā)按照常理可分為兩個設(shè)計(jì)開發(fā)階段:最先要考慮的是軟件的整體,然后對其進(jìn)行設(shè)計(jì)。這一階段的任務(wù)是設(shè)計(jì)系統(tǒng)的框架和配置文件,以及用戶單元和領(lǐng)導(dǎo)。該部門根據(jù)整體的設(shè)計(jì)為詳細(xì)設(shè)計(jì)制定了詳細(xì)的報(bào)告和批準(zhǔn)。這兩部分工作是相互關(guān)聯(lián)的,需要加以劃分。
軟件的設(shè)計(jì)開發(fā)是開發(fā)者需要承擔(dān)的的工作,開發(fā)者會結(jié)合前輩的經(jīng)驗(yàn)和制定的開發(fā)計(jì)劃來進(jìn)行軟件的設(shè)計(jì)。因此,我們需要在這一階段規(guī)范地設(shè)計(jì)軟件,代碼的編寫需要明了有序,格式整齊方便修改。
6.1 系統(tǒng)模塊設(shè)計(jì)
將需求轉(zhuǎn)換為用軟件系統(tǒng)的過程即為系統(tǒng)設(shè)計(jì)的過程。第一是研究并分析目標(biāo)體系,接下來對該基于安卓的車載場景燈控制APP 來做總體的規(guī)劃,這個是系統(tǒng)開發(fā)的首要的步驟。在對該基于安卓的車載場景燈控制APP 做出分析研究以后,人們就可以制定該系統(tǒng)的整體規(guī)劃。系統(tǒng)設(shè)計(jì)分為六部分即系統(tǒng)的整體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì),剩余三部分為開發(fā)工具及其技術(shù)以及開發(fā)模式。
6.2 數(shù)據(jù)庫設(shè)計(jì)
需求分析:邏輯設(shè)計(jì)- 物理設(shè)計(jì)- 維護(hù)優(yōu)化。
整體的需求分析:我們需要了解數(shù)據(jù)為何物,了解數(shù)據(jù)所具備的屬性,以及這些屬性具有哪些特點(diǎn),并加以利用。
前期的邏輯設(shè)計(jì):對所用的數(shù)據(jù)庫進(jìn)行邏輯建模。
中期的物理設(shè)計(jì):利用數(shù)據(jù)庫的特點(diǎn)把前期的邏輯設(shè)計(jì)轉(zhuǎn)變?yōu)橹衅诘奈锢碓O(shè)計(jì)。
后期的維護(hù)完善:在軟件開發(fā)設(shè)計(jì)完成后根據(jù)使用者的反饋對其進(jìn)行維護(hù)。
實(shí)體之間的連接有以下不同的情況:
a. 可以將三個或更多個實(shí)體之間的多變量連接轉(zhuǎn)換為關(guān)系模型。
連接到多變量關(guān)聯(lián)的每個實(shí)體的代碼和關(guān)聯(lián)本身的屬性被轉(zhuǎn)換成關(guān)系的屬性,并且每個實(shí)體的代碼構(gòu)成關(guān)系代碼或關(guān)系代碼的一部分。
b.可以組合使用相同代碼的關(guān)系。
根據(jù)互聯(lián)網(wǎng)上前輩的經(jīng)驗(yàn)總結(jié),我認(rèn)為一個好的數(shù)據(jù)庫應(yīng)該具備以下原則:
a.遵循簡潔原則,去除重復(fù)的數(shù)據(jù)使檢索方便快捷。b.設(shè)計(jì)好庫的結(jié)構(gòu)可以讓其更高效的運(yùn)行。
c.設(shè)計(jì)出色的數(shù)據(jù)結(jié)構(gòu)可以讓數(shù)據(jù)庫更加穩(wěn)定。