最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【優(yōu)秀論文】OA辦公管理平臺的設(shè)計(jì)與開發(fā)

2022-05-10 13:21 作者:趣畢業(yè)  | 我要投稿

目 ???錄

?

摘 ?要

Abstract

1 ?前言

1.1 ?系統(tǒng)開發(fā)背景和意義

1.2 ?國內(nèi)外研究現(xiàn)狀

1.3 ?系統(tǒng)開發(fā)的任務(wù)

2 ?系統(tǒng)分析

2.1 ?可行性分析

2.1.1 ?市場可行性

2.1.2 ?經(jīng)濟(jì)可行性

2.1.3 ?技術(shù)可行性

2.2 ?需求分析

2.3 ?系統(tǒng)層次分析

3 ?系統(tǒng)設(shè)計(jì) 6

3.1 ?系統(tǒng)目標(biāo)

3.2 ?系統(tǒng)功能構(gòu)架設(shè)計(jì)

3.2.1 ?用戶信息注冊與查詢模塊

3.2.2 ?公告管理模塊

3.2.3 ?考勤管理模塊

3.2.4 ?請假管理模塊

3.3 ?數(shù)據(jù)庫設(shè)計(jì)

3.4.1 ?數(shù)據(jù)庫概念設(shè)計(jì)

3.4.2 ?數(shù)據(jù)庫邏輯設(shè)計(jì)

4 ?系統(tǒng)實(shí)現(xiàn)

4.1 ?登陸實(shí)現(xiàn)

4.2 ?注冊信息實(shí)現(xiàn)

4.3 ?主功能模塊實(shí)現(xiàn)

4.3.1 ?管理員模塊實(shí)現(xiàn)

4.3.2 ?員工模塊實(shí)現(xiàn)

4.3.3 ?用戶信息管理模塊實(shí)現(xiàn)

4.3.4 ?考勤管理模塊實(shí)現(xiàn)

4.3.5 ?公告管理模塊實(shí)現(xiàn)

4.3.6 ?請假管理模塊實(shí)現(xiàn)

5 ?系統(tǒng)測試

5.1 ?系統(tǒng)測試的目標(biāo)和原則

5.2 ?系統(tǒng)測試的方法

5.3 ?系統(tǒng)測試方案

5.4 ?系統(tǒng)測試結(jié)果及分析

總 ???結(jié)

參考文獻(xiàn)

致 ???謝

?


摘 ?要

隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,傳統(tǒng)紙質(zhì)辦公模式已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足現(xiàn)代企業(yè)工作的需要,而網(wǎng)絡(luò)辦公自動化的應(yīng)用滿足了這個(gè)需求。辦公自動化OA系統(tǒng)可以從根本上簡化企業(yè)辦公操作流程,提高企業(yè)辦公的效率和質(zhì)量,節(jié)約成本,提高企業(yè)效益。

本系統(tǒng)主要采用B/S(瀏覽器/服務(wù)器)模式,利用Java Web的相關(guān)技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了可以在線登錄并完成辦公的網(wǎng)絡(luò)平臺。本系統(tǒng)主要功能有員工注冊,發(fā)布公告,簽到管理,請假管理和個(gè)人信息管理。管理員可以發(fā)布公告,查看員工個(gè)人信息,管理員工簽到信息,對員工的請假申請進(jìn)行處理。員工可以進(jìn)行注冊、修改個(gè)人信息,簽到和退簽,申請請假等操作。

關(guān)鍵字B/S模式;辦公自動化OA;Java Web


Abstract

With the rapid development of the Internet, the traditional way of paper office fai-ling to meet the modern company needs. However, the application of automatic netw-ork office can make people satisfied.Office automation system can simplify the busines-s operation process fundamentally,and improve the efficiency and quality of enterprise.At the same time,it can save cost and improve the benefit of the enterprises.

This system mainly uses B/S (Browser/server) mode,and using the technique of Ja-va Web.It was designed and implemented can log in and complete the online office n-etwork platform.The main function of the system are employee registration,issued a p-ublic notice,attendance management,leave management,personal information management, and so on. Administrator has some functions,such as posting the announcement,viewin-g employees personal information,sign-in information in staff management and carryin-g on processing to the staff leave application. The employee can register,modify perso-nal information,sign in,and applying for a leave operation.

Keywords:B/S mode;office automation OA;Java Web


1 ?前言

1.1 ?系統(tǒng)開發(fā)背景和意義

當(dāng)今社會,公司的規(guī)模在不斷地?cái)U(kuò)大,公司的業(yè)務(wù)額在不斷地增加。但在企業(yè)不斷發(fā)展的同時(shí),傳統(tǒng)的人工辦公、紙質(zhì)辦公的方式不斷地暴露出一些問題。比如:公司的員工需要請假,就必須填寫申請表并交給領(lǐng)導(dǎo),而領(lǐng)導(dǎo)可能因?yàn)橛惺虏辉谵k公室,或者因?yàn)槠渌聞?wù)不能及時(shí)進(jìn)行審批,這樣就會耽誤員工的時(shí)間和其他工作。為了避免諸如此類事情的發(fā)生,公司需要更加人性化、更加方便快捷的辦公自動化系統(tǒng),去代替過去較復(fù)雜低效的人工辦公模式。

辦公自動化系統(tǒng)就是一個(gè)將現(xiàn)代辦公思想和計(jì)算機(jī)、網(wǎng)絡(luò)、通訊、多媒體等現(xiàn)代化工具集成在一起的辦公應(yīng)用系統(tǒng)。通過計(jì)算機(jī)的處理,能夠進(jìn)一步提高辦公的效率和質(zhì)量,同時(shí)又能夠縮短辦公時(shí)間,減輕員工辦公壓力,改善辦公的環(huán)境和條件,也能夠讓決策者在第一時(shí)間得到最權(quán)威、最有效的信息,以產(chǎn)生明智的策略,為企業(yè)和公司帶來最大的效益。而作為一名計(jì)算機(jī)專業(yè)的學(xué)生,研究這一系統(tǒng)不僅能鞏固和提高在校所學(xué)知識,達(dá)到學(xué)以致用,更能為將來走入社會打下良好的基礎(chǔ)。

1.2??國內(nèi)外研究現(xiàn)狀

目前國外辦公自動化技術(shù)的發(fā)展比較成熟,特別是群件產(chǎn)品,如IBM Lotus Notes/Domino 和 Microsoft Exchange的出現(xiàn)使辦公自動化軟件得到了廣泛的應(yīng)用。它提供的工作流平臺及非結(jié)構(gòu)化數(shù)據(jù)庫的功能使我們可以很方便的實(shí)現(xiàn)非結(jié)構(gòu)化文檔的處理、全文檢索、工作流等重要的功能。同時(shí)Lotus Notes還提供了與企業(yè)業(yè)務(wù)系統(tǒng)的連接方式,為管理人員提供了一個(gè)統(tǒng)一的操作平臺[1]

進(jìn)入20世紀(jì)90年代中期以后,由于國內(nèi)經(jīng)濟(jì)的飛速發(fā)展引發(fā)市場競爭的逐漸激烈,以及政府管理職能的擴(kuò)大和優(yōu)化,這一切導(dǎo)致政府和企業(yè)對辦公自動化產(chǎn)品的需求快速增長。這時(shí),辦公自動化開始進(jìn)入一個(gè)快速發(fā)展的階段。國內(nèi)專門從事軟件開發(fā)的公司也逐漸成長起來,并專門為政府和企業(yè)訂做辦公自動化系統(tǒng)。由于這些系統(tǒng)是根據(jù)用戶的具體需求開發(fā)的,所以需要功能比較完善,并能較好地滿足用戶的實(shí)際需要。但這是一個(gè)巨大而低效的市場,具體表現(xiàn)在投資大、效果不明顯;水平低、重復(fù)建設(shè)多;硬件投入多、軟件投入少;模擬手工作業(yè)增加管理負(fù)擔(dān)等。這是因?yàn)殚_發(fā)商水平參差不齊,開發(fā)隊(duì)伍組隊(duì)模式不合理、缺乏開發(fā)辦公自動化產(chǎn)品的經(jīng)驗(yàn)、用戶缺乏對辦公自動化產(chǎn)品的認(rèn)識等;部分軟件產(chǎn)品質(zhì)量不高,不顧中國企業(yè)的運(yùn)作特點(diǎn)照搬國外技術(shù),使得實(shí)施困難;對OA的理解起點(diǎn)不高,導(dǎo)致OA系統(tǒng)與其他系統(tǒng)集成度差;用戶使用水平低,又不愿花太多的精力投入培訓(xùn);售后服務(wù)不到位;定做開發(fā)又會因用戶需求變化要對軟件進(jìn)行不斷的修改維護(hù)。到最后,整個(gè)軟件的性能和可使用性都大大降低,沒有耐性的企業(yè)索性廢棄掉從而導(dǎo)致項(xiàng)目失敗。從技術(shù)來看,普遍存在如下缺點(diǎn):為用戶考慮的少,軟件的柔性構(gòu)造功能差。當(dāng)前很多OA軟件過分強(qiáng)調(diào)了軟件之間功能的橫向?qū)Ρ?,為用戶考慮的實(shí)際功能比較少,結(jié)果導(dǎo)致軟件大而全,而真正為用戶接受的功能模塊很少。另一方面,軟件的模塊復(fù)用性很差,直接影響了軟件的柔性構(gòu)造功能,而當(dāng)用戶的需求改變時(shí),哪怕是輕微的改變,都需要開發(fā)商來解決,從而影響了用戶的使用效率,對開發(fā)商也是一個(gè)極大的負(fù)擔(dān)。

1.3??系統(tǒng)開發(fā)的任務(wù)

對項(xiàng)目開發(fā)人員來說,在項(xiàng)目開發(fā)過程中針對不同項(xiàng)目選擇恰當(dāng)?shù)能浖w系結(jié)構(gòu)非常重要。適當(dāng)?shù)能浖w系結(jié)構(gòu)和軟件的安全性、可維護(hù)性等密切相關(guān)。目前主要流行的兩種軟件體系結(jié)構(gòu)是C/S體系結(jié)構(gòu)和B/S體系結(jié)構(gòu),這兩個(gè)是當(dāng)今世界開發(fā)模式技術(shù)構(gòu)架的兩大主流技術(shù)[2]。本系統(tǒng)主要采用B/S體系結(jié)構(gòu),該系統(tǒng)的功能有員工注冊,發(fā)布公告,簽到管理,請假管理,個(gè)人信息管理等。管理員可以發(fā)布公告,查看員工個(gè)人信息,管理員工簽到信息,對員工的請假申請進(jìn)行處理;員工可以進(jìn)行注冊、修改個(gè)人信息,簽到和退簽、申請請假等操作;從而合理有效地完成工作,提高工作的效率和質(zhì)量。

?


2 ?系統(tǒng)分析

系統(tǒng)分析是在系統(tǒng)設(shè)計(jì)之前,針對整個(gè)系統(tǒng)從需求、可行性、系統(tǒng)層次等角度,掌握整個(gè)系統(tǒng)的大致構(gòu)造,為系統(tǒng)的設(shè)計(jì)提供有力的理論依據(jù)。

2.1??可行性分析

2.1.1 ?市場可行性

隨著互聯(lián)網(wǎng)及電腦的普及,信息化辦公已深入企業(yè)文化,采用OA系統(tǒng)可以實(shí)現(xiàn)無紙化辦公,不僅能節(jié)約資源,更能方便管理,提高工作效率。在目前的國內(nèi)市場還有廣大前景。

2.1.2 ?經(jīng)濟(jì)可行性

企業(yè)和政府部門使用辦公系統(tǒng)自動化對大量的數(shù)據(jù)進(jìn)行管理和統(tǒng)計(jì)時(shí),可以大大減少在人為處理各類數(shù)據(jù)時(shí)產(chǎn)生的錯(cuò)誤,提高了企業(yè)的效益。使企業(yè)的決策者擁有更加準(zhǔn)確的信息去做正確的決策,使企業(yè)更加規(guī)范化,信息化和系統(tǒng)化。

2.1.3 ?技術(shù)可行性

本系統(tǒng)頁面方面Jsp編寫,服務(wù)器采用servlet編寫,采用Eclipse作為開發(fā)工具。通過JDBC連接MySQL數(shù)據(jù)庫,在Tomcat服務(wù)器上運(yùn)行,這些都是免費(fèi)開源的工具,對數(shù)據(jù)的安全健壯有一定的保護(hù)作用,且具備一定的開發(fā)能力,實(shí)現(xiàn)簡單的OA還可節(jié)約開發(fā)成本。關(guān)鍵技術(shù)有以下四條:

Servlet:是運(yùn)行在服務(wù)器端,由Web服務(wù)器加載,是獨(dú)立于平臺和協(xié)議的Java應(yīng)用程序。在內(nèi)部的機(jī)制上,每一個(gè)Jsp都是被處理成一個(gè)Servlet的。Servlet不限制使用的協(xié)議,它通常使用的協(xié)議是HTTP協(xié)議。Servlet具有跨平臺和可移植性強(qiáng)等特點(diǎn),主要是用于編寫程序的處理邏輯。

Jsp:Jsp(Java Server Pages)是由Sun公司發(fā)布的用于開發(fā)動態(tài)Web應(yīng)用的一項(xiàng)技術(shù)。它是基于Java Servlet的Web開發(fā)技術(shù),由于具有簡單易學(xué)和跨平臺等特點(diǎn),使之成為Web開發(fā)中的首選[3]

Tomcat:Tomcat是一個(gè)基于Java的開放源碼Web應(yīng)用容器,是Apache Jakarta項(xiàng)目中的一個(gè)子項(xiàng)目,有Apache、Sun公司和其他人員共同開發(fā)。它由于技術(shù)先進(jìn),占用資源少,穩(wěn)定性好,且易于擴(kuò)展等的特點(diǎn),同時(shí)又是開源的,所以使得它備受程序員的喜愛。Tomcat是完全使用Java語言開發(fā)實(shí)現(xiàn)的,因此它與在哪個(gè)平臺無關(guān),即可以通過在不同的操作系統(tǒng)上安裝JVM實(shí)現(xiàn)跨平臺[4]。

MySQL:MySQL是一個(gè)小型關(guān)系數(shù)據(jù)庫管理系統(tǒng),也是最著名的開放源碼數(shù)據(jù)庫管理系統(tǒng),它使用結(jié)構(gòu)化查詢語言進(jìn)行數(shù)據(jù)庫的管理和操作。MySQL是由MySQLAB研發(fā)、發(fā)布和支持,后被SUN公司收購,它使用C和C++兩種語言編寫,都可以工作于不同的平臺之上。MySQL和其他的大型的關(guān)系數(shù)據(jù)庫(如Oracle,SQL Server等)相比,其速度快,規(guī)模小和可靠,同時(shí)又因?yàn)槭情_源的,所以現(xiàn)在廣泛被中小企業(yè)使用,同時(shí)也受學(xué)習(xí)者的青睞[5]。

2.2??需求分析

在軟件工程中,需求分析就是詳細(xì)分析要解決的問題,弄明白問題要求是軟件工程中的一個(gè)關(guān)鍵過程。在這個(gè)過程中,系統(tǒng)分析員和軟件工程師確定顧客的需要。只有在確定了這些需要后他們才能夠分析和尋求新系統(tǒng)的解決方法。通過調(diào)查一般的OA系統(tǒng)應(yīng)具有如下功能:

1、員工信息管理

信息管理是本系統(tǒng)的核心模塊,用戶的注冊信息都會存儲在該模塊,并分配相應(yīng)的權(quán)限。當(dāng)公司有新人加入時(shí),會根據(jù)其職位注冊相應(yīng)的工作編號,系統(tǒng)將會根據(jù)不同的工作編號去區(qū)分不用的權(quán)限。

2、公告管理

這部分是方便員工知道公司最新動態(tài),只有管理員才能發(fā)布通知。

3、請假管理

這部分是方便員工請假需要,主要是傳輸一個(gè)文本,對應(yīng)單位領(lǐng)導(dǎo)看到后,可進(jìn)行相應(yīng)處理,同時(shí)員工也可第一時(shí)間看到領(lǐng)導(dǎo)的反饋信息。

4、考勤管理

這部分主要是方便公司的管理,提高員工的出勤率。員工上班進(jìn)行網(wǎng)上簽到,下班進(jìn)行簽退。管理員可以隨時(shí)查看員工的出勤記錄。

2.3 ?系統(tǒng)層次分析

本系統(tǒng)主要采用MVC的開發(fā)模式。MVC是一個(gè)將應(yīng)用的輸入、處理和輸出流程按照Model(模型)、View(視圖)和Control(控制器)三部分進(jìn)行分離的一種開發(fā)模式。這樣的一個(gè)系統(tǒng)就可以分為模型層、視圖層和控制層三個(gè)層面,三層之間以最小的耦合來協(xié)同工作,從而提高系統(tǒng)的可擴(kuò)展性和可維護(hù)性[6]。

模型層(M):模型層對應(yīng)的是企業(yè)數(shù)據(jù)和對應(yīng)的業(yè)務(wù)邏輯,他控制著數(shù)據(jù)的處理和更新,通常這部分都是用普通的Java程序編寫,負(fù)責(zé)展現(xiàn)業(yè)務(wù)的數(shù)據(jù)邏輯、數(shù)據(jù)的連接、向數(shù)據(jù)庫發(fā)送各種SQL語句等。

視圖層(V):視圖層實(shí)際上就是模型層中的各個(gè)模型的具體展現(xiàn)形式。他通過模型得到企業(yè)數(shù)據(jù),然后再根據(jù)需要來顯示他們。雖然是視圖層不作數(shù)據(jù)處理,而是將數(shù)據(jù)傳遞給控制層,但是他必須保持和模型層數(shù)據(jù)的一致性,及當(dāng)模型層數(shù)據(jù)發(fā)生改變時(shí),對應(yīng)的視圖層也許作相應(yīng)的調(diào)整。對于早期的Web應(yīng)用程序來說,HTML元素構(gòu)成了試圖界面的主要部分,但隨著技術(shù)的發(fā)展,目前主要采用Jsp技術(shù)實(shí)現(xiàn)。本系統(tǒng)采用Jsp編寫的。

控制層(C):控制層顧名思義就是起到居中調(diào)度的作用,在MVC模式中,控制層連接著模型層和視圖層,起到紐帶的作用。他將視圖層的交互信息進(jìn)行過濾處理后,在傳送到模型層相應(yīng)的業(yè)務(wù)邏輯處理程序進(jìn)行處理。在Web應(yīng)用中,視圖層首先向控制層發(fā)送信息,通常是get和post請求,控制層接收到請求后,并不進(jìn)行業(yè)務(wù)處理,而是將請求信息傳遞給模型層,并告知模型層做相應(yīng)處理。接著模型層接收請求數(shù)據(jù),并產(chǎn)生處理結(jié)果。模型層對應(yīng)的功能包括業(yè)務(wù)處理和模型狀態(tài)的改變。最后根據(jù)模型層產(chǎn)生的結(jié)果,控制層給用戶(瀏覽器)回應(yīng)相應(yīng)的視圖[7]。


3 ?系統(tǒng)設(shè)計(jì)

3.1 ?系統(tǒng)目標(biāo)

本系統(tǒng)主要是根據(jù)中小型企業(yè)的辦公需求進(jìn)行設(shè)計(jì)的,主要為了實(shí)現(xiàn)以下幾種目標(biāo):

1、界面友好,可以實(shí)現(xiàn)人機(jī)交互,操作簡單,便捷

2、數(shù)據(jù)庫具有較強(qiáng)的安全性

3、可以實(shí)現(xiàn)基本的添加,刪除,修改和查詢的功能

4、系統(tǒng)具有一定的權(quán)限分配,避免數(shù)據(jù)混亂

3.2??系統(tǒng)功能構(gòu)架設(shè)計(jì)

依據(jù)對系統(tǒng)需求調(diào)研的內(nèi)容分析,將系統(tǒng)功能劃分為管理員模塊和員工模塊。管理員模塊主要負(fù)責(zé)公告的發(fā)布、修改和刪除,具有信息的處理功能,同時(shí)也能夠?qū)T工提交的信息進(jìn)行處理。員工用于個(gè)人信息的添加和修改,以及添加并提交申請信息,同時(shí)具有公告的瀏覽功能。具體功能如下圖所示:

?

?

?圖 3-1 系統(tǒng)功能模塊圖


系統(tǒng)的主要功能有用戶的注冊和登錄,公告的發(fā)布和查看,假期的申請和審核,簽到和簽退等。

3.2.1 ?用戶信息注冊與查詢模塊

該模塊用于存儲用戶注冊信息,同時(shí)用戶也可以查詢自己的信息并進(jìn)行修改。在用戶登錄前,如果用戶的信息不在數(shù)據(jù)庫,則需要先進(jìn)行注冊,注冊信息就存儲在該模塊內(nèi)的表,在注冊信息錄入后,會根據(jù)登錄人員的編碼分配權(quán)限,即管理員或者員工。管理員可查看所有用戶的注冊信息,并可以修改注冊信息,包括刪除用戶信息等超級管理權(quán)限。員工只能查看自己的個(gè)人信息,無法查看他人信息,主要是為了保障信息的安全。

3.2.2 ?公告管理模塊

該模塊用于信息的發(fā)布。在該模塊內(nèi),管理員可以發(fā)布公告等信息。當(dāng)公司有重要信息發(fā)布,就可以在該模塊發(fā)布,管理員可對內(nèi)容進(jìn)行編輯,進(jìn)行發(fā)布,在發(fā)布的信息中除了主要內(nèi)容外還附加上發(fā)送人姓名和日期等信息。員工只具有查看的權(quán)限。

3.2.3 ?考勤管理模塊

該模塊用于員工簽到管理及領(lǐng)導(dǎo)的監(jiān)督。員工每天上班進(jìn)行簽到,下班進(jìn)行簽退,公司以此來監(jiān)督員工,提高員工的出勤率。

3.2.4 ?請假管理模塊

該模塊用于請假申請及批準(zhǔn)。申請人進(jìn)行申請,同時(shí)要附上申請理由和申請假期的時(shí)間段,并要寫上申請的日期,進(jìn)行提交。管理員可以看到員工的請假申請,并根據(jù)情況對員工的假期申請進(jìn)行審核,確定批準(zhǔn)還是不批準(zhǔn)。

3.3??數(shù)據(jù)庫設(shè)計(jì)

數(shù)據(jù)庫的設(shè)計(jì)是每個(gè)應(yīng)用程序非常重要的部分,對數(shù)據(jù)庫的選擇和對表的設(shè)計(jì)都對系統(tǒng)的設(shè)計(jì)起著舉足輕重的作用[8]。


圖 3-2 管理員系統(tǒng)實(shí)體及其聯(lián)系圖

圖 3-3 員工與管理員實(shí)體之間的聯(lián)系圖


?

圖 3-4 員工系統(tǒng)實(shí)體及其聯(lián)系圖

?

3.4.1 ?數(shù)據(jù)庫概念設(shè)計(jì)

通過E-R圖實(shí)現(xiàn)數(shù)據(jù)庫概念的設(shè)計(jì):

員工實(shí)體包括員工編號、姓名、密碼、性別、手機(jī)號、郵箱和工作等屬性,通過編號可以識別不同的員工,即為員工的ID號。

?

?

圖 3-5 員工實(shí)體圖

公告實(shí)體包括公告編號、姓名、標(biāo)題、內(nèi)容和日期等屬性,通過公告編號可以識別不同的公告,姓名為發(fā)布公告的管理員姓名。

?

圖 3-6 公告實(shí)體圖


管理員實(shí)體包括管理員編號、姓名和密碼等屬性,通過管理員編號可以識別不同的管理員。

?

?

圖 3-7 管理員實(shí)體圖

請假實(shí)體包括請假編號、員工姓名、原因、日期、狀態(tài)和操作等屬性,請假編號可以識別不同的請假信息,姓名為申請請假員工的姓名,理由即為員工請假的理由,日期為員工寫請假信息的日期,狀態(tài)為員工提交請假信息后顯示的狀態(tài),操作為管理員可以對員工請假信息進(jìn)行批準(zhǔn)或不批準(zhǔn)的操作。

?

圖 3-8 請假實(shí)體圖


考勤實(shí)體包括簽到編號、員工編號、簽到時(shí)間和簽退時(shí)間等屬性。簽到編號為簽到時(shí)的序號,員工編號為簽到員工的ID號。

?

?

?

?

?

?

圖 3-9 簽到實(shí)體圖


3.4.2 ?數(shù)據(jù)庫邏輯設(shè)計(jì)

本系統(tǒng)所涉及的數(shù)據(jù)庫主要由五張表組成,分別是用于存儲管理員信息的admin表、存儲員工信息的member表、存儲請假信息的leaves表、存儲公告信息的news表和員工考勤的sign表。

圖 3-10 數(shù)據(jù)表結(jié)構(gòu)圖


主要數(shù)據(jù)表的結(jié)構(gòu)如下:

表3-1 admin為管理員用表,包括管理員編號,姓名,密碼等屬性。

表3-4 news為公告表,包括公告的編號,文章的標(biāo)題,發(fā)布者,發(fā)布內(nèi)容,發(fā)布日期等屬性。





4 ?系統(tǒng)實(shí)現(xiàn)

4.1 ?登陸實(shí)現(xiàn)

在登陸界面用戶需要輸入用戶名和密碼。用戶名由一組數(shù)字組成,登錄密碼是在用戶注冊時(shí)確定的,當(dāng)然用戶也可以在個(gè)人信息中進(jìn)行修改。當(dāng)用戶輸入的用戶名和密碼點(diǎn)登錄時(shí),系統(tǒng)會根據(jù)用戶名和密碼去數(shù)據(jù)庫查找該用戶,如果存在于管理員表,則進(jìn)入管理員系統(tǒng)界面,如果在員工則跳轉(zhuǎn)到員工系統(tǒng)界面,否則直接返回登錄界面。登錄界面截圖如下:

圖4-1 用戶登錄界面

核心代碼如下:

request.setCharacterEncoding("GB18030");

response.setCharacterEncoding("GB18030");

String strid = request.getParameter("id");

int userid=Integer.parseInt(strid);

String pwd = request.getParameter("password");

if("".equals(userid) || "".equals(pwd) || 0==userid || null==pwd){

response.sendRedirect("login.Jsp");

return;

}

//查數(shù)據(jù)庫看是否有這個(gè)用戶

AdminDAO dao = new AdminDAO();

Admin u = dao.checkLoginAdmin(userid,?pwd);

MemberDAO daom = new MemberDAO();

Member m =daom.checkLoginMember(userid,?pwd);

if(u !=null ){

//登錄成功

?HttpSession session = request.getSession();

//在當(dāng)前會話的session對象里存一個(gè)登錄成功的標(biāo)志

session.setAttribute("user",?userid);

response.sendRedirect("admin.Jsp");

}else if(m !=null ){

HttpSession session = request.getSession();

//在當(dāng)前會話的session對象里存一個(gè)登錄成功的標(biāo)志

session.setAttribute("user",?userid);

response.sendRedirect("member.Jsp");

//登錄成功

}else{

//登錄失敗

response.sendRedirect("login.Jsp");

}

4.2 ?注冊信息實(shí)現(xiàn)

當(dāng)有新用戶加入或者數(shù)據(jù)初始錄入時(shí),就需要用到注冊界面了。新用戶注冊后需要輸入用戶名,密碼和手機(jī)號等。所標(biāo)記的“*”為必填內(nèi)容,當(dāng)用戶注冊完成后,信息會存儲到數(shù)據(jù)庫,同時(shí)系統(tǒng)會自動為用戶生成ID號,這是用戶可根據(jù)系統(tǒng)提供的ID號和自己設(shè)定的密碼進(jìn)行登錄。本模塊主要采用表單實(shí)現(xiàn),用戶第一次登陸系統(tǒng)后可以對個(gè)人信息進(jìn)行修改。并進(jìn)行基本的辦公操作,具體可參考用戶界面菜單。

注冊界面截圖如下:

注冊核心代碼如下:

??????String name = request.getParameter("name");

??????String strGender = request.getParameter("gender");// null,"","a12"

int gender = Integer.parseInt(strGender);

String password=request.getParameter("password");

String phone = request.getParameter("phone");

String email = request.getParameter("email");

String job = request.getParameter("job");

Member stu = new Member(0,name,gender,password,phoneemail,job);

MemberDAO dao = new MemberDAO();

// 將信息保存到數(shù)據(jù)庫

boolean rs = dao.addMember(stu);

response.sendRedirect("./login.Jsp");

4.3 ?主功能模塊實(shí)現(xiàn)

當(dāng)用戶完成注冊后就可以通過系統(tǒng)自動生成的ID號和密碼訪問系統(tǒng)功能界面,根據(jù)查驗(yàn)數(shù)據(jù)庫,系統(tǒng)可以對用戶的身份進(jìn)行識別,以區(qū)分管理員還是員工。若為管理員,則進(jìn)入管理員界面,否則進(jìn)入員工界面。管理員可以對系統(tǒng)進(jìn)行信息的管理操作,如新用戶的審核、公告發(fā)布、請假審批,查看員工信息等。而員工只能進(jìn)入用戶界面,進(jìn)行個(gè)人信息查詢和修改,公告的查看,申請假期等的操作。

4.3.1 ?管理員模塊實(shí)現(xiàn)

圖 4-3 管理員界面

主界面主要包括用戶的添加,查看員工的信息,管理員工的考勤,發(fā)布公司的公告,審批員工的假期申請和退出系統(tǒng)幾個(gè)操作。當(dāng)點(diǎn)擊其中一個(gè)操作,就會在右邊的一個(gè)框架內(nèi)顯示點(diǎn)擊后所跳轉(zhuǎn)到得頁面。

核心代碼如下:

<div id="mid">

??????<div id="menu">

?????????<ul>

???????????<li><a href="addmember.Jsp" target="content">添加用戶</a></li>

???????????<li><a href="./listMembers.do" target="content">用戶列表</a></li>

???????????<li><a href="listsign.do" target="content">員工考勤</a></li>

???????????<li><a href="addnew.Jsp" target="content">發(fā)布公告</a></li>

???????????<li><a href="listleave.do" target="content">假期申請</a></li>

???????????<li><a href="logout.do">退出系統(tǒng)</a></li>

?????????</ul>

??????</div>

??????<div id="content">

?????????<iframe name="content" src="listnew.do" scrolling="auto"></iframe>

??????</div>

??????<div></div>

???</div>

4.3.2 ?員工模塊實(shí)現(xiàn)


員工界面基本和管理員基本相似,只是有些功能不一樣。管理員可以發(fā)布公告,審批員工的請假申請等,擁有較高的權(quán)利,而員工擁有查看和修改自己的信息,簽到簽退,查看通知,申請假期等權(quán)限。

圖 4-4 員工界面


核心代碼如下:

???<!--中間內(nèi)容-->

???<div id="mid">

??????<div id="menu">

?????????<ul>

???????????<li><a href="showmember.do" target="content">個(gè)人信息</a></li>

???????????<li><a href="altermember.do" target="content">信息修改</a></li>

???????????<li><a href="showsign.do" target="content">每日簽到</a></li>

???????????<li><a href="listnew.do" target="content">查看通知</a></li>

???????????<li><a href="addleave.Jsp" target="content">假期申請</a></li>

???????????<li><a href="showleave.do" target="content">我的申請</a></li>

???????????<li><a href="logout.do">安全退出</a></li>

?????????</ul>

??????</div>

??????<div id="content">

?????????<iframe name="content" src="listnew.do" scrolling="auto"></iframe>

??????</div>

??????<div></div>

???</div>

4.3.3 ?用戶信息管理模塊實(shí)現(xiàn)


在用戶列表界面,管理員可以查看所有員工的基本信息,也可對員工的信息進(jìn)行增、刪、改等操作。


圖4-5 員工信息界面


核心代碼如下:

<%

????List<Member> stus = ( List<Member>)request.getAttribute("stus");

????int i=0;

for (Member stu : stus) {

//Student stu = stus[i];

????????????i++;

String cl = i%2==0?"#eeeeee":"";

%>

<tr bgcolor="<%=cl%>">

????<th>

???????<input type="checkbox" name="ids" value="<%=stu.id%>">

????</th>

<td height='20'> <%=stu.id%> </td>

<td><%=stu.name%></td>

<td><%=stu.gender%></td>

<td><%=stu.email%></td>

<td><%=stu.phone%></td>

<td><%=stu.job%></td>

<td>

?<a href="./showmembers.do?id=<%=stu.id %>">詳細(xì)</a>?

???????????????<a href="./updateMemberForm.do?id=<%=stu.id %>">編輯</a>?

?<a href="./deleteMember.do?id=<%=stu.id %>">刪除</a>?

</td>

</tr> ?

????<%

}

%>

</table>

<input type="submit" value="刪除"/>

????</form>

4.3.4 ?考勤管理模塊實(shí)現(xiàn)

在考勤界面上,管理員可以查看到所有用戶的信息,也可根據(jù)用戶ID單獨(dú)查看某個(gè)員工考勤信息,并對其進(jìn)行一些統(tǒng)計(jì)分析??记谟涗浻涗浀膯T工上班的時(shí)間和下班的時(shí)間。管理員可根據(jù)員工的簽到信息進(jìn)行判斷該員工是否遵守公司工作規(guī)定,以方便公司的管理。

圖 4-6 考勤信息

核心代碼如下:

<h1>考勤信息</h1>

?<form method="post">

<table border='1' width='800'>

<tr bgcolor="#cccccc">

<th>簽到序號</th>

<th>員工編號</th>

<th>簽到時(shí)間</th>

<th>退簽時(shí)間</th>

</tr>

<%

int i = 0;

for (Sign lea : stus) {

//Student stu = stus[i]

?i++;

String cl = i % 2 == 0 ? "#eeeeee" : "";

%>

<tr bgcolor="<%=cl%>">

<td height='20'><%=lea.getId()%></td>

<td><%=lea.getUid() %></td>

<td><%=lea.getStart() %></td>

<td><%=lea.getEnd()%></td>

</tr>

<%

}

%>

</table>

</form>

4.3.5 ?公告管理模塊實(shí)現(xiàn)

該圖為公告添加界面,采用javascript實(shí)現(xiàn)。該模塊中用到兩個(gè)開源的javascript的組件,包過日歷組件和百度編輯器組件,能夠很方便的進(jìn)行公告的發(fā)布和編輯,同時(shí)也可以完成公告的插圖等操作,使公告的內(nèi)容更豐富。

?

圖 4-7 發(fā)布公告

核心代碼如下:

<%

List<New> stus = (List<New>) request.getAttribute("stus");

%>

<div id="news">

<div id="news_1">

<div>

<img src="images/index_25.gif" width="63" height="34" />

</div>

<div class="left title">新聞公告</div>

</div>

<div id="news_2">

<ul>

<%

for (New lea : stus) {

%>

<li><span><%=lea.getDate()%></span> <a

href="shownews.do"><%=lea.getTitle()%></a></li>

<%

}

%>

<li style="border: none;"><span><a

style="background: none" href="#">>>更多</a></span></li>

</ul>

</div>

</div>

4.3.6 ?請假管理模塊實(shí)現(xiàn)

在請假管理界面,管理員可看到所有用戶提交的請假信息,管理員可對其進(jìn)行審批,當(dāng)管理員點(diǎn)擊通過時(shí),狀態(tài)信息及由待審核進(jìn)入通過狀態(tài),反之進(jìn)入不通過狀態(tài)。當(dāng)管理員進(jìn)行相應(yīng)操作后,用戶可以看到自己的請假申請有沒有批準(zhǔn),并進(jìn)行相應(yīng)處理。

?

圖 4-8 請假信息


核心代碼如下:

int i = 0;

for (Leave lea : stus) {

//Student stu = stus[i];

i++;

String cl = i % 2 == 0 ? "#eeeeee" : "";

%>

<tr bgcolor="<%=cl%>">

<th><input type="checkbox" name="ids" value="<%=lea.getId()%>">

</th>

<td height='20'><%=lea.getId()%></td>

<td><%=lea.getName()%></td>

<td><%=lea.getReason()%></td>

<td><%=lea.getDate()%></td>

??????????????<td>

<%

if (lea.getState() == 0) {

%>待審核 <%} else if (lea.getState() == 1) {

%>不批準(zhǔn) <%} else {%>通過

<%}%>

</td>

<%

int h = 1;

int j = 2;

%>

<td><a href="updateleave1.do?id=<%=lea.getId()%>">不通過</a>?

<a href="updateleave2.do?id=<%=lea.getId()%>">通過</a>?</td>

</tr>

<%

}

%>


5 ?系統(tǒng)測試

5.1 ?系統(tǒng)測試的目標(biāo)和原則

1、測試目標(biāo)

每個(gè)系統(tǒng)在設(shè)計(jì)時(shí)都要經(jīng)過很多的步驟,系統(tǒng)測試只是其中的一個(gè)小步驟,只有經(jīng)過不斷的測試才能發(fā)現(xiàn)系統(tǒng)中存在的錯(cuò)誤,然后才能對系統(tǒng)做進(jìn)一步的改進(jìn)和優(yōu)化,只有這樣系統(tǒng)才會不斷的完善和穩(wěn)定。

2、測試原則?

(1)在系統(tǒng)開發(fā)的各個(gè)階段都應(yīng)當(dāng)進(jìn)行軟件測試;由于系統(tǒng)的復(fù)雜性、任務(wù)分配的多樣性、人員的分散性等等,使得開發(fā)的每個(gè)環(huán)節(jié)都有可能產(chǎn)生錯(cuò)誤,所以應(yīng)該把軟件測試在系統(tǒng)的各個(gè)模塊中不斷進(jìn)行。

(2)選擇測試用例時(shí)要合理且具有代表性。

(3)所有測試都應(yīng)該以用戶的需求為出發(fā)點(diǎn),以用戶的需求為宗旨。

完整全面的測試是不可能達(dá)到的,所以應(yīng)該選擇一些比較有代表性的測試用例。這樣可以減少測試的次數(shù),而且效率高。

(4)充分重視集群的試驗(yàn)現(xiàn)象,測試時(shí)不要認(rèn)為找到了幾個(gè)錯(cuò)誤問題就已經(jīng)解決了,應(yīng)當(dāng)對錯(cuò)誤群集的程序段進(jìn)行重點(diǎn)測試。?

(5)程序員不要檢查自己的程序,因?yàn)楸救撕茈y看出自己的程序錯(cuò)在什么地方,由開發(fā)和測試小組檢查。

(6)盡量避免測試的隨意性。

(7)程序修改以回歸測試[9]。

5.2 ?系統(tǒng)測試方法

軟件測試是在系統(tǒng)修改完善階段必須要有的一個(gè)步驟,只有通過測試,才能發(fā)現(xiàn)軟件中的錯(cuò)誤、異常和不足,以此來考慮是否需要對系統(tǒng)進(jìn)一步修改,使系統(tǒng)更加的健壯和穩(wěn)定。以下是常見的集中測試方法:

(1)單元測試:又稱模塊測試。

(2)集成測試:又稱組裝和測試。

(3)確認(rèn)測試:主要測試開發(fā)的系統(tǒng)是否滿足用戶的要求。

(4)系統(tǒng)測試:檢查模塊與模塊的鏈接與運(yùn)行是否成功,參數(shù)的配置是否合理。

(5)驗(yàn)收測試:驗(yàn)收測試是部署軟件之前的最后一個(gè)測試操作,在軟件完成了前期的一系列測試之后的一個(gè)交付測試。

軟件測試的方法很多按是否查看程序內(nèi)部結(jié)構(gòu)分為黑盒測試和白盒測試,按是否運(yùn)行程序分為靜態(tài)測試和動態(tài)測試等等[10]。

?

5.3??系統(tǒng)測試方案

本系統(tǒng)主要采用單元模塊測試。

1、軟件的安裝及環(huán)境的配置

操作系統(tǒng):Windows7

數(shù)據(jù)庫:MySQL

JDK的安裝及配置:

JAVA_HOME環(huán)境變量:C:\Program Files\Java\jdk1.7.0_15

CLASSPATH環(huán)境變量:C:\Program Files\Java\jdk1.7.0_15\lib\tools.jar

設(shè)置PATH環(huán)境變量:C:\Program Files\Java\jdk1.7.0_15\bin

服務(wù)器:apache-tomcat-6.0.20

TOMCAT_HOME環(huán)境變量:安裝目錄:D:\ApacheTomcat\apache-tomcat-6.0.20

IDE:?eclipse-jee-juno-win32

經(jīng)過上面一系列的安裝配置后,啟動tomcat-6.0.20,界面會出現(xiàn)一些列的提示字符,輸入http://localhost:8080/即可進(jìn)入tomcat的首頁,這說明系統(tǒng)測試正確。

2、系統(tǒng)登錄測試

測試點(diǎn):用戶名以及密碼。

測試路徑:用戶名和登錄密碼都是真實(shí)的。

測試結(jié)果:能否進(jìn)入指定的系統(tǒng)。

3、用戶注冊測試

測試點(diǎn):用戶填寫詳細(xì)信。

測試路徑:用戶填寫的信息格式都正確。

測試結(jié)果:正確的格式。

5.4??系統(tǒng)測試結(jié)果及分析

1、系統(tǒng)登錄測試結(jié)果

表 5-1 系統(tǒng)登錄測試結(jié)果



根據(jù)以上的測試用例,如果輸入的用戶名和密碼都正確并根據(jù)和數(shù)據(jù)庫比對進(jìn)入不同的系統(tǒng),否則系統(tǒng)會自動跳轉(zhuǎn)到登錄界面。

2、系統(tǒng)功能測試

經(jīng)過一些列的測試表明,該系統(tǒng)的各項(xiàng)功能基本都已實(shí)現(xiàn),基本能夠?qū)崿F(xiàn)選題所要求的各種功能。

(1)數(shù)據(jù)驗(yàn)證方面:對系統(tǒng)正確性的驗(yàn)證離不開數(shù)據(jù),檢測數(shù)據(jù)選擇要合理規(guī)范,經(jīng)過測試,基本達(dá)到設(shè)計(jì)的要求。

(2)在功能顯示方面:在經(jīng)過測試后,在功能顯示方面,基本達(dá)到用戶的要求,測試結(jié)果可參照系統(tǒng)設(shè)計(jì)。

3、系統(tǒng)局限性及不足

通過一系列的測試發(fā)現(xiàn),系統(tǒng)的基本功能都已實(shí)現(xiàn),由于時(shí)間限制某些復(fù)雜的功能可能短時(shí)間完成不了,有些功能也不是一個(gè)人能夠完成的;系統(tǒng)界面的設(shè)計(jì)也不是很美觀,需要進(jìn)一步美化,系統(tǒng)的代碼雖然寫好了,但是代碼有很多的冗余需要進(jìn)一步的優(yōu)化與改進(jìn)。

?


????結(jié)

當(dāng)今社會,互聯(lián)網(wǎng)技術(shù)飛速發(fā)展,傳統(tǒng)辦公模式不能滿足企業(yè)的需要,企業(yè)越來越青睞于辦公自動化系統(tǒng)。它能為企業(yè)帶來更大的效益。

通過對企業(yè)辦公自動化系統(tǒng)的分析,在畢業(yè)前夕,我完成了基于JavaEE的OA辦公自動化系統(tǒng)的開發(fā)。在開發(fā)過程中,鍛煉了我分析問題以及進(jìn)行合理規(guī)劃與分析設(shè)計(jì)的能力,同時(shí)也大幅度提高了我對開發(fā)工具的使用能力。我將理論應(yīng)用于實(shí)踐,極大地提高動手操作的能力,為以后步入社會奠定了基礎(chǔ)。

本系統(tǒng),界面清爽明朗,符合現(xiàn)代人的審美風(fēng)格;此外能夠完成用戶的注冊登錄功能,能夠?qū)T工和公告進(jìn)行增加、刪除、修改、查詢,對本公司的員工進(jìn)行考勤等操作。對于數(shù)據(jù)的一致性的問題也通過程序進(jìn)行了有效的解決。但是也存在許多的不足,例如功能過于簡單,沒有特色。我會不斷的努力,不斷的獲取經(jīng)驗(yàn),來提高自己的能力,不讓自己被社會淘汰。

?




【優(yōu)秀論文】OA辦公管理平臺的設(shè)計(jì)與開發(fā)的評論 (共 條)

分享到微博請遵守國家法律
柏乡县| 沙洋县| 米易县| 沧源| 南宁市| 天津市| 武陟县| 拜城县| 大足县| 西平县| 嵊泗县| 花莲县| 彭山县| 金寨县| 原平市| 搜索| 武平县| 永康市| 法库县| 卓资县| 彰化市| 榕江县| 灌阳县| 郴州市| 康平县| 枣强县| 洪江市| 龙泉市| 图木舒克市| 固始县| 昌黎县| 屏东县| 铜梁县| 焦作市| 定兴县| 洛隆县| 阿荣旗| 雷波县| 稷山县| 南宫市| 原阳县|