學(xué)籍管理系統(tǒng)詳細(xì)設(shè)計(jì)方案_第1頁
學(xué)籍管理系統(tǒng)詳細(xì)設(shè)計(jì)方案_第2頁
學(xué)籍管理系統(tǒng)詳細(xì)設(shè)計(jì)方案_第3頁
學(xué)籍管理系統(tǒng)詳細(xì)設(shè)計(jì)方案_第4頁
學(xué)籍管理系統(tǒng)詳細(xì)設(shè)計(jì)方案_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

項(xiàng)目名稱

學(xué)生成績管理系統(tǒng)項(xiàng)目負(fù)責(zé)人組 員2013年

6月

10

編寫目的

依據(jù)。 背景統(tǒng)提高工作效率。該系統(tǒng)是基于C/S構(gòu)架的桌面客戶端軟件,使用對象為學(xué)生和教師,1.3 參考資料[1]張海藩.軟件工程導(dǎo)論第五版.清華大學(xué)出版社.2008 術(shù)語定義及說明

設(shè)計(jì)概述 任務(wù)和目標(biāo)

響應(yīng)時(shí)間:少于3秒

更新處理時(shí)間:少于2秒

數(shù)據(jù)的轉(zhuǎn)換和傳送時(shí)間少于5秒

運(yùn)行環(huán)境的變化:在windowsXP或以上的版本都能運(yùn)行

配置要求:需將JRE路徑配置到系統(tǒng)環(huán)境變量中

1)

由于系統(tǒng)較小,且在Windows7系統(tǒng)下開發(fā),故在Windows環(huán)境下運(yùn)行沒

有什么限制。2)

學(xué)生的一些私人信息必須要保護(hù)好。3)

該系統(tǒng)要受資金、壽命、社會(huì)等系列因素的制約和限制。4)

界面風(fēng)格上受到Java特有風(fēng)格的限制

系統(tǒng)詳細(xì)需求分析 詳細(xì)需求分析功能需求分析:(1)硬件奔騰處理器以上的均可,操作系統(tǒng)XP以上均可(2)安裝了JRE的都可以,JRE基本都可以安裝 接口需求分析

支持一般的P

系統(tǒng)總體結(jié)構(gòu)確認(rèn) 字段名學(xué)號姓名

數(shù)據(jù)類型

主鍵Y

字段名 數(shù)據(jù)類型

主鍵課程名學(xué)分

Y字段名 數(shù)據(jù)類型

主鍵學(xué)號課程名成績

Y

系統(tǒng)詳細(xì)界面劃分認(rèn)信息,功能界面負(fù)責(zé)主要功能的實(shí)現(xiàn)登陸界面:包括簡單的信息錄入,確認(rèn)功能界面:包括信息維護(hù),信息查詢,成績統(tǒng)計(jì),排序功能選項(xiàng),同時(shí)提供退出和注銷功能據(jù)庫提供的接口來實(shí)現(xiàn)查詢,刪除功能 系統(tǒng)詳細(xì)設(shè)計(jì) 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)及子系統(tǒng)劃分系統(tǒng)結(jié)構(gòu)設(shè)計(jì):前端:登陸模塊功能模塊后端:數(shù)據(jù)庫模塊子系統(tǒng)劃分:前端功能模塊劃分:信息維護(hù),信息查詢,成績統(tǒng)計(jì),排序,排名系統(tǒng)后端數(shù)據(jù)庫模塊劃分:查找,刪除,更新,插入,排序 系統(tǒng)功能模塊詳細(xì)設(shè)計(jì)模塊名稱:查找(由于模塊較多(詳見代碼),僅舉一例)輸入:學(xué)生姓名處理:public

static

String[][]

queryBySname(String

sname)

throws

IOException{RandomAccess

=

read);

long

pos;int[]

where

=

{

0

};String[]

who

=

{

sname

};ArrayList

res

=

new

ArrayList();pos

=

check(STable,

0,

where,

who);while

(pos

>=

0)

{rf.seek(pos);String

line

=

myReadLine(rf);String[]

atbs

=

line.split(",");String[][]

eles

=

queryBySnum(atbs[1]);for

(int

i

=

0;

i

<

eles.length;

i++)res.add(eles[i]);pos

=

check(STable,

rf.get(),

where,

who);}rf.close();return

castToStringArray(res);}算法描述輸出

模塊名稱:刪除輸入:學(xué)號處理:public

static

int

deleteStudent(String

num)

throws

IOException

{if

(num.indexOf(',')

>=

0)return

-2;RandomAccess

=

read);int[]

iarr1

=

{

0

};String[]

sarr1

=

{

num

};long

tmppos;RandomAccess

=

read);tmppos

=

check(SCTable,

0,

iarr1,

sarr1);while

(tmppos

>=

0)

{tmprf.seek(tmppos);myReadLine(tmprf);delete(SCTable,

tmppos,

tmprf.get());tmppos

=

check(SCTable,

tmppos,

iarr1,

sarr1);}tmprf.close();int[]

cols

=

{

1

};String[]

values

=

{

num

};long

pos

=

check(STable,

0,

cols,

values);if

(pos

>=

0)

{

rf.seek(pos);myReadLine(rf);delete(STable,

pos,

rf.get());}

else

{rf.close();return

-3;}rf.close();return

0;}算法描述按學(xué)號刪除學(xué)生表中的一行輸出

//模塊名稱:

更新輸入:姓名,學(xué)號處理:public

static

int

updateStudent(String

name,

String

num)throws

IOException

{if

(name.indexOf(',')

>=

0

||

num.indexOf(',')

>=

0)return

-2;RandomAccess

=

read);int[]

cols

=

{

1

};String[]

values

=

{

num

};long

pos

=

check(STable,

0,

cols,

values);if

(pos

>=

0)

{rf.seek(pos);myReadLine(rf);update(STable,

pos,

rf.get(),name + "," + numSystem.getProperty("line.separator"));}

else

{rf.close();return

-3;}rf.close();return

0;}算法描述:按學(xué)號更新學(xué)生表中的一行

+

輸出:

模塊名稱:插入輸入:姓名,學(xué)號處理:public

static

int

insertStudent(String

name,

String

num)throws

IOException

{if

(name.indexOf(',')

>=

0

||

num.indexOf(',')

>=

0)return

-2;RandomAccess

=

read);int[]

cols

=

{

1

};String[]

values

=

{

num

};if

(check(STable,

0,

cols,

values)

<

0)

{insert(STable,

rf.length(),name + "," + num

+System.getProperty("line.separator"));}

else

{rf.close();return

-1;}rf.close();return

0;}算法描述:往學(xué)生表中插入一行信息輸出:操作成功

0學(xué)號已存在

-1數(shù)據(jù)不能包含逗號

-2模塊名稱:排序輸入:學(xué)生成績表處理:public

static

String[][]

quickSortCourse(String

cname)

throws

IOException

{String[][]

res

=

queryCourseWithLimit(cname,

0,

100);myPartition(res,

0,

res.length-1);

return

res;}//快排函數(shù)private

static

void

myPartition(String[][]

data,

int

low,

int

high)

{//

樞紐元,一般以第一個(gè)元素為基準(zhǔn)進(jìn)行劃分int

i

=

low;int

j

=

high;if

(low

<

high)

{//

從數(shù)組兩端交替地向中間掃描String[]

pivotKey

=

data[low];//

進(jìn)行掃描的指針i,j;i從左邊開始,j從右邊開始while

(i

<

j)

{while

(i

<

j&& Integer.parseInt(data[j][3]) >=Integer.parseInt(pivotKey[3]))

{j--;}//

end

whileif

(i

<

j)

{//

比樞紐元素小的移動(dòng)到左邊data[i]

=

data[j];i++;}//

end

ifwhile

(i

<

j&& Integer.parseInt(data[i][3]) <=Integer.parseInt(pivotKey[3]))

{i++;}//

end

whileif

(i

<

j)

{//

比樞紐元素大的移動(dòng)到右邊data[j]

=

data[i];j--;}//

end

if}//

end

while//

樞紐元素移動(dòng)到正確位置data[i]

=

pivotKey;//

前半個(gè)子表遞歸排序myPartition(data,

low,

i

-

1);//

后半個(gè)子表遞歸排序myPartition(data,

i

+

1,

high);}//

end

if}算法描述:輸出:無輸出

5.3

系統(tǒng)界面詳細(xì)設(shè)計(jì)模塊名稱:登陸輸入:用戶名,密碼,權(quán)限處理:boolean

correct(String

s1,String

s2,String

s3){try{in

=

new

(s3+".txt");String

str

=

"";int

c;while((c

=

in.read())!=-1)str+=(char)c;String[]

s

=

str.split("

");for(int

i

=

0;i

<

s.length;i

=

i+2){if(s[i].equals(s1)&&s[i+1].equals(s2)){in.close();return

true;}}in.close();return

false;}catch(Exception

e){}return

true;}// public

void

actionPerformed(ActionEvent

e){if(((JButton)e.getSource()).getText().equals("登錄")){if(name.getText().isEmpty()||password.getText().isEmpty())JOptionPane.showMessageDialog(jf,"請輸入信息!");elseif(!correct(name.getText(),password.getText(),(String)jcb.getSelectedItem())){name.setText("");password.setText("");JOptionPane.showMessageDialog(jf,"用戶名或密碼錯(cuò)誤!");}else{jf.dispose();String

s

=

null;if(jcb.getSelectedItem().equals("學(xué)生"))s

=

name.getText();ManagerSystem

m

=

new

ManagerSystem(s);

}}if

(((JButton)e.getSource()).getText().equals("退出"))System.e

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論