George Mason University
 
 

DEPARTMENT OF COMPUTER SCIENCE
 
 

Summer A-Term 2004

CS 421 Introduction to Software Engineering

COURSE SYLLABUS

CS 421 is a Writing Intensive (WI) Course and helps meet part of GMU WI Requirements in the BS CS Program. Therefore, each student individually in CS421 is required to write a minimum  of 1750 individual words, through one or more technical writing assignments, which will be evaluated and returned to the student with feedback. Students will then have the opportunity to revise and resubmit at least one of these assignments based on the feedback. The selected writing example will be related to the course textbook homework exercises and will be evaluated and graded by the professor. The student may wish to use the writing guides, as a supplements, on the GMU website. CS421, therefore, meets part of the WI Requirement for all BS students at GMU ( http://wac.gmu.edu ).

 

COURSE DESCRIPTION 

 

Code of Ethics. Please Read. IEEE and ACM codes of ethics are at these URLs:

http://www.ieee.org/about/whatis/code.html
http://www.acm.org/serving/se/code.htm

The link to the GMU Honor Code has become:
http://jiju.gmu.edu/catalog/apolicies/honor.html

 

PROFESSOR CONTACT INFORMATION

 


 

Summer A-Term 2004: May 17-June 17 Only

Professor David Rine; Department of Computer Science

http://www.cs.gmu.edu/

to access the lecture notes and the syllabus or go to

ftp://mason1.gmu.edu/drine/cs421 to get PowerPoint Lecture Slides as well as the syllabus.


  Office Contact: Phone 703-993-1546;Email 
drine@cs.gmu.edu
 

 

OFFICE HOURS

 

Office Hours for Professor Rine, Summer A-Term 2004, M through R in IN 310 (Innovational Hall) 11:30 - 12:30pm,

or in IN 134 8:45 - 9:15am ,

or else By Appointment.
 

 

STII-136-137 LAB DEDICATED TIMES


 

To see the times that the STII-136-137 Rational Rose and Rational Suite Enterprise Lab is dedicated to CS421 class sections view the schedule on http://www.ite.gmu.edu/labs/. For other individual times you need to fill out a request for your personal Omni Lock Code. Forms are available outside the STII-160 ITE Office.
 
 

USER NAMES AND PASSWORDS FOR USING PCS IN STII-136-137 AND STII-17.

When you use PCs in STII-136-137 or STII-17 you will be asked for a User Name; for this use the lab number of the PC, e.g. '30' when using PC 30. No Password is required. When using the VORD requirements development tool program (goes with Chapter 6 in the Text) you will be asked for a Password; use the password 'autocad'. Both Rational Rose and VORD are executed from the START--> Programs short cuts on the PCs.

 

IBM/RATIONAL ROSE SOFTWARE.

 

In addition to the IBM/Rational Rose Enterprise Edition software in STII-17, 136-137 and subset of version 4.0 from the CD in the back of the UML Toolkit paperback from the textbooks section of the GMU Bookstore in the Johnson Center, you can down load to your own PC term-limited copies of full commercial versions of Rational Rose Enterprise 2004 Edition and other interesting tools by going to http://www.rational.com/ and registering as a student user of Rational Rose. After you have registered as a GMU CS421 software engineering student you can download your own full commercial copy of Rational Rose and continue to get your license key to use Rational Rose, after installing your copy you downloaded.


  After the term starts up, you will be asked to download a full commercial version of Rational Rose 2004 or Rational Rose Enterprise Edition for WINDOWS from
http://www.rational.com/ and then use a Nodelocked student key acquired from the website http:www.rational.com to input into the Key Administrator tool to activate Rational Rose 2004 or particular tools in Rational Enterprise Edition by use of the Key and Account numbers distributed in your class and through the URL

https://licensing.rational.com/accountlink/transactionType.

You will use this version of Rational Rose or Rational Enterprise Edition (UML programming environment) to do your class project. When following the above Rational URL to get your 'nodelocked ' key, you will follow five steps. In the first step you will be asked for my GMU Account Number. Either my tutors or I will give you this account number in class.

 

OTHER LAB HINTS

 

If you do end up using Java programming in a CS class this semester, be sure that you get away from using trivial editors such as NotePad or Pico. INSTEAD, us the more powerful Java structure editor 'jedit.exe' on the PCs in the STII-136-137 and STII-17 labs. DESCRIPTION

 

CATALOG DESCRIPTION

 

CS 421 is a 3-credit course with firm prerequisites ( Grade of C or better) CS 310 (data structures and algorithms), ENGL 302 (technical writing for scientists and/or engineers) and junior/senior standing. It gives an introduction to principles and techniques used in software engineering. Integration of concepts of management, methodologies/processes and metrics. Presentation and discussion of selected software engineering methods, documentation and tools. Coverage of object-oriented requirements analysis and modeling. Working in teams where students organize, manage and develop a software engineering project.
 

 

GRADING POLICY

 

A midterm examination and a final examination each count 1/3 of the class grade on a 100 point scale; and grading is proficiency-based, no curve. The combined project, homework and lab work comprise the remaining 1/3 of the class grade. Students must hand in on time all home work and lab work that is requested to be turned in, but students may work on homework and lab work in their project team groups. It is understood that the project is a major time commitment, and students must work in their groups, taking advantage of communications technology when appropriate.

 

GRADE SCORE
 

 

Score = (1/3)*MidTerm + (1/3)*Final + (1/3)*((1/3)*Homework

+ (2/3)*Team_Project)

 


  The summer-04 Finals schedule is at this link
http://summer.gmu.edu/registration.html

 

MAJOR COURSE CONCEPTS

 

Software engineering as management, methods and metrics

Software engineering and software engineering life cycle/process models

Software management: using a process model and improvements using

Management Metrics – Cost and Effort Metrics (COCOMO)

UML and software supporting software engineering

UML Requirements Modeling

UML Components and Deployment Architectural Levels - The Component Object Model

Software requirements and requirements analysis

Software quality: relation to functional and non-functional attributes

Verification and validation: relation to software quality - Software metrics

Object-oriented software analysis/design and construction

Software design and comparison of design methods

Team Projects illustrating the above materials

 

 

REQUIRED TEXTBOOKS

 

1. “Software Engineering”, 6th Edition, 2001, Ian Sommerville. Addison-Wesley. (NOTE: This is also the preferred textbook for the IEEE Software Engineering Certificate Program.) 
 

2. ‘The Unified Modeling Language Users Guide, 1st Edition, 1999, Grady Booch, James Rumbaugh and Ivar Jacobson, Addison-Wesley.


OPTIONAL  TEXTBOOKS

 

3. “UML Toolkit”, 1998, Eriksson, John Wiley, CD-ROM is an optional guide if you believe that you need it..

4.Rational Rose UML Software or Equivalent, Download Rational Rose Enterprise Edition 2004 for MS Windows fromhttp://www.rational.com

 

REQUIRED LABORATORY HARDWARE AND SOFTWARE

 

RATIONAL ROSE (UML) CAMPUS LAB


 

Rational Rose (Enterprise Edition)  2004 UML STII-Lab Rooms 136 - 137 Accounts and Materials.

Personal Computer, Windows 2000, XP or Windows NT, Connectivity to Internet/Web, Web Browser.

Account on Mason1. Omni Lock Code for PC CAD Labs in STII-17, 136-137. See http://www.ite.gmu.edu/labs

Your own copy of Rational Rose for Windows. You can start with the student 4.0 version on the CD in the back of the

UML Toolkit paperback book, as an option if you believe you need it, available in the textbooks section of the GMU Bookstore.

However, this beginner's version will not be sufficient for the course project.

 

PROJECT

 


  The Small Groups Lab Project will Focus on Requirements and Design Engineering in UML

 

TEXTBOOKS REQUIRED ASSIGNMENTS

 

'Software Engineering' by Sommerville (6th edition) Chapters/Exercises [This is the primary text, and there is one lab text as well]

Chapter 1 Introduction to Software Engineering. Exercise #1, 2, 3, 6, 8. DUE May 18th .


Chapter 2 Computer-based Systems Engineering. Exercises #1, 5, 7, 8.
DUE May 20th .


Chapter 3 Software Processes. Exercises #1, 3, 4, 8.
DUE May 25th .


Chapter 4 Project Management. Exercises #2, 4, 5, 6, 7, 10.
DUE May 27th.


Chapter 5 Software Requirements. Exercises #2, 3, 5, 7, 10.
DUE June 1.

Chapter 23 Software Cost Estimation. Exercises #1, 2, 3, 4, 9. DUE June 1 .


 
MIDTERM EXAM June 3rd  Sommerville chapters 1-5-23 and the UML Lab Tutorial Material.


 
BEGIN SMALL GROUP PROJECTS WORK.


Chapter 6 Requirements Engineering Processes. Exercises #1, 2, 3, 4, 5, 10.
DUE  June 8th.


Chapter 12 Object-Oriented Design. Exercises #1, 2, 3, 4, 5, 6, 7, 8, 9. OO
Review Material Only


Chapter 17 Critical Systems Specification. Exercises #1, 2, 5, 6, 7.
DUE June 10th .

Chapter 18 Critical Systems Development. Exercises #1, 2, 6, 8, 9, 10.DUE June 14th .


  Chapter 19 Verification and Validation. Exercises #1, 3, 5, 8.
DUE June 16th.

Chapter 20 Software Testing. Exercises #1, 2, 3(a), 4, 8, 9.DUE June 16th.


 
FINAL  EXAM June 17th Sommerville chapters 1-23 and the UML Lab Tutorial Material. JUNE 17th.

 


 
SOURCES FOR CS421 LECTURE POWERPOINT SLIDES

 

You need to download the PowerPoint CS421 Lecture slides before each day’s lecture by either going to

ftp mason1.gmu.edu/drine/cs421

http://www.software-engin.com/

  The following URL is also used to download the VORDTool: http://www.software-engin.com/

If you are in the distance education section, use the NEW home page http://netlab.gmu.edu/disted/logon.php/

 

Booch-Rumbaugh-Jacobson Lab Book Chapters

 

Most of the chapters will be used/covered during the course of the term. This book will serve as a primary reference for the UML-based project work. The book will take the place of “language” users guides and reference guides normally used in other kinds of computer science classes. The default implementation of UML in the class will be Rational Rose Enterprise Edition for Windows.

 

UML (Unified Modeling Language) is the defacto industry standard for developing Object-oriented software. UML has been certified by the international certifying organization Object Management Group (OMG) whose web page is http://www.omg.org/. UML is evolving into the standard world-wide notation for presenting object-oriented modeling and design.

 


  UML On-Line Tutorial from Borland - Together Software, Inc. Follows:

 

http://bdn.borland.com/article/0,1410,31863,00.html

 

Please use this interactive UML tutorial as a review. It contains both examples and self-testing

 

to allow your to improve your UML skills.

 

For even more UML Tutorials see the more general tutorial materials webpage at

 

http://bdn.borland.com/together/0,1419,12,00.html