Software Requirements and Specification

I am teaching  Software Requirements and Specification(CSE 563) in Fall 2021.

This course examines the definitional stage of software development, analysis of specification representations, formal methods, and techniques emphasizing important application issues. The overarching aim of this course is to understand, develop, and evaluate requirements and specifications for software-based systems. The goal is to learn the concepts and principles useful for developing model-based requirements. Semi-formal and formal modeling methods are essential toward building today’s and future complex and scalable software-based systems. Frameworks and tools are becoming crucial artifacts in software requirements documentation and specification. To this end, a course project will be used as an enabler to gain hands-on experience with the requirements engineering concepts, methods, frameworks, and tools.


Arizona State University.
School of Computing and Augmented Intelligence.
version Fall 2021


This course includes 26 lectures as follows:

  1. Course Presentation
  2. Requirements
  3. Functional and Non Functional Requirements
  4. Storyboarding
  5. Software complexity and scale traits
  6. Requirements engineering foundations and specifications
  7. Elicitation of stakeholders’ needs
  8. Requirements and specification documentation, tools, and frameworks
  9. Requirements risk and analysis
  10. Define and document stakeholders’ requirement
  11. Develop structural and behavioral requirement specifications
  12. Apply requirements engineering concepts and modeling methods using tools and frameworks in a course project