Senior Project
CS 498 - Spring 2019
Catalog description:
An opportunity for students to participate in design and implementation of a large project by a small team. Project chosen in consultation with instructor will help analyze the impact of computing on individuals, organizations, and society, including ethical, legal, security, and global policy issues. Includes lectures and seminars reflecting on professional, ethical, and social responsibilities of computing professionals, as well as the need for professional development and life-long learning.
Logistics
Instructor | Dr. Stan Kurkovsky, Professor of Computer Science |
Office | MS 303-06 |
Phone | (860) 832-2720 |
kurkovsky@ccsu.edu | |
Office hours | MW 3:00-4:00pm, TR 2:30-4:00pm, or by appointment |
Class meetings | MW 1:40-2:55pm @ MS 204 |
Textbook and other things you will need
- No textbook is required
- In-class handouts
- Instructor's web site available at http://www.cs.ccsu.edu/~stan/ and other web sites recommended by the instructor
Course learning outcomes
Program educational objectives and student outcomes are supported by the following course learning outcomes achieved by students upon a successful completion of this course:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions (ABET SO-1);
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements (ABET SO-2);
- Communicate effectively in a variety of professional contexts (ABET SO-3);
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles (ABET SO-4);
- Function effectively as a member or leader of a team engaged in a software engineering project (ABET SO-5);
- Apply computer science theory and software engineering fundamentals to produce computing-based solutions that include information management and networking/communication components (ABET SO-6);
Tentative schedule
Week 1: January 22 - 25
- Introduction
Week 2: January 28 - February 1
- Course project kick-off
Meetings with product owners - Project update
Week 3: February 4 - 8
- Project update
- Reading and discussion:
Programmers: Stop Calling Yourselves Engineers
You Don't Have to Be Good at Math to Learn to Code
Programmers, Let’s Earn the Right to Be Called Engineers
Week 4: February 11 - 15
- Project update
- Reading and discussion: Then a Miracle Occurs
Week 5: February 18 - 22
- Presidents' Day - no class
- Project update
Week 6: February 25 - March 1
- Project update
- Reading and discussion: When Software Crosses a Line
Week 7: March 4 - 8
- Project update
- Reading and discussion: Chaos Engineering
Week 8: March 11 - 15
- Spring break
Week 9: March 18 - 22
- Mid-point project demo
- Reading and discussion: Why Large IT Projects Fail
Week 10: March 25 - 29
- Project update
- Reading and discussion: What's the Architect's Role in an Agile, Cloud-Centric World
Week 11: April 1 - 5
- Project update
- Reading and discussion: Frequently Unanswered Questions
Week 12: April 8 - 12
- Project update
- Reading and discussion: Lifelong Learning for Lifelong Employment
Week 13: April 15 - 19
- Project update
Week 14: April 22 - 26
- Project update
- Reading and discussion: Speed, Data, and Ecosystems-The Future of Software Engineering
Week 15: April 29 - May 3
- Project update
- Reading and discussion: Is Your Software Valueless?
Week 16: May 6 - May 10
- Project demonstrations
- Research paper is due
Final: May 15
- Final exam: Wednesday, May 15, 1:00 pm - 3:00 pm
Course project
A project is the focal point of this course. Working in teams and following an agile software process, students must coordinate closely with the external product owner to design and develop a complex software systems meeting the desired functional and non-functional requirements.
Reading and discussions
During each reading and discussion session, two pairs of students will present alternative points of view on the issues raised in the corresponding reading materials. All students are expected to actively participate in each discussion session by asking questions and expressing their opinions.
Research paper
Each student is required to write a term paper on the basis of the reading and discussion sessions. References and citations do not need to be limited to the papers included into the course readings. Possible topics include:
- Evolution of software processes
- Societal and ethical responsibilities of a software engineer
- Everything you learn today will soon be obsolete
- Is project failure a stepping stone to success?
- Games as a Service (GaaS) model: the rapidly changing field of game development
- The role of AI in software design and code generation
Academic misconduct
All students are expected to demonstrate integrity in the completion of their coursework. Academic integrity means doing one's own work and giving proper credit to the work and ideas of others. It is the responsibility of each student to become familiar with what constitutes academic dishonesty and plagiarism and to avoid all forms of cheating and plagiarism. Students who engage in plagiarism and other forms of academic misconduct will face academic and possibly disciplinary consequences. Academic sanctions can range from a reduced grade for the assignment to a failing grade for the course. From a disciplinary standpoint, an Academic Misconduct Report may be filed and a Faculty Hearing Board may impose sanctions such as probation, suspension or expulsion.
For further information on academic misconduct and its consequences, please consult the Student Code of Conduct and the Academic Misconduct Policy.
Attendance
All students are expected to attend class sessions regularly. However, recognizing individual differences, each student is responsible for his/her own attendance and for making-up any missed study or work. Limited assistance will be offered to those with plausible reasons for absences; unexcused absences will result in the student being totally responsible for the make-up process.
Students with disabilities
Please contact me privately to discuss your specific needs if you believe you need course accommodations based on the impact of a disability, medical condition, or if you have emergency medical information to share. I will need a copy of the accommodation letter from Student Disability Services in order to arrange your class accommodations. Contact Student Disability Services if you are not already registered with them. Student Disability Services maintains the confidential documentation of your disability and assists you in coordinating reasonable accommodations with the faculty.
Grades and evaluation
Students will be evaluated regularly during the semester and should be aware of their progress continuously during the semester. The final course grade will be reported according to the stated University policy.
The final course grade will be calculated according to the following distribution of points:
Course project | 40 |
Teamwork | 20 |
Reading and discussions | 20 |
Research paper | 20 |
Total | 100 |
Course letter grade will be determined as follows:
A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- | F |
---|---|---|---|---|---|---|---|---|---|---|---|
94-100 | 90-93.99 | 87-89.99 | 84-86.99 | 80-83.99 | 77-79.99 | 74-76.99 | 70-73.99 | 67-69.99 | 64-66.99 | 60-63.99 | 0-59.99 |