第一篇:停車場系統開題報告
武漢科技學院畢業設計(論文)開題報告 課題名稱
智能停車場管理系統的設計與實現
院系名稱
計算機科學學院
專業
網絡工程
班級
計科077
學生姓名
黃易欣
一.課題的意義
當前,在停車場的信息化過程中,有許多信息需要處理和管理。現今,有很多門診信息都是初步開始使用,甚至尚未使用計算機進行信息處理。根據調查得知,他們以前對信息管理的主要方式是基于文本、表格等紙介質的手工處理,對于管理過程中的很多信息都是用人工計算、手抄進行。數據信息處理工作量大,容易出錯;由于數據繁多,容易丟失,且不易查找。總的來說,缺乏系統,規范的信息管理手段。
數據處理手工操作,工作量大,出錯率高,出錯后不易更改。基于這此問題,我認為有必要建立一個停車場管理系統,使停車場管理工作規范化,系統化,程序化,避免停車場管理的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的查詢和修改停車場情況。因此開發一個智能停車場管理系統是非常有必要的。二.開發背景
在停車場的信息化中,涉及停車場車位管理的信息化、車主管理的信息化、停車信息管理的信息化,做好信息化工作利于提高停車場的管理效率,提升停車場的競爭力。
要提高競爭力,既要有好的硬件環境,同時也要有好的客戶服務,而要實現這些目標的辦法就是信息化。本選題,針對停車場過程中的一些信息,對其進行信息化處理。
在停車場管理過程中,主要涉及固定車位信息、自由車位信息、車主信息、停車信息,通過對以上各個環節的信息化,提高檔案的規范化管理,為以后的查詢、統計打下基礎。通過這前段時間的市場調查和分析,初步了解到現在各種停車場軟件的優點及不足。比如說有些傳統停車場軟件是為替代手工錄入,從傳統數據記錄中產生的,這些軟件面對Internet及電子商務迅猛發展的網絡經濟時代顯得如此脆弱,具體來說有以下幾點不足:
1、體系封閉,無法實現網絡化管理,更無法支持電子商務。傳統軟件由于產生的技術背景落后,無法實現網絡化管理或只支持局部網絡應用,更無法支持電子商務,不能適應網絡時代企業的需求。
2、信息單
一、落后且缺乏前瞻性。由于技術方面的限制,傳統軟件無法做到庫存信息的實時動態處理、事前的預測并提供前瞻性信息。
3、對管理考慮甚少。軟件依舊沒有擺脫傳統束縛,以對外報告為其存在目的。三.研究內容
本系統應用有如下功能模塊:
(1)系統管理者部分:至少具有相應的添加、修改、刪除用戶的功能,具有修改用戶權限的功能,并且進行用戶分類的功能,還有對不同的用戶進行停車費用的設置的功能。(2)系統使用者部分:對停車相關信息進行定時和臨時管理,查詢,統計和上報。四.研究方法 4.1 設計方法
1.查詢相關資料,了解本系統的研究意義。可以上網搜索或者是去圖書館查閱相關資料。2.通過查詢資料了解該系統要如何做,及要做哪些東西。3.設計出大體上的功能模塊,畫出模塊圖。
4.通過進一步的了解,對每個功能模塊進行細化,將每一步都想清楚。制定出每一步的做法和注意的地方。
5.對設計好的程序進行調試,通過調試發現存在的問題并解決,從而達到完善系統的目的。6.最后,整理各階段的設計記錄文檔,寫成論文稿。4.2 開發工具 選用設計語言
目前的可用的設計技術在設計此類系統上的數據庫技術已經非常成熟,可提供的開發工具也很多,例如:Visual C++ ,Visual Basic,PowerBuilder,Dephi, visual foxpro等,它們都是很好的數據庫開發工具,都是可視化開發工具,功能強大,開發容易,開發周期短,對于本任務都能夠勝任。
VC6.0是Microsoft Visual Studio 6.0家族成員之一,是一個功能極為強大的可視化軟件開發工具,它提供了一個集源程序編輯、代碼編譯和調試于一體的可視化開發環境,即所謂的集成開發環境,包含文本編輯器、資源編輯器、工程編譯工具、源代碼瀏覽器、集成調試工具,以及一套聯機文檔。與其他的可視化編程環境(如Visual Basic)一樣,VC6.0集程序的代碼編輯、編譯、鏈接、調試等功能于一體,加上AFX小組為VC6.0精心打造的、功能強大的MFC類庫,給程序員提供了一個完整、全面而又方便的開發環境,并提供了許多有效的輔助開發工具。
VC6.0基于C/C++,所以它擁有兩種以下編程方式。
一種是傳統的基于Windows API的C編程方式,雖然其代碼效率較高,但開發難度與開發工作量也隨著增高,目前使用這種編程方式的用戶已經很少。一種是基于MFC的C++編程方式,雖然其代碼運行效率相對較低,但開發難度小、開發工作量小、源代碼效率高,已成為Visual C++開發Windows應用程序的主流。
為了幫助開發人員開發Windows應用程序,VC6.0提供了豐富的向導窗口。用戶在構建各種工程時,幾乎都可以找到相應的工程向導窗口,利用向導窗口可以為用戶生成工程框架。例如,用戶在設計一個對話框應用程序時,只要選擇MFC應用程序向導,根據向導提示的步驟進行操作,不需要編寫一行代碼,就可以創建一個窗口;用戶只要在窗口中添加一些控件,在控件的命令消息中編寫代碼,就可以設計出一個簡單的應用程序。4.3 選用SQL server作為后臺數據庫
SQL server 2000 就是關系數據庫管理工具,數據庫能匯集各種信息以供查詢、存儲和檢索。SQL 的優點在于它能使用數據表示圖或自定義窗體收集信息。數據表示圖提供了一種類似于 Excel的電子表格,可以使數據庫一目了然。另外,SQL允許創建自定義報表用于打印或輸出數據庫中的信息。SQL也提供了數據存儲庫,可以使用桌面數據庫文件把數據文件置于網絡文件服務器,與其他網絡用戶共享數據庫。SQL 是一種關系數據庫管理工具,關系數據庫是已開發的最通用的數據庫之一。如上所述,SQL 作為關系數據庫開發具備了許多優點,可以在一個數據包中同時擁有桌面數據庫的便利和關系數據庫的強大功能。4.4 設計要求
智能停車場管理是一個典型的數據庫管理信息系統,系統的開發用到許多數據庫相關的理論,因此要求作者具有這方面的基礎知識,能夠正確運用數據庫理論進行系統的分析、邏輯設計、實體屬性以及ER圖等的轉換,明白范式的相關內容,從而能夠根據系統實際要求,設計出滿足要求的合理的數據庫。
面向對象理論。當前流行的編程思想是面向對象思想,而且許多工具,如Visual C++,體現的也正是這種思想。面向對象思想與傳統的面向過程編程思想相比,具有明顯的優勢,而且智能停車場管理系統的設計也要求用面向對象編程工具來實現。這就要求作者在進行畢業設計時,應該明白面向對象的思想,并能夠運用其思想到實際的工作中。軟件工程思想。大型系統的開發要用到軟件工程相關的理論。雖然智能停車場管理系統比較小,但是最好也能按照系統設計的生命周期模型來進行。嚴格按照軟件工程思想和管理信息系統的開發步驟,設計并實現一個智能停車場管理信息系統。以系統開發過程為主線,從需求分析,邏輯設計,總體設計,詳細設計以及系統測試、實施各階段的主要內容和成果,包括系統結構圖、業務流程圖、數據流程圖、E-R模型、數據字典、物理表實現及其關系、功能模塊算法流程、界面設計等等。
一定的實際動手能力和實際編程經驗。系統最后要落實到windows下的編程,因此要求作者對windows下的數據庫編程具有一定的基礎,能夠較為熟練的進行數據庫相關程序的開發。以Microsoft公司的Visual Basic 6.0為開發工具,以SQL為后臺數據庫,對上述邏輯設計的成果進行轉換,實現一個完整的可運行的智能停車場管理系統。4.5 設計環境 硬件環境:
隨著計算機硬件的高速發展,現在普通的機子已經可以做為一個服務器端使用。CPU: 2.0Ghz或更高 硬盤:40G或更多 內存:512M或更高 軟件環境:
操作系統
Windows 2000 Server /Windows XP 數據庫
SQL Server 開發環境
Visual C++ 其它輔助軟件:Microsoft Word等 五.實現步驟:
階段一:11年01月01日-08年01月15日文獻搜集與整理,撰寫開題報告, 外文翻譯;階段二:11年02月16日-08年03月15日對要實現的處理進行需求分析,模塊劃分; 階段三:11年03月16日-08年04月01日系統設計,包括模塊分解,詳細設計以及編寫代碼; 階段四:11年04月02日-08年05月20日對開發的系統進行簡單的測試和維護; 階段五:11年05月21日-08年05月28日根據所做系統,撰寫畢業論文。六.參考書目 [1] 王珊:《數據庫系統概論》,高等教育出版社,2006年。[2] 賽奎春等:《VC數據庫開發關鍵技術與實例應用》,人民郵電出版社,2003年。[3] 汪詩林等:《數據結構算法與應用》,機械工業出版社,2005年。[4] 約翰遜鮑爾:《面向對象程序設計:C++語言描述(原書第2版)》,機械工業出版社,2003年。
[5] 馮博琴等:《面向對象分析與設計》,機械工業出版社,2003年。[6] Awad.E.M, Gotterer M.H: Visual C++ 6.0, 1992.[7] Robert.H.Dependahl:《Database Principles and Applications》.Williams Brown,2003.指導教師簽名: 年月日
第二篇:停車場管理系統需求報告
停車場收費管理系統
需求報告
目錄 1 2 3 摘要
項目背景介紹
停車場收費管理系統的現狀
功能需求
4.1 通用基本功能 4.2 圖像識別比較功能 4.3 先進的閘機安全安裝 4.4 可增設中遠距離車輛感應 5
性能需求
5.1 系統基本要求
5.2 數據管理能力要求
5.3 故障處理要求
外部接口說明
6.1 入口和出口部分 6.2 數據流程 7
修正系統開發計劃 摘要
停車場電腦收費管理系統是現代化停車場車輛收費及設備自動化管理的統稱,是將車場完全置于計算機管理下的高科技機電一體化產品。
根據多年設計、安裝停車場收費系統的實際經驗,我們在軟件和系統設計上為停車場提供了一套最嚴格、最先進、易用、便于維護和運行可靠的收費系統;一套能有效的堵塞收費漏洞,降低操作成本,提高經濟效益和減輕勞動強度,提高工作效率的現代化收費管理系統
隨著時代的發展,私家車越來越多,而車位卻十分緊張。在市區內有很多空間沒
有被充分利用,大多車輛是停在路邊或者簡易停車場,缺乏管理,這樣導致了資源的浪費,也造成了街道的擁堵。為了適應社會的發展,大量的現代化大規模的停車場會被投入使用,但管理方面又容易出現問題。因此,停車場管理系統的開發和應用是十分必要的。
此報告的目的重在分析此程序的總體需求,實現方案,并分析開發系統的可行性,為決策者提供是否開發該系統的依據和建議。項目背景介紹
2.1 開發軟件名稱:停車場管理系統 2.2項目開發者:
某軟件開發小組
2.3用戶單位:
某公司
2.4大體框架:
智能停車場收費管理系統 門禁管理系統 智能通道管理系統 考勤管理系統 智能巡更管理系統 收費管理系統等子系統 閉路監視系統(CCTV)
消防安全系統(FA)和保安系統(SA)緊急廣播系統 停車場收費管理系統的現狀
該系統具有很大的市場潛力,以現在的車輛增長速度推測,在不久的將來肯定會有許多大規模停車場(包括住宅小區)建成,此系統的開發很有價值。本系統現有的技術條件完全有能力順利完成開發工作,硬件、軟件上的配置也很容易滿足開發者的要求,開發系統的計算機硬件已經非常普及,完全沒有問題;現在的計算機各方面的技術都非常成熟,相對來說開發此系統的技術也要求比較簡單,因此在技術方面是可行的;各類技術人員的數量、水平、來源等也能很容易滿足;而且此系統的專業性不強,因此不需要相關行業人士,開發人員的選擇就有很大余地。停車場計費管理系統的主要工作是減少人工計費帶來的不便,提高辦事效率,使車輛管理工作更加信息化,電子化。充分發揮計算機的信息傳輸速度快、準確度高的優勢。功能需求
4.1通用基本功能:
入口讀卡升閘、出口讀卡驗卡收費、車滿顯示、出入口與收費亭對講、公正收費等等。
4.2 圖像識別比較功能:
其他有圖像識別功能的系統,其識別都是單向識別,即僅入口攝取,出口須由管理員目測比較。本系統入口、出口均采用攝像機比較,方便管理員直觀比較。
4.3 先進的閘機安全安裝:
道閘欄桿配的自動平穩裝置,以及防抬桿、防砸車功能,檢測功能具有高靈敏度和高可靠性。能很好地識別非機動車及人員等誤報情況。
4.4 可增設中遠距離車輛感應:
采用50-80cm中距離或5-8m遠距離感應范圍的讀卡器,經多次實際認證為最方便的操作距離。系統如果沒有特殊要求一般車輛經過讀卡器的距離約為10--15cm。性能需求
5.1 系統基本要求
響應時間:系統的響應時間不能超過1分鐘
警告時間及次數:每隔三分鐘重復警告一次,每次警告時間持續一分鐘。主存容量:內存:128MB RAM 磁盤容量:不小于1G
顯示器:256色,800*600以上的兼容顯示器
5.2 車輛管理能力要求
計費
分為入口和出口,中間設立崗樓,一人操作,高峰時期可兩人操作,入口處發放計費卡,出口處憑借計費卡繳費,放行,操作簡單快速方便。長期客戶可辦理月票。客戶也可購買車位,實現車位預留 監控
全范圍監控,無死角,監控畫面與保安室相連接,可錄像。一旦出現事故或意外,保安可第一時間趕到現場,必要時可以直接報警。出現緊急情況,如火災時,會自動啟動消防設備,并自動開啟大門,放行車輛。自動引導車位
停車更加快速,有效,方便。
5.3 故障處理要求
列出可能的軟件、硬件故障以及對各項性能而言所產生的后果和對故障處理的要求。輸出發生錯誤時,在系統的代碼部分進行修改 外部接口說明
6.1 入口和出口部分
入口控制部分: 智能停車場收費管理系統 門禁管理系統 智能通道管理系統 考勤管理系統 智能巡更管理系統
出口控制部分: 收費管理系統等子系統 閉路監視系統(CCTV)
消防安全系統(FA)和保安系統(SA)緊急廣播系統
6.2 數據流程 修正系統開發計劃
對于車輛的管理有待提高,如停車位置,出場路線等。在以后的系統中,會提供諸如此類的更加人性化的服務。
本系統會提供多國語言的電子錄音,使此系統對不懂中文的客戶也適用。
第三篇:《停車場管理系統》實驗設計報告
重慶郵電大學計算機科學與技術學院
《數據結構》實驗設計報告
題目:停車場管理系統 姓名:** 學號: 2010211998 班級:0491002 學院:計算機科學與技術學院
重慶郵電大學計算機科學與技術學院
目錄
一、問題描述………………………………………………………03
二、問題分析………………………………………………………03
三、數據結構描述…………………………………………………04
四、算法設計………………………………………………………04
五、程序優缺點分析及優化………………………………………05
六、程序源代碼……………………………………………………07
七、程序運行結果…………………………………………………13
八、心得體會………………………………………………………15 附
一、優化后的程序…………………………………………………16 附
二、優化后程序的運行結果………………………………………23
重慶郵電大學計算機科學與技術學院
一、問題描述
設計一個停車場管理系統。
設停車場是一個可停放n輛汽車的狹長通道,且只有一個大門可供汽車進出。汽車在停車場內按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車停放在停車場的最北端),若停車場內已停滿n輛汽車,則后來的汽車只能在門外的便道上等候,一旦有車開走,則排在便道上的第一輛車即可開入;當停車場內某輛車要離開時,在它之后進入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其他車輛再按原次序進入車場,每輛停放在車場的車在它離開停車場時必須按它停留的時間長短交納費用。試為停車場編制按上述要求進行管理的模擬程序。【基本要求】
以棧模擬停車場,以隊列模擬車場外的便道,按照從終端讀入的輸入數據序列進行模擬管理。每一組輸入數據包括三個數據項:汽車?到達?或?離去?信息、汽車牌照號碼以及到達或離去的時刻。對每一組輸入數據進行操作后的輸出信息為:若是車輛到達,則輸出汽車在停車場內或便道上的停車位置;若是車輛離去,則輸出汽車在停車場內停留的時間和應交納的費用(在便道上停留的時間不收費)。棧以順序結構實現,隊列以鏈表結構實現。【選作內容】
(1)兩個棧共享空間,思考應開辟數組的空間是多少?
(2)汽車可有不同種類,則他們的占地面積不同,收費標準也不同,如1輛客車和1.5輛小汽車的占地面積相同,1輛十輪卡車占地面積相當于3輛小汽車的占地面積。
(3)汽車可以直接從便道上開走,此時排在它前面的汽車要先開走讓路,然后再依次排到隊尾。
二、問題分析
該問題需要以棧和隊列作為基本的存儲結構,以順序棧模擬停車場,以鏈隊列模擬車場外的便道。汽車進入停車場,即是在順序棧上執行進棧操作,退出停車場即是在順序棧上執行出棧操作;汽車進入便道,即是在鏈隊列上執行入隊操作,退出便道即是在鏈隊列上執行出隊操作。
當停車場內某輛車要離開時,在它之后進入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其他車輛再按原次序進入車場。設要刪除的元素在順序表St中位置為i,則從i到top之間的全部元素進入到一個臨時棧St1中, 其次再刪除該元素,然后將臨棧St1的元素按照?先進后出?的原則重新回到St中。若鏈隊不空,則使隊頭進棧St,并以當前時刻開始計費。
程序需要構造兩個順序棧St和St1,其中St用于模擬停車場,St1用作臨時棧,臨時停放為給要離去的汽車讓路而從停車場退出來的汽車。此外還需要構
重慶郵電大學計算機科學與技術學院
造一個鏈隊列Qu用于模擬便道。
三、數據結構描述
/*定義順序棧類型*/ typedefstruct { intCarNo[N];
/*車牌號*/ intCarTime[N];
/*進場時間*/ int top;
/*棧指針*/ } SqStack;
/*定義順序棧類型*/
/*定義鏈隊類型*/ typedefstructqnode { intCarNo;
/*車牌號*/ structqnode *next;} QNode;typedefstruct { QNode *front;/*隊首和隊尾指針*/ QNode *rear;} LiQueue;
四、算法設計
1.對于子函數模塊,則調用順序棧的基本操作和鏈隊列的基本操作。如下:
/*順序棧的基本運算算法*/ voidInitStack(SqStack *&s)
intStackEmpty(SqStack *s)
intStackFull(SqStack *s)
/*S中的插入新元素*/ int Push(SqStack *&s,int e1,int e2)
重慶郵電大學計算機科學與技術學院
/*刪除S的棧頂元素,并用e1,e2返回其值*/ int Pop(SqStack *&s,int&e1,int &e2)
voidDispStack(SqStack *s)
/*以下為鏈隊列的基本運算算法*/ voidInitQueue(LiQueue *&q)
intQueueLength(LiQueue *q)
intQueueEmpty(LiQueue *q)
voidenQueue(LiQueue *&q, int e)} intdeQueue(LiQueue *&q,int&e)
voidDisplayQueue(LiQueue *q)
2.主程序模塊 void main(){ 初始化; do { 接受命令;
處理命令;
} while(命令!=?退出?); }
五、程序優缺點分析及優化
1.程序的優點
在程序中設置了kind變量,用于保存車的類別,便于計算不同類別車的停車費用,如下程序段:
printf(“n請輸入車的類別【車的類別:1.代表小汽車 2.代表客車 3.代表卡車】:n”);scanf(“%d”,&kind);
其中kind可取值1,2,3;若kind取2,則表示一輛客車單位時間內的停車費用
重慶郵電大學計算機科學與技術學院
是一輛小汽車的2倍,若kind取3,則表示一輛卡車單位時間內的停車費用是一輛小汽車的3倍。
當然printf(“n請輸入車的類別【車的類別:1.代表小汽車 2.代表客車 3.代表卡車】:n”);中的1.2.3也可以根據實際情況改變。比如,若實際中,一輛小汽車單位時間內的停車費用
是一輛客車的2倍,一輛卡車單位時間內的停車費用是一輛客車的4倍,則可以改成:
printf(“n請輸入車的類別【車的類別:1.代表客車2.代表小汽車 4.代表卡車】:n”);
則kind可取值1,2,4; kind取1時對應的是客車,表示計算停車費用時以一輛客車單位時間內的停車費用為基數,若kind取2,則表示一輛小汽車單位時間內的停車費用是一輛客車的2倍,若kind取4,則表示一輛卡車單位時間內的停車費用是一輛客車的4倍。
2.程序的缺點
(1)輸入時間時,程序沒有檢測錯誤功能 程序的輸入形式如下: 設n=2,輸入數據為:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3,20),(‘A’,4,25),(‘A’5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。其中:‘A’表示到達(arrival);‘D’表示離去(departure);‘E’表示輸出結束(end)。
設每個輸入項的形式為(Choose, CarNumber, Time),其中Choose表示每個括號中的第一項數據,即A/D/E; CarNumber表示每個括號中的第二項,即1/2/3;Time表示每個括號中的第三項,即5/10/15。設前后兩次輸入的數據中的第三項分別為Time1,Time2;則必須滿足Time2≧Time1。而在實際輸入過程中用戶可能會忽略這一點,所以應該在輸入Time是設置一個判斷語句,若前后兩次輸入的Time不滿足Time2≧Time1,則要求用戶重新輸入,直至滿足要求為止。
(2)程序的界面不夠清晰,一次性輸入的數據項比較多,容易出錯。3.改進思想(1)
為了保證前后兩次輸入的Time必須滿足Time2≧Time1,使程序具有錯誤檢測功能,在程序輸入部分添加了如下代碼:
printf(“輸入現在的時刻:n”);
scanf(“%d”,&time2);
while(time2 { printf(“時間輸入錯誤,請重新輸入:n”); scanf(“%d”,&time2); 重慶郵電大學計算機科學與技術學院 } time1=time2;//time1定義為靜態變量 (2)為了使程序有更清晰的界面,可在主函數中加入菜單的顯示方式。且數據可以采用一次輸入一個數據項,分步輸入的方式,使輸入過程少出錯。于是可以將主函數進行修改。(見附錄一) 六、程序源代碼 #include /*停車場內最多的停車數*/ #define Price 2 /*每單位停車費用*/ typedefstruct { intCarNo[N]; /*車牌號*/ intCarTime[N]; /*進場時間*/ int top; /*棧指針*/ } SqStack; /*定義順序棧類型*/ /*定義鏈隊類型*/ typedefstructqnode { intCarNo; /*車牌號*/ structqnode *next;} QNode;typedefstruct { QNode *front;/*隊首和隊尾指針*/ QNode *rear;} LiQueue; /*順序棧的基本運算算法*/ voidInitStack(SqStack *&s){ s=(SqStack *)malloc(sizeof(SqStack));s->top=-1; 重慶郵電大學計算機科學與技術學院 } intStackEmpty(SqStack *s){ return(s->top==-1);} intStackFull(SqStack *s){ return(s->top==N-1);} /*S中的插入新元素*/ int Push(SqStack *&s,int e1,int e2){ if(s->top==N-1) return 0;s->top++;s->CarNo[s->top]=e1;s->CarTime[s->top]=e2;return 1;} /*刪除S的棧頂元素,并用e1,e2返回其值*/ int Pop(SqStack *&s,int&e1,int &e2){ if(s->top==-1) return 0;e1=s->CarNo[s->top];e2=s->CarTime[s->top];s->top--;return 1;} voidDispStack(SqStack *s){ int i;for(i=0;i<=s->top;i++) printf(“%d ”,s->CarNo[i]);printf(“n”);} /*以下為鏈隊列的基本運算算法*/ 重慶郵電大學計算機科學與技術學院 voidInitQueue(LiQueue *&q){ q=(LiQueue *)malloc(sizeof(LiQueue));q->front=q->rear=NULL;} intQueueLength(LiQueue *q){ int n=0;QNode *p=q->front;while(p!=NULL){ n++; p=p->next;} return(n);} intQueueEmpty(LiQueue *q){ if(q->rear==NULL) return 1;else return 0;} voidenQueue(LiQueue *&q, int e){ QNode *s;s=(QNode *)malloc(sizeof(QNode));s->CarNo=e;s->next=NULL;if(q->rear==NULL)/*若鏈隊為空,則新結點是隊首結點又是隊尾結點*/ q->front=q->rear=s;else { q->rear->next=s;/*將*s結點鏈到隊尾,rear指向它*/ q->rear=s;} } intdeQueue(LiQueue *&q,int&e){ QNode *t;if(q->rear==NULL)/*隊列為空*/ return 0; 重慶郵電大學計算機科學與技術學院 if(q->front==q->rear)/*隊列中只有一個結點時*/ { t=q->front; q->front=q->rear=NULL;} else /*隊列中有多個結點時*/ { t=q->front; q->front=q->front->next;} e=t->CarNo;free(t);return 1;} voidDisplayQueue(LiQueue *q){ QNode *p=q->front;while(p!=NULL){ printf(“%d ”,p->CarNo); p=p->next;} } void main(){ char choose;/*用于選擇命令*/ int no,e1,time,e2,kind;/*用于存放車牌號、當前停車時刻*/ inti,j;SqStack *St,*St1;/*臨時棧St1,當停車場中間的車要推出去時,用于倒車*/ LiQueue *Qu;InitStack(St);InitStack(St1);InitQueue(Qu);printf(“ #”);printf(“n# #”);printf(“n# 歡迎使用停車場管理系統 #”); 重慶郵電大學計算機科學與技術學院 printf(“n# #”);printf(“n# 【輸入提示】:汽車狀態由A、D、E 表示。其中,A:表示汽車到達 D:表示汽車離去, #”);printf(“n# E:表示輸出結束。每次輸入的數據由三項構成,即:(汽車狀態,車牌號,當前時刻)#”);printf(“n# 數據項之間以逗號分開。例如輸入示范:A,1,5 #”);printf(“n #n”);printf(“n正在讀取汽車信息...n”); do { printf(“n*****************************************************************”);printf(“n請分別輸入汽車狀態(A/D/E)、車牌號和當前時刻(數據之間以逗號分開):n”);scanf(“ %c,%d,%d”,&choose,&no,&time); switch(choose){ /*************************** 汽車到達 ******************************/ case 'A': case 'a': if(!StackFull(St)) /*停車場不滿*/ { Push(St,no,time); printf(“該車在停車場中的位置是:%dn”,St->top+1); } else /*停車場滿*/ { enQueue(Qu,no); printf(“n停車場已滿,該車進入便道,在便道中的位置是:%dn”,QueueLength(Qu)); } break;/************************* 汽車離開 ********************************/ case 'D': case 'd': 重慶郵電大學計算機科學與技術學院 printf(“n請輸入車的類別【車的類別:1.代表小汽車 2.代表客車 3.代表卡車】:n”);scanf(“%d”,&kind); for(i=0;i<=St->top && St->CarNo[i]!=no;i++); if(i>St->top)/*要離開的汽車在便道上*/ { /*汽車可以直接從便道上開走,此時排在它前面的汽車要先開走讓路,然后再依次排到隊尾*/ while(Qu->front->CarNo!=no) { enQueue(Qu,Qu->front->CarNo); // deQueue(Qu,Qu->front->CarNo); Qu->front = Qu->front->next; } deQueue(Qu,no);printf(“n便道上車牌號為%d的汽車已離開!n”,no); printf(“n當前便道中的車輛的車牌號分別是:”); DisplayQueue(Qu); printf(“n”); } else /*要離開的汽車在停車場中*/ { for(j=i;j<=St->top;j++) { Pop(St,e1,e2);/*e1,e2用來返回被刪元素的車牌號和停車時刻*/ Push(St1,e1,e2);/*倒車到臨時棧St1中,將e1,e2插入到臨時棧中*/ } Pop(St,e1,e2); /*該汽車離開*/ printf(“n車牌號為%d的汽車停車時間為:%d。停車費用為:%dn”,no,time-e2,(time-e2)*Price*kind); /*對小汽車而言:當前時刻 減去 該車當時停車的時刻,再乘以價格就是費用,而對于客車和卡車而言,就要乘以kind倍小汽車的價格*/ while(!StackEmpty(St1))/*將臨時棧St1重新回到St中*/ { Pop(St1,e1,e2); Push(St,e1,e2); } if(!QueueEmpty(Qu))/*隊不空時,將隊頭進棧St*/ { 重慶郵電大學計算機科學與技術學院 deQueue(Qu,e1); Push(St,e1,time);/*以當前時間開始計費*/ } printf(“n當前停車場中的車輛的車牌號分別是:”);//輸出停車場中的車輛 DispStack(St); } break;/************************ 結束 *********************************/ case 'E': case 'e': printf(“n正在退出系統...n”); if(!StackEmpty(St))//顯示停車場情況 { printf(“n當前停車場中的車輛的車牌號分別是:”);//輸出停車場中的車輛 DispStack(St); printf(“n”); } else printf(“n當前停車場中無車輛nn”); break;/************************ 結束 *********************************/ default: /*其他情況*/ printf(“輸入的命令錯誤!n”); break;} } while(choose!='E'&&choose!='e');} 七、程序運行結果 取N=2,即停車場內最多的停車數為2 取 Price=2,即每單位停車費用為2 輸入數據為:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3,20),重慶郵電大學計算機科學與技術學院 (‘A’,4,25),(‘A’5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。程序演示結果如下圖所示: 重慶郵電大學計算機科學與技術學院 八、心得體會 (1)該實驗涉及到順序棧的建立、插入、刪除等操作,涉及到了鏈隊列的建立、插入、刪除等操作。做這個實驗,加深了我對以上知識點的認識和理解。(2)提高了 C 語言編程的能力。在程序設計過程中,需要經過反復地編寫,調試,運行,發現問題并解決問題,在這次實驗的設計中,我加深對程序的了解,提高自己的實際動手能力和獨立思考的能力同時我也學會了綜合以前學到的基本知識來解決較大問題的方法。 (3)一方面我養成了注重程序細節的意識。例如: printf(“n請分別輸入汽車狀態(A/D/E)、車牌號和當前時刻(數據之間以逗號分開):n”);scanf(“ %c,%d,%d”,&choose,&no,&time); 重慶郵電大學計算機科學與技術學院 %c,前面必須留一個空格,否則程序在顯示的時候就會有一些問題。 (4)另一方面我也深刻地認識到了《數據結構》這門課程的重要性。“數據結構”在計算機科學中是一門綜合性的專業基礎課。數據結構的研究不僅涉及到計算機硬件的研究,而且和計算機軟件的研究有著更密切的關系,無論是編譯程序還是操作系統,都涉及到數據元素在存儲器中的分配問題。在研究信息檢索時也必須 考慮如何組織數據,以便使查找和存取數據元素更為方便。可以認為數據結構是介于數學、計算機硬件和計算機軟件三者之間的一個核心內容,是從事計算機科學研究及其應 用的科技工作者必須掌握的重要內容 附 一、優化后的程序 #include /*停車場內最多的停車數*/ #define Price 2 /*每單位停車費用*/ typedefstruct { intCarNo[N]; /*車牌號*/ intCarTime[N]; /*進場時間*/ int top; /*棧指針*/ } SqStack; /*定義順序棧類型*/ /*定義鏈隊類型*/ typedefstructqnode { intCarNo;/*車牌號*/ structqnode *next;} QNode;typedefstruct { QNode *front;/*隊首和隊尾指針*/ QNode *rear;} LiQueue; /*順序棧的基本運算算法*/ voidInitStack(SqStack *&s){ s=(SqStack *)malloc(sizeof(SqStack));s->top=-1;} 重慶郵電大學計算機科學與技術學院 intStackEmpty(SqStack *s){ return(s->top==-1);} intStackFull(SqStack *s){ return(s->top==N-1);} /*S中的插入新元素*/ int Push(SqStack *&s,int e1,int e2){ if(s->top==N-1) return 0;s->top++;s->CarNo[s->top]=e1;s->CarTime[s->top]=e2;return 1;} /*刪除S的棧頂元素,并用e1,e2返回其值*/ int Pop(SqStack *&s,int&e1,int &e2){ if(s->top==-1) return 0;e1=s->CarNo[s->top];e2=s->CarTime[s->top];s->top--;return 1;} voidDispStack(SqStack *s){ int i;for(i=0;i<=s->top;i++) printf(“%d ”,s->CarNo[i]);printf(“n”);} /*以下為鏈隊列的基本運算算法*/ voidInitQueue(LiQueue *&q){ q=(LiQueue *)malloc(sizeof(LiQueue)); 重慶郵電大學計算機科學與技術學院 q->front=q->rear=NULL;} intQueueLength(LiQueue *q){ int n=0;QNode *p=q->front;while(p!=NULL){ n++; p=p->next;} return(n);} intQueueEmpty(LiQueue *q){ if(q->rear==NULL) return 1;else return 0;} voidenQueue(LiQueue *&q, int e){ QNode *s;s=(QNode *)malloc(sizeof(QNode));s->CarNo=e;s->next=NULL;if(q->rear==NULL)/*若鏈隊為空,則新結點是隊首結點又是隊尾結點*/ q->front=q->rear=s;else { q->rear->next=s;/*將*s結點鏈到隊尾,rear指向它*/ q->rear=s;} } intdeQueue(LiQueue *&q,int&e){ QNode *t;if(q->rear==NULL)/*隊列為空*/ return 0;if(q->front==q->rear)/*隊列中只有一個結點時*/ { t=q->front; 重慶郵電大學計算機科學與技術學院 q->front=q->rear=NULL;} else /*隊列中有多個結點時*/ { t=q->front; q->front=q->front->next;} e=t->CarNo;free(t);return 1;} voidDisplayQueue(LiQueue *q){ QNode *p=q->front;while(p!=NULL){ printf(“%d ”,p->CarNo); p=p->next;} printf(“n”);} void main(){ int choose;/*用于選擇命令*/ int no,e1,time2,e2,no_away;/*no_away:汽車離開時輸入車牌號;time2:當前停車時刻;*/ static int time1;/*靜態變量time1用于存放上次時刻*/ inti,j;int kind;/*車的類別*/ time1=time2=0;SqStack *St,*St1;/*臨時棧St1,當停車場中間的車要推出去時,用于倒車*/ LiQueue *Qu;InitStack(St);InitStack(St1);InitQueue(Qu);printf(“ ”);printf(“n# #”); 重慶郵電大學計算機科學與技術學院 printf(“n# 歡迎使用停車場管理系統 #”);printf(“n# #”);printf(“n n”);do { printf(“n******************** 主菜單 ****************************n”); printf(“** 1:車輛到達 **n”); printf(“** 2:車輛離開 **n”); printf(“** 3:顯示停車場的車輛 **n”); printf(“** 4:顯示便道中的車輛 **n”); printf(“** 0:退出 **n”); printf(“********************************************************n”); printf(“請選擇:”); scanf(“%d”,&choose); switch(choose) { case 1: // #汽車到達 ###### printf(“輸入輸入車牌號、當前時刻(數據之間以逗號隔開):n”); scanf(“%d,%d”,&no,&time2);/*依次輸入車牌號、當前停車時刻*/ while(time2 { printf(“時間輸入錯誤,請重新輸入當前時刻:n”); scanf(“%d”,&time2); } time1=time2; if(!StackFull(St)) /*停車場不滿*/ { Push(St,no,time1); printf(“該車在停車場中的位置是:%dn”,St->top+1); 重慶郵電大學計算機科學與技術學院 } else /*停車場滿*/ { enQueue(Qu,no); printf(“n停車場已滿,該車進入便道,在便道中的位置是:%dn”,QueueLength(Qu)); } break; case 2: // ##汽車離開 #### printf(“輸入車牌號:n”); scanf(“%d”,&no_away); printf(“請輸入車的類別【車的類別:1.代表小汽車 2.代表客車 3.代表卡車】:n”);scanf(“%d”,&kind); printf(“輸入現在的時刻:n”);/*現在的時刻time1得大于之前的時刻time1*/ scanf(“%d”,&time2); while(time2 { printf(“時間輸入錯誤,請重新輸入:n”); scanf(“%d”,&time2); } time1=time2; for(i=0;i<=St->top && St->CarNo[i]!=no_away;i++); if(i>St->top)/*汽車可以直接從便道上開走,此時排在它前面的汽車要先開走讓路,然后再依次排到隊尾*/ { while(Qu->front->CarNo!=no_away) { enQueue(Qu,Qu->front->CarNo); Qu->front = Qu->front->next; } deQueue(Qu,no_away);printf(“n便道上車牌號為%d的汽車已離開!n”,no_away); printf(“n當前便道中的車輛的車牌號分別是:”); DisplayQueue(Qu); printf(“n”); } else 重慶郵電大學計算機科學與技術學院 { for(j=i;j<=St->top;j++) { Pop(St,e1,e2);/*e1,e2用來返回被刪元素的車牌號和停車時刻*/ Push(St1,e1,e2);/*倒車到臨時棧St1中,將e1,e2插入到臨時棧中*/ } Pop(St,e1,e2); /*該汽車離開*/ printf(“n車牌號為%d的汽車停車費用為:%dn”,no_away,(time2-e2)*Price*kind);/*對小汽車而言:當前時刻 減去 該車當時停車的時刻,再乘以價格就是費用,而對于客車和卡車而言,就要乘以kind倍小汽車的價格*/ while(!StackEmpty(St1))/*將臨時棧St1重新回到St中*/ { Pop(St1,e1,e2); Push(St,e1,e2); } if(!QueueEmpty(Qu))/*隊不空時,將隊頭進棧St*/ { deQueue(Qu,e1); Push(St,e1,time1);/*以當前時間開始計費*/ } } break; case 3: // #####顯示停車場情況 if(!StackEmpty(St)) { printf(“當前停車場中的車輛的車牌號分別是:”);/*輸出停車場中的車輛*/ DispStack(St); } else printf(“停車場中無車輛!n”); break; case 4: // ######顯示便道情況 # if(!QueueEmpty(Qu)) { 重慶郵電大學計算機科學與技術學院 printf(“ 當前便道中的車輛的車牌號分別是:”);/*輸出便道中的車輛*/ DisplayQueue(Qu); } else printf(“便道中無車輛!n”); break; case 0: // # 結束 ### printf(“n正在退出系統...n”); if(!StackEmpty(St)) { printf(“當前停車場中的車輛的車牌號分別是:”);/*輸出停車場中的車輛*/ DispStack(St); } if(!QueueEmpty(Qu)) { printf(“ 當前便道中的車輛的車牌號分別是:”);/*輸出便道中的車輛*/ DisplayQueue(Qu); } break; /**********************************************************/ default: /*其他情況*/ printf(“輸入的命令錯誤!n”); break; } } while(choose!=0);} 附 二、優化后程序的運行結果 取N=2,即停車場內最多的停車數為2 取 Price=2,即每單位停車費用為2 輸入數據為:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3,20),(‘A’,4,25),(‘A’5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。程序演示結果如下圖所示: 重慶郵電大學計算機科學與技術學院 重慶郵電大學計算機科學與技術學院 重慶郵電大學計算機科學與技術學院 重慶郵電大學計算機科學與技術學院 重慶郵電大學計算機科學與技術學院 模塊化動態電子商務網站的開題報告范文互聯網普及和人們消費觀念改變促進電子商務迅速發展,中國零售業紛紛開展網上業務。電子商務作為一種生存于虛擬化、數字化空間的商業模式,正成為我國零售商提高企業競爭力的武器。本文針對我國B2C電子商務發展特殊情況,重點就我國零售業在發展電子商務過程中遇到問題提出(這里寫你報告里提出的幾種策略)等新策略。開頭不錯哦。 1.本課題所涉及的問題在國內(外)的研究現狀綜述 目前國際電子商務發展的現狀和趨勢是: (1)全球電子商務,美國獨占鰲頭。目前美國電子商務的應用領域與規模遠遠超過其他國家,繼續保持其作為世界電于商務龍頭的地位。2002年美國網上在線交易零售總額達434.7億美元(包括旅費在內則為730億美元),歐洲聯盟約為282.9億美元,亞太地區150億美元,拉丁美洲23億美元,而非洲僅為400萬美元。 (2)亞洲電子商務發展不容小覷。作為最具高回報及商業機會的區域,亞洲電子商務發展一直受到信息技木和商界人士的關心。據調查,2001年亞洲國家應用電子商務的貿易額達300億美元。而今后4年的年增長率將高達109。由此可見,亞洲地區電子商務的發展前景非常美妙。 (3)B2B電于商務快速增長。根據美國著名的信息市場研究公司國際數據公司的預測,全球B2B電子商務將保持高速增長的勢頭。2001年,美國的年B2B在線銷售額達9950億美元,占美國電子商務交易總量的93.3%。歐洲聯盟的B2B交易值私營部門估計數,2002年約為1850億美元至2000億美元。在中歐和東歐,一些預計顯示,2003年,B2B電子商務交易額將達40億美元左右。在亞太地區,此種交易額將迅速增長,由2002年的大約1200億美元增至2003年的大約2000億美元,2003年將增至3000億美元左右。在拉丁美洲,2002年的B2B在線交易額預測為65億美元,2003年將達125億美元。還有人提出了要比這樂觀得多的數字,根據2001年的預測,非洲的B2B電子商務交易額2002年將為5億美元,2003年將為9億美元,南非將在這兩個數字中占80%至85%。國際數據公司認為,今后全球B2B電子商務重點將從注重服務向注重產品轉變,不同地區的文化將決定不同地區的電子商務模式,這將促使全球B2B電子商務保持快速增長勢頭。 2.我國電子商務發展現狀 我國在八十年代開始關注電子信息化和電子商務的發展,并于93年開始實施“三金”工程,即:金橋、金關、金卡,這些措施為實施電子商務創造了良好的技術條件和實施環境。另據最新統計,我國網民總數己近6000萬,這為我國電子商務發展提供了巨大的消費市場。根據2003年電子商務發展分析報告,2002年我國各行各業電子商務總交易額約為10242億元。其中:證券公司網上交易總量達5230億元,占51%:外貿電子商務的總交易額2490億元,占24;電子行業B2B經營額在572億元,還有醫藥、煤炭、紡織、網絡教育、農業、旅游等。四大門戶網站(新浪、易趣、搜狐、263)2002年的收益約為12億元,占中國電子商務交易額的0.12 %2002年電子商務的市場規模像產品類經營占到48,實施服務類的占52。這里面有很大是金融服務,比如說證券。可以說電子商務己經滲透到我國各個領域,并參與到我們的日常生活中來。 2.設計(論文)要解決的問題和擬采用的研究方法 目前電子商務雖然迅猛發展,但是作為電子商務一個重要模式之一的B2C模式卻遠遠落后于B2B的發展,原因很多,但其中一個重要的原因就是電子商務平臺不能全面的解讀電子商務,使電子商務只停留于形式,單純起到網上交易的目的,雖然我國互聯網上已經有1000多個電子商務網站,但真正能實現電子商務功能的卻少之又少,更不要說真正開發電子商務功能,實現 電子商務優勢了。甚至于有很多是為了迎合電子商務發展而單純建立一個界面,放幾件商品,后臺的工作完全不存在。因此開發一個功能全面、適合我國商務特色的、經濟實用的B2C電子商務平臺是非常需要和必要的。 (1)通過建設電子商務系統可以將電信服務、技術服務、商業服務以及各行業融合在一起,通過平臺接入統一、應用統一和管理統一的綜合服務機制,實現各種復雜的電子商務應用,降低企業步入真正電子交易的門檻,從而建立一個多贏的電子商務合作圈,形成整體競爭優勢。 (2)通過建設電子商務系統,使得企業不必專注于復雜多變的信息技術,而用最小的資金投入、最簡單的接入方式去聯系最廣泛的客戶和供應商,進行最先進、最有效的電子商務應用服務,從而使各個傳統行業迅速形成互聯網時代的新經濟商業模式,建立未來發展的戰略優勢。 (3)通過完善電子商務網絡體系,建設公共電子商務的導購平臺,建立綜合電子商務體系、安全認證和安全支付體系等,將使電子商務的各種資源得到充分利用,能使電子商務的相關對象更加專業、更加合作、更加協調。形成一個應用開發、產業生產、技術支持、商業交易、運營服務的產業鏈。從而形成整體優勢,取得最佳經濟效益。 (4)通過建設電子商務系統,使企業融入世界經濟一體化體系中,并通過這些企業與眾多關聯企業、政府部門、事業機構的供應鏈的形成,可以帶動其它關聯企業在生產、銷售、采購等諸多方面的業務,形成以市場為主線的全新的電子貿易體系。并加速促進對外貿易和國家信息化、國際化水平,從而提高經濟整體素質、國際競爭力和發展后勁,實現經濟結構的全面升級和綜合實力再上新臺階。 3.本課題需要重點研究的、關鍵的問題及解決的思路 重點研究的、關鍵的問題: ①整體構思:對于一個系統來說,好的構思是很重要的。恰當的構思能為以后的設計帶來很多的方便,可以讓我們按照預定的規劃一步步來實現系統功能,可以使我們對整個系統做到一目了然。這個階段的關鍵是畫出系統的數據流程圖。 ②數據庫和數據庫表的創建:這是在實施階段要做的第一件事,特別是數據庫表的創建,這是以后數據插入、查詢等功能實施的數據存放處,關系著整個系統的合理性,創建時要考慮清楚以后所要涉及的各個方面,制作出最合理的數據庫表。 ③數據庫的連接:系統采用Microsoft Access建立數據庫。利用Typelib聲明ADO,IIS5.0引入了綁定到組件類型庫的功能,只需要引用類型庫依次,便可將其應用在每個ASP頁面上。 ④數據的插入和查詢:數據的插入和查詢系統的最起碼要求。插入和查詢是整個系統的基本。這里要解決的是如何定義好各個函數和窗口名,做到一一對應。 ⑤窗口對象和數據窗口的創建:這是系統的可視界面,是用戶直接看到的。窗口對象的創建要與數據庫表對應,界面設計要合理,做到能夠帶給用戶友好的界面。 畢 業 設 計 開 題 報 告 1.畢業實習課題的基本內容 目前社會上信息管理系統發展飛快,各個學校都引入了信息管理軟件來管理自己日益增長的各種信息,考勤管理系統也是有了很大的發展,商業化的學校信息管理軟件也不少。而目前學校的這項工作還處于半手工管理階段,信息資源的數字化程度低,大部分歷史積累的數據,尚未數字化。不利于科學管理和決策。但是隨著多媒體教學的推廣,電腦和網絡的普及,人民對電腦的應用已經不再陌生。在這么一個信息化的時代,智能化信息處理已是提高效率、規范管理、客觀審查的最有效途徑。考勤作為一個企業的基礎管理,是老師對學生學習管理的基本依據。實際管理和記錄學習非常需要快速獲知各個學生的每日出勤情況,以便于及時學校反映學生的出勤,缺勤情況(包括遲到、早退、病假、事假、等情況)。實現網上考勤任務,以減輕考勤人員的工作量。我們準備開發學生考勤管理系統,完成學生基本信息維護、學生考勤的管理、學生考勤的查詢。包括學生遲到、早退、請假、曠課的情況的記錄,在每個學期期末計算成績,以及對學生進行成績評估的時候,對學生整個學期的考勤記錄進行查詢和統計。學生考勤管理系統是為了解決學生考勤管理的而設計的,目的是建立一個能夠初步實現學校考勤管理系統的智能化管理,提高考勤管理效率,老師能夠了解學生在學習的態度得到及時的反饋,而系統所需的工作人員的數量少,效率高。降低資源浪費,同時增強學生管理的透明度以及約束學生自覺遵守出勤制度。 1.1后臺信息管理系統 1.1.1基礎信息管理子系統 基礎信息管理子系統主要是由教學秘書使用,用來對教學中的基礎信息進行管理,包括專業信息管理(模塊),年級信息管理(模塊),班級信息管理(模塊),學生信息管理(模塊),教師信息管理(模塊),用戶組信息管理(模塊),課程信息管理(模塊),學生選課信息管理(模塊),教師代課信息管理(模塊),功能信息管理(模塊),權限管理(模塊) 1.1.2考勤管理子系統 考勤管理子系統主要是由各系部的教師使用,輔導員進行學生請假處理,代課教師上課點名以及輔導員和代課老師察看考勤。包括的模塊有:請假模塊,點名模塊,察看考勤模塊(包括代課老師察看考勤,輔導員察看考勤,教學管理員察看考勤),查詢統計模塊(對以前學期的考勤進行察看和統計)。 1.2前臺學生系統 前臺學生模塊主要是由學生使用,學生可以通過登陸此模塊察看自己當日考勤信息和歷史考勤信息,同時,學生還可以在此模塊中修改自己的個人信息,可以察看學院最近通知和本學期課表等信息。 2.課題的研究意義、國內外現狀 考勤作為一個單位的基礎管理,越來越受到重視,但是現在很多時候都是人工考勤。人工考勤靠專人書面登記,存在許多主觀、人為因素,往往最終 不 能令管理層取得考勤結果資料,甚至不能起到基本的約束作用。學校里課堂的考勤情況進行實時的需求分析,并從一些用戶那反饋的信息的綜合,以及結合網上查找到的一些現成的考勤系統的適用,我們定制了我們的考勤系統,我們希望通過這個考勤系統的使用,能夠簡化學校考勤的過程。 國內現狀技術長期落后,產品性能差,滿足不了客戶的要求,客戶只能退而求其次;對于大一點的企業客戶對產品的性能滿意度低,如客戶稍微嚴格則工程很難驗收通過。產品在低層面上競爭。考勤系統在國內已出現和使用已有十多年了,其間有很多技術變革,比如從條型碼到磁卡,到接觸式IC卡,到非接觸式感應卡,至到指紋識別,這不能不說是技術的快速進步。不過,這些技術的進步僅限于身份的識別方面,只是識別介質發生了改變,而對考勤數據的采集、處理和及時準確的報表方面,一直是止步不前,甚至為了追求低成本而互相抄襲,誰也不愿去做技術的創新,不考慮使用者的需求。這種老技術產品因其研發周期極短,成本低廉,大多數是贈送軟件。報表的功能只適合于小型企業客戶的粗放要求。但這也給整個考勤系統行業造成了致命的缺陷和傷害,表現在技術停滯不前,看不到先進性,用計算機處理考勤數據,居然要以大量手工修改報表結果為前提,不然報表不正確,人資部門每個月被折磨得疲累不堪,很耽誤人力資源管理工作。 3.本課題擬解決的關鍵問題及其重點和難點 通過對開發此考勤系統的前期調研和對本次項目需求說明書的閱讀,我認為本次項目的實施,其中的關鍵問題和重、難點如下: 3.1項目實施的關鍵問題: 根據此次系統開發的具體任務可以得出:在項目的實施中,必須實現系統的MVC,除此之外,我認為還有一個關鍵問題,那就是本系統的實用價值和安全性,作為一個學院的學生考勤系統,它不僅僅只完成學生考勤的任務,我認為對于考勤后的數據處理和匯總是十分重要的,同時,由于此系統得使用者很多,因此,我認為安全性機制必須考慮周全,這樣不僅可以提高實用價值,而且給學院的教學工作也會帶來很多的方便,綜上所述,我認為項目實施的關鍵問題就是這兩個大的方面。 3.2項目實施的重點: 作為一個項目的重點,我認為就是本項目需要實現的最本質的功能,對于此項目,我認為其重點就是完成教師對學生的考勤工作,已經對考勤資料的匯總和處理。 3.3項目實施的難點: 對于此次考勤系統的實施,我認為難點問題存在于兩個大的方面:首先是項目實施時,我將運用到的架構問題,也就是三層實現,我是否能順利完成,其次便是對考勤前后的數據的處理,我認為中兩點不僅是項目的精髓所在,而且是本次項目的難點內容 4.擬采取的研究方法及及時間安排 4.1研究方案: 本次項目主要采用的技術是:B2C+Servlet+Jsp.本次項目運用的數據庫是:SQLServer2005 本次項目運用的開發工具是:MyEclipse6.5 本次項目運用的服務器:Tomcat6.5 4.2時間安排: 需求分析和系統HTML原型(2周) 數據庫設計和數據庫可行性分析。(2周) 頁面設計。(2周) 5.提交畢業實習材料和答辯工作。(2周)5 參考文獻 [1]Budi Kurniawan,《深入淺出Struts》; [2]Dave Crane、Eric Pascarello、Darren James,《Ajax實戰》; [3]孫衛琴,《精通Struts:基于MVC的Java Web設計與開發》; 指導教師意見:(對本課題的深度、廣度及工作量的意見) 指導教師: 年月日第四篇:電子商務系統開題報告
第五篇:考勤系統開題報告