COP 4331C - Processes for Object-Oriented Software Development

Fall 2021

Syllabus

Catalog description: Concepts, principles, processes and methods for developing large software systems featuring a team project using object-oriented design in UML and implementation in C++.
Course assessment outcomes: By the end of the semester each student will be able to:
  • construct UML diagrams of the following types: Use Case Diagram, Class Diagram, Activity Diagram, Collaboration Diagram, State Transition Diagram, Sequence Diagram and Data Flow Diagram
  • work on a project for a client, performing all the steps associated with the object-oriented software development life cycle including elicitation of the requirements from a client, preparation of software requirements specification, project management plan and test plan of a software system.
  • write technical high level design and detailed design of a software system.
  • prepare and successfully give oral presentation of a software system design and operation of the class project deliverables.
Instructor: Dr. Damla Turgut
Office: HEC 316 (Fall 2021: online)
Phone: (407) 823-6171
E-mail: Damla.Turgut@ucf.edu (preferred means of communication)
Web Site: http://www.cs.ucf.edu/~turgut/COURSES/COP4331C_OOD_Fall20/COP4331C_OOD_Fall21.html
The assignments and the other announcements will be posted on Webcourses.
Classroom: Health Sciences I, room 119
Class Hours: Tue, Th 9:00AM - 10:15AM
Office Hours: Tue, Th 12:00PM - 1:15PM (Online)
Recitation: Fr, 12:30PM - 1:20PM in CB1 120 and 1:30PM - 2:20PM in CB1 120
  • While the recitations will be in-person, the recitations will be recorded and shared with the students.
  • The recitations start on the first week.
GTA: Furkan Cimen
GTA Office Hours: Tue, Th 4:30PM - 6:00PM (Online)
GTA email: furkan@knights.ucf.edu
Grader: Nafisa N. Mostofa
Grader Office Hours: Mo, We, Fr 4:00PM - 5:30PM (Online)
UTA email: nafisa.mostofa@knights.ucf.edu
Pre-requisites: COP 3503C with a grade of ''C'' (2.0) or better and COT 3960 (CS majors).
Required texts: Shari Lawrence Pfleeger and Joanne M. Atlee, "Software Engineering: Theory and Practice", 4th Edition, Prentice Hall, 2010.
Grading:
  • Three online quizzes: 30%
  • Online comprehensive final exam: 30%
  • Project: Deliverables 1-3 (10% each) & demo (10%)

  • The following will be used for final grades: A for 90 and above, B for 80-89, C for 70-79, D for 60-69, F for lower than 60.
  • The quizzes and final exam will be administered through ProctorHub. The quizzes will be closed book and notes while final exam will be open book and notes.
  • Make up exams will be given only in justified cases.
Verification of engagement: As of Fall 2014, all faculty members are required to document students' academic activity at the beginning of each course. In order to document that you began this course, please complete the following academic activity by the end of the first week of classes, or as soon as possible after adding the course, but no later than August 27. Failure to do so will result in a delay in the disbursement of your financial aid.
To satisfy this requirement, you must finish the first quiz posted online. Log in to Webcourses, choose COP 4331C, and submit your answers online.
Integrity: The department, college, and University are committed to honesty and integrity in all academic matters. We do not tolerate academic misconduct by students in any form, including cheating, plagiarism and commercial use of academic materials. Please consult the Golden Rule Handbook for the procedures which will be applied.
Course accessibility: The University of Central Florida is committed to providing access and inclusion for all persons with disabilities. Students should connect with Student Accessibility Services (Ferrell Commons 185, sas@ucf.edu, phone (407) 823-2371). Through Student Accessibility Services, a Course Accessibility Letter may be created and sent to professors, which informs faculty of potential access and accommodations that might be reasonable. If you are a deployed active duty military student and feel that you may need a special accommodation due to that unique status, please contact your instructor to discuss your circumstances.
Campus safety: Emergencies on campus are rare, but if one should arise in our class, everyone needs to work together. Students should be aware of the surroundings and familiar with some basic safety and security concepts.
  • In case of an emergency, dial 911 for assistance.
  • Every UCF classroom contains an emergency procedure guide posted on a wall near the door. Please make a note of the guide's physical location and consider reviewing the online version.
  • If there is a medical emergency during class, we may need to access a first aid kit or AED (Automated External Defibrillator). To learn where those items are located in this building, see the link (click on link from menu on left).
  • To stay informed about emergency situations, sign up to receive UCF text alerts by going to my.ucf.edu and logging in. Click on "Student Self Service" located on the left side of the screen in the tool bar, scroll down to the blue "Personal Information" heading on your Student Center screen, click on "UCF Alert," fill out the information, including your e-mail address, cell phone number, and cell phone provider, click "Apply" to save the changes, and then click "OK."
Zoom for Remote Instruction While the lectures will be in-person, the lectures will be recorded and shared with the students.

Please take the time to familiarize yourself with Zoom by visiting the UCF Zoom Guides. You may choose to use Zoom on your mobile device (phone or tablet).

Things to Know About Zoom:

  • You must sign in to my Zoom session using your UCF NID and password.
  • The Zoom sessions are recorded.
  • Improper classroom behavior is not tolerated within Zoom sessions and may result in a referral to the Office of Student Conduct.
  • You can contact Webcourses@UCF Support at if you have any technical issues accessing Zoom.

Please see the Zoom housekeeping slide developed by UCF instructional designer, Trudy Trail-Constant.


Projects

Please login to Webcourses to see the project assignments.

Schedule

Date
Topic
Lecture Notes

Aug. 24 (Tu)
Course Syllabus
Aug. 26 (Th)
What is software engineering?
[chapter 1 slides]

Aug. 31 (Tu)
Modeling the process and life cycle
[chapter 2 slides]
Sept. 2 (Th)
Planning and managing the project
[chapter 3 slides]

Sept. 7 (Tu)
Planning and managing the project
Sept. 9 (Th)
Capturing the requirements
[chapter 4 slides]

Sept. 14 (Tu)
Capturing the requirements
Sept. 16 (Th)
Capturing the requirements

Sept. 17 (F)
Deliverables I:
Concept of Operations, Software Management Plan,
Software Requirements Specification



Sept. 21 (Tu)
Designing the architecture
[chapter 5 slides]
Sept. 23 (Th)
Designing the architecture

Sept. 27 (M) - Oct. 1 (F)
Quiz 1: Chapters 1-4


Sept. 28 (Tu)
Designing the architecture
Sept. 30 (Th)
Designing the modules
[chapter 6 slides]

Oct. 5 (Tu)
Designing the modules
Oct. 7 (Th)
Designing the modules

Oct. 12 (Tu)
Writing the programs
[chapter 7 slides]
Oct. 14 (Th)
Testing the programs
[chapter 8 slides]

Oct. 18 (M) - Oct. 22 (F)
Quiz 2: Chapters 5-7


Oct. 19 (Tu)
Testing the programs
Oct. 21 (Th)
Testing the system
[chapter 9 slides]

Oct. 26 (Tu)
Testing the system
Oct. 28 (Th)
Delivering the system
[chapter 10 slides]

Oct. 29 (F)
Deliverables II:
High-level Design, Detailed Design, Test Plan




Nov. 2 (Tu)
Software Requirements and Design Presentations
Nov. 4 (Th)
Software Requirements and Design Presentations

Nov. 9 (Tu)
Managing the system
[chapter 11 slides]
Nov. 11 (Th)
Veterans Day (No class!)


Nov. 15 (M) - Nov. 19 (F)
Quiz 3: Chapters 8-10

Nov. 16 (Th)
Managing the system
Nov. 18 (Th)
Final exam review

Nov. 23 (Tu)
Project Demos

Nov. 25 (Th)
Thanksgiving break (No class!)


Nov. 29 (M)
Deliverables III: Test Results, Source Code, Build Instructions, Individual Lessons Learned + Demo video link


Nov. 30 (Tu)
Project Demos
Dec. 2 (Th)
Project Demos


Final exam [Chapters 1-11]
December 9, 2021 (Th) 7:00 AM - 9:50 AM