Alumni tracking system, Study Guides, Projects, Research of Capstone Design

Its about thesis for the student who will be needing this.

Typology: Study Guides, Projects, Research

2018/2019

Uploaded on 06/26/2019

jayvee_subia
jayvee_subia 🇵🇭

4

(1)

2 documents

1 / 108

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Leadership and Alumni Tracking System
A Manuscript
Submitted to
the Department of Computer Science
and the Faculty of the
University of Wisconsin-La Crosse
La Crosse, Wisconsin
by
Kirk Thomas Wienkes
in Partial Fulfillment of the
Requirements for the Degree of
Master of Software Engineering
May, 2010
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Partial preview of the text

Download Alumni tracking system and more Study Guides, Projects, Research Capstone Design in PDF only on Docsity!

Leadership and Alumni Tracking System

A Manuscript Submitted to the Department of Computer Science and the Faculty of the University of Wisconsin- La Crosse La Crosse, Wisconsin

by Kirk Thomas Wienkes in Partial Fulfillment of the Requirements for the Degree of

Master of Software Engineering

May, 2010

Leadership and Alumni Tracking System

By Kirk Thomas Wienkes

We recommend acceptance of this manuscript in partial fulfillment of this candidate’s requirements for the degree of Master of Software Engineering in Computer Science. The candidate has completed the oral examination requirement of the capstone project for the degree.

____________________________________ _______________________

Dr. Kenny Hunt Date Examination Committee Chairperson


Dr. Kasi Periyasamy Date Examination Committee Member


Dr. Mao Zheng Date Examination Committee Member

iv

ACKNOWLEDGEMENTS

There are so many people I would like to acknowledge for being instrumental in the completion and success of my capstone. First, I would like to give my sincere thanks to my project advisor Dr. Kenny Hunt for his invaluable advice in developing the project and his innumerable contributions in writing this thesis. Special thanks go to Mark Brockberg, Erin Smith, and the rest of Campus Crusade for Christ ministry here for being both my project sponsors and for being a very influential part of my six years at UWL. I would also like to thank all the professors that I had in the computer science and math departments for all the valuable knowledge that they taught me while in La Crosse. Additional thanks goes to Dr. Thomas Gendreau, Dr. Kasi Periyasamy, Dr. David Riley, and Becky Yoshizumi for their direct contributions to my capstone. I would also like to thank the people who acted as consultants and advisors to me during this project especially David Paul Ellenwood, Tylor Ardnt, James Domagalski, and Jonathan Borre. I give my deepest thanks to my friends and family for being so supportive of me during this time and for giving me encouragement when I was in need of it. Your contributions to my capstone although not direct were not overlooked or unappreciated. Finally, I want to thank Renee for her tremendous patience, understanding, and kindness while I worked on this project. I would not have completed it on time without you. Thank you all for your support! I appreciate all of you very much.

v

TABLE OF CONTENTS

Page ABSTRACT....................................................................................................................... iii

ACKNOWLEDGEMENTS ............................................................................................... iv

TABLE OF CONTENTS.................................................................................................... v

LIST OF TABLES ........................................................................................................... viii

LIST OF FIGURES ........................................................................................................... ix

GLOSSARY ..................................................................................................................... xii

  1. Introduction ..................................................................................................................... 1

1.1 Background Information ........................................................................................... 1 1.2 Project Scope............................................................................................................. 3

  1. Software Process ............................................................................................................. 5

2.1 Life Cycle Model ...................................................................................................... 5 2.2 Software Developer Tools ........................................................................................ 6

  1. Requirements .................................................................................................................. 9

3.1 Stakeholders .............................................................................................................. 9 3.2 Domain Analysis..................................................................................................... 10 3.3 Prototype I............................................................................................................... 10 3.3.1 Requirements Gathering and Analysis............................................................. 11 3.3.2 Non-functional Requirements .......................................................................... 13

viii

LIST OF TABLES

Table Page Table 1. Results from Use Case Point Analysis ............................................................... 17 Table 2. Actors in Use Case Point Analysis ..................................................................... 76 Table 3. Use Cases ............................................................................................................ 81 Table 4. Technical Factors ................................................................................................ 82 Table 5. Environmental Factors ........................................................................................ 82 Table 6. Use Case Point Analysis Results ........................................................................ 82

 - 3.3.3 Use Cases Model.............................................................................................. - 3.3.4 Cost Estimation - 3.3.5 Summary 
  • 3.4 Prototype II
    1. Design
    • 4.1 Data Dictionary
    • 4.2 General Design Goals and Constraints
    • 4.3 Prototype I...............................................................................................................
      • 4.3.1 Architectural Design
      • 4.3.2 Database Design...............................................................................................
      • 4.3.3 Class Design.....................................................................................................
      • 4.3.4 Graphical User Interface Design......................................................................
      • 4.3.5 Summary
    • 4.4 Prototype II
    1. Implementation
    • 5.1 Prototype I...............................................................................................................
      • 5.1.1 Technologies and Frameworks
      • 5.1.2 Template Techniques
      • 5.1.3 Code Generation
      • 5.1.4 Summary
    • 5.2 Prototype II
    1. Testing...........................................................................................................................
    • 6.1 Prototype I...............................................................................................................
      • 6.1.1 Test Data
      • 6.1.2 Use Case Testing.............................................................................................. vii
    • 6.2 Prototype II
    1. Limitations
    • 7.1 Deployment
    • 7.2 Missing Functionality
    1. Future Work
    • 8.1 Prerelease and Deployment.....................................................................................
    • 8.2 Local Level
    • 8.3 National Level.........................................................................................................
    1. Conclusion
  • Bibliography......................................................................................................................
  • Appendix A: Use Case Diagrams
  • Appendix B: Use Case Point Analysis..............................................................................
  • Appendix C: Entity Relationship Diagrams
  • Appendix D: Class Diagrams............................................................................................
  • Figure 1. CCC Member's Movement Management Figure Page
  • Figure 2. Detailed Description of Functional Requirement
  • Figure 3. Software Components with Data Flow..............................................................
  • Figure 4. Model-View-Controller Architecture
  • Figure 5. Basic Layers of LARA
  • Figure 6. ER diagram for Contact Information.................................................................
  • Figure 7. Database constraints for the MOVEMENT table..............................................
  • Figure 8. Class diagram describing contact information entity
  • Figure 9. Campus class details from the design document
  • Figure 10. Class Constraints for the Event entity class
  • Figure 11. Screenshot of LARA's Graphical User Interface
  • Figure 12. Use Case Diagram describing the actors of the system...................................
  • Figure 13. Use Case Diagram for User functionality
  • Figure 14. Use Case Diagram for User Contact Information Management
  • Figure 15. Use Case Diagram for System Security
  • Figure 16. Use Case Diagram for Administrator User Account Management
  • Figure 17. Use Case Diagram for Administrator Privilege Management.........................
  • Figure 18. Use Case Diagram for Administrator Area Management
  • Figure 19. Use Case Diagram for Administrator Campus Management
  • Figure 20. Use Case Diagram for Administrator Place Management
  • Figure 21. Use Case Diagram for CCC Member Area Management
  • Figure 22. Use Case Diagram for CCC Member Campus Management
  • Figure 23. Use Case Diagram for CCC Member Place Management
  • Figure 24. Use Case Diagram for CCC Member Area Ministry Management x
  • Figure 25. Use Case Diagram for CCC Member Campus Ministry Management
  • Figure 26. Use Case Diagram for CCC Member Movement Management......................
  • Figure 27. Use Case Diagram for CCC Member Team Management
  • Figure 28. Use Case Diagram for CCC Member Position Management
  • Figure 29. Use Case Diagram for CCC Member Training Management
  • Figure 30. Use Case Diagram for CCC Member Conference Management.....................
  • Figure 31. Use Case Diagram for CCC Member Summer Venue Management
  • Figure 32. Use Case Diagram for CCC Member Vision Trip Management
  • Figure 33. Use Case Diagram for CCC Member Contract Management
  • Figure 34. Use Case Diagram for CCC Member Application Template Management
  • Figure 35. Use Case Diagram for CCC Member Discipleship Management
  • Figure 36. Use Case Diagram for CCC Member Appointment Management
  • Figure 37. Use Case Diagram for CCC Member School Year Management
  • Figure 38. Use Case Diagram for CCC Member Application Management
  • Figure 39. Use Case Diagram for Applicant Registration
  • Figure 40. Use Case Diagram for Applicant Application Management
  • Figure 41. Use Case Diagram for User Profile Management
  • Figure 42. Use Case Diagram for User Area Ministry Management
  • Figure 43. Use Case Diagram for User Campus Ministry Management
  • Figure 44. Use Case Diagram for User Movement Management.....................................
  • Figure 45. Use Case Diagram for User Team Management
  • Figure 46. Use Case Diagram for User Position Management
  • Figure 47. Use Case Diagram for User Training Management
  • Figure 48. Use Case Diagram for User Conference Management....................................
  • Figure 49. Use Case Diagram for User Vision Trip Management
  • Figure 50. Use Case Diagram for User Summer Venue Management
  • Figure 51. Use Case Diagram for User Contract Management
  • Figure 52. Use Case Diagram for CCC Member User Profile Management....................
  • Figure 53. Use Case Diagram for CCC Member Contact Information Management xi
  • Figure 54. ERD for Yearly Historical Information...........................................................
  • Figure 55. ERD for Events................................................................................................
  • Figure 56. ERD for Contact Information
  • Figure 57. ERD for Academic Information and Account Information.............................
  • Figure 58. ERD for the Ministry Structure
  • Figure 59. ERD for Application Template
  • Figure 60. Class Diagram of Application Entities
  • Figure 61. Class Diagram of Contact Information Entities
  • Figure 62. Class Diagram for Ministry Entities
  • Figure 63. Class Diagram for User Entity
  • Figure 64. Class Diagram for User Profile Entity.............................................................

xiii

A reusable software component in java that conforms to certain restrictions that provides an interface for which a page written using JSP or JSF can interact with java code on the server. Often beans are used to pass application domain data between JSP and JSF pages. A backing bean is a bean that acts as a container for a web page and provides mechanisms to store the page data and provides methods to initiate actions for the webpage.

CCC An acronym used to describe the organization, Campus Crusade for Christ, for which the capstone was created for. This acronym will be used frequently in the remainder of this paper in lieu of providing the full name of the organization.

Class Diagram A diagram described by UML that provides the static structure of classes, their attributes, their methods, and their relationships with other classes.

CRU An acronym used to describe the most common national movement within the Campus Crusade for Christ organization. It is often used interchangeably with Campus Crusade for Christ and its acronym CCC even though it is a narrower term.

CSS An acronym standing for Cascading Style Sheets used to describe a style sheet language that provides presentation formatting for a mark- up language most commonly HTML and XHTML.

EclipseLink The open source JPA implementation developed by the Eclipse Foundation based on Oracle's TopLink framework.

xiv

Facelets An open source web framework used to provide an alternate view handler for JSF. Facelets acts as a substitute for JSP which is JSF's default view handler. Facelets is XML-based and promotes the idea of reusable components in defining a view within JSF.

Hibernate An open source JPA implementation used to provide an ORM library for Java developers to aid in the interaction between Java POJO classes and a database.

Hibernate Validator An additional library alongside Hibernate used to validate data defined in entity classes used in Hibernate.

HTML An acronym standing for HyperText Markup Language used to name a mark-up language that is the most popular way to publish web pages on the internet.

IceFaces An open source framework and custom JSF tag library used to create rich internet applications. IceFaces provides additional user components that provide easily defined AJAX interaction between the client and server.

LARA An acronym used to name the product being created in this capstone project. LARA stands for the Leadership and Alumni Records Archive.

JavaScript

xvi

ORM

An acronym standing for Object-Relational Mapping used to describe a programming technique for mapping the conversion between objects within a programming language and the data stored in a relational database.

PHP An acronym originally standing for Personal Home Page that current recursively stands for PHP Hypertext Preprocessor used to create dynamically generated web pages.

POJO An acronym standing for Plan Old Java Object used to describe a regular Java object. This term is frequently used in discussions of persistence between Java objects and a relational database.

RichFaces An open source framework and custom JSF tag library used to create rich internet applications. RichFaces provides additional user components that provide easily defined AJAX interaction between the client and server.

Ruby A programming language generally used with Ruby on Rails to develop web applications. Ruby was intended to support an agile development lifecycle.

Seam A web application framework developed by JBoss. This web application framework is meant to be used with JSF and provides additional features to manage a JSF web application emphasizing the interaction of JSF with JPA. Seam's main features include the introduction of a conversation context residing between an http session and http

xvii

request and uses a conversation as the base unit of length for maintaining a persistence unit.

Spring A web application framework for Java used to provide additional features to Java web applications. Some features of Spring include inversion of control, aspect-oriented programming, transaction management, authentication and authorization.

SQL

An acronym standing for Structured Query Language used to manage data within a relational database.

SSL

An acronym standing for Secure Sockets Layer used to provide security and encryption between a client and a server. It is evident SSL is being used on a web site by the use of HTTPS.

Use Case Diagram A diagram described by UML used to graphically represent functional requirements within a software system.

UML

An acronym standing for Unified Modeling Language used to describe a general-purpose modeling language used to specify and visualize various aspects of the software development process.

XHTML

1. Introduction

Within any organization, growth is generally considered a good thing. Growth reflects a greater awareness of an organization's cause or purpose. Growth aids in an organizations ability to obtain resources and to achieve its goals. Growth allows an organization to broaden its scope and to tackle issues related to its original cause. Unfortunately, growth also brings challenges and requires flexibility. Like a teenager acclimating to a growth spurt, an organization must acclimate to its growth so it does not trip over its own feet, metaphorically speaking. As an organization grows, it must adapt to its new size in order to succeed and continue growing. It must provide new structures to guarantee efficiency in managing its workload. It must prevent unnecessarily duplicating work while ensuring that all necessary work is completed. One such growing pain for an organization is information and human resources management. As more information is generated and more personnel employed, the paper record keeping becomes increasingly cumbersome and unmanageable. Developing a digital records management system for these records becomes an important step in the maturing of an organization in the digital age.

1.1 Background Information

For the University of Wisconsin - La Crosse chapter of Campus Crusade for Christ growth in the ministry within the last decade has been a huge blessing, but this blessing has also brought challenges. As the chapter has increased in both student involvement and the full- time staff employed on campus, additional logistical problems have arisen in

managing student leaders within the organization and with keeping in contact with alumni who have moved away from La Crosse. Over the last decade as the number of students involved in leadership has increased, it has become increasingly difficult to prevent student leaders from "falling through the cracks" in the current system. Despite the best efforts of the staff and senior student leaders, students are not receiving the support that they need to be effective within the organization. It has become apparent that it is important to ensure that the student leaders have had the proper training and have had the proper spiritual guidance to ensure their effectiveness in this CCC ministry as well as for their involvement in ministries later in life. Currently, the CCC staff has no means to track this type of important information for their ministry. Additionally the task of figuring out the structure of the next semester’s leaders has become a huge logistical challenge. At present the whole process is done with pencil and paper from application to appointment. As difficult as it is to track vital information for current student leaders, it is even more difficult to retain reliable information about alumni once they leave the ministry at graduation. At present, almost nothing is being done to ensure the ministry stays connected with these graduates. Since alumni have been a big part of the ministry, they have an interest in the current state of this organization on this campus. As an outlet for financial and prayer support, alumni at UWL have been left relatively untapped. As a result, the community of the greater La Crosse area has supplied the majority of the financial and spiritual support for their ministry. If the CCC movement could tap into the alumni resource, it could lead to an increase in available funds with which to support full- time staff, to pay for additional outreach events, and to provide better training for the student leaders. Additionally within the last few years, the regional office has passed down a paradigm shift for the goals for this CCC chapter. In the past, this chapter was only responsible for ministering on the three college campuses in city of La Crosse, but now the local chapter is responsible for ministering to over 15 campuses in the greater La Crosse area from Winona to Mauston. They have been transformed from a campus ministry to an area