Scheduling System Project Plan CS 499 Developed by:



Similar documents
Open Audit. The Automation of Network Inventory

DESIGN OF AUTOMATION SCRIPTS EXECUTION APPLICATION FOR SELENIUM WEBDRIVER AND TestNG FRAMEWORK

MAGENTO HOSTING Progressive Server Performance Improvements

Benefits of Test Automation for Agile Testing

Application Development for Mobile and Ubiquitous Computing

CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011

Methodologies. Adam Pasztory 12/19/07. Pasztory - 1

Installation Instructions

Computer Science Course Descriptions Page 1

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

Continuous Integration (CI)

Specialized Programme on Web Application Development using Open Source Tools

Specialized Programme on Web Application Development using Open Source Tools

Apache Jakarta Tomcat

Software Configuration Management and Continuous Integration

1. Introduction. 1.1 Purpose of this Document

Python Checker. Computer Science Department

A WEB-BASED VE SUPPORTING SYSTEM FOR VE FACILITATOR AND MEMBERS IN VE WORKSHOP

MITRE Baseline Configuration System Implementation Plan

An Introduction to Software Development Process and Collaborative Work

Introduction to Agile Software Development Process. Software Development Life Cycles

Moodle: Suitability as a repository for learning objects

SOFTWARE DEVELOPMENT BASICS SED

JAVA/J2EE DEVELOPER RESUME

Social Network Website to Monitor Behavior Change Design Document

Collection Inventory Software Project Plan

DTWMS Required Software Engineers. 1. Senior Java Programmer (3 Positions) Responsibilities:

CONTINUOUS INTEGRATION

Online Enrollment and Administration System

Performance Testing of Java Enterprise Systems

An elearning platform for distanced collaborative programming

Day-Care Environment Communication and Database

JUSTIN J. LITTLE Build and Release Engineer

THE OPEN SOURCE DEVELOPER REPORT

Jenkins: The Definitive Guide

Comparison of Moodle and ATutor LMSs

Open Source Server Product Description

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

Version Control! Scenarios, Working with Git!

GLOBAL CONSULTING SERVICES TOOLS FOR WEBMETHODS Software AG. All rights reserved. For internal use only

Globule: a Platform for Self-Replicating Web Documents

Theme 1 Software Processes. Software Configuration Management

Backup and Restore MySQL Databases

Continuous Integration. CSC 440: Software Engineering Slide #1

COURSE CONTENT FOR WINTER TRAINING ON Web Development using PHP & MySql

CS 378 Big Data Programming. Lecture 2 Map- Reduce

9/11/15. What is Programming? CSCI 209: Software Development. Discussion: What Is Good Software? Characteristics of Good Software?

Course Scheduling Support System

Learning More About Load Testing

CS 378 Big Data Programming

Installing buzztouch Self Hosted

SOE. managing change in system development projects: configuration management

IS 2927 Independent Study in Systems & Technology Applications of Information Technology. Adaptive Online Course Recommendation System Part II

Perfecto Mobile. All rights reserved.

In depth study - Dev teams tooling

Introduction to PhPCollab

Meister Going Beyond Maven

Student Attendance Through Mobile Devices

CMS Query Suite. CS4440 Project Proposal. Chris Baker Michael Cook Soumo Gorai

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

LMS Integration: Authoring Tools, Collaboration Tools and Enterprise IT. Andrew Chemey. Computer Scientist

Software Development In the Cloud Cloud management and ALM

Hudson configuration manual

Software Quality Assurance Plan

Case Study. Performance Testing of Medical Association Builder Portal. Case Study. US-based Non-profit Medical Association (Healthcare)

How to use. ankus v0.2.1 ankus community 작성자 : 이승복. This work is licensed under a Creative Commons Attribution 4.0 International License.

Software Configuration Management and Change Management

OpenAdmin Tool for Informix (OAT) October 2012

Configuration & Build Management

Open source large scale distributed data management with Google s MapReduce and Bigtable

Version Control Tools

E-Helpdesk: Online Helpdesk for College Campus

Life Cycle Management for Oracle Data Integrator 11 & 12. At lower cost Get a 30% return on investment guaranteed and save 15% on development costs

Subversion Integration

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8

Please Note: Temporary Graduate 485 skills assessments applicants should only apply for ANZSCO codes listed in the Skilled Occupation List above.

QUALITYMATE FOR LOAD TESTING

Extending Remote Desktop for Large Installations. Distributed Package Installs

Introduction To Hive

Course Descriptions. preparation.

How To Use The Jobscheduler On A Linux Box (Jid) On A Pcode (Jio) Or Macbook 2.2 On A Microsoft Powerbook 2 (For A Freebie

CS 253: Intro to Systems Programming

Java Software Quality Tools and techniques

Transcription:

Scheduling System Project Plan CS 499 Developed by: Andrew Beussink Adam Estel Ohtsuki Motomu Bert Sanders Abigail Young Project Plan Page 1 of 6

Table of Contents 1 Overview...3 2 Breakdown of Responsibilities...3 3 Functionality...4 4 Software Process...4 5 Software Engineering Methods...4 6 Schedule...5 7 Potential Problems...5 8 Measurements...5 9 Software Tools...6 10 Test Plans...6 11 Review...6 12 Documentation...6 13 Installation Plans...6 Project Plan Page 2 of 6

Overview Brehm Preparatory School is a private school in Carbondale, IL that works with students with complex learning disabilities. The primary client for this project is Joe Viscomi, head of Information Technology at Brehm. The secondary clients are the administrative staff at Brehm that will use the software to assist in creating schedules, primarily for Parent Teacher Conferences. Breakdown of Responsibilities The primary responsibilities for different parts of the project have been divided among the team members in one of our group meetings based upon the class requirements, individual knowledge and skill sets, and individual interest. Each team member must keep a log of work that they have done on the project. It was also decided that some tasks, such as meetings with the client and with faculty advisors, should be done as a group. Although each team member will do some work in almost every area of the project, the responsibilities for each team member are as follows: Andrew Beussink IO Design Specification IO Implementation Adam Estel Algorithm Design Specification Algorithm Implementation Motomu Ohtsuki IO Design Specification IO Implementation Bert Sanders Project Leader Database Design Specification Database Implementation Project Document Editing, Writing, and Compilation Abigail Young Algorithm Design Specification Algorithm Implementation Project Plan Page 3 of 6

Functionality Our web-based scheduling software consists of three major parts: input system, scheduling system, and output system. Input system will be on the web interface. Students' information, and teachers' schedule can be inputted as a.csv (comma delimited) file. Scheduling system automatically schedules parent-teacher meetings. A parameter, such as meeting length and break length, can be set to generate scheduling system. Scheduling system also provides the function of manual modification. When parents confirm their schedule, the program will lock their meetings. Output system will also be on the web interface. When a meeting is compiled, specific teacher or students can see the information. Software Process The primary software process to be used in this project is the evolutionary model. This will allow us to provide the client with functioning programs to be tested for usability and functionality. Due to the strict time constraints allowed to the project due to the course schedule and school year, this process will also allow us to remove later iterations of the program if there is a problem with the project, while still allowing the client to receive a functioning product. Software Engineering Methods The primary software engineering methods we will be using for this project will allow us to work during class and meeting times as well complete the project outside of class hours. During class and meeting times, we will be implementing a Pair Programming system, where developers take turns coding and proofreading code simultaneously. We will also be implementing a concurrent versioning system (using either CVS or Subversion) to allow coding to be done in parallel without overwriting others work. Project Plan Page 4 of 6

Schedule The development team has determined three general aspects of the project that must be completed. - Database System - File I/O - Algorithm Design and Implementation All three aspects will be worked on in parallel throughout the project with the following milestones: - Feb 1 - Initial Database design and construction must be done to allow File I/O to begin testing. - Basic Algorithm should be written out roughly, with implementation in progress. - Feb 22 - Basic functionality should be complete, including file input, arranging the schedule, and output to file. - March 7 - Web Input/Output should be functional, allowing file upload and review of schedule - Advanced Algorithm features should be in place, allowing adjustment of schedule and making allowances for additional options Potential Problems The design team is aware of a few areas that could raise future problems and will need to be addressed as the project progresses. They are as follows: The program may require a second language to implement the algorithm depending on the algorithm's complexity. If this is the case the design team has discussed the possibility of using a language such as Java which will communicate well with the projects primary database, MySQL. Since the project will consist of several different software elements in addition to the primary program itself installation of the system might become rather cumbersome. The design team has discussed the possible need for an automated script to facilitate installation and will consider this further when more solid details are known. Measurements The development team will be using two different metrics throughout the project. Each developer will maintain a daily log that will be posted to the project website. The team as a whole will make bi-weekly status reports to discuss progress made on the project as a whole. Project Plan Page 5 of 6

Software Tools The software tools to be used in the project are Eclipse IDE, XAMPP, Php via Apache, and MySQL. All software tools to be used are free as well as being either open source or released under the GPL (Gnu Public License) Test Plans Testing plans at this time are tentative, but will include systematic testing of any versions of the product, as well as the testing of portions of the program on completion. Any add-ons to the program will also be tested. It is likely the the client will desire to test any version and provide feedback. Review A review of the progress made on previous goals and the setting of new ones will take place every two weeks, with the faculty advisor as well as with the client. Progress and planning will likely be discussed weekly when the group meets. Documentation Documentation will be provided both for the administrative and user level on completion of the product. The user-level documentation will be a nontechnical guide to the use and functions of the program. Installation Plans Once complete, the installation of the system will require a unix based server running Apache2 with Php5 and MySQL 5. The complete source code will be given for execution. Time permitting, a setup shell file will also be included that will allow the system administrator to set up the system automatically with minimal input. Project Plan Page 6 of 6