亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Web的畢業(yè)論文選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        2007-12-31 00:00:00
        現(xiàn)代教育技術(shù) 2007年11期

        【摘要】針對目前本科畢業(yè)論文參與人數(shù)多、協(xié)作性強(qiáng)等特點(diǎn),構(gòu)建了一個基于Web的畢業(yè)論文選題系統(tǒng)。系統(tǒng)采用MySQL+PHP進(jìn)行開發(fā),實(shí)現(xiàn)了選題信息的發(fā)布、學(xué)生對選題的預(yù)選、老師對學(xué)生的正選等功能,并通過會話、事務(wù)等機(jī)制對并發(fā)及雙向選題過程加以控制。該系統(tǒng)在實(shí)際應(yīng)用中取得了很好的效果。

        【關(guān)鍵詞】Web;選題系統(tǒng);會話;事務(wù)

        【中圖分類號】G434 【文獻(xiàn)標(biāo)識碼】B 【論文編號】1009—8097 (2007) 11—0075—04

        一 引言

        畢業(yè)論文是本科人才培養(yǎng)的重要實(shí)踐性教學(xué)環(huán)節(jié),也是學(xué)士學(xué)位評定的重要依據(jù)。畢業(yè)論文選題過程一般分為幾輪,每輪包括3步:首先老師將整理的論文題目及任務(wù)書發(fā)布給學(xué)生;然后學(xué)生從中預(yù)選自己感興趣的論文題目;進(jìn)而老師對預(yù)選了本人發(fā)布選題的學(xué)生進(jìn)行正選。如果一輪選題過后仍有學(xué)生未被正選,則將進(jìn)入下一輪。隨著近年來本科畢業(yè)論文參與人數(shù)的增多以及分工協(xié)作的加強(qiáng),如何通過學(xué)生與老師之間的雙向選擇合理高效地進(jìn)行選題,成為畢業(yè)論文工作面臨的一個難題。一個可行的解決思路就是依托校園網(wǎng),構(gòu)建基于Web的畢業(yè)論文選題系統(tǒng)。

        與其他教務(wù)管理軟件相比,本文所介紹的畢業(yè)論文選題系統(tǒng)更注重對信息的并發(fā)控制和實(shí)時處理。一方面,選題信息發(fā)布(或修改、刪除)、學(xué)生預(yù)選(或退選)以及老師正選等更新操作能夠同時進(jìn)行、相互制約。另一方面,更新后的信息能及時反饋給所有的登錄用戶,為其進(jìn)一步操作提供參考。此外,管理員能夠及時獲取最新的選題統(tǒng)計(jì)信息,以便對各個選題環(huán)節(jié)進(jìn)行監(jiān)控。

        二 系統(tǒng)的開發(fā)環(huán)境

        本系統(tǒng)基于Dell公司的PowerEdge 1800系統(tǒng)(3.00GHz Intel Xeon雙處理器配置)及Red Had Enterprise Linux Advanced Server 3操作系統(tǒng)環(huán)境,能夠提供較大規(guī)模、高速可靠的數(shù)據(jù)服務(wù)能力。采用瀏覽器/服務(wù)器(B/S)模式的體系結(jié)構(gòu)[1],分別以Apache作為Web服務(wù)器及MySQL作為數(shù)據(jù)庫服務(wù)器。所有的Web應(yīng)用程序基于跨平臺腳本編程語言PHP進(jìn)行開發(fā),從而使系統(tǒng)具有良好的通用性。

        三 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        系統(tǒng)的功能結(jié)構(gòu)主要包括5個部分:

        1.老師登錄后,能夠發(fā)布新的選題;

        2.學(xué)生登錄后,能夠?qū)σ寻l(fā)布的選題進(jìn)行預(yù)選,也能退選已預(yù)選的選題;

        3.老師登錄后,還能對已預(yù)選本人發(fā)布選題的學(xué)生進(jìn)行正選;

        4.管理員登錄后,能夠?qū)Ρ徽x的學(xué)生進(jìn)行退選;

        5.管理員登錄后,還能獲取最新的選題統(tǒng)計(jì)報表。

        上述功能的實(shí)現(xiàn)分別需要訪問數(shù)據(jù)庫中不同的數(shù)據(jù)表(參見表1),主要包括選題信息表、學(xué)生信息表、老師信息表、預(yù)選信息表、正選信息表等。同時也通過相應(yīng)數(shù)據(jù)表實(shí)現(xiàn)各種操作之間的協(xié)調(diào)與制約,主要體現(xiàn)在以下幾方面:

        1.每個老師可發(fā)布多個選題,不能刪除已被預(yù)選的選題;

        2.每個選題可同時被多個學(xué)生預(yù)選,每個學(xué)生可同時預(yù)選多個選題;

        3.每個選題的正選人數(shù)不能超過限選人數(shù);

        4.學(xué)生被正選之后,已預(yù)選的其他選題將被自動退選;

        5.只能由管理員退選已被正選的學(xué)生。

        此外,系統(tǒng)還提供了其他一些應(yīng)用模塊,例如,身份驗(yàn)證、登錄密碼修改、選題信息修改和刪除、選題信息瀏覽、管理員對學(xué)生或老師信息管理等等,本文不詳細(xì)討論這些應(yīng)用模塊。

        1 選題信息的發(fā)布

        選題信息的發(fā)布主要包括2步:

        (1) 將以Word文檔形式保存的任務(wù)書上傳到Web服務(wù)器,以方便用戶下載和查閱;

        (2) 將通過瀏覽器手工輸入的選題名稱、限選人數(shù)、備注等信息提交到選題信息表中,以方便用戶瀏覽。

        為了減小用戶下載任務(wù)書文檔對Web服務(wù)器造成的負(fù)荷,系統(tǒng)限定上傳的任務(wù)書文檔小于1MB;為了便于對選題信息的管理,選題信息表中的“選題編號”字段采用auto_increment編號機(jī)制[2],并根據(jù)該編號對上傳的Word文檔進(jìn)行重命名;此外,還將初始化“預(yù)選人數(shù)”、“正選人數(shù)”、“是否選滿”等字段的屬性,以便為隨后的選題操作提供參考。

        2 學(xué)生預(yù)選和退選

        老師發(fā)布的選題信息將以列表的形式供學(xué)生進(jìn)行預(yù)選或退選(操作界面如圖1所示)。為了提高程序的可維護(hù)性,系統(tǒng)設(shè)定學(xué)生一次只能從選題列表中預(yù)選或退選一個選題。同時通過參數(shù)配置,限制一個學(xué)生能夠預(yù)選選題的總數(shù)不能超過2個。

        預(yù)選(或退選)過程主要包括4步:

        (1) 學(xué)生在選題列表中選取需要預(yù)選(或退選)選題;

        (2)系統(tǒng)通過查詢預(yù)選信息表,確認(rèn)該學(xué)生未(或已)預(yù)選該選題(為了方便事務(wù)處理,詳見后文);另外,預(yù)選過程還將確認(rèn)表中該學(xué)生的預(yù)選記錄未達(dá)到2個;

        (3)對預(yù)選信息表中預(yù)選記錄進(jìn)行添加(或刪除);

        (4) 對選題信息表中對應(yīng)記錄的“預(yù)選人數(shù)”屬性加(或減)1。

        3 老師正選

        同樣,預(yù)選了某一選題的學(xué)生也將以列表的形式供老師進(jìn)行正選。系統(tǒng)設(shè)定老師一次只能從預(yù)選某一選題的學(xué)生列表中正選一個學(xué)生。同時通過參數(shù)配置,限制一個老師能夠正選學(xué)生的總數(shù)不能超過8個。

        正選過程較為復(fù)雜,主要包括以下幾步:

        (1)老師在未選滿的選題的預(yù)選學(xué)生列表中選取需要正選的學(xué)生;

        (2)系統(tǒng)通過查詢預(yù)選信息表,確認(rèn)該學(xué)生已預(yù)選該選題(為了方便事務(wù)處理,詳見后文);

        (3)通過查詢選題信息表,確認(rèn)該選題未被選滿,同時獲取該老師的“正選學(xué)生總數(shù)”、該課題的“限選人數(shù)”和“正選人數(shù)”等參數(shù);

        (4)將預(yù)選信息表中相應(yīng)預(yù)選記錄復(fù)制到正選信息表中;

        (5)對選題信息表中相應(yīng)記錄的“正選人數(shù)”屬性加1;

        (6)然后依次刪除預(yù)選信息表中被正選學(xué)生所有的預(yù)選記錄,同時對選題信息表中相應(yīng)記錄的“預(yù)選人數(shù)”屬性減1,從而自動退選該學(xué)生預(yù)選的其他選題;

        (7)最后根據(jù)步驟3中獲取的參數(shù),依次判斷該老師正選學(xué)生總?cè)藬?shù)是否達(dá)到8人、該選題正選人數(shù)是否達(dá)到限選人數(shù),同時修改選題信息表中相應(yīng)記錄的“是否選滿”屬性,以便為其他用戶的選題操作提供參考。

        圖2為正選過程業(yè)務(wù)流程圖,對已正選學(xué)生退選的操作(為便于管理,由管理員完成)與其相反,本文不詳細(xì)討論。

        4 選題統(tǒng)計(jì)報表的創(chuàng)建

        畢業(yè)論文選題的最終統(tǒng)計(jì)報表一般包括學(xué)生基本信息(學(xué)號、姓名、專業(yè)等)和選題基本信息(名稱、指導(dǎo)老師工號、姓名等),并以學(xué)生的專業(yè)和學(xué)號進(jìn)行排序。因此需要對學(xué)生信息表、選題信息表和正選信息表進(jìn)行多表連接查詢[2]。系統(tǒng)采用的查詢語句為:select * from Thesis_final as TF right join Student as S on TF.Student_id = S.Stduent_id left join Thesis as T on TF.Thesis_id = T.Thesis_id order by S.Student_major, S.Student_id。該語句將正選信息表作為主表,通過與學(xué)生信息表右外連接保留未被正選的學(xué)生記錄,通過與選題信息表左外連接去除未參與正選的選題記錄。

        四 關(guān)鍵技術(shù)問題的討論

        1 會話信息傳遞

        會話(Session)是指用戶通過客戶端瀏覽器對網(wǎng)站開始訪問,到離開該網(wǎng)站所經(jīng)歷的過程[3]。在Web應(yīng)用程序中,會話實(shí)際上提供了一種在連續(xù)網(wǎng)頁訪問中通過變量傳遞信息的方法。通過該方法系統(tǒng)能夠?qū)崿F(xiàn)滿足以下2個方面的需求:

        (1)對用戶選題操作進(jìn)行有效的權(quán)限限制和狀態(tài)提示。例如,老師登錄系統(tǒng)后,系統(tǒng)將根據(jù)會話中保存的“工號”變量查詢選題信息表,生成僅針對其本人發(fā)布選題的正選操作頁面,同時統(tǒng)計(jì)出“正選學(xué)生總數(shù)”等狀態(tài)提示信息。

        (2)統(tǒng)一操作提示頁面。例如,如果老師發(fā)布選題信息失敗,系統(tǒng)將造成失敗的不同原因(選題名稱過長、上傳文件非Word文檔或上傳文件過大等)通過同一個會話變量進(jìn)行保存,并根據(jù)該變量生成統(tǒng)一的操作提示頁面。

        2 事務(wù)處理

        事務(wù)(Transaction)是對數(shù)據(jù)庫進(jìn)行操作的一組完整的執(zhí)行單元,即或者全部執(zhí)行成功,或者全部不執(zhí)行,并且在執(zhí)行期間自動完成對相關(guān)數(shù)據(jù)表的鎖定[2][4]。在應(yīng)用程序中引入事務(wù)處理機(jī)制,能夠有效地防止由于某個SQL語句執(zhí)行失敗而造成的數(shù)據(jù)庫操作前后狀態(tài)的不一致,以及從根本上避免多用戶(包括同一用戶通過不同瀏覽器重復(fù)登錄)并發(fā)操作數(shù)據(jù)庫時可能存在的相互干擾。

        例如,系統(tǒng)將前文所述學(xué)生退選過程中的步驟2~4以及老師正選過程中的步驟2~7分別組成一個事務(wù)。這些事務(wù)首先都需要查詢預(yù)選信息表并對該表進(jìn)行鎖定(查詢語句為:select * from Thesis_now as TN where TN.Thesis_id = ‘$Thesis_id’ and TN.Student_id = ‘$Student_id’ for update),從而保證了不同用戶相關(guān)事務(wù)操作的依次進(jìn)行,避免了多個老師同時正選了一個學(xué)生、被正選的學(xué)生同時退選了相應(yīng)選題等情況的發(fā)生。

        3 選題參數(shù)控制

        本系統(tǒng)將選題相關(guān)的參數(shù)(如一個學(xué)生最多能同時預(yù)選選題的總數(shù)、一個老師最多能正選學(xué)生的總數(shù)等)保存在配置文本文件中,各個應(yīng)用模塊通過調(diào)用這些參數(shù)對選題過程進(jìn)行控制。參數(shù)控制主要采用2種方式:

        (1)操作界面控制。用戶登錄后,系統(tǒng)將根據(jù)配置的選題參數(shù)判斷其當(dāng)前的選題狀態(tài),進(jìn)而生成不同的操作界面,對其選題操作進(jìn)行限制。例如,如果學(xué)生同時預(yù)選選題的總數(shù)已達(dá)到2個,系統(tǒng)生成的Web頁面將不包含預(yù)選操作相關(guān)的表單控件(參見圖1)。

        (2) 事務(wù)控制。僅僅通過操作界面直接進(jìn)行參數(shù)控制,無法避免同一用戶通過不同瀏覽器重復(fù)登錄時可能存在的相互干擾。然而,如前文所述,事務(wù)處理機(jī)制能夠很容易地解決這一問題,即在事務(wù)處理中根據(jù)選題參數(shù)對用戶當(dāng)前的選題狀態(tài)進(jìn)行進(jìn)一步的確認(rèn)(如預(yù)選過程中的步驟2和正選過程中的步驟2)。

        五 結(jié)束語

        本文所介紹的畢業(yè)論文選題系統(tǒng)目前已經(jīng)在中南民族大學(xué)電子信息工程學(xué)院網(wǎng)站上進(jìn)行了實(shí)際應(yīng)用(網(wǎng)址:http://dxxy.scuec.edu.cn/bysj/index.php)。實(shí)踐證明,該系統(tǒng)能夠使畢業(yè)論文的選題工作更加科學(xué)化、高效化和規(guī)范化,進(jìn)而對畢業(yè)論文的順利實(shí)施和水平提高起到較好的促進(jìn)作用。由于目前選題過程的信息互動僅僅體現(xiàn)在預(yù)選、退選和正選等操作上,并且缺乏必要的學(xué)科(或?qū)I(yè))針對性,本系統(tǒng)還將有一個不斷補(bǔ)充、修正和完善的過程。

        參考文獻(xiàn):

        [1]許龍飛, 李國和, 馬玉書. Web數(shù)據(jù)庫技術(shù)與應(yīng)用[M]. 北京: 科學(xué)出版社, 2005.

        [2]Paul DuBois. MySQL權(quán)威指南[M]. 北京: 機(jī)械工業(yè)出版社, 2004.

        [3]王昌達(dá), 夏蔚萍. PHP4 Session在遠(yuǎn)程教育中的一種應(yīng)用方式[J]. 計(jì)算機(jī)應(yīng)用研究, 2002, 19(3): 33-35.

        [4]張瑞昌, 向世勇, 趙嵩正. Delphi/SQL Server事務(wù)處理編程技術(shù)[J]. 計(jì)算機(jī)應(yīng)用研究, 2004, 21(12): 249-250.

        蜜桃成熟时日本一区二区| 在线播放人成午夜免费视频| 日本女优中文字幕看片| 亚洲中文字幕免费精品| 精品人妻中文字幕一区二区三区 | 波多野结衣爽到高潮大喷| 国产午夜福利片| 国产啪精品视频网给免丝袜| 国产成人久久精品77777综合| 国产日韩精品视频一区二区三区 | 精品自拍偷拍一区二区三区| 国产av激情舒服刺激| 激情偷乱人成视频在线观看| 中文字幕精品久久天堂一区| 亚洲av乱码国产精品色| 亚洲一区二区国产一区| 国产边摸边吃奶叫床视频| 91在线精品老司机免费播放| 日本免费一区精品推荐| 免费在线观看视频播放| 国产高清一区二区三区视频| 成年男女免费视频网站| 免费国产黄片视频在线观看| 久久国产精品亚洲我射av大全| 日本国产成人国产在线播放| 白天躁晚上躁麻豆视频| 久久久国产精品福利免费| 性色国产成人久久久精品二区三区 | 装睡被陌生人摸出水好爽| 调教在线播放黄| av有码在线一区二区| 免费观看91色国产熟女| 亚洲男人的天堂在线播放| 日本岛国精品中文字幕| 国产一区二区三区视频在线观看| 免费大黄网站| 大地资源网最新在线播放| 日本一区二区三区的免费视频观看| 亚洲国产精品av在线| 骚小妹影院| 538亚洲欧美国产日韩在线精品 |