跳到主要內容

臺灣博碩士論文加值系統

(44.222.82.133) 您好!臺灣時間:2024/09/21 01:20
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:李慧玲
研究生(外文):LI, HUEI-LING
論文名稱:以 Java EE 技術開發志工管理系統
論文名稱(外文):Developing Volunteer Management System Using Java EE Technology
指導教授:陳宏益陳宏益引用關係
指導教授(外文):CHEN, HUNG-YI
口試委員:楊朝龍劉熒潔戴紹國
口試委員(外文):Yang, Chao-LungLiu, Ying-ChiehTai, Shao-Kuo
口試日期:2017-06-07
學位類別:碩士
校院名稱:朝陽科技大學
系所名稱:資訊管理系
學門:電算機學門
學類:電算機一般學類
論文種類:學術論文
論文出版年:2017
畢業學年度:105
語文別:中文
論文頁數:151
中文關鍵詞:Java EE應用系統志工管理
外文關鍵詞:Java EEApplication SystemVolunteer Management
相關次數:
  • 被引用被引用:0
  • 點閱點閱:310
  • 評分評分:
  • 下載下載:48
  • 收藏至我的研究室書目清單書目收藏:0
為因應《志願服務法》的實施,各縣市政府設立志願服務推廣中心,執行志願服務推廣工作及管理志工隊人力資源。志工隊為志工管理的基本單位,其主要業務包含志工的:基本資料維護、教育訓練辦理、記錄冊發放管理、服務時數管理等業務。
目前志工隊使用衛生福利部已建置的「衛生福利部志願服務資訊整合系統」(簡稱:衛福部志工系統)進行志工業務管理。然而,此系統有以下數點不便事項:1、系統操作介面不便造成業務執行困擾。例如,登錄服務時數時,只能逐月登錄無法跨月。2、瀏覽器相容性問題:只能使用 Internet Explorer (IE)瀏覽器,無法相容其它瀏覽器。3、封閉源碼:程式原始碼未開放,志工無法參與系統的開發及維護。
本論文建置「志工管理系統」,是一套獨立於衛福部志工系統的管理系統,供志工隊管理人員平日處理志工業務。本系統以 Java EE 技術開發,讓志工管理系統具備跨瀏覽器、可擴展性、可靠性及安全性等需求。此外,改善多項操作介面,節省資料輸入時間。最後,系統的原始碼也將以開放原始碼計劃的方式,開放給其他志工,共同參與系統的維護與開發,因應未來增加的功能需求。

In response to the implementation of Voluntary Service Act, the municipal and county governments have established Volunteer Service Promotion Centers (VSPCs) to promote volunteer service and manage Volunteer Teams. The Volunteer Team is the basic unit of volunteer management, whose businesses include: maintaining volunteer information, offering education and training activities, managing service record books, registering service hours.

Most of VSPCs currently use the Volunteer Service Information Integration System (VSIIS) provided by Ministry of Health and Welfare to assist their business processes and for reporting. However, after interviewing with the employees who are in charge of the processes in Taichung VSPC, the study has found opportunities to improve the system. Firstly, the user interface designs for some functions inconvenience the process of registering service hours. For example, the system allows only registering service hours month by month. Secondly, the system is incompatible with other browsers except the Microsoft Internet Explorer. Finally, the source codes of the VSIIS does not open to public that other volunteers can not join the development.

This study has built the Volunteer Management System to solve the above problems for the Taichung VSPC. The system is a self-contained one that provides functions to support the daily business for the VSPC. If necessary, the system administrator can import the data to VSIIS for reporting. The Volunteer Management System is developed by Java EE technology along with other open source technologies. That enables the system to be cross-browser compatible, scalable, reliable and secure to meet future functional requirements. Serveral user interfaces are improved to save the time for entrying data. The source codes of the proposed system will be open to public thourgh an open source project, which allows othter volunteers to join the development.

目錄
摘要 I
Abstract II
誌謝 III
目錄 IV
表目錄 VIII
圖目錄 IX
第一章 緒論 1
1.1 研究背景 1
1.2 研究動機 1
1.3 研究目的 2
第二章 文獻探討 4
2.1 Scrum開發框架介紹 4
2.2 使用者故事地圖/對照(User Story Mapping)介紹 10
2.2.1 版本釋出規劃 12
2.2.2 最小可運行版本 12
2.3 單一User Story的管理 12
2.3.1 單一User Story的品質條件 12
2.3.2 單一 User Story 的分割 16
2.3.3 量化 User Story 的工作量大小 22
2.4 Java EE平台介紹 25
2.4.1 Java EE 的架構 27
2.4.2 宣告式安全(Declarative Security) 30
2.4.3 程序式安全(Programmatic Security) 34
2.4.4 客戶端鑑別資料的蒐集 36
2.5 JSF 技術介紹 40
2.5.1 PrimeFaces 程式庫 40
2.5.2 於NetBeans配置PrimeFaces 41
2.6 Git 版本控管工具介紹 43
第三章 系統分析與設計 47
3.1 需求分析 47
3.1.1 業務流程說明 47
3.1.2 使用者故事地圖分析 54
3.1.3 使用者故事的細節說明 70
3.2 系統架構 80
3.2.1 志工基本資料管理活動之系統架構 81
3.2.2 教育訓練資料管理活動之系統架構 84
3.2.3 服務時數資料管理活動之系統架構 87
3.2.4 紀錄冊資料管理活動之系統架構 89
3.2.5 系統基礎環境活動之系統架構 91
3.2.6 組織單位管理活動之系統架構 94
3.3 系統角色的權限劃分 96
第四章 技術問題與解決 98
4.1 地址連動功能實作 98
4.2 提供對話框以複選志工 104
4.3 多功能資料表 107
4.4 使用Enterprise Java Bean 封裝資料庫存取邏輯 109
4.5 一對多關聯資料表的 JPA設置 114
4.6 Web端、EJB端存取權限管控 119
第五章 成果展示 127
第六章 結論與未來研究工作 131
6.1 貢獻 131
6.2 Scrum方法實行討論 131
6.3 未來研究工作 133
參考文獻 136
附錄A: Scrum 實行紀錄 140
附錄B: 會議紀錄 146

表目錄
表格 1 宣告式安全web.xml部署檔配置 31
表格 2 故事地圖-志工基本資料管理 55
表格 3 故事地圖-志工教育訓練管理 59
表格 4 故事地圖-志工服務時數管理 62
表格 5 故事地圖-志工紀錄冊管理 64
表格 6 故事地圖-系統基礎環境 66
表格 7 故事地圖-組織單位管理 68
表格 8 各組織中的角色權限劃分 97
表格 9 地址連動JSF頁面程式碼 103
表格 10 地址連動Managed Bean程式碼 104
表格 11 開啟對話框之按鈕程式碼 106
表格 12 開啟對話框頁面方法之程式碼 106
表格 13 selectVolunteers_ET頁面的部分程式碼 107
表格 14 PrimeFaces DataTable 功能JSF頁面程式碼 109
表格 15 Scrum開發紀錄 140
表格 16 平均開發速率 143

圖目錄
圖 1 志工管理系統與衛福部志工系統搭配使用 2
圖 2 產品項目精煉示意圖(QuickScrum, 2015) 7
圖 3 “Done” Thinking Grid(Mayank, 2008) 9
圖 4 Scrum 開發框架(Pete et al., 2012) 10
圖 5 使用者故事地圖範例 11
圖 6 Java EE 平台架構圖(Plumbr, 2016) 28
圖 7 Hello Java EE 應用程式的輸入介面(Plumbr, 2016) 29
圖 8 Hello Java EE 應用程式的元件部署架構圖(Plumbr, 2016) 30
圖 9 設定應用程式與應用程式伺服器Principal的對應 32
圖 10 EJB的宣告式安全範例 33
圖 11 EJB層的程序式安全與宣告式安全的比較(Danny, 2015) 34
圖 12 Java EE 平台中的角色傳播排列(Danny, 2015) 40
圖 13 將PrimeFaces程式庫加入Netbeans 專案 41
圖 14 匯入PrimeFaces jar檔到Netbeans 專案中 42
圖 15 加入PrimeFaces Namespace 42
圖 16 Git集中式工作流程(Scott & Ben, 2014) 44
圖 17 Git整合管理員工作流程(Scott & Ben, 2014) 45
圖 18 Git司令官與副官工作流程(Scott & Ben, 2014) 46
圖 19 衛福部志工推廣組織架構圖 48
圖 20 志工隊業務流程圖 49
圖 21 衛福部志工系統功能架構圖 50
圖 22 志工資料維護及記錄冊維護子功能架構圖 51
圖 23 衛福部志工系統:選擇單位志工畫面 52
圖 24 衛福部志工系統:服務時數新增畫面 53
圖 25 使用者故事地圖-U1~U3 56
圖 26 使用者故事地圖-U4、U7、U8 57
圖 27 使用者故事地圖-U5~U6 58
圖 28 使用者故事地圖-U9~U11 60
圖 29 使用者故事地圖-U12、U15、U16 60
圖 30 使用者故事地圖-U13~U14 61
圖 31 使用者故事地圖-U17~U21 63
圖 32 使用者故事地圖-U22、U25、U26 63
圖 33 使用者故事地圖-U23~U24 64
圖 34 使用者故事地圖-U27~U28 65
圖 35 使用者故事地圖-U29、U32、U33 65
圖 36 使用者故事地圖-U30~U31 66
圖 37 使用者故事地圖-U34~U36 67
圖 38 使用者故事地圖-U37、U38 68
圖 39 使用者故事地圖-U39~U42 69
圖 40 使用者故事地圖-U43、U46 69
圖 41 使用者故事地圖- U44、U45、U47、U48 70
圖 42 地址同步選項圖 71
圖 43 批次及分別登錄志工資料功能畫面 73
圖 44 服務時數分攤至每月功能畫面 75
圖 45 套用管理者角色畫面 78
圖 46 使用輸入框查詢已知組織單位畫面 79
圖 47 志工基本資料管理活動之系統架構圖 82
圖 48 教育訓練資料管理活動之系統架構圖 85
圖 49 服務時數資料管理活動之系統架構圖 87
圖 50 紀錄冊資料管理活動之系統架構圖 89
圖 51 系統基礎環境活動之系統架構圖 92
圖 52 組織單位管理活動之系統架構圖 94
圖 53 地址連動功能 99
圖 54 縣市及鄉鎮市區的表格實體關係圖 99
圖 55 縣市資料表 100
圖 56 鄉鎮市區資料表 100
圖 57 地址連動功能循序圖 102
圖 58 選擇志工對話框 105
圖 59 PrimeFaces DataTable 功能展示 108
圖 60 新增createVolunteer、viewVolunteer介面方法 110
圖 61 新增createVolunteer方法 111
圖 62 新增viewVolunteer方法 112
圖 63 於ManagedBean新增呼叫createVolunteer、viewVolunteer方法 112
圖 64 create.xhtml頁面程式碼 113
圖 65 result.xhtml 頁面程式碼 113
圖 66 使用EJB封裝資料庫存取邏輯執行結果 114
圖 67 一對多單向關聯循序圖 115
圖 68 BasicInformationEntity設置OneToMany 116
圖 69 系統產生關聯資料表 117
圖 70 修改createVolunteer方法 118
圖 71 於ManagedBean新增呼叫createVolunteer方法 118
圖 72 志工隊資料表 119
圖 73 基本資料及志工隊關聯表 119
圖 74 對應應用程式「admin」角色至應用程式伺服器中的「admin」Group 121
圖 75 設定「admin」角色所能存取的URL樣式 122
圖 76 設定「VolunteerManager」角色所能存取的頁面URL 樣式 122
圖 77 非「admin」角色存取未授權頁面時產生的禁止訪問頁面 123
圖 78 設定menu.xhtml不同角色可看到的畫面 124
圖 79 不同角色所看到的選單目錄 125
圖 80 為UserEJB加入註記設定允許存取的角色 及「admin」角色能使用所有方法 125
圖 81 為UserEJB中allUser()加入權限註記 允許其它非「admin」角色存取此方法 126
圖 82 EJB存取例外畫面 126
圖 83 目錄選單畫面 127
圖 84 於服務時數資料頁面選擇志工 128
圖 85 於服務時數資料頁面使用「批次輸入」功能輸入時數資料 128
圖 86 於服務時數資料頁面使用「分別輸入」功能輸入時數資料 129
圖 87 查詢服務時數頁面 129
圖 88 匯出服務時數資料 130
圖 89 會議中使用故事地圖 145
Abraham, M. P. (2016). Java EE 8 Delayed Until End of 2017, Oracle Announces at JavaOne. Retrieved 10/26, 2016, from https://www.infoq.com/news/2016/09/java-ee-delayed-2017

Agile Alliance (n.d.). Incremental Development. Retrieved 11/19, 2016, from https://www.agilealliance.org/glossary/incremental-development/

Barry, B. (1981). Software Engineering Economics. Upper Saddle River, NJ: Prentice Hall.

Bill, W. (2003). INVEST in Good Stories, and SMART Tasks. Retrieved 11/17, 2016, from http://xp123.com/articles/invest-in-good-stories-and-smart-tasks/

Danny, C. (2015). Java EE 7: The Big Picture. New York, NY: McGraw Hill Education.

Goncalves, A. (2013). Beginning Java EE 7. New York, NY: Apress.
https://en.wikipedia.org/wiki/Principal_(computer_security)

Ietf Tools (1999). HTTP Authentication: Basic and Digest Access Authentication. Retrieved 4/11, 2017, from https://tools.ietf.org/html/rfc2617#page-3

Innolution (n.d.). Potentially Shippable Product Increment. Retrieved 11/8, 2016, from http://www.innolution.com/resources/glossary/potentially-shippable-product-increment

jQuery (2017). Browser Support. Retrieved 6/8, 2017, from http://jquery.com/browser-support/

Ken, S., & Jeff, S. (2013). The Scrum Guide. Retrieved 10/23, 2016, from http://www.scrumguides.org/docs/scrumguide/v1/scrum-guide-us.pdf

Laura, P. (2013). Quick Reference Guide for Splitting User Stories. Retrieved 11/27, 2016, from http://www.agilelearninglabs.com/2013/05/new-quick-reference-guide-for-splitting-user-stories/

Leffinwell, D., & Behrens, P. (2009). A User Story Primer. Retrieved 11/17, 2016, from https://scalingsoftwareagility.files.wordpress.com/2009/11/user-story-primer_1.pdf

Mayank, G. (2008). Definition of Done: A Reference. Retrieved 11/9, 2016, from https://www.scrumalliance.org/community/articles/2008/september/definition-of-done-a-reference

Mike, C. (2004). Java EE 7: User Stories Applied for Agile Software Development. Boston, MA: Addison Wesley.

Mike, C. (2012). Two Examples of Splitting Epics. Retrieved 11/22, 2016, from https://www.mountaingoatsoftware.com/blog/two-examples-of-splitting-epics

Oracle (n.d.a). Java EE at a Glance. Retrieved 10/27, 2016, from http://www.oracle.com/technetwork/java/javaee/overview/index.html

Oracle (n.d.b). Specifying Security Constraints. Retrieved 3/27, 2017, from https://docs.oracle.com/cd/E19226-01/820-7627/bncbk/index.html

Oracle (n.d.c). The Java EE 6 Tutorial. Retrieved 4/12, 2017, from http://docs.oracle.com/javaee/6/tutorial/doc/gkbaa.html#gkbsa

Oracle (n.d.d). The Java EE 6 Tutorial: Authentication Mechanisms. Retrieved 4/12, 2017, from http://docs.oracle.com/javaee/6/tutorial/doc/glien.html#glieq

Oracle (n.d.e). The Java EE 6 Tutorial: Using Programmatic Security with Web Applications. Retrieved 4/18, 2017, from http://docs.oracle.com/javaee/6/tutorial/doc/gjiie.html

Pete, D., Gabrielle, B., Craig, L., & Bas V. (2012). The Scrum Primer. Retrieved 11/2, 2016, from https://www.infoq.com/minibooks/Scrum_Primer

Plumbr (2016). Most Popular Java Application Servers: 2016 Edition. Retrieved 10/27, 2016, from https://plumbr.eu/uncategorized/most-popular-java-ee-servers-2016-edition

QuickScrum (2015). Product Backlog Refinement. Retrieved 11/8, 2016, from https://www.quickscrum.com/Article/ArticleDetails/4056/4/Product-Backlog-Refinement

Richard, L. (2009). Patterns for Splitting User Stories. Retrieved 11/22, 2016, from http://agileforall.com/patterns-for-splitting-user-stories/
Scott, C., & Ben, S. (2014). Pro Git[2nd Edition] Retrieved 12/10, 2016, from https://progit2.s3.amazonaws.com/zh-tw/2015-07-27-05234/progit-zh-tw.604.pdf

Scrum Alliance (n.d.). Scrum Values. Retrieved 11/11, 2016, from https://www.scrumalliance.org/why-scrum/core-scrum-values-roles

Scrum Methodology (2016). Scrum Effort Estimation and Story Points. Retrieved 12/1, 2016, from http://scrummethodology.com/scrum-effort-estimation-and-story-points/

Stackoverflow (2012). JSF's ui:include Not Working as Expected. Retrieved 10/07, 2016, from http://stackoverflow.com/questions/13588399/jsfs-uiinclude-not-working-as-expected

The Agile Dictionary (n.d.). Spike. Retrieved 11/26, 2016, from http://agiledictionary.com/209/spike/

The Agile Manifesto (2001). Manifesto for Agile Software Development Retrieved 11/11, 2016, from http://agilemanifesto.org

Tiobe (n.d.). TIOBE Index for October. Retrieved 10/26, 2016, from http://www.tiobe.com/tiobe-index/

Tirrellp (2015). How to Decompose User Stories into Tasks. Retrieved 11/1, 2016, from http://www.payton-consulting.com/decompose-user-stories-tasks/

Wikipedia (2016a). Java EE Version History. Retrieved 10/26, 2016, from https://en.wikipedia.org/wiki/Java_EE_version_history

Wikipedia (2016b). Java Platform, Enterprise Edition. Retrieved 10/26, 2016, from https://en.wikipedia.org/wiki/Java_Platform,_Enterprise_Edition

Wikipedia (2016c). Principal (computer security). Retrieved 4/10, 2017, from https://en.wikipedia.org/wiki/Principal_(computer_security)

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top