2014預(yù)算實習(xí)日記
這次實習(xí)所需的基本知識基本上都介紹過了,今天正式轉(zhuǎn)入開發(fā)階段。這次實習(xí)做的是一個費用管理系統(tǒng),上午開始討論這個系統(tǒng)需求分析,包括實現(xiàn)項目預(yù)算,費用報銷,人事管理和一些統(tǒng)計的功能,老師把整個系統(tǒng)的框架給我們做了一些大體的講解,希望我們能在接下來的幾天里去多思考,深化需求分析,細(xì)化功能設(shè)計。系統(tǒng)有組織結(jié)構(gòu)維護,費用項目維護,審批流程維護,報銷明細(xì)模塊,以及人員管理和一些統(tǒng)計的功能。每一個模塊都是對系統(tǒng)功能模塊的調(diào)整與維護。
人員管理有添加員工的功能,可以對添加的人員進行修改和刪除,并給新增的員工分配權(quán)限。
Ø 費用項目維護模塊:可以進行費用項目的添加和提交。
Ø 報銷模塊可以對報銷的項目在未提交之前進行刪除和修改。
Ø 統(tǒng)計模塊主要是統(tǒng)計員工提交的報銷單預(yù)算單,及每個部門的項目信息和員工信息等。
所有這些操作都是直接對數(shù)據(jù)庫直接進行操作。整個系統(tǒng)都是分角色登陸,每一個角色所擁有的權(quán)限都不完全相同,登陸進去的菜單欄都有所不同,所以每個員工都應(yīng)該有一個角色,即有哪些操作權(quán)限。所有的功能和流程理清楚之后,就要開始原型設(shè)計了。
20XX-2-26
經(jīng)過對需求分析的進一步理解,接下來我們開始這個項目的原型設(shè)計。我們所開發(fā)的費用管理系統(tǒng)主要包括費用報銷、項目預(yù)算管理、員工管理、公司的項目信息維護及管理、財務(wù)處項目信息的統(tǒng)計功能。圍繞這幾個功能模塊,我們逐個對其功能進行細(xì)節(jié)設(shè)計,比如分不同角色登陸系統(tǒng),登陸界面都是通用的,每個用戶都用自己的編號進行登陸,系統(tǒng)會根據(jù)用戶的編號進行匹配查找,找到角色ID之后進入對應(yīng)的管理界面。進入管理界面之后,就可以新增費用報銷,可以對添加的費用報銷單在未提交之前進行修改、刪除操作,確定之后就可以提交,系統(tǒng)會根據(jù)session中保存的該用戶的編號查找到所在的部門,然后把用戶提交的申請表保存到該部門經(jīng)理處,當(dāng)該部門經(jīng)理登陸時就可以看到部門員工提交的申請表單,然后進行審批等操作。所有的邏輯統(tǒng)一之后,我們分工開始做JSP界面和之間的邏輯跳轉(zhuǎn)。經(jīng)過一天的時間系統(tǒng)總算有個雛形了,。設(shè)計完大體的功能框架后,我們與老師一起開了一個小組討論會,我們向老師說明了我們的想法及大體的開發(fā)方向,老師也想我們提出了一些建議,經(jīng)過一番熱烈的爭論,我們對自己的模型做了進一步的改動,功能設(shè)計也得到進一步完善。功能框架的設(shè)計是整個開發(fā)階段十分重要的工作,指導(dǎo)小組進行后面具體的開發(fā)。功能設(shè)計的準(zhǔn)確和完善也能夠幫助我們在以后的開發(fā)中少走彎路,達(dá)到事半功倍的效果。原型設(shè)計的完成是我們小組成員齊心協(xié)力共同完成的,這也讓我們感受到了團隊工作的重要性和強大力量。
20XX-2-28 星期一
今天,我們的主要工作是根據(jù)昨天的原型設(shè)計,做出功能展示頁面,并實現(xiàn)基本的跳轉(zhuǎn)。由于這些只是一個邏輯的跳轉(zhuǎn),沒有真正和數(shù)據(jù)庫交互,因此幾個超鏈接就可以把所有界面聯(lián)系到一塊,再加上一些javascript的提示框,原型幫助我們更深入的理解了這個系統(tǒng)的流程及功能。下午我們就開始了數(shù)據(jù)庫建表、物理模型的設(shè)計以及概念設(shè)計。根據(jù)需求分析及原型,我們很快就確定了系統(tǒng)需要的數(shù)據(jù)表,包括用戶的基本信息、用戶的角色ID、報銷申請表單、預(yù)算申請表單、部門項目信息等,以及每個表里面所需的字段,通過在數(shù)據(jù)庫中建表,SQL語句的用法更加熟練。根據(jù)這些數(shù)據(jù)表,物理模型也很快就完成了。因為數(shù)據(jù)庫是整個系統(tǒng)的關(guān)鍵所在,所有前臺的操作都要和數(shù)據(jù)庫交互,所以它設(shè)計的好壞直接影響到之后程序的編寫。接下來我們繼續(xù)討論我們建立的表的冗余性以及合理性等,在老師的指導(dǎo)下,我們對部分表進行了相應(yīng)的修改。
20XX-3-1
在昨天的基礎(chǔ)上,我們進行了再次討論,數(shù)據(jù)庫的設(shè)計最終確定下來。接下來就開始了編碼,建立整個系統(tǒng)的框架由我負(fù)責(zé),按照開發(fā)的流程,首先根據(jù)數(shù)據(jù)表建立實體層,也就是javaBean,然后寫數(shù)據(jù)庫連接,數(shù)據(jù)訪問層,業(yè)務(wù)邏輯層,控制層,整個框架搭建好之后,有利用老師講的Junit,寫了測試程序,對所寫的程序進行初步測試,數(shù)據(jù)庫連接的測試順利通過。數(shù)據(jù)庫連通之后,下一步工作就是用戶的分角色登陸,事先在數(shù)據(jù)庫中插入了一些用戶信息,將角色分為五類,然后在數(shù)據(jù)訪問層建立一個DAO類,創(chuàng)建函數(shù)用于從數(shù)據(jù)庫中讀取用戶的角色ID,然后在業(yè)務(wù)邏輯層判斷DAO層函數(shù)返回的值是否為空,如果不為空則在控制層的servlet類中就可以進行判斷分角色登陸;若DAO層函數(shù)返回的值為空,則說明該用戶名與密碼有誤,當(dāng)用戶點擊登陸按鈕時將轉(zhuǎn)到錯誤提示的頁面。當(dāng)這些全部完成之后,我們開始進行測試,但測試全未能如愿以償。調(diào)試、檢查了很久全未能發(fā)現(xiàn)錯在哪里。今天沒能順利完成計劃好的任務(wù),深受打擊啊,不過沒關(guān)系,遇到問題,解決問題,也許會學(xué)到跟多知識。
20XX-3-2
上午接著做昨天未能完成的任務(wù),調(diào)試了兩個多小時還是未能所獲,只有請教老師了,看著老師在Debug模式下很快就找了出錯的地方,原來在DAO層寫SQL語句時后面多了一個逗號,看來編程也是需要非常的細(xì)心?偨Y(jié)了失敗的原因,記住教訓(xùn),一定不能再出現(xiàn)這樣的低級錯誤,而導(dǎo)致降低效率。這一步總算通過之后,我們開始著手不同角色所擁有的操作權(quán)限,比如普通員工只有報銷申請的權(quán)限(新增報銷單、刪除、修改、提交、查看等功能),部門經(jīng)理不僅有報銷申請的權(quán)限,還有審核部門員工提交的報銷申請單和預(yù)算申請、部門項目管理等權(quán)限,每一種角色登陸到操作界面的功能按鈕不盡相同,所以當(dāng)普通角色登陸后,審核、預(yù)算等按鈕必須隱藏或者不可用。但是我們之前的界面里的按鈕實現(xiàn)隱藏與子菜單都很難實現(xiàn),所以不得不考慮改變策略。之后經(jīng)過討論我們將整個頁面布局改變?yōu)榭蚣苣J剑筮咃@示樹形菜單,top'Frame顯示LOGO,mainFrame顯示主顯示頁面,bottomFrame顯示版權(quán)信息以及系統(tǒng)時間。這樣我們貌似又回到了原型設(shè)計,,還是沒有項目經(jīng)驗,最初就沒有考慮清除。
20XX-3-3
涉及到的JSP界面還比較多,每一個頁面都是用HTML一句一句寫出來,再加上CSS 樣式,所以半天的時間也沒有完成,今天上午繼續(xù)完成。當(dāng)所有的界面完成之后,開始了第一個功能模塊的編碼。當(dāng)用戶登陸到自己的主頁時,顯示的都是歡迎界面,當(dāng)用戶點擊報銷單管理時,必須根據(jù)用戶編號動態(tài)的從數(shù)據(jù)庫中提取其所有的報銷單信息,然后顯示在展示界面上,用戶的編號的、是在用戶登陸時將用戶編號存儲在session中,默認(rèn)該用戶登陸系統(tǒng)30分鐘內(nèi)沒有操作的話,自動讓該用戶注銷登陸。當(dāng)點擊報銷單管理按鈕時,將用戶請求轉(zhuǎn)到servlet類中進行后臺處理,讀取成功后,將這些信息傳到用戶的界面上,第一個原子功能實現(xiàn)后,我們更加有信心來完成其他模塊的編碼。原來一個真正的系統(tǒng)也應(yīng)該是這樣的原子操作組合而成的,從這一步的成功點燃了我們對編碼的興趣,不再畏懼和逃避。
【預(yù)算實習(xí)日記】相關(guān)文章:
安裝預(yù)算實習(xí)日記11-22
預(yù)算員實習(xí)日記06-27
預(yù)算員實習(xí)日記范文04-25
預(yù)算員實習(xí)工作日記06-28
預(yù)算工作日記06-26
預(yù)算的實習(xí)報告04-25
預(yù)算的實習(xí)報告04-24