Excerpted from PMASE site, http://www.pmase.gatech.edu/images/pmseimage2.jpg.

Objectives

Develop labs for PMASE ASE 6001 - Introduction to Systems Engineering course:

  • Lab 1: Requirements analysis
  • Lab 2: Functional analysis, architecture options and definitions

The purpose of this lab is to study the requirements analysis techniques in the system engineering. Requirements specify the functionality that must be included in the final product. It is critical that the requirements be written such that is no misunderstanding between the developer and the stakeholders. Using the quality attributes for reliability, for high reliability product, the requirements must be structured, complete, and easy to apply. This lab is designed to help students write and prepare good requirements.

Introduction

PMASE represents the professional masters applied systems engineering. Excerpted from PMASE:

The PMASE program is an applied, hands-on approach to learning how to successfully integrate systems engineering tool and techniques into an enterprise looking to gain competitive advantage. Collaboratively, Georgia Tech’s College of Engineering, Distance Learning and Professional Education Organization, and the Georgia Tech Research Institute have designed and offer this program to experienced professionals interested in building and expanding their systems engineering expertise.

This page briefly introduce the program. For details, please take a course at the Georgia Institute of Technology PMASE program homepage.

System engineering

The system engineering (SE) is mainly composed of three iterative steps: (1) requirement analysis, (2) functional analysis/allocation, and (3) synthesis.

Image extracted from Systems Engineering Fundamentals. Defense Acquisition University Press, 2001

Lab 1: Requirement analysis

Thus requirements analysis is critical to the success of a development project. It handles tasks in determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users.

  • Identify user groups (Stakeholders)
  • Elicit stakeholder needs
    1. Mind mapping for the system requirements
    2. Use Case diagram
    3. Requirement diagram
    4. Requirements Verification and Validation
      • ARM: Automated Requirement Management
      • Peer review
      • Simulation
      • Prototyping
      • Demonstration

Lab 2: Functional analysis, architecture options and definitions

Lab 2 will further factorize requirements developed in Lab 1 in terms of functions, architectures and options. Specifically, we first learn the seven management and planning tools and their functional composition using the quality function deployment (QFD) method and morphological matrix.

Resources

Terminology

  • Software requirements
  • Requirements management
  • Requirement traceability
  • Requirements analysis: Excerpted from [1], requirements engineering or requirements analysis in systems engineering and software engineering encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users. Requirements analysis is critical to the success of a development project. Requirements must be actionable, measurable, testable, related to identified business needs or opportunities, and defined to a level of detail sufficient for system design.

Software

Case studies

Air Force Center for Systems Engineering (CSE) provides a number of case studies at [2]. These cases support academic instruction on systems engineering within military service academies and at both civilian and military graduate schools and are used by those practicing SE in the field.

Web sites

  • Volere requirements resources [3].
  • Requirements networking group [4].
  • Porject management templates and resources [5].
  • Alistair Cockburn [6] (See how much it costs to take the use case course [7]. Minimum $13,300 plus alpha!).

Literatures

Some books of the below are excerpted from Visure that summarizes the interested readings on Requirements Engineering at [8].

  1. The Memory Jogger Plus + Featuring the Seven Management and Planning Tools (Paperback)[9]
  2. Mastering the requirement process [10]
  3. Gunasekaran, A., "Agile Manufacturing the 21st Century Competitive Strategy," Elsevier, 2001,[11].
  4. McCoy, J.R., "Requirements use case tool (RUT), Conference on Object Oriented Programming Systems Languages and Applications, 104-105, 2003, [12].
  5. Agile manufacturning (From A. Gunasekaran, 2001)
  6. Quality function deployment
  7. Software specifications and Requirements [13].
  8. Mastering the requirements process [14].
  9. Applying Use Cases, a practical guide [15].
  10. Writing Better Requirements [16].
  11. Requirements Engineering: A Good Practice Guide [17].

Academic activities

  1. International Working Conference on Requirements Engineering: Foundation for Software Quality [18]

Multimedia

A number of video courses freely available on the web (Thanks to Bing and Google).


Use case basics (5:18) Use case & class diagrams (3:49) Modeling Use Case elements (3:28)
A Use Case diagram for an ATM (3:49) Working with Use Case Diagrams (45:18) Use case packages (5:57)
  • Check video links from trifork.com for many related videos.
  • Check [19] that includes extensive videos on UML and Use Case design

Project status

  • 06-18-2009: Selecting tools for case studies.
  • 08-01-2009: Submitted Lab 1 and 2 drafts.

External links