CSE 272: Reading 01: Software Life-cycle Models



Week 03 →

The reading for Week 01 will consist of general course documents, as well as the first content for the semester. As with all the Prepare activities this semester, it will probably be a good idea to do the reading and the assessment at the same time. This is not "cheating;" it is "working smart!"

You may take the quiz as many times as you like. Only your highest grade on the quiz will be recorded.

Probably the easiest way to do this is to take the quiz before doing the reading. Next, read the chapter all the way through, looking for the items mentioned in the quiz. Finally, take the quiz a second time, looking up the items that are specifically mentioned in the quiz. Write down your answers before submitting. If you do not get a 100% on this second attempt, you will need to retake the quiz. If you write down your answers, then you will have to do less work on the retake.

We will be reading from the Mythical Man-Month and Peopleware several times this semester. It is essential that you know how to access it. Please follow these steps:

  1. Navigate to https://www.byui.edu/
  2. Click [Sign In] and provide your credentials
  3. Search for "Library" and select the "McKay Library link.
  4. Search for "Mythical Man-Month" or "Peopleware
  5. Look for the eBook version and select "View Online"
  6. I suggest you expand the Table of Contents by clicking on the "Burger" menu at the upper-right corner.

Overview

What exactly is a software methodology? To put it simply, methodologies are ways to develop software. This class will present several of the most common software methodologies. More importantly, it will show you the common components to all methodologies: roles, meetings, documents, and milestones. This is important because the methodology you will be using when you graduate will probably not be one presented in this class. Most organizations adapt a standard methodology to their particular needs. This class will help you see what to look for when you are introduced to a new or adapted methodology.

One of the first methodologies is called Code and Fix. Here, one simply writes code and fixes bugs. You probably did this when you started your first programming project. Many other fields do the same, such as an artist's painting a picture or an author writing a paper. The common thread between these scenarios is that there really is not structure or methodology to the process; one relies on inspiration and talent. This works great for small projects, but not so well for large or complex ones. As we proceed into the next couple of weeks, we will learn methodologies designed to mitigation the risks associated with developing software so a team can be confident they can deliver a high quality product to the customer in a timely and cost effective manner.

Syllabus

This is your contract: what you will be expected to do and what you can expect to gain in return. Please carefully read the syllabus, so you will know how to best allocate your time and focus your efforts.

Somewhere Today, a Project is Failing

Isn't this a cheery way to start learning about software life-cycle models? Please read three pages from Peopleware.

T. DeMarco & T. Lister, 1: Somewhere Today, a Project is Failing.
Peopleware : Productive Projects and Teams, Third Edition

The Tar Pit

This essay is a nice introduction to software engineering. It addresses the question: "Why do we even need software engineering?" In other words, the main thing to be gleaned from this essay is perspective. Please read 10 pages from Mythical Man-Month.

F. Brooks, Chapter 1: The Tar Pit.
The Mythical Man-Month : Essays on Software Engineering, Anniversary Edition

Mythical Man-Month

This is perhaps the most important essay in the entire book. That is likely why the book is named after this essay. Please pay special attention to the figures. Take time to understand them and internalize their ramifications. Please read 26 pages from Mythical Man-Month.

F. Brooks, Chapter 2: The Mythical Man-Month.
The Mythical Man-Month : Essays on Software Engineering, Anniversary Edition




Week 03 →