孫鯨鵬 南京技師學(xué)院
隨著計(jì)算機(jī)技術(shù)和信息技術(shù)的不斷發(fā)展,傳統(tǒng)行業(yè)和領(lǐng)域進(jìn)行信息化升級(jí)的呼聲也越來越高。從事IT軟件解決方案的相關(guān)人員,應(yīng)具備開發(fā)各種行業(yè)和領(lǐng)域商業(yè)軟件的能力,包括需求分析、系統(tǒng)設(shè)計(jì)、軟件開發(fā),測(cè)試、培訓(xùn)、演示以及后期的維護(hù)等。通過運(yùn)用信息化技術(shù)以提高工作的效率,為推動(dòng)人類社會(huì)進(jìn)步提供極大的技術(shù)支持。
世賽商務(wù)軟件解決方案賽項(xiàng)技能主要考察點(diǎn)就是使用主流的軟件開發(fā)平臺(tái),設(shè)計(jì)開發(fā)基于C/S架構(gòu)的“某個(gè)行業(yè)或領(lǐng)域典型的功能應(yīng)用”。參賽者需要根據(jù)賽題材料,分析用戶的需求,遵循相應(yīng)的規(guī)范設(shè)計(jì)及開發(fā)該軟件解決方案,并按時(shí)間點(diǎn)提交相應(yīng)可交付物。本文將以.NET作為開發(fā)平臺(tái),結(jié)合SQL server數(shù)據(jù)庫(kù)、Office辦公軟件,針對(duì)44屆世賽商務(wù)軟件解決方案賽項(xiàng)測(cè)試項(xiàng)目—用戶認(rèn)證與監(jiān)控模塊進(jìn)行設(shè)計(jì)與開發(fā)。
AMONIC是一家總部位于阿聯(lián)酋阿布扎比的航空公司,為了給客戶提供優(yōu)質(zhì)的服務(wù)并在各分公司之間提供數(shù)據(jù)協(xié)作,分析和自動(dòng)化,公司管理層決定開發(fā)部署自動(dòng)化軟件系統(tǒng)。用戶認(rèn)證和系統(tǒng)監(jiān)控將是本項(xiàng)目開發(fā)的第一個(gè)模塊。
對(duì)于給定的應(yīng)用環(huán)境,構(gòu)造以下的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足用戶的應(yīng)用需求,用戶數(shù)據(jù)字段列表包括RoleID,Email,Password,First name,Last name,OfficeID,Birthdate,Active。
Users表中的Email地址用于用戶名的檢測(cè)。
如果管理層禁用了某用戶,而此用戶輸入了正確的憑證應(yīng)顯示一條適當(dāng)?shù)奶崾拘畔?,告知其無法登錄的原因。
用戶認(rèn)證及是否被禁用邏輯代碼如下:
if (buser.validLogin(txtUserName.Text.Trim(),buser.createMD5Hash(txtPassword.Text.Trim())))
{ //獲取用戶對(duì)象
muserStatic = buser.getUser(txtUserName.Text.Trim());
//用戶被禁用則停止并給出提示
if (!muserStatic.Active)
{ //提示用戶名未激活
MessageBox.Show("YOUR ACCOUT IS NOT ACTIVE,PLEASE CONTACT ADMINISTRATOR!","SORRY", MessageBoxButtons.OK, MessageBoxIcon.Exclamati on);
return; }}
上述代碼段validLogin函數(shù)首先判斷用戶名及密碼是否正確,若驗(yàn)證成功則獲取當(dāng)前用戶的對(duì)象,并判斷當(dāng)前用戶是否被禁用。若被禁用則提示用戶不能登錄的原因并返回。
總結(jié):基于AMONIC航空公司自動(dòng)化軟件系統(tǒng)的測(cè)試項(xiàng)目貼近現(xiàn)實(shí)應(yīng)用案例,具有較高的參考價(jià)值。本文在分析了該系統(tǒng)用戶認(rèn)證與監(jiān)控模塊的需求后,對(duì)登錄模塊進(jìn)行了設(shè)計(jì)與開發(fā),探討了對(duì)應(yīng)的解決方案,并使用C#語言給出了相關(guān)示例,希望能給讀者有所幫助。