Software Plan Rev
Software Plan Rev
SEG
Prepared by:
October 1, 2004
Table of Contents
System Definition:
Project Plan:
Annually, the Siena College Computer Science Department hosts a programming contest for local
High Schools. During this contest High School teams are placed in different rooms and given
problems to solve and then submit to a panel of judges. The judges then determine if the solution
given is correct and a message is sent back to the students stating if the solution was accepted or not.
The judges keep a scoreboard of how many problems each team answered correctly, and how long it
took to complete the problems. In order to allow teams to view problems from previous years as
well as allowing students, team coaches, and any other individuals to view the scoreboard at
anytime. Mr. James Matthews and Dr. Scott Vandenberg have requested the development of a
website incorporating a scoreboard along with problems and solutions from previous years.
The purpose of this system is to display problems and solutions from previous contests as well as a
scoreboard that shows the teams in ranked order. This will allow teams competing in the contest this
year, and the following years, time to prepare with previous problems. The teams will be able to submit
solutions to given problems to a panel of judges. The judges will check the solutions received from the
teams for correctness and then update the scoreboard. The scoreboard will be viewable by everyone,
including outside viewers, and will also continually update the teams in ranked order based on number
of correct solutions and time taken to complete them. This system will let individuals keep track of how
teams are doing in the competition.
The goal of this project is to create a web site that contains a link to a scoreboard that shows the
standings of teams in the contest in ranked order based on number of problems answered correctly
and amount of time to complete those problems. Along with the scoreboard will be a web site that
contains previous problems and solutions.
Our team goal is to gain an understanding of the software engineering process. Our team will
provide the best solution to the problems we have been presented with by our client.
The major constraint on this project is that it must be a web based system. Our client Mr. Matthews
has requested that the project should be done using Java and JavaScript. The final version of this
project must be completed prior to the programming contest, which takes place in early March of
2005.
The project will be designed and created on the Siena College Software Engineering workstation.
The project will be accessible through any computer connected to the Internet. The software
manager will perform maintenance along with the head judge.
Our project team will follow the Linear Sequential Model(Classic Waterfall Method Model) in our
development of our system. These are the following steps:
Software Plan- The team will meet with their client to define the problem that needs to be
solved. Once the client defines the problem the team will begin to make plans regarding the
solution.
Software Analysis- The team will develop the requirements for the system and the software
then present them to the client.
Preliminary Design- With the requirements from the previous step the basic design for the
code is formulated.
Detailed Design- The preliminary design is modified and the actual coding begins. This will
not be until spring 2005 semester.
Software Development & Testing- Once the program is created, it will go through rigorous
testing in order to identify any errors. These errors will be debugged at this time.
Acceptance Test- The software is installed and introduced to the client. The client is now
able to use their new program.
The most important feature of the system will be the scoreboard refreshing and updating the ranking.
The information for this section was obtained from meetings with our client, Mr. James Matthews.
Other sources of information include Dr. Ledermans class lectures, the Software Engineering class
textbook Software Engineering: A Practitioners Approach by Roger S. Pressman and previous
Software Engineering teams projects.
Software Analysis- Before the software is developed an understanding of all information regarding the
required function, behavior, performance and interface of the software.
Preliminary Design- The code is formulated and description of all functions and data structures are
written.
Detailed Design- The entire code is developed and individual functions and subroutines are illustrated.
Software Development and Testing- The program is implemented, compiled, and tested. All bugs and
errors are detected in this phase and are fixed to make the software fully functional.
Acceptance Test- Before being delivered to the client the team of software engineers test to make sure
the software provides every interface and function desired.
SEG is organized as follows for the Programming Contest Submission and Scoreboard:
The team structure of SEG is Democratic Decentralized. All of the decisions made by the group will
be made by majority vote. The team leader will act as a tiebreaker in the case of split decisions.
Team Leader Organize the team meeting and interviews, assign individual project work to
other team members, schedule report reviews, and assemble all information that is gathered.
System Administrator Sets up and maintains the project workstations. Also maintains team
member accounts.
Secretary Keeps minutes at all meetings with the team, client, and any other individual
persisting to the project.
Project Manager In charge of all implementation, compiling, and testing the program to
make sure it works correctly.
Our primary resource in defining and developing the Programming Contest Submission and
Scoreboard are Mr. James Matthews and Dr. Scott Vandenberg. Dr. Timoth Leaderman, our Software
Engineering professor, is also a resource. The software that will be required is a web page editor
(Dreamweaver), Netscape Navigator, and Internet Explorer. The hardware that will be required
includes computer systems, printers, and Internet Connectivity.
Refer to the preliminary developer schedule or Gantt chart in the Appendix of this document on page
7.
A weekly meeting with the client will be held to discuss the status of the project to determine if the
project team is moving in the direction to meet the clients needs. The project plan documentations
and presentations will be used in order for the client to give feedback on whether the project team is
meeting the clients needs. In order to stay organized and focused, the project team will meet
regularly to discuss new ideas, individual progress, and problems at hand. If the client decides the
project team is off-track at any stage, necessary steps will be taken in order to resolve the problem.
SEG will be using the Software Engineering computers with Dreamweaver, Internet Explorer,
Netscape Navigator, and Microsoft Project. The Software Engineering Techniques will provide the
foundation of our plan.
The project will use the following programming and scripting languages:
Java
JavaScript
HTML
Testing will occur periodically throughout the development of our system, including the conclusion
of each step. Team members and other students will test the program along the entire process. The
client will be notified of the official testing sessions, and will be encouraged to participate and view
the results. The final product test will be subject to the specifications and requirements set forth by
the client. The final product will be compatible to run on all major platform configurations.
The minimal supporting documentation that will be provided to our clients as follows:
1. Problem Definition/Project Plan This document is due to the client on September 28, 2004.
2. Software Requirements Specifications This document is due to the client on November 1,
2004.
3. Preliminary Design This document is due to the client on December 6, 2004.
The Detailed Design documentation will be provided to the client in the Spring of 2005.
The project team will give presentations throughout the development process. The presentations will
include speeches, demonstrations, PowerPoint presentations, and handouts. The purpose of these
presentations is to present accomplishments or progress up to that point to the client, in a formal
manner. The presentations will also make sure that the requirements and goals of the client are being
met. The dates of delivery and presentations are as follows:
The information for this section was obtained from meetings with our client, Mr. James Matthews.
Other sources of information include Dr. Ledermans class lectures, the Software Engineering class
textbook Software Engineering: A Practitioners Approach by Roger S. Pressman and previous
Software Engineering teams projects.
OBJECTIVE
To obtain an internship in the field of Computer Science.
EDUCATION
Siena College, Loudonville, NY
B.S. in Computer Science, Minor in Business, May 2005
GPA: 3.06/4.00
COMPUTER EXPERIENCE
Languages: C++, Basic, MIPS, Assembly, Scheme, HTML
Operation Systems: Unix, Windows 3.x/9x/NT/2000/ME/XP, Minix, Linix, Citrix
Software Packages: Microsoft Office, Microsoft Visual C++, Microsoft Visual Basic, Microsoft Visual Basic.NET 2003,
Windows CE, EZ Win, OpenGL, Macromedia Dreamweaver, Macromedia Fireworks, Mercury Interactive Monitroing
Tools (Topaz, Site Scope, Load Runner), Active PDF, Audio Vault
Database Management: Oracle 9i, Microsoft SQL server/CE
EXPERIENCE
IT Director, 88.3fm WVCR The Saint, Siena College, Loudonville, NY May 2004 Present
Worked as lead on all projects with servers in the station.
Administrator of Audio Vault and consultant to the rest of the station crew.
Citrix Administrator, Office of Children and Family Services, New York State, Albany NY April 2004 Present
Maintained and administered 200+ Citrix servers connected to by users all over the state.
Active PDF and Topaz Administrator.
Computer Consultant, ITS, Siena College, Loudonville, NY August 2003 August 2004
Worked as a computer lab, help desk, and on-call consultant.
Helped implement a plan to remove the Blaster virus off of Sienas Campus Network.
Referee Coordinator, Guilderland Soccer Association, Guilderland, NY September 1999 June 2004
Trained new Referees and observed and reported on each member of a 33 person staff.
OBJECTIVE
EDUCATION
COMPUTER EXPERIENCE
RELEVANT COURSES
EXPERIENCE
ACTIVITIES
OBJECTIVE
An internship in the field of Computer Science
EDUCATION
Siena College, Loudonville, NY
B.S. in Computer Science, Minor in Business, May 2005
COMPUTER SKILLS
Word, Excel, Power Point, Visual C++, SQL, Scheme, HTML, Internet, Fireworks, Java Script,
Assembly Language, Perl,
EXPIRENCE
Bag Room Assistant, Pinehaven Country Club, Schenectady, NY,
April 1999-present
Attended to members needs.
Helped out with golf tournaments.
Student Worker ITS, Siena College, Loudonville, NY, September 2001-May 2003
Worked as an office assistant
Helped out secretaries by running errands, filing, and other tasks
ACTIVITIES
Member, Big Brothers Big Sisters Program, Siena College, Loudonville, NY, September 2003-
present
Spent Saturday afternoon with an 11 year-old boy
Went to lunch and then took part in fun activities
Built a brother-like relationship with the boy
Latham, NY 12110
OBJECTIVE
EXPERIENCE
INFORMATION & TECHNOLOGY SERVICES CONSULTANT Siena College, Loudonville,
New York February 2002 Present
Provide technical assistance to students and faculty in personal computer set-up and use in
dorms and computer labs
Provide maintenance of 24 hour computer lab by ensuring that computers are operating
and that printers have adequate supplies and printing properly
ADMINISTRATIVE AND TECHNICAL ASSISTANT Industrial Tool & Die Co, Troy, NY.
Designed and built three computer workstations from designated component parts
Assisted Office Manager in processing payroll, bill paying, shipping and other office duties
Re-stocked books
EDUCATION
Siena College, Loudonville, NY, Computer Science - will receive B.S. in May 2005
COMPUTER LANGUAGES
ACTIVITIES / MEMBERSHIPS
Member of the Siena College Information & Technology Services Advisory Committee, January
2004 present
Objective:
To obtain a challenging internship in the area of Computer Science or Business, where my relevant
experiences will be of value.
Education
Siena College, Loudonville, NY
B.S. in Computer Science, May 2005
Relevant Coursework
Introduction to Computer Science, Procedural Design and Programming, Database Management,
Data Structures, Assembly Language, Analysis of Algorithms, Communications and Networks,
Object-Oriented and Design, Pre-Calculus, Calculus I & II, and Discrete Structures I & II.
Computer Skills
Programming in C++, Scheme, and Assembly Language, proficient use in Microsoft Word, Access,
Excel, and PowerPoint.
Relevant Experience
Information Technology Consultant: Siena College, Information and Technology Services (I&TS),
Loudonville, NY Sept. 2002-present.
Manage Help Desk. Assist students, faculty, and staff with problems relating to computer use.
Organize and maintain computer labs for maximum efficiency.
Refer computer-related problems to lead user specialists when necessary.
Answer incoming calls for I&TS main office regarding computer issues.
Research Intern: Information and Technology Services, Siena College, Loudonville, NY June 2003
February 2004.
Selected to conduct research on a data-warehousing project to extend the service life of bridges in
New York State.
Worked directly under senior researcher, assisting him with data collection and input.
Analyzed data and produced reports on findings.
Developed questionnaires to survey outside civil engineers in the state.
Other Work Experience
Tutor: Tilden High School, Brooklyn, NY.
Provided Math tutoring to students in 9th and 10th grade who were having difficulty with subject.
Activities
Mentor, Higher Education Opportunity Program, Siena College Fall 2002, 2003.
Member, Computer Science Club, Siena College, Spring 2002.
Member, Black & Latino Student Union, Siena College, Spring 2002.
Gantt Chart - A chart that depicts progress in relation to time, often used in planning and tracking a
project.
HTML - A markup language used to structure text and multimedia documents and to set up
hypertext links between documents, used extensively on the World Wide Web.
Internet - An interconnected system of networks that connects computers around the world via the
TCP/IP protocol.