Main Menu

CIS 422 is a project-oriented course on software engineering. You will work as teams to construct software systems, including not only programs but also specifications, design documents, end-user documentation, maintenance guides, etc. You will also be expected to think about principles and issues in software engineering, to read and respond to papers, and to participate in class discussions.

Software Engineering is an applied discipline for which years of experience are required to develop real expertise. The objective of this introductory course 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. Yesterday we had structured development, today we have object-oriented development and agile methods, 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 foreseeable future.

Class Details

Lecture

Monday and Wednesday from noon to 1:20pm in Fenton 105

Instructor

Michal Young, 243 Deschutes Hall

Office hours

TBD; also by appointment

Mandatory Attendance

Attendance is required for CIS 422 students. Missing the first week of class will result in an automatic drop.

Textbook

No textbook. Rather, we will read topical and seminal articles from the the web and from Software Engineering literature.

Discussion site

CIS 422 Piazza site

We make extensive use of Piazza for discussions, announcements, and distribution of handouts (including lecture slides). You can post questions and comments to our Piazza site anonymously, but I strongly encourage you to start or join open discussions. If something is confusing you or bugging you, there is a good chance it is bugging or confusing others as well.

Piazza and Privacy

Piazza is (or at least claims to be) FERPA-compliant. Be aware that if you opt in to the Piazza ‘careers’ program, Piazza may mine your activity and share summary information with recruiters. Your email address is considered 'directory information' and is public information unless you have chosen to keep it private. Your enrollment in any particular course, such as CIS 399se, on the other hand, is not public information. Although I am not a lawyer, my interpretation UO privacy policy is that I may not inform Piazza of your enrollment in CIS 422 by using your UO email address to have a Piazza invitation sent to you. Instead, I will ask you to sign up for CIS 422 in Piazza using any of your UO email address, your UO CIS email address, or a private email address that you create just for that purpose. If you use a private email address, I will need you to let me know about it.

With these provisions, I believe we can make full use of Piazza without compromising your privacy or violating FERPA. However, if for some reason you do not feel comfortable with this arrangement, contact me about making alternative arrangements for participation in online discussions.

Although we will be using Canvas, please note that comments in Canvas are a very poor substitute for discussion on Piazza. It is easy for me to keep track of unanswered questions and comments on Piazza, to make sure I get to them as quickly as I can. The notification system in Canvas is less functional, and I tend to “lose” Canvas comments. I suggest using Canvas comments only to leave an explanation with a project turn-in (e.g., “I know this project required a Duck, but all I could find was this Goose”).

The Project

You will learn the principles of Software Engineering, teamwork, and management though hands-on software development. You will work in teams on one or two sofware projects You can see examples of of project work products from past 422 and 423 classes: Example1, Example2 and Example3. While these are overall good examples, they each have strengths and weaknesses. You should not emulate what they have done without giving some thought to how it might be improved.