ITIS 6130/8130
Software Requirements Engineering for Information Systems (3G)
Fall 2004

Department of Software and Information Systems
University of North Carolina at Charlotte

Last Update: July 2004


Pre-requisite (Catalog Description):
    Full graduate standing, or consent of the Department. Introduction to requirement engineering methodologies.

Topics include (Catalog Description):
    Requirements elicitation, specification, and validation; structural, informational, behavioral, security, privacy, and computer user interface requirements; scenario analysis; application of object-oriented methodologies in requirements gathering; spiral development models; risk management models;  software engineering maturity model. 

Instructor:
    Prof. Seok-Won Lee
   
Tel: 704-687-3862 
    Email: seoklee@uncc.edu  (insert 'ITIS 6130/8130' in the subject)
    Office: CARC  #301 (Cameron Applied Research Center) 
    Office Hours: Wed. 2 - 5 PM.

Meeting Time & Location:
    Wednesday, 6:00 - 8:40PM, Smith 217

Specific Course Objectives, Topics1 and Schedule2:

* State-of-the-art Requirements Engineering (RE) research: theory, practice, and applications : Definition, role and scope of RE in software and systems engineering, Current techniques, notations, processes and tools used in RE; Gain practical experiences in selected RE techniques such as VORD (i.e. through motivated class projects) and expose to innovative applications in real-world problems
* Understand the essential interdisciplinary nature of RE : Breadth of skills needed for RE, and the many other disciplines on which it draws (i.e. knowledge engineering, information security/assurance, GIS); Contextual factors & practicalities that affect the success of various approaches to RE (i.e. problem solving, context-awareness issues) 
* Build a basic research background in RE : Methodological issues for RE research, Current research issues and the direction of the field, survey of the literature

 

Date

Course Topics (Tentative1)

Due

Misc.

1

08-25

Course Orientation & Introduction to Requirements Engineering

*B. A. Nuseibeh and S. M. Easterbrook, "Requirements Engineering: A Roadmap", In Proceedings of the ICSE '00. IEEE.
*A. van Lamsweerde, "Requirements engineering in the year 00: a research perspective", In Proceedings of the ICSE '00. IEEE.

 

Please read the provided materials before the class!

2

09-01

Requirements Engineering Process

*Jackson, M. (1997). The Meaning of Requirements. Annals of Software Engineering, Vol 3, Pp5-21, Baltzer Science Publishers.

Zave, P. and Jackson, M. (1997). Four Dark Corners of Requirements Engineering. ACM Transactions on Software Engineering and Methodology 6(1) 1-30. ACM Press.

  

  

3

09-08

Requirements Elicitation and Analysis

*Allenby, K. and Kelly, T. (2001). Deriving Safety Requirements Using Scenarios. Proceedings, Fifth IEEE International Symposium on Requirements Engineering (RE'01), Toronto, Canada, August 27-31, 2001. Pp228-235. IEEE Computer Society Press.

Lloyd, W.J.; Rosson, M.B.; Arthur, J.D. (2002) Effectiveness of elicitation techniques in distributed requirements engineering. Proceedings of the IEEE Joint International Requirements Engineering Conference (RE'02), Essen, Germany, 9-13 September, 2002, Pages: 311- 318.

  

 

4

09-15

Requirements Validation

 

 

 

5

09-22

Requirements Management

 

 

 

6

09-29

Methods for Requirements Engineering

 

 

 

7

10-06

Viewpoints-oriented Requirements Methods

 

    

  

8

10-13

Mid-term

 

  

9

10-20

Non-functional Requirements

 

  

  

10

10-27

Interactive System Specification

 

  

  

11

11-03

Case Study

   

  

12

11-10

 

 

     

13

11-17

 

    

 

 

11-24

Thanksgiving Break

   

 

14

12-01

 

   

  

15

12-08

 

 

  

16

12-15

Final Exam

  

  

1Additional topics will be introduced as time allows. 2Schedules may be changed. 

Important Dates:
    Mid-term: October 13th, 2004. (during class hours)
    Final Exam: December 15th, 2004. 7:00 - 10:00PM.
(comprehensive, more emphasis on the second part)

Text Book (Required): 

1. Gerald Kotonya, Ian Sommerville,
Requirements Engineering: Processes and Techniques,
ISBN: 0-471-97208-8, August 1998, John Wiley & Sons.

2. A collection of research articles will be handed out each week for reading and discussion.
 

Recommended Readings (Not Required):
- Michael Jackson, Software Requirements and Specification: a lexicon of practice, principles and prejudices, Addison-Wesley 1995. ISBN 0-201-87712-0
-
Martin Fowler UML Distilled: A brief guide to the standard object modeling language, Third Edition, Addison-Wesley. 2003. ISBN: 0-321-19368-7
- Michael Jackson, Problem Frames: Analyzing and Structuring Software Development Problems, Addison-Wesley, 2001.
- Karl E. Wiegers, Software Requirements, Second Edition, Microsoft, 2003.
- Proceedings of the International Conference on Software Engineering (ICSE), IEEE/ACM Press
- Proceedings of the International Requirements Engineering Conference/Symposium (RE), IEEE Computer Society Press

Online Resources:
- Requirements Engineering Journal, Springer-Verlag
- Requirements Engineering books reviews by I. Alexander
- Requirements Engineering Specialist Group in UK
- IFIP Working Group 2.9 on Requirements Engineering
- INCOSE Requirements Engineering Group
- Requirements Engineering resources from the IEEE Task Force on RE
- RE On-line mailing list
 

Grading Policies: TBA
    Class Participation:
    Midterm:
    Project & Presentation:
    Final Exam:


Special Notes:

  1. Academic dishonesty, in any form, will not be tolerated. Cheating, copying parts or whole papers/programs, or complicity in any violations of the student academic integrity code will result in prompt action on my part in accordance with the procedures outlined in the UNC Charlotte Code of Student Academic Integrity, effective August 16, 1984. See a more detailed statement at the end of this syllabus.
  2. You are responsible for class absences. 

Academic Integrity:

Students have the responsibility to know and observe the requirements of The UNC Charlotte Code of Student Academic Integrity (Catalog p. 375). This code forbids cheating, fabrication, or falsification of information, multiple submission of academic work, plagiarism, abuse of academic materials, and complicity in academic dishonesty. There are no special requirements regarding academic integrity in this course. The code will be strictly enforced and is binding on the students. Grade and academic evaluations in this course include a judgment that the student's work is free from academic dishonesty of any type; and grades in this course therefore should be and will be adversely affected by academic dishonesty. Students who violate the code can be expelled from UNC Charlotte. The normal penalty for a first offense is zero credit on the work involving dishonesty and further substantial reduction of the course grade. In almost all cases the course grade is reduced to an F. Copies of the Code can be obtained from the Dean of Students Office or me. Standards of academic integrity will be enforced in this course. Students are expected to report cases of academic dishonesty to me immediately.


Acknowledgements: Many thanks go to my colleagues at George Mason University, Univ. of Texas, Univ. of Toronto, and Software (Requirements) Engineering research community for providing opportunities to use research articles, tools, and online resources for this course.