关键词 > CSCI4448&5448

CSCI 4448 & 5448 Syllabus Object-Oriented Analysis & Design Spring 2023

发布时间:2023-01-20

Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

CSCI 4448 & 5448 Syllabus

Object-Oriented Analysis & Design

Spring 2023

Instructor Bruce Montgomery, PhD, PMP Piazza https://piazza.com/colorado/spring2023/csci45448ooad/home

Office Remote/Off-campus E-mail bruce.r.montgomery@colorado.edu

Office Hours MW       11:30 AM - 1 PM Canvas https://canvas.colorado.edu/courses/91069

TR         3 PM - 4 PM

https://cuboulder.zoom.us/j/3844137608

I. Overview

Lectures:  Monday/Wednesday/Friday, 10:10 AM to 11:00 AM.  Note: I will be presenting all lectures remotely via Zoom         conference.  The Zoom conference link ishttps://cuboulder.zoom.us/j/98393694393and you must use a colorado.edu login to attend.  More on this below.

Class Staff:

Grader   Vardhini Balasubramanian

II. Description and Content

dwight.browne@colorado.edu

rone7552@colorado.edu

rajiv.vangala@colorado.edu

gayathri.[email protected]

vaba6239@colorado.edu

Object-Oriented Analysis and Design is a course that presents an introduction to the design and construction of software       systems using techniques that view a system as a set of objects that work together to realize the system's functionality. This perspective stands in contrast to more traditional "procedural" or "structured" design techniques that viewed systems as a set of procedures that manipulate shared data structures. Proponents of object-oriented techniques point to the flexibility and     extensibility of object-oriented systems along with other benefits such as increased modularity, abstraction, and                    encapsulation.

In this class, we will examine fundamental objected-oriented analysis and design techniques and show how decisions made during analysis and design impact the implementation of software systems. This class does not focus on object-oriented     programming; however, we will examine many examples of object-oriented systems written in Java, Python, and other       languages. A primary focus will be the understanding and application of key object-oriented principles and design patterns.

By the end of the class, students will have been exposed to the major steps of object-oriented software development life        cycles and will understand the tools and techniques that are used in such development. They will also have applied these skills to the development of projects and the analysis of real-world object-oriented systems.

III. Requirements and Format

Prerequisites:

This course involves extensive work in programming for projects and assessments and therefore requires knowledge of       programming (this course will primarily use Java, along with some Python) and basic computer architecture.  Corresponding CU Boulder courses includes CSCI 1300 and 2270.  Both Java and Python are straightforward languages to install, read, and apply, especially for those with existing background in other languages (like C, C++, or C#).  They are also particularly suited to object-oriented design projects such as those in this class.

Note: neither Java nor Python programming will be taught in depth as an in-class topic, although examples and code snippets will be reviewed.  Links for Java and Python tutorials and support materials will be provided for students to use as needed.

The class may also provide experience with other tools and languages, including but not limited to Git, HTML, UML, Amazon Web Services, various databases, and others.  Prior experience in these tools is not required for the class.

Attendance and Participation:

Class lectures will start promptly at the scheduled class start time. Attendance at every class is encouraged as we will conduct individual and group classroom activities, and students are encouraged to participate in activities and class discussions of        course topics.  While we will be doing some in-class exercises, you will have other options for any bonus awards from such     exercises if you cannot attend synchronously. You may take the class entirely asynchronously, as long as deadlines for          submissions are met.  Lectures will be recorded and posted on the class Canvas site for later viewing.  Because of the remote nature of this semester, participation will primarily be graded based on Piazza contributions and comments.  This will be         detailed in class.

Class materials will be made available on Canvas along with any assignments.  Students are expected to keep up with the course material and assignments as they are presented.  If you fall behind, or experience personal issues which prevent  participation, or you need other help, please schedule an appointment with the class staff as soon as possible.

Students are expected to complete assignments on time, extensions to class assignment dates will be very rare.  In some       cases, project assignments will be accepted late, but the grade earned on the assignment will be reduced – this allowance and reduction will be made clear for each assignment.  Details of late policies will be reviewed in class as needed.

Canvas Web-based Instruction and Piazza Messaging:

Students must have access to and accounts for Canvas to find materials and recorded lectures, get class notices, submit  homework, and take quizzes and/or exams.  I will use the announcements feature of Canvas for posting information on   assignments and class changes.  Please ensure you can reach the class Canvas site                                                      (https://canvas.colorado.edu/courses/91069). You should also ensure that you sign up in Canvas account settings for     notifications of news, class schedule or assignment changes, content postings, assignment and quiz due dates, and grade updates.

For messaging and postings of discussion materials, we will be using Piazza, which is available for the web as well as iOS and Android apps.  Please sign up for your Piazza connection at:https://piazza.com/colorado/spring2023/csci45448ooad/home.    The class staff will try to answer questions posted on Piazza as quickly as possible.  We will also use Piazza for posting articles and links related to class subjects.

Remote Participation:

Due to class logistics, the majority of contact in the class, including lectures, will be via Zoom conferencing.  To join the class lectures synchronously, use the following Zoom meeting ID & connection information:

Join Zoom Meeting:https://cuboulder.zoom.us/j/98393694393

Meeting ID: 983 936 94393

One tap mobile

+13017158592,,98393694393# US (Washington DC)

+13092053325,,98393694393# US

Find your local number:https://cuboulder.zoom.us/u/adURsddx6F

For more information, visit the OIT Zoom website:

https://oit.colorado.edu/services/conferencing-services/web-conferencing-zoom/help/getting-started

For questions or comments regarding accessibility issues in Zoom, please contact the CU Digital Accessibility Office at digitalaccessibility@colorado.edu.

Readings:

Course materials include lecture slides, project guides, and other online materials, with frequent references to various texts and other resources.  The textbook for the class is a required resource.

Textbook:

Head First Design Patterns

o  By Freeman, Robson, Bates, & Sierra

o  OReilly Media, December 2020 (2nd Edition)

o  Available as a paper book ($42) or e-book ($21 rent, $40 buy) via Amazon.

o  The e-book is also available via O’Reilly Safari (free access at CU Library online e-books here: https://libguides.colorado.edu/strategies/ebooksunder the sciences tab).

Course lecture slides, course labs and project material, and links to other readings or web sites to support class topics and projects will be embedded in lecture slides and provided via Canvas.

Homework and Projects:

Homework and related project assignments will be provided covering material from class lectures.  When indicated, students   may collaborate on homework as presented in homework details; a group of students collaborating on a homework may turn  in one group submission. All homework and reports must be legibly written or typed and must include all the students name(s) in the submission. All homework assignments should be turned in at the due date/time presented for the assignment on Canvas.  Late homework may be accepted but will be penalized as detailed in class or assignment descriptions.

Code and reports are expected to be thorough work, including proper references to any supporting materials.  Whether working as a team or leveraging software designs from books, magazines, the Internet, or other sources, students are expected and required to cite and credit the source of the information clearly and completely. Plagiarism will not be tolerated and will be reported to the CU Honor Code Office.

Other Assessments:

There will be scheduled quizzes most weeks over material presented; these will be provided via Canvas and will be performed outside of class. All quizzes must be completed prior to the Canvas due date/time.  There will also be a mid-term and final    examination.  The quiz and exam assessments are to be done using individual effort alone.  Mid-term and final exam logistics, content, times, and locations will be scheduled and announced.

Extra Credit:

From time to time, there may be opportunities for extra credit.  Generally, extra credit opportunities come from two sources – classroom activities and project work.  In most cases, classroom extra credit will supplement overall grades; distance and      nonsynchronous students will be given equivalent opportunities for extra credit.  Project extra credit will be described in         project grading rubrics and will be awarded for individual or team projects when projects are graded.

IV. Evaluation and Grading Procedures

Grading will be based on total points accumulated from each type of assessment and assignment used in the class. All points from class activities have the same weight. A student earning less than 60% of the points possible will be given a failing       grade.  In all cases, grades may be assigned based on a curve determined by the instructor.

The following table shows percentage assignments for final posted class letter grades:

94 – 100

90 – 93

87 - 89

83 – 86

80 – 82

77 – 79

73 – 76

70 – 72

67 – 69

63 – 66

60 – 62

0 – 59

A

-

B+

B

-

C+

C

-

D+

D

-

F

Make-up Exam Policy:  No make-up exams are given except for medical or other similar hardships where advanced  arrangements are made with the instructor; or in case of non-selective medical emergencies with physician’s note or documentation.  Otherwise, failure to take the exam at the scheduled time will result in a zero grade in the exam.

The overall course grade will be based on participation and attendance, homework/projects, quizzes, and exams. The grade proportions are as follows (note they differ for graduate and undergraduate students) :

Undergraduate students:

•    Homework/projects 50% (500 points)

•    Quizzes 20% (200 points)

•    Mid-term and Final Exams 20% (200 points)

•    Participation 10% (100 Points)

Graduate students:

•    Homework/projects 40% (500 points)

•    Quizzes 16% (200 points)

•    Mid-term and Final Exams 16% (200 points)

•    Participation 8% (100 points)

•    Graduate research project 20% (250 points)

V. Campus-Wide Policies

Please note, the following statements in this section are mandated by CU Boulder for all instructors.  Please see this Academic Affairs link for more information: https://colorado.edu/academicaffairs/policies-customs-guidelines/required-syllabus- statements

Classroom Behavior

Both students and faculty are responsible for maintaining an appropriate learning environment in all instructional settings,     whether in person, remote or online. Those who fail to adhere to such behavioral standards may be subject to discipline.       Professional courtesy and sensitivity are especially important with respect to individuals and topics dealing with race, color,    national origin, sex, pregnancy, age, disability, creed, religion, sexual orientation, gender identity, gender expression, veteran status, political affiliation or political philosophy.  For more information, see theclassroom behaviorpolicy, theStudent Code

of Conduct, and theOffice of Institutional Equity and Compliance.

Requirements for COVID-19

As a matter of public health and safety, all members of the CU Boulder community and all visitors to campus must follow       university, department and building requirements and all public health orders in place to reduce the risk of spreading             infectious disease. CU Boulder currently requires COVID-19 vaccination and boosters for all faculty, staff and students.           Students, faculty and staff must upload proof of vaccination and boosters or file for an exemption based on medical, ethical or moral grounds through the MyCUHealth portal.

The CU Boulder campus is currently mask-optional. However, if public health conditions change and masks are again required in classrooms, students who fail to adhere to masking requirements will be asked to leave class, and students who do not leave class when asked or who refuse to comply with these requirements will be referred to Student Conduct and Conflict Resolution. For more information, see the policy on classroom behavior and the Student Code of Conduct. If you require  accommodation because a disability prevents you from fulfilling these safety measures, please follow the steps in the      “Accommodation for Disabilities” statement on this syllabus.

If you feel ill and think you might have COVID-19, if you have tested positive for COVID-19, or if you are unvaccinated or      partially vaccinated and have been in close contact with someone who has COVID-19, you should stay home and follow the   further guidance of the Public Health Office ([email protected]). If you are fully vaccinated and have been in close contact with someone who has COVID-19, you do not need to stay home; rather, you should self-monitor for symptoms and

follow the further guidance of the Public Health Office (contacttracing@colorado.edu). {

Please notify your instructor about absence due to illness or quarantine.  Note that because of FERPA student privacy laws, students are not required to state the nature of their illness nor do we require "doctor's notes" for classes missed due to    illness.  The instructor will work with you on make up or rescheduled assignments as needed.

Accommodation for Disabilities

If you qualify for accommodations because of a disability, please submit your accommodation letter from Disability Services to your faculty member in a timely manner so that your needs can be addressed.  Disability Services determines                       accommodations based on documented disabilities in the academic environment.  Information on requesting accommodations is located on theDisability Services website. Contact Disability Services at 303-492-8671 ordsinfo@colorado.edu for further

assistance.  If you have a temporary medical condition, seeTemporary Medical Conditionson the Disability Services website.

Preferred Student Names and Pronouns

CU Boulder recognizes that students' legal information doesn't always align with how they identify. Students may update their preferred names and pronouns via the student portal; those preferred names and pronouns are listed on instructors' class     rosters. In the absence of such updates, the name that appears on the class roster is the student's legal name.

Honor Code

All students enrolled in a University of Colorado Boulder course are responsible for knowing and adhering to theHonor Code. Violations of the Honor Code may include, but are not limited to: plagiarism, cheating, fabrication, lying, bribery, threat,        unauthorized access to academic materials, clicker fraud, submitting the same or similar work in more than one course          without permission from all course instructors involved, and aiding academic dishonesty. All incidents of academic misconduct will be reported to Student Conduct & Conflict Resolution ([email protected]); 303-492-5550). Students found responsible for violating theHonor Codewill be assigned resolution outcomes from the Student Conduct & Conflict Resolution as well as  be subject to academic sanctions from the faculty member. Additional information regarding the Honor Code academic

integrity policy can be found on theHonor Code website.

Sexual Misconduct, Discrimination, Harassment and/or Related Retaliation

CU Boulder is committed to fostering an inclusive and welcoming learning, working, and living environment. University policy   prohibits sexual misconduct (harassment, exploitation, and assault), intimate partner violence (dating or domestic violence),    stalking, protected-class discrimination and harassment, and related retaliation by or against members of our community on-   and off-campus. These behaviors harm individuals and our community. The Office of Institutional Equity and Compliance        (OIEC) addresses these concerns, and individuals who believe they have been subjected to misconduct can contact OIEC at    303-492-2127 or email [email protected]. Information about university policies, reporting options, and support resources

can be found on theOIEC website.

Please know that faculty and graduate instructors have a responsibility to inform OIEC when they are made aware of any issues related to these policies regardless of when or where they occurred to ensure that individuals impacted receive information about their rights, support resources, and resolution options. To learn more about reporting and support options

for a variety of concerns, visitDont Ignore It.

Religious Holidays

Campus policy regarding religious observances requires that faculty make every effort to deal reasonably and fairly with all  students who, because of religious obligations, have conflicts with scheduled exams, assignments or required attendance. In this class, please notify the instructor at least two weeks prior to the conflict to make arrangements.

See thecampus policy regarding religious observancesfor full details.

Course Concerns:

If you have any questions or concerns about the course, please discuss them with the class staff as soon as possible.  If we cannot address your concern, the issue can be brought to the attention of the program advisors, faculty directors, or          department chairs.