Introduction to Software Engineering

CS 3302 Winter 1995


The following item are available through this WWW page:

General Course Information

Where and When

Class meets on Monday, Wednesday and Friday from 10:00-11:00 am in College of Computing, Room 102.

Course Description (from the General Catalog):

Prerequisites: CS 2201 or one of the following: CS 2360, CS 2390, or CS 2430; and junior standing.

Introduction to current techniques used in large-scale software development. Topics include requirements analysis, functional specification, systems design, implementation, testing and maintenance.

Revised Course Description (from the instructor):

The difficult part in designing any software system is usually not the coding of the software. And the executable object is not the only artifact of importance in the entire design process. One of the principal concerns of software engineering is the disciplined development of an application that meets certain market or customer demands and can be developed by a group of people in a controlled and somewhat predictable manner. Consequently, the emphasis in this course is not so much on the construction of code as it is on the construction and documentation of a design by a team.

Software engineering is about building systems that people will use. Therefore, there is also a strong emphasis in this class on a real-world educational experience. The project chosen for this course involves direct contact with a company involved in the design and production of commercial software, Rae Technology, Inc of Cupertino, CA, an offshoot company of Apple Computer. The class project is of immediate interest to this company and they are looking to market the end result of work done by this class. It doesn't get any more real-world than that!


Instructor:

Dr. Gregory Abowd


Teaching Assistants:

Sri Doddapaneni

Jean-Marc DeBaud


Required Textbook

Ian Sommerville. Software Engineering, 4th edition. Addison-Wesley, 1992. ISBN 0-201-56529-3.

Other required materials

Each student will need to keep a personal diary/sketchbook throughout the course. There are a variety of satisfactory lab notebooks or sketchpads available at the bookstore. You should purchase one that is at least 50 pages long, is bound and will allow you to conveniently make notes and draw sketches of design ideas and models. Occasionally throughout the quarter, you will be asked to turn in your notebooks for grading.

Electronic information

We will try to make as much use as possible of electronic information exchange. The three major electronic means of exchange will be electronic mail, a class newsgroup and a class World Wide Web (WWW) home page. If you aren't already familiar with these Internet-based tools, now is the time to find out.

Electronic mail

Probably the most dependable way to contact the instructor is by e-mail. Click here to send a message to Dr. Abowd straight from this page. Whenever you send e-mail, please make sure you include your full name on the message, as it is sometimes difficult to decipher student mail addresses.

Newsgroup

The newsgroup for this class is git.cc.class.3302. Occasionally, this newsgroup will be used by the instructor or TAs to make general announcements to the class (typically homework and reading assignments). You should make it a habit to consult the newsgroup on a regular basis. Students can post general class-related announcements to the newsgroup. Since communication will be of primary concern within project groups, we can create newsgroups for individual projects by request. In addition to the standard ways of reading newsgroups (rn, trn, xrn), you can access the newsgroup through this page. Click here to access the newsgroup git.cc.class.3302.

WWW

You are currently reading text from the WWW class home page for CS 3302. There are a variety of ways to access this page using any of a number of WWW browsers (lynx, Mosaic, netscape, etc.). For example, you can traverse links directly from the College of Computing home page (look for the link to "WWW experimental classes"). Or you can access this page directly by opening the URL (that's WWW-speak for location) http://www.cc.gatech.edu/computing/classes/cs3302.

Other Web locations of interest include:


Goals

Readings

Reading assignments from the required text will be posted to the newsgroup at least one lecture prior to the date for that reading. I will assume that you have read the reading prior to the lecture.

Additional handouts

Occasionally there may be additional material handed out to supplement information in the book and lectures. Where possible, an on-line version of the handouts will be made available via this class home page (see the table of contents at the top of this document).

Lectures

Each lecture will include time devoted to administrative and technical questions, usually lasting 5 minutes at the beginning of the class. On Mondays and Wednesdays, there will be lectures based on the reading material for that day. Fridays will be project days, consisting of project presentations and group work sessions.

Grading

Grades will be based on the following weighting scheme:
Category                    Weight
=======================================================
Projects 			      	  		
	notebook           40% 
         Consists of:  
          Concept and MRD   5%
          Product Plan      5%
          Product Reqs.     5%
          Analysis Document 5%
          Design Document   5%
          Final notebook   15%

	presentations       7%   (reqs. 2%, final 5%)        
				      
Exams 				      
    midterm                10%               
    final                  25%
     Consists of:  
      video                 5%
      demonstration         5%
      individual essay     10%
      User manual           5%
    				      
Participation              18% (diary, attendance, individual contribution)

Total                     100%

Homework

Homework assignments will be based on the project, and will go toward your overall project grade (either as sketchpad, notebook or presentation work). Deadlines for particular assignments (in the form of project deliverables or milestones) will be announced at least one week prior to the due date, usually by means of the class newsgroup or the WWW page. Homework will be graded and returned within one week of the due date. Any questions about grading of homework should be directed to a TA within one week of return date.

Exams

There will be two exams this quarter, both of which will be based on reading, lectures and project work. The exams will be open note and open book. The instructor will provide a study guide for both exams one week prior to the exam date. The midterm will be returned within one week. Questions about grading should be directed to the instructor within one week of the return. Adjustments in exam grades will be rare and could equally well result in a lowering or raising of the grade.

Class participation/Attendance

A good portion of your grade will be determined by class participation. If you don't attend class, you cannot participate, and your grade will reflect that. I expect that each student will attend all lectures, but I demand that students attend all project day lectures (usually on Friday) because these will be the sessions with the most class participation. I want to know who you are, so please make an effort to speak in class and talk to me outside of class. If by the end of the quarter I don't know your name, it won't necessarily be my fault.

Class policies

Students are expected to attend all lectures on time. Students are expected to conduct themselves in a professional manner. This expectation includes showing up for exams at the appointed time. Late make-up exams will not be given. Any conflicts with exam times should be brought to the instructor's attention as soon as possible and in all cases PRIOR to the examination period.

Students are expected to follow the university's codes of academic conduct. Cases of suspected academic misconduct will be immediately forwarded to the Dean of Student Affairs, and will be pursued to resolution. This is an unpleasant process for all involved, so please do not put yourself in this situation.

Above all, I would like to adhere to the reasonable person principle.