CIS 422/522: Software Methodology I
Lecture Time: Tue/Thu 12:00-13:20
Lecture Location: B040, Price Science Commons
CRN: 11626/11640
Instructor: Joe Sventek
Instructor Office Hours: Tue/Thu 10:30-11:45 and by appointment
Office Hours Location: 333 Deschutes Hall
email: jsventek@uoregon.edu
Expectations
This is a project-oriented course on software engineering.
You will work as teams to construct software systems, including not only
programs but also specification, design documents, end-user documentation,
maintenance guides, etc.
You are also expected to read the textbook and understand principles/issues
in software engineering.
Software Engineering is an applied discipline for which years of experience
are required to develop true expertise.
This course is only a start.
The objective is to prepare you to learn more effectively from real-world
experiences based on an understanding of the broad principles that pervade
Software Engineering.
Because these principles and issues are fundamental, they appear again and
again even as popular methods and tools evolve.
In the past we had structured development, today we have object-oriented
development, tomorrow we can expect something else ... but the fundamental
challenges of teamwork, complexity, and managing change have been with us
from the beginning and will be with us for the forseeable future.
Using this website
Schedule: Provides course details including class schedule, class topics, assigned readings in the textbook, and due dates.
All other materials will be made available through Canvas.
Course Materials
Mandatory textbook:
Software Engineering Principles and Practice, 3e, by Hans Van Vliet, ISBN 978-0-470-03146-9.
The Schedule link above indicates readings for each lecture.
You must complete the assigned reading
before class in order to be able to answer iClicker questions and to participate in in-class discussions.
Projects
You will learn the principles of Software Engineering, teamwork, and management though hands-on software development.
You will work in teams on two software projects.
The first will last four weeks and be assigned by the instructor.
The second will last five weeks and will be proposed by the groups.
The second project will be due during the final week of classes.
A detailed description of Project 1 is provided in the Project 1 handout page on Canvas.
Grading
Grades will be determined based on
- your group's performance on group projects
- your performance on the iClicker quizes
- your performance on the final exam
- your teammates' evaluations of your contributions to group projects
Provided that you have fewer than five unexcused absences, which would result in an "F" for the course, individual grades are calculated based on the following criteria:
15% | | Quizzes |
25% | | Final exam |
20% | | Project 1 |
40% | | Project 2 |
?% | | Teammates' evaluations may significantly raise or lower your project grades |
Grades for the course are determined by the following scale:
A | 90.0-100.0% |
B | 80.0-89.99% |
C | 70.0-79.99% |
D | 60.0-69.99% |
F | 0-59.99% |
Any grading discrepancies (I miscount points) must be resolved within a week after a grade has been returned, both for exams and projects.
To succeed in CIS 422, you must keep in mind that Software Engineering requires both an individual understanding of the body of knowledge as well as the ability to work effectively as part of a team.
For this reason, you must demonstrate competency in both areas to pass the course with a grade of C- or better.
The specific requirements include:
- The average of your quiz grades and your final exam must be >= 65/100 (i.e., cannot be an "F").
- Your contribution to the team effort based on the number and quality of artifacts, attendance at team meetings, and peer reviews must (in the instructor's judgement) meet or exceed a C-.
Success on the quizzes and the final requires reading the textbook, attending lecture, and understanding the materials presented.
If you are struggling with this, please make an effort to meet with the instructor before the exams.
Success in teamwork requires regular attendance at team meetings, and dependably doing your fair share of the work.
Academic Misconduct
Students who are found to have committed an academically dishonest act in this course will receive an F for the course.
Academic
honesty includes the following.
You
should do all of the following:
- Clearly list each person and his or her contribution to any project or exam. Include this information in all documents that are submitted, and in the header of all affected source code files. The contributor might be a tutor, roommate, officemate, fellow student, or any other person that contributed in any way to your work.
- Clearly identify and delimit any code that is derived from any source whatsoever, published or unpublished, with the original source and author indicated in the header of every affected source code file, and front and center in all submitted documents.
- Protect your own work and insure that other students cannot obtain and use your solutions without attribution. Do not put your solutions on a web site with no password protection, even if no other pages point to this web page.
Academic
dishonesty includes the following.
You should
not do any of the following:
- Misrepresent someone else's work, including anything you find on the web, as your own work, or in any way contributing to such a misrepresentation.
- Submit someone else's work as your own without indicating the source.
- Knowingly or accidentally make your work available to another student such that they can submit your work as their own.
All evidence of academic dishonesty will be rigorously pursued consistent with the
University of Oregon Faculty Guide for Addressing Academic Misconduct.
Late Policy
Late submissions of projects will
NOT be accepted.