Team Members Tyler Lamb Kirk Olson James Woestman IRP Presentation Client Zirous Inc. Faculty Advisor Tien Nguyen 1.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10 Servlets and Java Server Pages.
Advertisements

MIT Lincoln Laboratory A Service-Oriented Approach to Application Development Robert Darneille & Gary Schorer WPI MQP Presentations ICS Group 10 October.
Apache Struts Technology
CS 290C: Formal Models for Web Software Lecture 10: Language Based Modeling and Analysis of Navigation Errors Instructor: Tevfik Bultan.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
A web application for Educational Institutions Management Version E A Product by the makers of HENX International Technologies.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Apache Struts Technology A MVC Framework for Java Web Applications.
TimeTracker 2, Take 1  Servlets Web Interface (jsp) Servlet (business logic and processing) App Engine Datastore Form Submit R/W.
Session-01. Layers Struts 2 Framework The struts 2 framework is used to develop MVC-based web application. Struts 1.0 was released in June The.
Dec  Group Members ◦ Kirk Olson ◦ Tyler Lamb ◦ James Woestman  Faculty Advisor ◦ Tien Nguyen  Client ◦ Zirous Incorporated.
Struts 2.0 an Overview ( )
Struts. Agenda Preface Struts and its components An example The architecture required for Struts Applications.
UNIT-V The MVC architecture and Struts Framework.
Lecture 2 - Struts ENTERPRISE JAVA. 2 Contents  Servlet Deployment  Servlet Filters  Model View Controllers  Struts  Dependency Injection.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
T U T O R I A L  2009 Pearson Education, Inc. All rights reserved Bookstore Web Application Introducing Visual Web Developer 2008 Express and the.
NCAA Student Athlete Compliance System May
WorkPlace Pro Utilities.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Using Microsoft ACCESS to develop small to medium applications on campus.
About Dynamic Sites (Front End / Back End Implementations) by Janssen & Associates Affordable Website Solutions for Individuals and Small Businesses.
Using JavaBeans and Custom Tags in JSP Lesson 3B / Slide 1 of 37 J2EE Web Components Pre-assessment Questions 1.The _____________ attribute of a JSP page.
May Client Dustin Gray Associate Director of Compliance ISU Department of Athletics Faculty Advisor Dr. Doug Jacobson Development Team Andy Dorman.
09/04/2008 Wallops Institutional Information Management System WIIMS An Overview.
Dec 0909 Client: Zirous Inc. Faculty Adviser: Tien Nguyen Team Members: Kirk Olson Tyler Lamb Jimmy Woestman Ben Petersen 1.
Design Patterns Phil Smith 28 th November Design Patterns There are many ways to produce content via Servlets and JSPs Understanding the good, the.
Copyright, 1996 © Dale Carnegie & Associates, Inc. Presented by Hsiuling Hsieh Christine Liu.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Design and Programming Chapter 7 Applied Software Project Management, Stellman & Greene See also:
Struts J2EE web application framework “ Model 2 ” Model View Controller Controller Servlet Key features XML metadata Struts taglib Simplified form validation.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.
AUTOMATION OF WEB-FORM CREATION - KINNERA ANGADI – MS FINAL DEFENSE GUIDANCE BY – DR. DANIEL ANDRESEN.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Navigation Framework using CF Architecture for a Client-Server Application using the open standards of the web Kedar Desai presented by.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
WEP Presentation for non-IT Steps and roles in software development 2. Skills developed in 1 st year 3. What can do a student in 1 st internship.
Ad Hoc Graphical Reports Ad Hoc Graphical Reports Copyright © Team #4 CSCI 6838 Spring CSCI Research Project and Seminar Team# 4 (
Ashley Montebello – CprE Katie Githens – SE Wayne Rowcliffe – SE Advisor/Client: Akhilesh Tyagi.
JSF Framework Java Server Faces Presented by Songkran Totiya (6/10/2014)
Charles Dunbar, Ben Kallal, Ankit Patel, Peter Purcell, Kody Reynolds.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Model View Controller MVC Web Software Architecture.
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
Apache Struts. J2EE Web Application using MVC design pattern Why MVC? Separate components = easier maintenance – Model component holds object data – View.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Implementing and Using the SIRWEB Interface Setup of the CGI script and web procfile Connecting to your database using HTML Retrieving data using the CGI.
Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Spring MVC Essentials Getting started.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Portals: Architecture & Best Practices Greg Hinkle February 2005.
Team Members Charles Dunbar Ben Kallal Ankit Patel Peter Purcell Kody Reynolds 1 IRP Presentation Client Lisa Hein-Iowa Natural Heritage Foundation Faculty.
Chapter 9 Web Application Design. Objectives Describe the MVC design pattern as used with Web applications Explain the role and responsibilities of each.
Mr. Justin “JET” Turner CSCI 3000 – Fall 2015 CRN Section A – TR 9:30-10:45 CRN – Section B – TR 5:30-6:45.
ECpE Student Database Team 21 Adviser: Tien Nguyen ECpE and Tony Moore.
NAVSEA Liaison Scott Huseth Faculty Advisor Dr. Jiang Guo Team Members Areg Abcarians David Ballardo Niteen Borge Daniel Flores Constance Jiang June 3,
CS 562 Advanced Java and Internet Application Computer Warehouse Web Application By Team Alpha :-  Puja Mehta (102163)  Mona Nagpure (102147)
Web Application.
Unit 6-Chapter 2 Struts.
Struts BY: Tejashri Udavant..
Presentation transcript:

Team Members Tyler Lamb Kirk Olson James Woestman IRP Presentation Client Zirous Inc. Faculty Advisor Tien Nguyen 1

Problem Zirous Inc. is a growing company whose employees are working on numerous different projects. Managers are required to create and maintain reports on the progress and status of their employees, which are presented to upper management. The current solution is to create excel reports but this isn’t very extensible for the future and becomes difficult to manually maintain as the number of employees at Zirous Inc. continues to grow. Solution An easy to use web application to track employees and projects is needed to solve this problem. This web application needs to be able to easily track the status and progress of projects as well as employees. Reports must be easy to generate from this data. 2

3

 Pages are built using JAVA Server Pages and JAVA Servlets.  AJAX is used to display dynamic content and reduce the network overhead. This provides a more seamless experience for the user.  IE 7 and Firefox 3 web browsers are supported. 4

FR01: Provide a web interface that allows managers to view project and resource information. FR01.1:Resource Utilization Overview. FR01.2:Project Overview. FR01.3:Personnel Overview. FR02:Provide a web interface to allow Managers to modify personnel and project information. FR02.1:Add new personnel to a project. FR02.2:Edit project attributes. FR02.3:Update project progress. FR03:Provide printable reports. FR03.1:Resource Availability Report. FR03.2:Client Program/Project Report. FR04:Interface with T2 database to retrieve personnel information. FR05:Interface with Sugar database to retrieve project information. FR06:RATS must use Zirous’ existing LDAP lookup for secure user authentication. 5

NFR01:RATS must be able to be accessed from any location with internet access. NFR02:RATS must be able to scale as Zirous grows in size. NFR03:RATS must be easier to use than the current spreadsheet solution. NFR04: RATS must be able to handle multiple concurrent users using the system. NFR05: The following technologies must be utilized: Java Oracle XE Oracle Application/ OC 4 J Apache Struts2 Hibernate Apache Ant AJAX NFR06: The web interface must be responsive to user input. NFR07: RATS must be developed in a manner that makes it easy to maintain and improve in the future. 6

 There are resource allocation solutions currently available for use. Some of which are stand alone programs such as Microsoft Project, these typically cost anywhere from $20 for a low end product to a few hundred dollars for a nicer one such as Project.  Besides the cost for decent ones Zirous wants an online system which can be accessed from anywhere with internet access. These do exist however most of them have a monthly subscription fee and a limit to the amount of projects and data you can store.  Along with these inconveniences the products would not allow Zirous to customize them to exactly what they want. So the only viable option for them was a custom made application just for their company. 7

 RATS Application ◦ RATS Source Code  Documentation ◦ Design Document ◦ User Manual ◦ JavaDocs 8

 Properly configured OC4J Server ◦ Hibernate ◦ Apache Struts2 ◦ JAVA  Oracle XE Database 9

Spring 09 Fall 09 10

Task Tyler Lamb Kirk Olson Ben Petersen James Woestman Totals 1Documentation Design of System Research Setup Development Testing

 Learning Curve of New Technologies  Communication with Client  Integration with T2 and Sugar Databases  Integration with Zirous’ System  Scope Creep  Loss of Team member 12

 Rats employs a three-tiered architecture. We used the Model- View-Controller (MVC) architectural design pattern. In MVC terminology the “Model” is seen as the actual information in an application. The “View” is the user interface, everything that the user will see when using the application. The “Controller” manages communication between the Model and the View and also manipulates that data according to business rules. ◦ Model: Oracle XE database, accessed using Hibernate. ◦ View: Java Server Pages (jsp) and Java Servlets ◦ Controller: Struts2  The Struts 2 framework encapsulates the View and Controller concepts of the MVC architecture. In order to render a page for the end user the user first requests the page from the server. The Struts 2 Controller will then analyze the request and invoke the correct Action class to handle the request. The Action class will check the state of the application (the Model, accessed using Hibernate) and return an appropriate response through the View. 13

14

 Input ◦ Existing Databases  T2 (project information)  Sugar (employee information) ◦ User created input from HTML Forms  Output ◦ HTML ◦ Excel files 15

Pages were built using JAVA Server Pages and JAVA Servlets. AJAX is used to display dynamic content and reduce the network overhead. This provides a more seamless experience for the user. 16

 JUnit unit testing ◦ Tests methods individually ◦ Boundaries of values  djUnit ◦ Code coverage  Integration testing  User Acceptance testing ◦ Ongoing 17

 A series of mockups were created and shown to Zirous for their approval. 18

19

 Consists of JSP pages.  Has no knowledge of where parameters came from.  Only knows how to display information to user. 20

 Consists of a struts.xml mapping file.  Mapping Sequence: ◦ Server receives URL Request ◦ Request is mapped to a Struts2 Action Class. ◦ Action class does unit of work, sets up parameter values, and returns a status string (“success”, “input”, “error”, etc..). ◦ Depending on the status string, parameter values are forward to a JSP view page that knows how to display the parameters. 21

 JUnit ◦ All JUnit tests successfully passed before providing copy of application to Zirous.  Integration ◦ Some initial difficulty integrating systems ◦ Issue with different version of JAVA  User Acceptance ◦ Feedback Positive ◦ Making changes in response to feedback 22

Conclusion  Overall, we feel that we were successful in completing and overcoming the difficulties presented to us in our project Lessons Learned  Don’t discount losing a member  Spend more time in the first semester doing research of unknown software technologies. Also utilize summer break to accomplish this. 23

 Implement bread crumbs feature  Add skill sets to projects and employees  Implement sorting of report tables  Implement “Add Like” functionality on Add Resource Page  Integrate RATS more closely into T2 or Sugar  Implement more sophisticated security functionality 24

25