Faculty and MSP Recruitment System

advertisement
College of Agricultural & Environmental Sciences
Faculty and MSP Recruitment System (Recruitments)
Content: Adam Getchell, Director of Information Technology, CA&ES Dean’s Office
Executive Reviewer: Thomas Kaiser, Executive Assistant Dean, CA&ES
Technical Reviewer: Scott Kirkland, Senior Application Architect, CA&ES Dean’s Office
Business Reviewers: Julie Fritz, Assistant Dean, Academic Personnel, CA&ES Dean’s Office; Everett Wilson,
AA/EEO Policy and Data Analyst, Offices of the Chancellor and Provost
Description/Overview:
The Recruitments system provides for Faculty and MSP recruitment as handled by the College of
Agricultural & Environmental Sciences and associated units. Due to popular demand, usage of the
system has grown to include position searches for 25 campus units across 6 schools at the University of
California, Davis, and the system is being rewritten to provide better scalability.
The system replaces various electronic and paper-based systems, and has business processes and
graphic themes that can be customized for each unit using the system.
Documents are stored in final form as PDFs in a secured SAN file system, although they may be uploaded
in a number of formats; the system includes the ability to convert many document types on the fly into
PDF.
Notification, access rights, and roles can be managed in a decentralized way by delegating permissions
to an Administrative role, which has the ability to create users, grant roles, and setup certain business
rules (what document types to request, committee membership, etc.) and notification for a given
recruitment. Recruitments may span numerous units, and application role access can be granted to
anyone with a Kerberos ID (which can be obtained for users outside of UC Davis via the temporary
affiliate form).
Workflow is handled via email notifications. Applicants receive status and reminders visually within the
application, as well as reminders via email, and the system generates and transmits email in response to
defined workflow actions by specified roles.
As of April 2009:





1,089 user accounts
23 open positions currently accepting applications; 33 total including closed and pending
802 fully submitted applications of 1,073 total
6,698 uploaded files of 7,220 total (including generated portfolios) occupying 2.95GB storage
617 persistent application committee members and 713 total committee members
Business Need
Faculty and MSP Recruitments are long, complex, high-profile affairs that generate extensive
documentation per applicant, with decisive implications on the faculty and executive personnel in the
College. The College Personnel Team in the Dean’s Office is charged with managing these procedures,
which include cross-department, College, or organizational hiring and review committees that often
serve as the cornerstone for new centers and initiatives. High workloads and excessive staff time has
resulted in many of the largest units in the College and University developing an electronic system to
mitigate this effort, beginning with a system instituted by the Department of Entomology more than 5
years ago, to the most recent efforts by the Department of Plant Sciences online recruitment system.
Plant Sciences’ system, in particular, proved to be extremely successful and popular, resulting in its
adoption by other departments and the Dean’s Office for management of many of its faculty hires.
Extensive use and testing highlighted the many strengths in the system and its business process, but also
showed certain shortcomings – in particular, the setup and customization required to make a specific
Plant Sciences application more generally usable for other organizations.
Based on this, the decision was made to look closely at the successful Plant Sciences model and rewrite
a newer system incorporating the proven features, but with an eye towards broader generalization and
customization of the specialized logic inherent in the Plant Sciences recruitments application. At the
same time, the newer rewrite allowed for the use of newer technologies such as web services, AJAX, and
object relational mapping (ORM), which would improve the customizability and user interface while
moving the application towards enterprise-level stability, scalability, and maintainability.
Since the development of Recruitments 1.0, extensive interest was shown by other Colleges and Schools
at the University of California Davis, including the College of Letters & Sciences, the College of
Engineering, the School of Graduate Management, the School of Veterinary Medicine, and the Office of
Research. To accommodate interest and demand, we have made some modest changes to the current
version of Recruitments, and have begun work on developing a 2.0 version which feature a completely
rewritten roles database for better scalability, provide a friendlier and more responsive User Interface to
reduce workload and support issues, and take advantage of hardware and software engineering
advances for more reliability and security.
The goal for Recruitments 2.0 is to provide a system that may be used for the entire campus while
requiring minimal training and support from the College of Agricultural & Environmental Sciences.
Stakeholder Value
The number of existing online faculty and staff recruitment systems on campus gives an indirect
measure of their value and usefulness to the campus, including the national faculty recruitment system
used by the Department of Mathematics.
Direct measure for the College of Agricultural & Environmental Sciences can be assessed by noting that
there were 14 faculty recruitments in 2006-7 using the Plant Sciences system, at a cost of $1000
recharge per use. The benefits of using an online recruitment system seem to be well-appreciated by all
in the business units.
Infrastructure and Application Architecture
The system provides for three levels of authentication: none, for anonymous users wishing to browse
available jobs, a locally stored user profile based on e-mail for applicants wishing to apply for positions,
and DistAuth/CAS (either, depending on a settings configuration) based authentication for faculty
reviewers, committee members, and application administrators to utilize the system. As a note, we
opted to include both authentication mechanisms to reduce our reliance upon the external Central
Authentication Service in the event of system downtime.
The physical layers of the system consist of (soon to be clustered) web application front ends and
database back ends, separated by firewalls with “default-deny” ingress and egress rules, housed in the
Data Center.
The logical tiers of the system include a Web UI tier that handles client-side validation and display, a
Business Object tier that handles business rules and validation, and a Data Objects tier that provides for
data access via object relational mapping to the backend Microsoft SQL databases. Supporting tiers
include a Service Oriented Architecture (SOA) based on web services to handle the
upload/download/validation of files added/retrieved to the system, user authorization and roles
management, and error handling frameworks (especially error handling for distributed systems using
WCF transactions). Some service tiers use web services on other systems.
The system has security features built into the system, including SSL certificates for encrypted
communication, client and server side data validation, business object validation and database
consistency, and separated database access accounts.
Finally, the system has been developed using test-driven development, with software tests for essential
functionality integrated into the build-compile cycle, and the use of source-control/project
management/automated build management with Microsoft Team Foundation Server. Recruitments
version 1 was developed in ASP.NET 2.0 on IIS 6.0, using the NHibernate Object Relational Mapper and a
SQL Server 2005 backend. Recruitments version 2 is being developed in ASP.NET 3.5 on IIS 7.0, using
NHibernate 1.2 on a SQL Server 2008 backend featuring jQuery 1.2.6 User Interface elements.
Administrative Integration
The system retains its own database and file store, housed on SQL servers and a SAN respectively.
However, it has been written using SOA techniques, and so much of the data and functionality of the
application can be exposed via web services for integration into other applications that use WSP. An
example of this is a custom Microsoft Word 2007 plug-in written in VSTO (Visual Studio Tools for Office)
that allows one to open a document in Microsoft Word and, using the Recruitments toolbar, directly
submit the document into the recruitments system (automatically converting to PDF on-the-fly and
using Active Directory for authentication).
As mentioned previously, we are scheduling a second revision of the project (Recruitments 2.0) to
include a friendlier interface (using jQuery) and more extensive separation of administrative roles so
that Colleges and Schools are segregated and able to display their own graphical elements. We also plan
to include more extensive internationalization (main applicant pages are already i18n-friendly), more
thorough 504/508/ADA compliance (we are already almost completely complaint, with a few minor
issues remaining that will require minimal investment of time), and any other features we can integrate
within the Recruitments 2.0 project timeframe.
Risks and Mitigations
Duplication of Effort
By partnering with interested units for Recruitments, we expect to garner appropriate business
and technical feedback on the project. By using a Service-Oriented Architecture, we expect that inputs
and outputs to the system to be relatively straightforward to other web service consumers. By using an
agile development process with a strong project management scope, we expect that enhancements to
the program can be made efficiently and quickly, adjusting the functionality of the application without
too much application development disruption.
Complexity
The SOA and other software engineering approaches and separated logical application tiers
allow for radical rewrites of particular features to be made without disrupting the entire scope of the
program. Agile development allows us to consult frequently with our customers to ensure that the
application is evolving according to their business needs and practices. Test-based development provide
our applications development team with the ability to make incremental, well-tested changes to
program logic with confidence that it will not break other, existing functionality. We have used these
methods in past application development, and continue to refine our programming techniques,
processes, and knowledge to reflect industry best practices.
Technical Overview
Assumptions
See attached Project Description
Infrastructure




Windows 2003/IIS6/.NET 2.0 application server front-ends [future version: Windows
2008/IIS7/.NET 3.5]
SQL Server 2005 backend [future version: SQL Server 2008]
Exchange 2007 cluster for email delivery
MPC 440 Storage Area Network for document storage in PDF format (raw storage capacity, 3 TB)
Development Tools




Visual Studio 2008 Professional or Team edition Integrated Development Environment (IDE)
Team Foundation Server 2005 (Source Control, Project Management, Task and Bug tracking,
automated nightly builds from daily source control check-ins) [future version: TFS 2008]
NHibernate Object Relational Mapper for classdatabase translation and all database
transactions (including granular tracking of database changes)
Light use of AJAX and Javascript, where appropriate, to enhance the Web UI [future version:
jQuery]
Data and Class Design
See attached database and class diagrams
Download