CS1631 Software Design Methodology

Instructor: Prof. S. K. Chang
Office: 6101 Sennott Building
Office Hours: 5:15pm to 6pm MonWed
Telephone: 624-8423
E-mail: chang@cs.pitt.edu


Grader: AnGen Zheng
Office: 6805 Sennott Square
Office Hours: 10:10am - 12am MonWed
Telephone: 412-624-8402
E-mail: anz28@pitt.edu

Time and Classroom: MonWed 6pm to 7:15pm SQ6110

Course Description: This course is one of the courses in the software engineering track. This course is intended to apply the object-oriented approach and especially component-based software engineering (CBSE) to the design of practical software systems. Students will learn the fundamentals of component-based software engineering and participate in a group project on software design. The midterm and final cover the principles of software design methodology with emphasis on component-based software engineering rather than the traditional structural approach.

Recommended References: Component Based Software Engineering: Putting the Pieces Together by George T. Heineman and William T. Councill, Addison-Wesley Pub Co; 1st edition, June 8, 2001, ISBN: 0201704854. (Hardcover 818 pages, List Price: $54.99, 36 used & new from $15.19)

Visual Modeling with Rational Rose 2002 and UML (3rd Edition) by Terry Quatrani, Addison-Wesley Pub Co, 3rd edition, October 9, 2002, ISBN: 0201729326. (Paperback 288 pages, List Price: $39.99 15 used & new from $20.00)

Classnotes: Classnotes will be available at http://www.cs.pitt.edu/~chang/163/1631topic.html.

Tools: You will need to download the following tools. (1) ArgoUML is Open Source Software, whose official website is: http://argouml.tigris.org/. (2) Virtual Classroom can be found at: http://www.cs.pitt.edu/~chang/cvc/Download/zipfile/vcstu40.zip. When you unzip this zip file, it contains the following two files: StudentTool.exe and config_student.ini. You can run StudentTool.exe, and enter the login information of first name, last name and password, which must match exactly the first name, last name and password (c????) in your grade vector. The first four pages of "How VC Tool works" explains how the VC Student Tool works.

Grading: Grades are based upon exercises (20%), project (40%), midterm (20%) and final exam (20%). Please read the grading policy.

Pre-requisite: CS1530 Software Engineering or consent of the instructor.

Projects: Projects will apply principles of component-based software engineering to design the components for (1) mobile phone voting system, or (2) remote pet care system. Following the principles of Extreme Software Engineering students will work in pairs on projects.

On-line interactions: In addition to classroom lectures, this course will emphasize on-line interactions. In fact, the instructor hopes to offer this course (and other courses) by distance learning in the future. Therefore, on-line interactions will be an important, necessary component of this course. The course materials, announcements and exercises will all be available from the Internet. Impromptu meetings and schedule changes will be announced by e-mail.

Note: If you have a disability for which you are or may be requesting an accommodation, you are encouraged to contact both your instructor and Disability Resources and Services, 216 William Pitt Union, (412) 648-7890/(412) 383-7355 (TTY), as early as possible in the term. DRS will verify your disability and determine reasonable accommodations for this course.