Module Overview

Contents:
1 Overview
2 Prototyping as a Software Engineering Tool

1 Overview

This module spans three weeks, and includes lecture content, collaborative activities, and deliverables for each week.

There are two areas of coverage for this module:

Students will learn the value of prototyping in software engineering, and will begin to engineer the design of their prototype using the standard waterfall model used in software project management. This begins with the identification of milestones. Needed resources will be identified for each milestone along with an estimated schedule. Students will then identifiy the tasks to be completed to achieve each milestone, again with defined resources and schedules.

Students will be introduced to the grammar, format, and technical writing expectations for the labs. Lab 1, an individually written descriptive paper, will be due at the end of this module.

Agile software development will be introduced. Students are provided with a ppt file on agile software development used for a presentation in a previous semester. Online resources on the topic are also available. This form of software engineering will be referenced throughout the semester.

2 Prototyping as a Software Engineering Tool

Through CS 410 & 411W students are required to appreciate and understand a broad, not well defined, societal problem. During CS 410 you became domain experts on a particular problem. You were required to design a solution based upon your understanding of the problem characteristics, and the needs of your customer.

The solutions include hardware and software to support the development of the product. A large component of each product requires the engineering of software. You are now participating in software project management.

Prototyping is recognized as an important first step. Under the resources tab you will find a .ppt file (Software Prototyping) that summarizes why this is an important step and what is involved in the process.

Your teams will be involved in evolutionary and throw-away prototyping, shown in the diagram below. You will actually be delivering a working system to your mentors at the end of CS 411W. Therefore, this system must be sustainable and functional. You will also need to add functionality to your prototype which will allow for testing of the functionality and show proof of concept. You must be able to answer the question: Does this solution really solve the problem in an efficient way? This will require stressing of the system, and in-depth analysis of data. We labeled this aspect the “test harness” last semester. The test harness will not be delivered to the customer.

Make sure to address the design and development of the throw-away parts of your prototype.

As you review the slide-set, make note of how to apply the content to the development of your design. You will be asked to summarize your notes at the end of this week through the CIQ.