Course Information
- Instructor: Dr. Aaron Garrett (garrettal@wofford.edu)
- Class Meeting (Olin 212): MWF 1:00p-1:50p
- Office Hours (Olin 111A): MW 2:00p-4:30p; TR 1:00p-2:30p; or by appointment
- Textbooks:
- Essential Scrum by Kenneth Rubin
- Computer Science Distilled by Ferreira Filho
- You may also find Java for Python Programmers useful for learning the basics of the Java language.
- Final Exam: See the Registrar’s page
Catalog Description
A study of software engineering through a project-oriented approach. The emphasis is on the specification, organization, implementation, testing, and documentation of software. Students work in groups on various software projects.
Prerequisite: COSC 350 with a minimum grade of C.
Goals
- Improve interpersonal communications skills and teamwork.
- Gain understanding of the software development process.
- Acquire experience turning user requirements into testable, verifiable software features.
- Enhance ability to make estimates of software complexity.
- Achieve familiarity with common software development tools.
Grades
Your grade in the course will be based on a combination of quizzes, assignments, a large project with multiple sprints, and exams.
- Quizzes
- Quizzes are small assessments of concepts.
- Assignments
- Assignments are short exercises that reinforce the core concepts.
- Project
- The project will be a large software design and implementation requiring multiple weeks of effort by a team applying Scrum agile principles.
- Exams
- Exams are timed assessments of conceptual understanding.
Artifact | Points |
---|---|
Quizzes (6) | 6 |
Assignments (4) | 24 |
Project | 50 |
Sprint Reviews (4) | 40 |
Final Product | 10 |
Practical Exam | 11 |
Agile Process Exam | 9 |
Total | 100 |
The usual grading scale will be applied to the accumulated points: 93–100: A, 90–92: A-, 87–89: B+, 83–86: B, 80–82: B-, 77–79: C+, 73–76: C, 70–72: C-, 60–69: D, 0–59: F.
Policies
Attendance
You are expected to attend class meetings and come to class prepared. That includes having completed assigned readings, problem sets, and tutorials.
You are expected to dedicate your attention to what is going on in class and to participate fully in classroom activities, including discussions. No laptops or tablets are to be used in class unless being used for a classroom exercise. (Notes may be taken using a device if needed as an approved accommodation.)
Refer to the General Policy Regarding Attendance in the Wofford College Student Handbook. The policy makes you responsible for catching up on missed classes. If you must be absent for class, please email me in advance to let me know.
Make-up exams are not available. If you have a legitimate, excused absence during the midterm exam, then you must make it up during the final exam period.
Assignment Deadlines
Late assignments will not be accepted without a legitimate excuse. All assignments are expected to be submitted by the posted deadline.
Academic Integrity
The Honor Code requires faculty, staff, and students to maintain a high standard of individual honor and integrity. While I may specify some assignments as collaborative, work represented as your own must be your own. If you have any doubt about what is appropriate for a given assignment, you should contact me for clarification.
Accommodations
If you have a disability that requires assistance or accommodation, or if you have questions related to any accommodations for testing, note takers, readers, etc., please contact Dean Beth Wallace by telephone at (864) 597-4371 or in person by visiting the Hugh R. Black Infirmary. You must arrange accommodations during the first week of classes.
Tentative Schedule
MWF | Topic | Textbook | Deadline | |
---|---|---|---|---|
Aug | 28 | Intro to Java | ||
30 | Java classes | 1 | ||
Sep | 4 | Git, Gradle | 2 | A1, Q1 (2) |
6 | Unit testing | 3 | Q2 (3) | |
9 | Unit testing | 4 | Q3 (4) | |
11 | Scrum overview | 7 | A2 | |
13 | Acceptance testing, cucumber | 8 | Q4 (7,8) | |
16 | GUI | 10 | ||
18 | GUI | 11 | ||
20 | Java interfaces and generics | 14,19 | A3, Q5 (10,14,19) | |
23 | Java data structures | 20 | ||
25 | APIs | 21 | ||
27 | Software patterns | 22 | Q6 (20,21,22) | |
30 | 5,6 | A4 | ||
Oct | 2 | |||
4 | ||||
7 | ||||
9 | Sprinting Begins | |||
11 | ||||
14 | ||||
16 | ||||
21 | ||||
23 | Sprint Review 1 | |||
25 | ||||
28 | ||||
30 | ||||
Nov | 1 | |||
4 | ||||
6 | Sprint Review 2 | |||
8 | ||||
11 | ||||
13 | ||||
15 | ||||
18 | ||||
20 | Sprint Review 3 | |||
22 | ||||
Dec | 2 | |||
4 | ||||
6 | Final Exam | |||
Final Sprint Review |
Note: This syllabus is subject to change with notice.