NCAA Student Athlete Compliance System

Size: px
Start display at page:

Download "NCAA Student Athlete Compliance System"

Transcription

1 NCAA Student Athlete Compliance System Group May Client Dustin Gray Associate Director of Compliance ISU Department of Athletics Faculty Advisor Dr. Doug Jacobson Development Team Andy Dorman Jared Eakins Ryan Kent Ben Youngblut

2 Table of Contents 1. Project Description Subsystem Description Abstract Design MDA Model-View Controller MVC Implementation Controllers Model Data Structure View User Interface Use Cases Login/Create User Create Form Complete Form Tools EZPDO EXTJS

3 1. Project Description The client needs to keep detailed compliance data on all student-athletes in the athletic department. The current solution involves packets of forms delivered to each student-athlete. This method is very labor intensive, and wasteful of paper, as these forms stay at ISU and are not needed to be in hard copy. Both the Big XII and NCAA require the member Universities to maintain the forms, and only require their own copies in event of inquiry or audit. The new product will provide a green software solution for both student-athletes and athletic officials. Students will be able to submit their information online, while officials can monitor and approve the student s progress. Officials will also be able to create new form for the students to complete. Users: Administrators creating forms Students completing forms Currently, hard copies of each form are delivered to individual students by hand. The students fill out the forms and return them to the Compliance department. Officials from compliance then have to review each form from each student individually to ensure completeness. If a form is incomplete, the student is given a new form to complete. The completed forms are stored in hard copy for 7 years, and are available for Big XII or NCAA requests. With the new product, Athletics officials will be able to create forms as necessary using an institutive drag-and-drop interface. The forms can be then filled out and completed, which will save the results to a database. This product will then be integrated into our Senior Design project, which includes user accounts, and a capacity to review forms for errors. 3

4 2. Subsystem Description B A C Figure 1 System Architecture 2.1 Abstract Design MDA We will be following a model-driven architecture (MDA) approach in this project. In MDA, the system is designed and implemented from the model upwards. The model of a system can be described by its class diagram. Typically in an MDA-based system, a universal modeling tool is used to manually create the class diagram. Then, based on a standard definition of that model, a code generator is used to create the set of classes to be used in the application, the scripts are generated to create the database based on that model, and a common library acts as the link between the two. Therefore, a developer can simply program to the data structures and not worry about the interface to the database. Another approach to MDA is to manually create the database and run a schema extraction tool to generate the same class model. We will be using the MDA approach because this system is, by nature, a data-based project; its cornerstone relies on heavy user-database interaction. As such, designing the model of our system is the first step of the design process. We use UML as our standard modeling language, which we can use to graphically depict the model of our system. From this diagram, we get an exported XMI file a 4

5 standard XML definition for a UML model. Using this XMI file, we use XMI2PHP to generate the PHP classes that can be consumed by EZPDO Model-View Controller MVC is a common design pattern in software engineering, especially in web development. It achieves the all-important task of breaking a software system into components; the presentation of a system is completely abstracted from the business logic and data access. The model typically describes the state of the system. Any business logic takes place in the model also, so if any kind of manipulations need to happen on the state of the system, this is where is occurs. It has no concept of how the system is presented, displayed, or interacted with. The view is where the presentation occurs. Based on a known set of model data, it knows how to configure itself to be displayed to the user. Absolutely no Figure 2 Model-View-Controller Flow business logic or data access occurs in the view. The controller acts as a link between the model and the view. Typically in a user-interactive system, it is the controller that handles requests from the user. It looks into the view for the current state, performs any necessary business logic, and passes it on to the view for processing. The following diagram explains the typical flow in an MVC system: Since one of the main necessities of our system is scalability and maintainability, we will implement the MVC design pattern. Using this design pattern, a future developer will be easily be able to swap out the current user interface for another without having to change any of the data access or business logic. Likewise they could change the business logic without messing up any of the presentation. There are many different rapid development frameworks in PHP that implement an MVC container, but for our system, we will use a very simple approach (described in system component breakdown). 5

6 2.2 MVC Implementation A good MVC system has a single point of entry into the backend of the system. There are frameworks that help facilitate this such that individual controller methods are mapped to a unique URL; this way, they are accessible from the client without having to know the workings of the system. We take a very simple approach to this, not by having a complex framework to handle this routing, but instead hand-construct a control-routing mechanism, through which all requests to the server are routed. This is accomplished by pulling the controller name and the desired method name out of the URL's query string. In this specific implementation, control.php is our main routing script. For instance a request to 'control.php?route=formcontroller/savenewform' would call the savenewform method in the FormController class. The control router passes an associative hash array by reference into the controller. This model map acts as a means of communication between the controller and the view. The controller populates this model map with artifacts retrieved from the model after performing any business logic necessary through its respective business manager class. This population is keyed by strings that the view expects to see in this model map. The controller then creates and returns the correct view to execute over the model map. Every view extends an abstract class View_Base that defines an abstract method execute that. Since the controller returns the view to be executed back to the control router, execute is invoked with the model map populated by the controller as the parameter. The view then performs any logic needed to present the response back to the client. It is important to note that no business logic takes place in the view, as this would cause unnecessary coupling between components and the system would lose its modularity. The view finishes by printing a JSON-encoded string representing the objects to be used by the invoking Javascript function. 2.3 Controllers Typically in an MVC system, controllers are grouped per their respective model element. This is visible in Figure 1 at letter B. For instance, a request to create a new Form in the database would be routed into the FormController. The methods contained within each controller are the only places in the system that accesses the system database. This achieves a significant separation of components in the design. Data access queries through EZPDO return model elements, and the controller manipulates them accordingly through their business managers. Naming conventions for controllers are important in order for the control router to work properly. Otherwise, the router would not be able to construct the proper URL for the controller. The controller for the Form actions would be in a file named formcontroller.php and the class name would be Controller_FormController. 6

7 2.4 Model The model of the system is presented as a class diagram below, and is shown in the system in Figure 1 at letter C. Figure 3 Model Design 7

8 2.4.1 Data Structure Admin - Compliance office employees with administrative access to system. User - A student-athlete. Stores some basic information and eligibility status. Belongs to one or more teams. Contains form responses for the forms that are required. Team - An athletic team. Contains users who belong to the team. FormGroup - Contains forms, organizing them into a single "packet", usually one for each academic year. Form - A form to be filled out. Belongs to a single form group. Contains form elements. Stores information about who is required to fill out the form (freshman, transfers, etc.). FormElement - A question, text block, or other form element of a specific type. Belongs to a single form. May contain form element options. FormElementOption - A possible response to a question (i.e.: yes/no, pick one, etc.). Belongs to a single form element. The element type determines whether or not there are options (i.e.: a textarea does not have options). FormElementDependency - Allows dependency between form elements. Has a parent element, child element, and a value. If the user's response to the parent element matches the value, the child element becomes required. FormResponse - An individual user's instance of a single form. Ties users to forms they must complete. Contains form element responses. Belongs to a single user and a single form. Stores the time a user responded to the form. Has a status (approved, rejected, etc.) set by an admin based on the review of the user's responses to the form. A user can have many form responses (one for each form they fill out) and a form can have many form responses (one for each user that fills it out). FormElementResponse - An individual user's response to a single form element in a form. Belongs to the form response of the form that the element belongs to. Stores the value of the user's response. A form response can have many form element responses (one for each element in the form) and a form element can have many form element responses (one for each user that fills it out). FormResponseStatus - The status of a user's form response. This data structure models everything the system needs to create, modify, and fill out/save forms, as well as tracking necessary information such as completion dates and approval statuses. This collective data structure is also a representation of our persistence layer; there is a one-to-one mapping between each class and a table in the database. EZPDO will act as the interface between the two. With this library, a developer can program directly to the object-oriented data structures and do a single commit to the database; all the hassles of interfacing and dealing with relations are handled internally by EZPDO. The model represents a state of the system, but it has no knowledge of business logic rules. This is the purpose of the business managers. There is one business manager for each class in the data model, so the business manager for the Form class would be named FormManager, and so on. It is in these classes that any manipulation of a class model based on business requirements. 8

9 2.5 View In general there is a single view class for every controller method. In our system, the only communication from the server back to the client is purely JSON (Javascript Object Notation) encoded strings. With our design choice of using ExtJS, JSON data is easily consumed by the Javascript code. The entire communication with the server will be handled asynchronously without having to refresh the browser. This view class is shown in Figure 1 at letter A. 2.6 User Interface The user interface for our application is aimed at being extremely simple to use. Our main goal is to create a user environment that enables the user to efficiently achieve their tasks. To do this we first plan to make as many functions institutive to the user; in doing this there is less of a learning curve and the user is able to be productive quickly since they have used other applications with similar features. The next step is to not create unnecessary windows and screens. This enables the user to quickly and efficiently navigate and move around the site. Form creation is one of the main components of our application and intern has its own specific user interface. This interface enables the user to drag a form element from one panel and drop it in another panel. Once the form element has been placed into the panel it can be dragged up and down within the panel overtop of other elements to change the ordering. 3. Use Cases 3.1 Login/Create User To login, the user is redirected from the Program to the ISU Single Sign On. If their login is successful, their client is returned a cookie with their personal information. That cookie is then checked against the Program s user accounts in the database to see if the account is valid. To add a student user account, the Administrative user enters the student s ISU ID number into a form. That number is then checked against the ISU student information database. If the number is valid, the student s personal information is acquired and a user account is created in the Program s database. 9

10 10 Figure 2 Login/Create User Use Case

11 3.2 Create Form To create a form, the Administrator requests the Form Creation webpage. This page is entirely generated client-side, and does not interact with any server-side scripts. As the user modifies the form, all interaction is also client-side. Once the user clicks on Save, the form is encoded in a JSON string, and sent to the PHP Router. The Form object is then sent to the Controller, where the individual Form Elements are created and saved to the database. Once the form is committed, a confirm message is percolated back to the PHP Router, and then sent to the View to be JSON encoded and returned to the client. Figure 4 Create Form Use Case 11

12 3.3 Complete Form To complete a form, the student user selects the form to view. That request is forwarded to the PHP Router, where the specific Form Object is requested, and then to the Controller and Model, where the individual Form Elements are requested. The Form Elements are retrieved from the database, and packaged in a Form object, and later encoded in JSON for display. Once the user clicks the Save button, the responses to the form are JSON encoded, and passed through the PHP Control to the Controller, and to the Model, where the responses are turned into Form Response objects where they are associated with the appropriate form, and saved to the database. Once the database is updated, a confirm message is sent forward to the client. Figure 5 Complete Form Use Case 12

13 4. Tools 4.1 EZPDO EZPDO (Easy PHP Data Objects) is an object-relation mapping (ORM) library that allows the user to program directly to their object-oriented data structure and let the data persistence problem be taken care of by the library. A developer could write an entire application with no knowledge of SQL. Given a simple XML configuration file to define such things as location of the model classes, location of the database, etc., EZPDO will create the database necessary to represent the PHP class model. A developer can then use the library and the system's object-oriented data structure to create a meaningful, datadependent application. We looked at several tools to accomplish a similar task. The necessities of such tools included the ability write object-oriented code that can be (a) saved to a database transactionally, (b) be easy to use and get started with, and (c) support future changes. The following is a list of the other tools we tried out and the reasons we didn't choose them. DaoGen-- a dao based approach. We liked the architecture it generated, but its major pitfall is that it requires manually entering the schema of your database. This is not good for future changes in your schema. ObjectGenerator-- A good approach to generating a dao architecture straight from your database. However, the code generated was not quality code and would require a lot of maintaining. NeuralBuild-- a good product for the most part. It requires you to write templates that it will fill in based on your database schema (auto-generated). Its pitfalls include lack of support for foreign keys, or multiple column primary keys. PHP Class Generator-- an eclipse plug-in that generates your data access objects based your database schema. It had support for foreign keys, and, being a template-driven generator, we could set up exactly what we want with this layer. Its main drawback is that code generation happened one table at a time. PHPObjectGenerator (POG)-- a similar approach as DaoGen: input your table's attributes and it outputs your code. However, this was open source, so it could be adapted (with quite a bit of effort) to look directly into your database. Acceleo an Eclipse plugin that took a UML model and generated an entire application framework. It had object-oriented data models and dao architecture, along with an entire MVC container. This was a little overkill for our purposes, but it seemed to create a very nice 13

14 framework. Its main pitfall was the fact that it was not considered a production-level application, but instead in an incubated state: not good enough for a professional application. EZPDO was the last one that we tested out. The reason that we chose to use it as our data access layer is because of its ease of use. Our system must be maintainable for future developers, and with this library, coding is very easy. It has full support for an object-oriented data structure with transactional commits. What this means is that a single object can be created, a collection of other objects added to it, and all committed in a single action. All relations are handled by the EZPDO library and maintains them in the database; it even creates the database for the developer. This design fits perfectly into our MDA approach, as well as our MVC container. 4.2 EXTJS For the user's interaction with our web application a JavaScript user interface was chosen to allow for rich user experience. JavaScript allows for simple interactive user navigation as well as dynamic page content loaded from the server, without refreshing the page. A JavaScript framework was chosen to build upon that would simplify the JavaScript coding. The JavaScript framework chosen for this application was Ext JS. Ext JS was chosen for the following reasons. Cross browser compatible. Open Source License. Intuitive API. Ext JS will provide framework for the following components that will be used for designing our user interface. HTML Editor, for user input. Data Grids, for displaying data. In browser windows, with modal support Layout Managers, for organizing the page layout. Drag and Drop, for form creation. Other JavaScript frameworks like Yahoo User Interface (YUI), DOJO, and Moo Tools were considered. But Ext JS was chosen as the best solution over these other existing JavaScript libraries due to its completeness. YUI was too heavy-weight for our needs, and DOJO and Moo Tools did not include the simplified drag-and-drop windows that we felt were important for our interface. 14

SYSTEM DEVELOPMENT AND IMPLEMENTATION

SYSTEM DEVELOPMENT AND IMPLEMENTATION CHAPTER 6 SYSTEM DEVELOPMENT AND IMPLEMENTATION 6.0 Introduction This chapter discusses about the development and implementation process of EPUM web-based system. The process is based on the system design

More information

A Web- based Approach to Music Library Management. Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012

A Web- based Approach to Music Library Management. Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012 A Web- based Approach to Music Library Management Jason Young California Polytechnic State University, San Luis Obispo June 3, 2012 Abstract This application utilizes modern standards developing in web

More information

DreamFactory & Modus Create Case Study

DreamFactory & Modus Create Case Study DreamFactory & Modus Create Case Study By Michael Schwartz Modus Create April 1, 2013 Introduction DreamFactory partnered with Modus Create to port and enhance an existing address book application created

More information

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Rational Application Developer, Version 8.0, contains

More information

XML Processing and Web Services. Chapter 17

XML Processing and Web Services. Chapter 17 XML Processing and Web Services Chapter 17 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of http://www.funwebdev.com Web Development Objectives 1 XML Overview 2 XML Processing

More information

Framework as a master tool in modern web development

Framework as a master tool in modern web development Framework as a master tool in modern web development PETR DO, VOJTECH ONDRYHAL Communication and Information Systems Department University of Defence Kounicova 65, Brno, 662 10 CZECH REPUBLIC petr.do@unob.cz,

More information

XFlash A Web Application Design Framework with Model-Driven Methodology

XFlash A Web Application Design Framework with Model-Driven Methodology International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,

More information

CAKEPHP & EXTJS - RESPONSIVE WEB TECHNOLOGIES

CAKEPHP & EXTJS - RESPONSIVE WEB TECHNOLOGIES CAKEPHP & EXTJS - RESPONSIVE WEB TECHNOLOGIES Davor Lozić, Alen Šimec Tehničko veleučilište u Zagrebu Sažetak Ovaj rad prikazuje današnje, moderne tehnologije za responzivni web. Prikazuje način na koji

More information

IBM Rational Web Developer for WebSphere Software Version 6.0

IBM Rational Web Developer for WebSphere Software Version 6.0 Rapidly build, test and deploy Web, Web services and Java applications with an IDE that is easy to learn and use IBM Rational Web Developer for WebSphere Software Version 6.0 Highlights Accelerate Web,

More information

Implementing a Web-based Transportation Data Management System

Implementing a Web-based Transportation Data Management System Presentation for the ITE District 6 Annual Meeting, June 2006, Honolulu 1 Implementing a Web-based Transportation Data Management System Tim Welch 1, Kristin Tufte 2, Ransford S. McCourt 3, Robert L. Bertini

More information

Auditing UML Models. This booklet explains the Auditing feature of Enterprise Architect. Copyright 1998-2010 Sparx Systems Pty Ltd

Auditing UML Models. This booklet explains the Auditing feature of Enterprise Architect. Copyright 1998-2010 Sparx Systems Pty Ltd Auditing UML Models Enterprise Architect is an intuitive, flexible and powerful UML analysis and design tool for building robust and maintainable software. This booklet explains the Auditing feature of

More information

Toad for Data Analysts, Tips n Tricks

Toad for Data Analysts, Tips n Tricks Toad for Data Analysts, Tips n Tricks or Things Everyone Should Know about TDA Just what is Toad for Data Analysts? Toad is a brand at Quest. We have several tools that have been built explicitly for developers

More information

Logi Ad Hoc Reporting System Administration Guide

Logi Ad Hoc Reporting System Administration Guide Logi Ad Hoc Reporting System Administration Guide Version 11.2 Last Updated: March 2014 Page 2 Table of Contents INTRODUCTION... 4 Target Audience... 4 Application Architecture... 5 Document Overview...

More information

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency 1. 420-PA3-AB Introduction to Computers, the Internet, and the Web This course is an introduction to the computer,

More information

Landing Page. Landing Page Module for Magento

Landing Page. Landing Page Module for Magento Landing Page Module for Magento TABLE OF CONTENTS Table of Contents Table Of Contents... 2 1. INTRODUCTION... 3 2. Overview... 3 3. Requirements... 3 4. Features... 3 5. Installation... 4 5.1 Implementation...

More information

TechTips. Connecting Xcelsius Dashboards to External Data Sources using: Web Services (Dynamic Web Query)

TechTips. Connecting Xcelsius Dashboards to External Data Sources using: Web Services (Dynamic Web Query) TechTips Connecting Xcelsius Dashboards to External Data Sources using: Web Services (Dynamic Web Query) A step-by-step guide to connecting Xcelsius Enterprise XE dashboards to company databases using

More information

Taxi Service Design Description

Taxi Service Design Description Taxi Service Design Description Version 2.0 Page 1 Revision History Date Version Description Author 2012-11-06 0.1 Initial Draft DSD staff 2012-11-08 0.2 Added component diagram Leon Dragić 2012-11-08

More information

Dimension Technology Solutions Team 2

Dimension Technology Solutions Team 2 Dimension Technology Solutions Team 2 emesa Web Service Extension and iphone Interface 6 weeks, 3 phases, 2 products, 1 client, design, implement - Presentation Date: Thursday June 18 - Authors: Mark Barkmeier

More information

ICE Trade Vault. Public User & Technology Guide June 6, 2014

ICE Trade Vault. Public User & Technology Guide June 6, 2014 ICE Trade Vault Public User & Technology Guide June 6, 2014 This material may not be reproduced or redistributed in whole or in part without the express, prior written consent of IntercontinentalExchange,

More information

Power Tools for Pivotal Tracker

Power Tools for Pivotal Tracker Power Tools for Pivotal Tracker Pivotal Labs Dezmon Fernandez Victoria Kay Eric Dattore June 16th, 2015 Power Tools for Pivotal Tracker 1 Client Description Pivotal Labs is an agile software development

More information

Whitepaper. Rich Internet Applications. Frameworks Evaluation. Document reference: TSL-SES-WP0001 Januar 2008. info@theserverlabs.com.

Whitepaper. Rich Internet Applications. Frameworks Evaluation. Document reference: TSL-SES-WP0001 Januar 2008. info@theserverlabs.com. Whitepaper Frameworks Evaluation Document reference: TSL-SES-WP0001 Januar 2008. info@theserverlabs.com 1 Introduction... 3 1.1 Purpose...3 1.2 Scope...3 2 RIA vs Stand-alone Desktop applications... 4

More information

Development of Content Management System with Animated Graph

Development of Content Management System with Animated Graph Development of Content Management System with Animated Graph Saipunidzam Mahamad, Mohammad Noor Ibrahim, Rozana Kasbon, and Chap Samol Abstract Animated graph gives some good impressions in presenting

More information

Drupal CMS for marketing sites

Drupal CMS for marketing sites Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit

More information

Bitrix Site Manager 4.1. User Guide

Bitrix Site Manager 4.1. User Guide Bitrix Site Manager 4.1 User Guide 2 Contents REGISTRATION AND AUTHORISATION...3 SITE SECTIONS...5 Creating a section...6 Changing the section properties...8 SITE PAGES...9 Creating a page...10 Editing

More information

Business Process Management IBM Business Process Manager V7.5

Business Process Management IBM Business Process Manager V7.5 Business Process Management IBM Business Process Manager V7.5 Federated task management for BPEL processes and human tasks This presentation introduces the federated task management feature for BPEL processes

More information

Ruby On Rails. CSCI 5449 Submitted by: Bhaskar Vaish

Ruby On Rails. CSCI 5449 Submitted by: Bhaskar Vaish Ruby On Rails CSCI 5449 Submitted by: Bhaskar Vaish What is Ruby on Rails? Ruby on Rails is a web application framework written in Ruby, a dynamic programming language. Ruby on Rails uses the Model-View-Controller

More information

Shop by Manufacturer Custom Module for Magento

Shop by Manufacturer Custom Module for Magento Shop by Manufacturer Custom Module for Magento TABLE OF CONTENTS Table of Contents Table Of Contents... 2 1. INTRODUCTION... 3 2. Overview...3 3. Requirements... 3 4. Features... 4 4.1 Features accessible

More information

Design and Functional Specification

Design and Functional Specification 2010 Design and Functional Specification Corpus eready Solutions pvt. Ltd. 3/17/2010 1. Introduction 1.1 Purpose This document records functional specifications for Science Technology English Math (STEM)

More information

Actuate Business Intelligence and Reporting Tools (BIRT)

Actuate Business Intelligence and Reporting Tools (BIRT) Product Datasheet Actuate Business Intelligence and Reporting Tools (BIRT) Eclipse s BIRT project is a flexible, open source, and 100% pure Java reporting tool for building and publishing reports against

More information

How To Write An Ria Application

How To Write An Ria Application Document Reference TSL-SES-WP-0001 Date 4 January 2008 Issue 1 Revision 0 Status Final Document Change Log Version Pages Date Reason of Change 1.0 Draft 17 04/01/08 Initial version The Server Labs S.L

More information

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support General principles and architecture of Adlib and Adlib API Petra Otten Manager Customer Support Adlib Database management program, mainly for libraries, museums and archives 1600 customers in app. 30 countries

More information

A framework for Itinerary Personalization in Cultural Tourism of Smart Cities

A framework for Itinerary Personalization in Cultural Tourism of Smart Cities A framework for Itinerary Personalization in Cultural Tourism of Smart Cities Gianpaolo D Amico, Simone Ercoli, and Alberto Del Bimbo University of Florence, Media Integration and Communication Center

More information

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev International Journal "Information Technologies & Knowledge" Vol.5 / 2011 319 AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev Abstract: This paper presents a new approach

More information

Server-Side Scripting and Web Development. By Susan L. Miertschin

Server-Side Scripting and Web Development. By Susan L. Miertschin Server-Side Scripting and Web Development By Susan L. Miertschin The OOP Development Approach OOP = Object Oriented Programming Large production projects are created by teams Each team works on a part

More information

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET PRODUCTIVE ENTERPRISE MOBILE APPLICATIONS DEVELOPMENT KEY FEATURES Visual and declarative development Mobile optimized user experience Simplified access to

More information

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013 HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013 Riley Moses Bri Fidder Jon Lewis Introduction & Product Vision BIMShift is a company that provides all

More information

Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax

Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax Sven Ramuschkat SRamuschkat@herrlich-ramuschkat.de München & Zürich, März 2009 A bit of AJAX history XMLHttpRequest introduced in IE5 used in

More information

Advantage of Jquery: T his file is downloaded from

Advantage of Jquery: T his file is downloaded from What is JQuery JQuery is lightweight, client side JavaScript library file that supports all browsers. JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,

More information

IBM BPM V8.5 Standard Consistent Document Managment

IBM BPM V8.5 Standard Consistent Document Managment IBM Software An IBM Proof of Technology IBM BPM V8.5 Standard Consistent Document Managment Lab Exercises Version 1.0 Author: Sebastian Carbajales An IBM Proof of Technology Catalog Number Copyright IBM

More information

Voluntary Product Accessibility Template Blackboard Learn Release 9.1 April 2014 (Published April 30, 2014)

Voluntary Product Accessibility Template Blackboard Learn Release 9.1 April 2014 (Published April 30, 2014) Voluntary Product Accessibility Template Blackboard Learn Release 9.1 April 2014 (Published April 30, 2014) Contents: Introduction Key Improvements VPAT Section 1194.21: Software Applications and Operating

More information

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles Jørgen Thelin Chief Scientist Cape Clear Software Inc. Abstract The three common software architecture styles

More information

International Journal of Engineering Technology, Management and Applied Sciences. www.ijetmas.com November 2014, Volume 2 Issue 6, ISSN 2349-4476

International Journal of Engineering Technology, Management and Applied Sciences. www.ijetmas.com November 2014, Volume 2 Issue 6, ISSN 2349-4476 ERP SYSYTEM Nitika Jain 1 Niriksha 2 1 Student, RKGITW 2 Student, RKGITW Uttar Pradesh Tech. University Uttar Pradesh Tech. University Ghaziabad, U.P., India Ghaziabad, U.P., India ABSTRACT Student ERP

More information

v7.1 SP2 What s New Guide

v7.1 SP2 What s New Guide v7.1 SP2 What s New Guide Copyright 2012 Sage Technologies Limited, publisher of this work. All rights reserved. No part of this documentation may be copied, photocopied, reproduced, translated, microfilmed,

More information

Client Overview. Engagement Situation. Key Requirements for Platform Development :

Client Overview. Engagement Situation. Key Requirements for Platform Development : Client Overview Our client provides leading video platform for enterprise HD video conferencing and has product suite focused on product-based visual communication solutions. Our client leverages its solutions

More information

The Smart Forms Web Part allows you to quickly add new forms to SharePoint pages, here s how:

The Smart Forms Web Part allows you to quickly add new forms to SharePoint pages, here s how: User Manual First of all, congratulations on being a person of high standards and fine tastes! The Kintivo Forms web part is loaded with features which provide you with a super easy to use, yet very powerful

More information

An introduction to creating JSF applications in Rational Application Developer Version 8.0

An introduction to creating JSF applications in Rational Application Developer Version 8.0 An introduction to creating JSF applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Although you can use several Web technologies to create

More information

WEB AND APPLICATION DEVELOPMENT ENGINEER

WEB AND APPLICATION DEVELOPMENT ENGINEER WEB AND APPLICATION DEVELOPMENT ENGINEER Program Objective/Description: As a Web Development Engineer, you will gain a wide array of fundamental and in-depth training on front end web development, as well

More information

Visualizing an OrientDB Graph Database with KeyLines

Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines 1! Introduction 2! What is a graph database? 2! What is OrientDB? 2! Why visualize OrientDB? 3!

More information

How To Write A Web Server In Javascript

How To Write A Web Server In Javascript LIBERATED: A fully in-browser client and server web application debug and test environment Derrell Lipman University of Massachusetts Lowell Overview of the Client/Server Environment Server Machine Client

More information

Developer Tutorial Version 1. 0 February 2015

Developer Tutorial Version 1. 0 February 2015 Developer Tutorial Version 1. 0 Contents Introduction... 3 What is the Mapzania SDK?... 3 Features of Mapzania SDK... 4 Mapzania Applications... 5 Architecture... 6 Front-end application components...

More information

Visual Studio.NET Database Projects

Visual Studio.NET Database Projects Visual Studio.NET Database Projects CHAPTER 8 IN THIS CHAPTER Creating a Database Project 294 Database References 296 Scripts 297 Queries 312 293 294 Visual Studio.NET Database Projects The database project

More information

DreamFactory on Microsoft SQL Azure

DreamFactory on Microsoft SQL Azure DreamFactory on Microsoft SQL Azure Account Setup and Installation Guide For general information about the Azure platform, go to http://www.microsoft.com/windowsazure/. For general information about the

More information

LabVIEW Internet Toolkit User Guide

LabVIEW Internet Toolkit User Guide LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,

More information

Course Scheduling Support System

Course Scheduling Support System Course Scheduling Support System Roy Levow, Jawad Khan, and Sam Hsu Department of Computer Science and Engineering, Florida Atlantic University Boca Raton, FL 33431 {levow, jkhan, samh}@fau.edu Abstract

More information

MOBILE APPLICATION FOR EVENT UPDATES SATYA SAGAR VANTEDDU. B.Tech., Jawaharlal Technological University, 2011 A REPORT

MOBILE APPLICATION FOR EVENT UPDATES SATYA SAGAR VANTEDDU. B.Tech., Jawaharlal Technological University, 2011 A REPORT MOBILE APPLICATION FOR EVENT UPDATES by SATYA SAGAR VANTEDDU B.Tech., Jawaharlal Technological University, 2011 A REPORT submitted in partial fulfillment of the requirements for the degree MASTER OF SCIENCE

More information

CSCI110 Exercise 4: Database - MySQL

CSCI110 Exercise 4: Database - MySQL CSCI110 Exercise 4: Database - MySQL The exercise This exercise is to be completed in the laboratory and your completed work is to be shown to the laboratory tutor. The work should be done in week-8 but

More information

12 File and Database Concepts 13 File and Database Concepts A many-to-many relationship means that one record in a particular record type can be relat

12 File and Database Concepts 13 File and Database Concepts A many-to-many relationship means that one record in a particular record type can be relat 1 Databases 2 File and Database Concepts A database is a collection of information Databases are typically stored as computer files A structured file is similar to a card file or Rolodex because it uses

More information

Performance Comparison of Persistence Frameworks

Performance Comparison of Persistence Frameworks Performance Comparison of Persistence Frameworks Sabu M. Thampi * Asst. Prof., Department of CSE L.B.S College of Engineering Kasaragod-671542 Kerala, India smtlbs@yahoo.co.in Ashwin A.K S8, Department

More information

CS587 Project final report

CS587 Project final report 6. Each mobile user will be identified with their Gmail account, which will show up next to the Tastes. View/Delete/Edit Tastes 1. Users can access a list of all of their Tastes. 2. Users can edit/delete

More information

Oracle Application Development Framework Overview

Oracle Application Development Framework Overview An Oracle White Paper June 2011 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services

More information

PSW Guide. Version 4.7 April 2013

PSW Guide. Version 4.7 April 2013 PSW Guide Version 4.7 April 2013 Contents Contents...2 Documentation...3 Introduction...4 Forms...5 Form Entry...7 Form Authorisation and Review... 16 Reporting in the PSW... 17 Other Features of the Professional

More information

Comparative Analysis Report:

Comparative Analysis Report: Comparative Analysis Report: Visualization Tools & Platforms By Annabel Weiner, Erol Basusta, Leah Wilkinson, and Quenton Oakes Table of Contents Executive Summary Introduction Assessment Criteria Publishability

More information

Web Architecture I 03.12.2014. u www.tugraz.at

Web Architecture I 03.12.2014. u www.tugraz.at 1 Web Architecture I Web Architecture I u www.tugraz.at 2 Outline Development of the Web Quality Requirements HTTP Protocol Web Architecture A Changing Web Web Applications and State Management Web n-tier

More information

Monitoring the Real End User Experience

Monitoring the Real End User Experience An AppDynamics Business White Paper HOW MUCH REVENUE DOES IT GENERATE? Monitoring the Real End User Experience Web application performance is fundamentally associated in the mind of the end user; with

More information

Sisense. Product Highlights. www.sisense.com

Sisense. Product Highlights. www.sisense.com Sisense Product Highlights Introduction Sisense is a business intelligence solution that simplifies analytics for complex data by offering an end-to-end platform that lets users easily prepare and analyze

More information

Customer Bank Account Management System Technical Specification Document

Customer Bank Account Management System Technical Specification Document Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6

More information

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Credit-By-Assessment (CBA) Competency List Written Assessment Competency List Introduction to the Internet

More information

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches Concepts of Database Management Seventh Edition Chapter 9 Database Management Approaches Objectives Describe distributed database management systems (DDBMSs) Discuss client/server systems Examine the ways

More information

What s New in IBM Web Experience Factory 8.5. 2014 IBM Corporation

What s New in IBM Web Experience Factory 8.5. 2014 IBM Corporation What s New in IBM Web Experience Factory 8.5 2014 IBM Corporation Recent history and roadmap Web Experience Factory 8.0 2012 Multi-channel Client-side mobile Aligned with Portal 8 Developer productivity

More information

Easy configuration of NETCONF devices

Easy configuration of NETCONF devices Easy configuration of NETCONF devices David Alexa 1 Tomas Cejka 2 FIT, CTU in Prague CESNET, a.l.e. Czech Republic Czech Republic alexadav@fit.cvut.cz cejkat@cesnet.cz Abstract. It is necessary for developers

More information

10CS73:Web Programming

10CS73:Web Programming 10CS73:Web Programming Question Bank Fundamentals of Web: 1.What is WWW? 2. What are domain names? Explain domain name conversion with diagram 3.What are the difference between web browser and web server

More information

Avaya Inventory Management System

Avaya Inventory Management System Avaya Inventory Management System June 15, 2015 Jordan Moser Jin Oh Erik Ponder Gokul Natesan Table of Contents 1. Introduction 1 2. Requirements 2-3 3. System Architecture 4 4. Technical Design 5-6 5.

More information

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. 20486B: Developing ASP.NET MVC 4 Web Applications Course Overview This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. Course Introduction Course Introduction

More information

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules IBM Operational Decision Manager Version 8 Release 5 Getting Started with Business Rules Note Before using this information and the product it supports, read the information in Notices on page 43. This

More information

OAuth 2.0 Developers Guide. Ping Identity, Inc. 1001 17th Street, Suite 100, Denver, CO 80202 303.468.2900

OAuth 2.0 Developers Guide. Ping Identity, Inc. 1001 17th Street, Suite 100, Denver, CO 80202 303.468.2900 OAuth 2.0 Developers Guide Ping Identity, Inc. 1001 17th Street, Suite 100, Denver, CO 80202 303.468.2900 Table of Contents Contents TABLE OF CONTENTS... 2 ABOUT THIS DOCUMENT... 3 GETTING STARTED... 4

More information

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

Rotorcraft Health Management System (RHMS)

Rotorcraft Health Management System (RHMS) AIAC-11 Eleventh Australian International Aerospace Congress Rotorcraft Health Management System (RHMS) Robab Safa-Bakhsh 1, Dmitry Cherkassky 2 1 The Boeing Company, Phantom Works Philadelphia Center

More information

Performance Evaluation of PHP Frameworks (CakePHP and CodeIgniter) in relation to the Object-Relational Mapping, with respect to Load Testing

Performance Evaluation of PHP Frameworks (CakePHP and CodeIgniter) in relation to the Object-Relational Mapping, with respect to Load Testing This thesis is submitted to the School of Computing at Blekinge Institute of Technology in Master s Thesis partial fulfillment of the requirements for the degree of Master of Science in Computer Science.

More information

Copyright 2013 Splunk Inc. Introducing Splunk 6

Copyright 2013 Splunk Inc. Introducing Splunk 6 Copyright 2013 Splunk Inc. Introducing Splunk 6 Safe Harbor Statement During the course of this presentation, we may make forward looking statements regarding future events or the expected performance

More information

Getting Started with Telerik Data Access. Contents

Getting Started with Telerik Data Access. Contents Contents Overview... 3 Product Installation... 3 Building a Domain Model... 5 Database-First (Reverse) Mapping... 5 Creating the Project... 6 Creating Entities From the Database Schema... 7 Model-First

More information

2/24/2010 ClassApps.com

2/24/2010 ClassApps.com SelectSurvey.NET Training Manual This document is intended to be a simple visual guide for non technical users to help with basic survey creation, management and deployment. 2/24/2010 ClassApps.com Getting

More information

Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is

Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is Chris Panayiotou Ruby on Rails is a web application framework written in Ruby, a dynamically typed programming language The amazing productivity claims of Rails is the current buzz in the web development

More information

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code. Content Introduction... 2 Data Access Server Control Panel... 2 Running the Sample Client Applications... 4 Sample Applications Code... 7 Server Side Objects... 8 Sample Usage of Server Side Objects...

More information

CERN Summer Student Program 2013 Report

CERN Summer Student Program 2013 Report CERN Summer Student Program 2013 Report Stanislav Pelák E-mail: stanislav.pelak@cern.ch / pelaksta@gmail.com Abstract. This report describes the work and achievements of Stanislav Pelák, during his stay

More information

Data Visualization in Ext Js 3.4

Data Visualization in Ext Js 3.4 White Paper Data Visualization in Ext Js 3.4 Ext JS is a client-side javascript framework for rapid development of cross-browser interactive Web applications using techniques such as Ajax, DHTML and DOM

More information

Adam Rauch Partner, LabKey Software adam@labkey.com. Extending LabKey Server Part 1: Retrieving and Presenting Data

Adam Rauch Partner, LabKey Software adam@labkey.com. Extending LabKey Server Part 1: Retrieving and Presenting Data Adam Rauch Partner, LabKey Software adam@labkey.com Extending LabKey Server Part 1: Retrieving and Presenting Data Extending LabKey Server LabKey Server is a large system that combines an extensive set

More information

Equipment Room Database and Web-Based Inventory Management

Equipment Room Database and Web-Based Inventory Management Equipment Room Database and Web-Based Inventory Management System Block Diagram Sean M. DonCarlos Ryan Learned Advisors: Dr. James H. Irwin Dr. Aleksander Malinowski November 4, 2002 System Overview The

More information

Catalog Web service and catalog commerce management center customization

Catalog Web service and catalog commerce management center customization Copyright IBM Corporation 2008 All rights reserved IBM WebSphere Commerce Feature Pack 3.01 Lab exercise Catalog Web service and catalog commerce management center customization What this exercise is about...

More information

The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform

The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform Technical Discussion David Churchill CEO DraftPoint Inc. The information contained in this document represents the current

More information

Enterprise Service Bus

Enterprise Service Bus We tested: Talend ESB 5.2.1 Enterprise Service Bus Dr. Götz Güttich Talend Enterprise Service Bus 5.2.1 is an open source, modular solution that allows enterprises to integrate existing or new applications

More information

Software Requirements. Specification. Day Health Manager. for. Version 1.1. Prepared by 4yourhealth 2/10/2015

Software Requirements. Specification. Day Health Manager. for. Version 1.1. Prepared by 4yourhealth 2/10/2015 Software Requirements Specification. for Day Health Manager Version 1.1 Prepared by 4yourhealth Senior Project 2015 2/10/2015 Table of Contents Table of Contents Revision History Introduction Purpose Document

More information

Operational Decision Manager Worklight Integration

Operational Decision Manager Worklight Integration Copyright IBM Corporation 2013 All rights reserved IBM Operational Decision Manager V8.5 Lab exercise Operational Decision Manager Worklight Integration Integrate dynamic business rules into a Worklight

More information

Implementation of Ticket Service System for MERCED SUPERIOR COURT. PowerPoint Slide 1

Implementation of Ticket Service System for MERCED SUPERIOR COURT. PowerPoint Slide 1 Implementation of Ticket Service System for MERCED SUPERIOR COURT PowerPoint Slide 1 Self-Help Ticket Service System PowerPoint Slide 2 Traffic and Civil Ticket Service System PowerPoint Slide 3 The court

More information

Open Source Content Management System for content development: a comparative study

Open Source Content Management System for content development: a comparative study Open Source Content Management System for content development: a comparative study D. P. Tripathi Assistant Librarian Biju Patnaik Central Library NIT Rourkela dptnitrkl@gmail.com Designing dynamic and

More information

Building Dynamic Websites With the MVC Pattern. ACM Webmonkeys @ UIUC, 2010

Building Dynamic Websites With the MVC Pattern. ACM Webmonkeys @ UIUC, 2010 Building Dynamic Websites With the MVC Pattern ACM Webmonkeys @ UIUC, 2010 Recap A dynamic website is a website which uses some serverside language to generate HTML pages PHP is a common and ubiquitous

More information

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof. Web Frameworks web development done right Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.ssa Anna Corazza Outline 2 Web technologies evolution Web frameworks Design Principles

More information

So you want to create an Email a Friend action

So you want to create an Email a Friend action So you want to create an Email a Friend action This help file will take you through all the steps on how to create a simple and effective email a friend action. It doesn t cover the advanced features;

More information

Performance Testing Web 2.0

Performance Testing Web 2.0 Performance Testing Web 2.0 David Chadwick Rational Testing Evangelist dchadwick@us.ibm.com Dawn Peters Systems Engineer, IBM Rational petersda@us.ibm.com 2009 IBM Corporation WEB 2.0 What is it? 2 Web

More information

IBM Unica emessage Version 8 Release 6 February 13, 2015. User's Guide

IBM Unica emessage Version 8 Release 6 February 13, 2015. User's Guide IBM Unica emessage Version 8 Release 6 February 13, 2015 User's Guide Note Before using this information and the product it supports, read the information in Notices on page 403. This edition applies to

More information

HTML5. Turn this page to see Quick Guide of CTTC

HTML5. Turn this page to see Quick Guide of CTTC Programming SharePoint 2013 Development Courses ASP.NET SQL TECHNOLGY TRAINING GUIDE Visual Studio PHP Programming Android App Programming HTML5 Jquery Your Training Partner in Cutting Edge Technologies

More information