Lab 1 – REMSY Product Description REMSY - 1 REMSY Product Description REMSY – Blue Team Old Dominion University CS410 – Janet Brunelle & Hill Price Authors: Corey Campbell, Denis Mileyko, Eric Diep, Matthew Letchworh, Seth Hohensee Last Modified: December 13, 2013 Version: 1 Lab 1 – REMSY Product Description REMSY - 2 Table of Contents Table of Contents ............................................................................................................................ 2 1: Introduction (Seth Hohensee) ..................................................................................................... 3 2: REMSY PRODUCT DESCRIPTION (Corey Campbell) .......................................................... 4 2.1: Key Product Features and Capabilities (Denis Mileyko) ........................................................ 4 2.2: Major Components (Hardware/Software) (Seth Hohensee) .................................................... 5 3: IDENTIFICATION OF CASE STUDY (Zach Regelski) .......................................................... 6 4: REMSY PRODUCT PROTOTYPE DESCRIPTION (Eric Diep) ............................................. 7 4.1: Prototype Architecture (Hardware/Software) (Corey Campbell) ............................................ 7 4.2: Prototype Features and Capabilities (Matthew Letchworth) ................................................... 9 4.3: Prototype Development Challenges (Zach Regelski) .............................................................. 9 Figures Figure 1: Real World Product Major Functional Components……………………………………………..6 Figure 2: Prototype Major Functional Components………………………………………………………..8 Lab 1 – REMSY Product Description REMSY - 3 1: Introduction (Seth Hohensee) Resource management is a critical area of focus for any organization that provides services. Regardless of whether or not an organization is profit focused, its goal for resource use is generally to do as much as possible with as little as possible. This means that a flexible system for tracking and allocating these resources is essential to an organization’s effectiveness and longevity. An organization’s operations are constrained by the availability of their workspaces, employees, and equipment, so the management of these can directly affect the success of the organization’s goals. Additionally, collecting data about clients is necessary to understanding how to direct the growth of the organization’s programs. Communicating this vital data often becomes a problem; situations where the services of two separate programs overlap may occur. The effectiveness of a program may be assessed incorrectly because the data has unknowingly been skewed. In the case that expansion beyond currently available space is required, another site or method for delivering a service may need to be introduced. Without a system for resource management that integrates the two, existing problems become exacerbated and the potential for abuse of resources increases. Additionally, when a new technology is introduced, it must integrate with the potentially disparate systems already in place at these branches. If a resource management solution is to be effective, its characteristics will need to allow for the mitigation of these problems. It should be designed to allow the client to schedule the use of the resources any given program, without needing to be aware of the specific program beforehand, through a single interface. This streamlines the process for the client, and allows all of the organizations programs to share in data collection automatically. However, this tracking should not unnecessarily burden the client, and clients should be able to access the system from a multitude of devices. REMSY Lab 1 – REMSY Product Description REMSY - 4 is a product developed with these qualities is mind in order to address the resource management problem currently faced by tutoring programs at Old Dominion University. 2: REMSY PRODUCT DESCRIPTION (Corey Campbell) REMSY structures an institution’s tutoring resources with a robust, centralized system. Tutoring scheduling and appointments are coordinated in a specific fashion to allow for a greater customizable platform. The data collected with REMSY is processed to make available many levels of detailed reporting. Standardization of tutoring programs will be attained by product usage. Users of REMSY are required to have an account. Account types are multi-faceted, but customizable for certain roles. Tutors and students have a better connecting ecosystem by way of the enhanced mobile and notification methods. Through a review process, more tutors will be available for students due to freelancing. The increased and detailed data reporting from sessions is provided to help the institution facilitate a better tutoring department. 2.1: Key Product Features and Capabilities (Denis Mileyko) REMSY is a web-based tutoring management system. It is quick and easy to use with its simple design and it’s accessibility from both desktop and mobile device. REMSY provides users with a quick overview of upcoming classes, reviews and alerts through its dashboard. Users manage their profile information and configure how they want to be notified by the system: via email, via dashboard message, via text message. Each user can have multiple user roles and can easily switch view (e.g. tutor view, student view, admin view). REMSY is a fully customizable system that provides an ability to create custom user roles and set permissions. In addition to Lab 1 – REMSY Product Description REMSY - 5 easy and clean user friendly interface REMSY provides various reports to track system usage, resources utilization, students and tutors ratings, and opportunities to create new classes. Web portal as well as mobile application Native support for card/code reading Tracks statistics for administrative report generation Monitors student turn away Allows for user driven study groups/mentoring Uses student information to streamline sign-up Secures user session logging Supports multiple programs and administrators within the same instance Allows students to apply to tutor classes Application requirements based on program templates Allows for verification methods based on the tutor, the student, or both Email, SMS, and App based alerts Alerts the student/tutor if their session is not closed 508 Compliant 2.2: Major Components (Hardware/Software) (Seth Hohensee) REMSY will make use of both a database server and a web server. The web server will host Apache, and the database server will host MySQL. The product will include a multiplatform app for mobile devices. A reporting engine will also be developed to run against the REMSY database. REMSY will be designed in such a way to leverage university resources such TutorTrac, Banner, Shibboleth, and Email services. Lab 1 – REMSY Product Description REMSY - 6 Fig. 1: RWP Major Functional Components Tutor Student REMSY Database Server Mail Servers Tutor Local ISP INTERNET Student REMSY Web Server Admin Database Servers (Banner and TutorTrac) Authentication Servers (Shibboleth) 3: IDENTIFICATION OF CASE STUDY (Zach Regelski) The case study for the REMSY tutoring project was the tutoring center at Old Dominion University. There is a lot of data to sample from at ODU, which has a diverse tutoring center with separate departments, multiple locations, and a fair amount of users. Each of these areas need to be addressed in a tutoring management system if it is going to effective at any university on the scale of Old Dominion. Currently as of Fall 2013, the Old Dominion Peer Educator Program is migrating to a new digital system called TutorTrac. This software is attempting to tie up all those various loose ends that tutoring deals with, and streamline the whole process effectively for all of the users. To do this, TutorTrac has an online, web based system for users to go and schedule appointments with tutors, or manage their appointments as necessary. TutorTrac also features Lab 1 – REMSY Product Description REMSY - 7 a card reader function for the status of appointments, so that presence of users at tutoring appointments can be tracked digitally. TutorTrac has some notable faults, however. It has lots of pieces missing in both support and interface, with broken links and glitches in their software. People who are supposed to have no power have more power than anyone else in the system, for example. Another fault is limited mobile functionality. TutorTrac has a semi-decent app that seems functional but it interferes with the working of their code, handing out privileges to people who shouldn’t have any. This project has two mentors from the Tutoring Center at Old Dominion University. The first is Marissa Jimenez, a Resource Specialist at the Old Dominion Student Success Center, and Jeffrey Turner, Higher Education Teacher Resident Assistant at Old Dominion University. 4: REMSY PRODUCT PROTOTYPE DESCRIPTION (Eric Diep) The REMSY prototype will provide a configuration of the REMSY environment with the following accounts: tutor account, student account, and admin account. Along with providing a configuration of the REMSY environment, the REMSY prototype will also include an optimized database, web and mobile application, and a test system to aid in administering the database. The REMSY prototype will demonstrate both the web and mobile application are compliant with the Family Educational Rights and Privacy Act (FERPA). 4.1: Prototype Architecture (Hardware/Software) (Corey Campbell) The prototype of REMSY will run within an ODU virtual environment. Heading the involved servers is the REMSY web server, which will run Apache. TutorTrac servers will be Lab 1 – REMSY Product Description REMSY - 8 able to export essential data required for the mock TutorTrac database. Because of the accordance with ODU regulations, student data from their Banner system is not available for use. REMSY’s prototype will create a working model of the Banner system. Also is the event of authentication which will be handled similarly with a model of ODU’s Shibboleth. To simulate a working product, the prototype will include a REMSY database server. All databases will include MySQL; PHP will be used to communicate with them. A testing harness will be implemented to fulfill simulation requirements. This consists of user dashboards, accounts, and associated mock data. The mock data stems from all user roles. The prototype’s initialization starts with card swipe or UIN login. From that point the web-based front-end can be accessed via a desktop machine or mobile device (smartphone or tablet). Servers coordinate their data and will generate customizable reports via programming logic. Fig. 2: Prototype Major Functional Components Test Harness Tutor Account Student Account REMSY Database Server TutorTrac Database Banner Model Tutor Account Local ISP Student Account INTERNET REMSY Web Server Authentication (Shibboleth Model) Admin Account CS Mail Server Lab 1 – REMSY Product Description REMSY - 9 4.2: Prototype Features and Capabilities (Matthew Letchworth) The prototype will allow for basic user features such as logging in, scheduling tutoring appointments, managing those appointments, and rating those that they have attended. These features will be available through web access, and via a mobile application that will add the ability for students to check in to scheduled appointments with their smart phone or tablet. Alerts for scheduled appointments can be customized to be sent via email, SMS, or push notifications(smart phones and tablets only). The prototype will also include some more advance features. Administrative users will have control over the database in order to edit and add information as needed. There will be an option for card reader integration for secure log ins/check ins. Added security will allow for secure transfers between the database and either the web or mobile application. The ability to assess the number of students wanting tutoring for courses that are not currently available to assist in determining if those courses should have tutoring provided. The prototype will also be able to track the progress of students currently receiving tutoring and generate reports to determine whether the tutoring is worth providing. 4.3: Prototype Development Challenges (Zach Regelski) The first and foremost issue that REMSY will face is database concerns. There is a lot of data REMSY is responsible for managing, and could be disastrous if gotten wrong. There will be many different functions and algorithms that are all accessing data in different places and in different ways, so making sure all of that code is responsible with the database usage are of paramount importance. It’s also very tricky to get right since there are numerous places where that process can break down. Place one is user data. That needs to be kept secure if REMSY is ever to be trusted, but that also makes the internal workings more difficult. Even major corporations struggle with this issue, so it will undoubtedly arise at some point. Another area the Lab 1 – REMSY Product Description REMSY - 10 database has to be functional is in interaction with the mail servers. Transferring data to SMTP and routing it through other servers with reliability will require some code massaging and trial and error. The most daunting trial REMSY will face is the making the user interface work. The UI is the most obvious when it doesn’t behave correctly, so getting it right is critical. One of the most important aspects of REMSY is ease of use, and a lot of that comes down the efficiency of the User Interface. To that end, it has to be compatible with all of the inner workings of the database as well. Making HTML beautiful can be extremely time consuming and could really bog down the implementation of the prototype. The other major issue is that REMSY will have two different and unique user interface perspectives, both with very different designs and coding properties. The mobile interface poses a distinct challenge considering the difference in mobile platforms and the condensed functionality that has to still implement all of REMSY’s most important features. Having unity between the two interfaces, making them easy to use, and also making them effective will be a great challenge in terms of scope of work and debugging.