Software Engineering

CS 270 01 / Zelle

Fall 2018

Instructor
Dr. John Zelle
Office: SC 353
phone: 352-8360
e-mail: john.zelle@wartburg.edu
Office Hours
MWF 10:45, TH 1:00 and by appointment
Class Meetings
MWF 1:15 in SC 345
Class WWW Page
http://mcsp.wartburg.edu/zelle/cs270
Course Description

This course is an introduction to the tools and techniques used in construction and maintenance of complex software systems. Emphasis will be on Object-oriented analysis, design, implementation using agile development processes.

Course Prerequisite:
CS 220
Credit Hour Policy

This class is 1 course credit. You may expect to spend at least two hours of time outside of class, completing homework and programming assignments, for every hour you spend in class.

Student Learning Outcomes

A student completing this class will:

  1. Understand the software life cycle and its implications for the development of flexible, reliable systems.
  2. Appreciate the enormous complexity of modern software systems and that issues that arise in constructing and maintaining them.
  3. Gain experience building software in a team setting using agile development and modern configuration management tools.
  4. Be able to develop a moderate-size application using techniques of object oriented analysis, design, and programming utilizing reusable frameworks and appropriate design patterns.

Text

No required text. Internet readings and research assignments will be posted on the class web page.

Course Outline
  • "traditional" and agile development processes
  • reliability and testing
  • maintainability
  • coding style and standards
  • configuration management
  • test-driven development
  • introduction to UML diagrams
  • design pattern: strategy
  • refactoring and integration
  • design evaluation: coupling and cohesion
  • design pattern: state
  • designing for testing
  • design pattern: abstract factory
  • responsibility oriented design
  • principles of compositional design
  • systematic testing
  • build management, deployment, continuous integration
  • miscellaneous design patterns
Class Format

The class will be a mix of concrete, practical assignments and class discussion of theoretical foundations. The order of topics will generally follow the textbook. Class work will include homework problems as well as individual and team programming projects. A detailed schedule of assignments and dues dates will be kept on the class web page.

Evaluation:

Exams (9/28, 11/2, 12/12) 50% (15%, 15%, 20%)
Homework and in-class10%
Project work40%

Note: Some homework may be assigned but not collected and/or graded. If you do every assignment conscientiously, you will learn more and not have to worry about whether it will be graded.

Grading Scale:

Grades are assigned based on the (weighted) percentage of total points:

90-99 A
80-89 B
70-79 C
60-69 D
Other: Thanks for playing

Pluses and minuses will be used to "smooth" grade transitions. I may move the exact boundaries, but they will not be raised. Anyone with 90% of total points will receive some sort of an "A".

Attendance

Regular attendance is expected. Although not part of the grade per se, excessive absences will affect a student's performance in the class. The instructor will not provide individual tutoring for material missed due to unexcused absences.

Honesty

You are reminded of your obligation to the Wartburg Honor Code which states:

Students, faculty, and staff of Wartburg College are expected to demonstrate integrity in all endeavors. Students are expected to adhere to four essential principles:

  1. Submit only original work and properly cite ideas of others, including fellow students.

  2. Refrain from giving or receiving unauthorized aid on examinations and assignments.

  3. Report any act that violates these principles.

  4. Ask for clarification if uncertain about the expectations on a particular assignment.

Students are responsible for abiding by these principles and opposing academic dishonesty in all academic endeavors.

Absolutely no cheating will be tolerated. Any situation where I feel there is sufficient evidence of cheating will be vigorously pursued. The minimum penalty is a zero for the assignment. Of course, discussion of ideas is healthy and essential for education. Feel free to discuss approaches to assignments and to help fellow students with problems in their programs. Be sure, however, that the assignments you turn in represent your own effort. There is an importance difference between sharing ideas and whole-sale copying. Allowing or assisting someone else to copy/use your work is as bad as copying yourself.

Late Work

Keeping up with homework and project deadlines is critical to successfully completing the class. Late work will receive only summary grading and can earn a maximum of 75% of the original assignment.

Late Exams

Late exams will be given only under exceptional circumstances. Except for the case of confirmed medical emergency, arrangements must be made prior to the actual exam date.

Students Needing Accommodation

Qualified students with disabilities are protected from unlawful discrimination by Section 504 of the Rehabilitation Act of 1973 (Section 504) and Title II of the Americans with Disabilities Act of 1990 (ADA), as amended. Students requesting academic accommodations due to disabilities must arrange for such accommodations by contacting Nicole Willis, Pathways Academic Success Associate. She can be reached at the Pathways Center, (319) 352-8230, or by e-mail nicole.willis@wartburg.edu. Presenting documentation of a disability early is helpful and often necessary to secure needed materials in a timely way. Accommodations should be requested PRIOR to affected assignment due dates. Accommodations will not be provided retroactively.

Sexual Misconduct and Discrimination

Wartburg College is committed to providing a learning, working, and living environment free from all forms of sexual misconduct including, but not limited to, sex-based harassment, non-consensual sex acts, sexual exploitation, relationship violence, and stalking. Wartburg College considers sex discrimination in all forms to be a serious offense and it will not be tolerated.

The Wartburg College's Title IX, Sexual Misconduct and Discrimination Policy, following national guidance from the Office of Civil Rights, requires that faculty follow Wartburg's policy as a "mandatory reporter" of any personal disclosure of sexual harassment, sexual misconduct, and/or violence related experiences or incidents shared with the faculty member in person, via email, and/or in classroom settings. These disclosures include but are not limited to reports of personal relationship abuse, relational/domestic violence, and stalking. While faculty are often able to help students locate appropriate channels of assistance on campus, disclosure by the student to the faculty member requires that the faculty member inform appropriate Wartburg personnel to help ensure that the student's safety and welfare is being addressed, even if the student requests that the disclosure not be shared.

For confidential counseling support and assistance on campus, please contact:

For private, but not confidential, resources on campus, please contact:

General Caveat

The policies presented here should be taken as general guidelines and are subject to change at the discretion of the instructor with due notice and consideration. "If any point in dispute is not covered by the Rules, the decision shall be made in accordance with equity." (Rule1-4 of USGA Rules of Golf).