CSC 640 - Software Engineering
Department of Mathematical Sciences, UNCG
Fall 2000
Instructor: Dr. Nancy Green
Email: nlgreen@uncg.edu
Phone:  (336) 334-5836
Office Hours:  M/W 4-5 pm and by appointment
Office: 322 Bryan
Course web page: http://www.uncg.edu/~nlgreen/csc640.html
Course project pages (password protected)
Instructions for Course Project and other Assignments (click here)

Course Description

  • Time: Tuesdays 5:30 - 8:20 p.m.
  • Room: 114 Bryan
  • Prerequisites: Graduate status in Computer Science, extensive programming experience preferably in an object-oriented language
  • Brief Description:This is a graduate-level introduction to software engineering (SE). The overall goal is for the student to learn basic principles of SE that can be applied to his or her career as a software engineer, or that can be the foundation for futher graduate study.
  • Topics:
  • Objectives: By the end of the course, the student
  • In-Class Activities: Lectures, discussion of case studies and readings, student presentations, project meetings with instructor, possibly 1-2 guest lectures on SE topics, and group activities such as design and code reviews and usability studies.
  • Out-of-class Activities The student will participate in a software project group whose activities will be done mostly outside of class. Most but not all course assignments will be project deliverables (e.g., project schedule, requirements analysis, design specification, code, code demonstrations, oral presentations, and written documentation). In addition, students may be required to prepare for in-class activities such as code reviews.
  • Instructions for Course Project and other Assignments (click here)

  •  

     
     



    Course Calendar (Subject to change - check weekly)


    DATE (Tuesday) Lecture Topic  Reading due (in textbook, unless otherwise noted) Miscellaneous Notes, Due Dates
    Aug 22 Overview, Phases of SW Lifecycle, Working in Teams ch. 1-2, ch. 4
    Aug 29 Requirements Phase, OO Analysis of Requirements ch. 9, 11.1-11.4, Scenario & Use Cases Handout Form teams, team meetings begin
    Sep 5 (day after Labor Day) Functional Specification ch. 10,11.5-11.10, UML Object Specification Handout: I, II
    Sep 12 Design Phase: system design ch. 12, Architecture handout Requirements Spec due 
    Sep 19 Design Phase: object design ch. 6 go over supplementary handout on scenarios and give comments on Req Spec
    Sep 26 Project Management: planning and scheduling, metrics, estimating time ch. 8, Handout in class today Functional Spec due 
    Oct 3 Midterm exam exam will cover lectures and readings through 9/26
    Oct 10 (NO CLASS, Fall Break)
    Oct 17 Walkthroughs & inspections; Implementation; begin Testing ch. 5, 13, handouts on inspections and coding standards in-class today,
    example of API
    System Design Doc & Project Plan due 
    Oct 24  Testing (continued) ch. 14  feedback on system design   and project plan
    Oct 31 Integration; Communication: user manual design, planning and giving demonstrations;
    Usability Issues
    Handout: Seven Great Myths of Usability
    Nov 7 SQA, SCM, Maintenance ch. 7, 15 guest lecture on SQA 5:30-7pm, code review assignment due today 
    Nov 14 First-release project demo First-release code and object design doc due
    Nov 21 (Thanksgiving week) SW life-cycle models, case studies ch. 3, Reserve Room readings
    Nov 28  Endterm exam all material  but mostly material covered after midterm
    Dec 5 (LAST CLASS) Final Project Demo User/Installation Manual, Final code, updated Object Design Doc, and Testing Document Due; last day to turn in group member evaluations 


    Administrivia

    Policies:

  • Attendance and class participation will be factored into the student's grade.
  • Collaboration on group projects is extemely important. However, exams are to be the work of the individual student. Students are expected to follow the UNCG Academic Integrity Policy.
  • Due dates: Late assignments will receive less than full credit as described on the assignment. Missed exams may be taken only if the student's absence has been excused by the instructor and if the exam is made up on the make-up exam day announced by the instructor.

  •  

     
     
     

    Grading:

  • Midterm exam: 25%
  • Endterm exam: 25%
  • Assignments (including project): 50%

  •  

     
     




    Course Resources

    Required text: Classical and Object-Oriented Software Engineering with UML and C++, 4th edition, by Stephen R. Schach.

    Books On UNCG Library Reserve for CSC640:

  • The Mythical Man-Month, Frederick P. Brooks, Addison-Wesley, 1995.
  • Microsoft Secrets, Michael A. Cusumano & Richard W. Selby, Free Press, 1995.
  • A Discipline for Software Engineering, Watts S. Humphrey, Addison-Wesley, 1995.
  • The Soul of a New Machine, Tracy Kidder, Boston: Little, Brown & Co., 1981.

  •  

     
     
     

    Other Recommended Books

  • Object-Oriented Software Engineering, Bruegge, Bernd and Dutoit, Allen H., Prentice-Hall, 2000.
  • Introduction to the Personal Software Process, Watts S. Humphrey, Addison-Wesley, 1997.
  • Introduction to the Team Software Process, Watts S. Humphrey, Addison-Wesley, 2000.

  •  

     
     
     

    Journals (in UNCG library)

  • ACM Transactions on Software Engineering and Methodology
  • IEEE Transactions on Software Engineering

  •  

     
     
     

    On-line Materials

  • Ameritech Graphical User Interface Standards and Design Guidelines
  • Guide to Grammar and Writing
  • JMetric (see slideshow)
  • UML Quick Reference
  • Yale University Web Style Guide

  •  

     
     
     

    Related Conferences

  • CSEET2001

  •  

     
     


    Related Web Sites

    ACM Software Engineering Code of Ethics
    ACM SIGCHI
  • TRICHI (Triangle CHI SIG)

  • ACM SIGSOFT
  • Software Engineering Notes
  • RISKS

  • CMU Software Engineering Institute (SEI)
  • Personal Software Process (PSP)
  • Capability Maturity Models (CMM)

  • Dilbert
    IEEE
  • Software
  • Transactions on Software Engineering

  • RTP Chapter of SPIN (Software Process Improvement Network)
    Software Engineering Body of Knowledge


    Send comments and requests about this web site to nlgreen@uncg.edu