An implementation-based study of object-oriented software development. Teams will design and create medium-scale applications. Additional focus on the design and use of large object-oriented libraries, as well as social and professional issues. Prerequisite: At least a "C-" in CSCI 2100. 3.000 Credit Hours.
This course is about learning to build software from scratch. During the course we will look at how to go from a software idea to a working solution. This process will involve creating requirements, building prorotypes, developing and documenting design, implementing the design, and testing your code. This class is an exciting milestone in your computer science curriculutm: in this class you will use your creative and technical abilities, improve your collaboration skills, and learn useful tricks of object oriented design. We'll do all our programming in Java, and you will learn this programming language in the course of the semester (prior experience with Java is not necessary).
To solidify your knowledge of the course material, you will do in-class programming labs: these are simple short assignments that provide hands on experience for the topic(s) we covered in class that day. On these assignments, you can get as much help as you need and I encourage you to seek help on the in-class lab assignments. You can ask your classmates for help or raise your hand and I will be happy to help you.
You will also have individual homework assignments. They typically integrate multiple topics covered in class and require you to apply your knowledge to solve the assigned programming problem. It is very important that you do your homework assignments yourself. If you are stuck with getting started, you can discuss the general approach to the problem with a classmate. However, you are not allowed to look at your classmates' solutions or to show your solutions to your classmates. For more details, please review the Academic Integrity section of the course syllabus. If you have problems completing your homework assignment, you can always seek my help during office hours. You can also email me the description of the problem you are having, as we may be able to resolve it via email. Homework assignments are more difficult than the labs and require more time. You will have at least one week to complete each homework assignment, and I recommend to start on your homework as soon as it is assigned.
After the midterm break, I will split you into teams of 3 or 4 students to work on the semester project. This is truly an exciting part of the semester: you will select and build a project of your choice. Typically, students choose to implement a game. I will show you examples of prior students projects and will provide guidance on what your semester project must include.
Our class time will be dedicated to lectures, in-class lab exercises, and in-class learning activities. On lecture days, you will have an opportunity to assess your understanding of the lecture material by answering questions built into the lecture using i-Clicker remotes. The remotes will be provided during class. Please return the remotes back to me at the end of class.
To prepare for class, you need to complete and submit any unfinished in-class lab exercises. I will frequently post assigned reading at the end of class, which you need to complete before the start of next class. The lecture notes for a given day will be posted prior to class: the notes summarize main points of the lecture. You may want to print/download lecture notes to get ready to take additional notes in class. Assigned reading and lecture notes will be posted in the Schedule and Notes section of the course web site.
After successfully completing this course, the students will be able to:
The course covers the following topics:
The following resources will be used throughout the semester:
Your grade will be based on class activities, homework assignments, quizzes, two exams, and team project.
You will be able to access your grades for this course via Blackboard.
Final letter grade will be assigned based on the following scale:
Come to class! Be on time. Arriving to class late is disruptive and disrespectful to everyone. In-class quizzes are worth 10% of your grade. You must be present in class to take the quizzes.
Academic integrity is honest, truthful and responsible conduct in all academic endeavors. The mission of Saint Louis University is "the pursuit of truth for the greater glory of God and for the service of humanity." Accordingly, all acts of falsehood demean and compromise the corporate endeavors of teaching, research, health care, and community service via which SLU embodies its mission. The University strives to prepare students for lives of personal and professional integrity, and therefore regards all breaches of academic integrity as matters of serious concern.
The governing University-level Academic Integrity Policy was adopted in Spring 2015, and can be accessed on the Provost's Office website at: https://www.slu.edu/provost/policies/academic-and-course/policy_academic-integrity_6-26-2015.pd.
Additionally, each SLU College, School, and Center has adopted its own academic integrity policies, available on their respective websites. All SLU students are expected to know and abide by these policies, which detail definitions of violations, processes for reporting violations, sanctions, and appeals. Please direct questions about any facet of academic integrity to your faculty, the chair of the department of your academic program, or the Dean/Director of the College, School or Center in which your program is housed.
Here are some examples of how Academic Integrity policy applies to this class. Note that these examples are not exhaustive. If you are unsure if something you want to do violates Academic Integrity Policy, please ask me during class time or outside of class.
CAN | CANNOT |
---|---|
You can use the internet to look up code syntax, compiler error explanation, documentation. | You cannot post your assignment seeking for others to solve your problem. |
Talk to your classmates about the assignments, ways to to approach them, and how to break them down into manageable pieces. | Look at someone else’s solution to the problem you are assigned, copy someone else’s code or design. Submit someone else’s solution as your own. |
Help others understand the problem. | Share your solution with others. |
First violation of the academic integrity policy will result in a grade of zero for the assignment in question. Any subsequent violations will result in further disciplinary actions.
Academic integrity policy applies to group projects and individual assignments. However, for group projects, group members are expected to collaborate and share their work with each other.
Saint Louis University and its faculty are committed to supporting our students and seeking an environment that is free of bias, discrimination, and harassment. If you have encountered any form of sexual misconduct (e.g., sexual assault, sexual harassment, stalking, domestic or dating violence), we encourage you to report this to the University. If you speak with a faculty member about an incident that involves a Title IX matter, that faculty member must notify SLU’s Title IX coordinator (or that person’s equivalent on your campus) and share the basic facts of your experience. This is true even if you ask the faculty member not to disclose the incident. The Title IX contact will then be available to assist you in understanding all of your options and in connecting you with all possible resources on and off campus.
For most students on the St. Louis campus, the appropriate contact is Anna R. Kratky (DuBourg Hall, room 36; anna.kratky@slu.edu; 314-977-3886). If you wish to speak with a confidential source, you may contact the counselors at the University Counseling Center at 314-977-TALK. To view SLU’s sexual misconduct policy, and for resources, please visit the following web addresses: https://www.slu.edu/here4you and https://www.slu.edu/general-counsel.
Students with a documented disability who wish to request academic accommodations must contact Disability Services to discuss accommodation requests and eligibility requirements. Once successfully registered, the student also must notify the course instructor that they wish to access accommodations in the course.
Please contact Disability Services, located within the Student Success Center, at Disability_services@slu.edu or 314.977.3484 to schedule an appointment. Confidentiality will be observed in all inquiries. Once approved, information about the student’s eligibility for academic accommodations will be shared with course instructors via email from Disability Services and viewed within Banner via the instructor’s course roster.
Note: Students who do not have a documented disability but who think they may have one are encouraged to contact to Disability Services.
In recognition that people learn in a variety of ways and that learning is influenced by multiple factors (e.g., prior experience, study skills, learning disability), resources to support student success are available on campus. The Student Success Center assists students with academic-related services and is located in the Busch Student Center (Suite, 331). Students can visit https://www.slu.edu/life-at-slu/student-success-center/ to learn more about tutoring services, university writing services, disability services, and academic coaching.
Students are encouraged to take advantage of University Writing Services in the Student Success Center; getting feedback benefits writers at all skill levels. Trained writing consultants can help with writing projects, multimedia projects, and oral presentations. University Writing Services offers one-on-one consultations that address everything from brainstorming and developing ideas to crafting strong sentences and documenting sources. For more information, visit https://www.slu.edu/life-at-slu/student-success-center/ or call the Student Success Center at 314-977-3484.
Students in personal or academic distress and/or who may be specifically experiencing challenges such as securing food or difficulty navigating campus resources, and who believe this may affect their performance in the course, are encouraged to contact the Dean of Students Office (deanofstudents@slu.edu or 314-977-9378) for support. Furthermore, please notify the instructor if you are comfortable in doing so, as this will enable them to assist you with finding the resources you may need.