CS 49901 Capstone Project

Department of Computer Science

Kent State University



Class Room:                   MSB 276

Time:               1:10-2:00pm MWF

URL: www.cs.kent.edu/~jmaletic/Capstone/

Prerequisites: CS33006, CS 43901,

                       CS43005, CS45201

Instructor: Dr. Jonathan I. Maletic

Office Hours:          2:00-3:00MW

Office:                             218 MCS

Phone:                    330-672-9038

Email:          jmaletic@cs.kent.edu

URL:    www.cs.kent.edu/~jmaletic/



The course is an integrative experience that brings together all components of the undergraduate computer science curriculum in an applied, hands-on real world setting.  The course is a bridge between the academic experience and the professional workplace.  The objectives of the Capstone Project course are to give the student the experience of: 1) being involved in building a non-trivial, real-world (like), software development project; 2) working with other developers in a team environment; 3) building a graphical user interface; 4) integrating knowledge of topics such as operating systems, networks, database, and software engineering within a team-project framework.


Text Book

·        None required

·        Recommended: Object-Oriented Software Engineering 2nd Edition, Bruegge & Dutoit

·        The students will be given a list of outside readings from the Computer Science literature.  These may include readings from the Communications of the ACM, IEEE Software, IEEE Computer, classic textbooks, etc.


Major Course Topics

·        Object Oriented Design, Analysis, and Programming

·        Software tools and environments

·        Software requirements and specifications

·        Software project management

·        Software team management and communication

·        Document management

·        Using APIs

·        Event driven programming

·        Foundations of human computer interaction

·        Building a simple graphical user interface


Course organization

The course will be a mix of lecture, invited lectures, student project status report presentations, and student team meetings.  The course will be project based, with students organized into teams of three or more.  These student teams will be given the assignment of developing a non-trivial software system. 


Approximately 20 (of 45) contact hours will be comprised of formal lecture on the topics of team organization and management, project management, requirements elicitation, and developing graphic user interfaces.  Additionally, lectures on software/environment tools and using specific APIs/components will be included.  External and internal guest lecturers will be organized to fulfill the integrative and real world aspects.  If the project is one derived from a local external organization, presentations regarding the project requirements will be appropriate.


The remainder of contact hours will consist of student/team project status reports and final project presentations.  In addition, class time will be allocated for student team meetings and organization.


Project requirements

The project is an integrative experience that combines key material from multiple courses in the computer science curriculum.  Ideally, the project will have database, networking, operating system, GUI, and general software engineering aspects.  The project should include the use of development tools (e.g., version control tools, IDE, etc.) and software libraries, APIs, COTS, or other types of reusable software components.  Additionally the project will be:

·        Real world (like) and non-trivial in size (5K to 10K lines of code) – it should be large enough that a single person will have a very difficult time to complete in a one term

·        Deadline driven with multiple work products produced and evaluated

·        Developed by a team of students – the teams will be 3 or more students, preferably 4 to 5 students

·        Constructed to include a (graphical) user interface – a window based, event driven interface will be used



·        Project 50%, Presentations 30%, Class participation 10%, Final Exam 10%

·        Scale: A: 100-90, B: 89-80, C: 79-70, D: 69-60, F: 59- 0


Other Notes

·        Lecture is the student’s responsibility, if class is missed; it is in the students best interests to get the notes from a fellow student.

·        Any modifications to the syllabus will be made on the course URL.

·        Please turn off all wireless phones, beepers, pagers, radios, the sound on all laptops and PDAs, and any other noise making devises.

·        Copying or plagiarism of any type will not be tolerated and will be dealt with in accordance to Kent State University's policy on cheating and plagiarism described in the student handbook.  You should read the Department’s policy on this issue: http://www.cs.kent.edu/programs/grad/acad-dishonesty.htm

·        Special accommodations for students with disabilities: In accordance with the University policy, if you have a documented disability and require accommodations to obtain equal access in this course, please contact the instructor at the beginning of the semester or when given an assignment for which an accommodation is required.  Students with disabilities should verify their eligibility through the Office of Student Disability Services (SDS) in Michael Schwartz Student Services Center (672-3391).