Course 415:
Structured Systems Analysis & Design

(4 days)

 

Course Description

When there is high risk involved in developing software for mission critical systems, the structured approach is chosen to provide the stability and security of systematic and time-proven techniques. This course details the tools and techniques used in the top-down structured approach and discusses the methods for ensuring quality in design and execution of software development.

Learning Objectives

At the end of this course, the participant will know:

  • The principles of the phased approach to software development
  • How to Apply modeling tools and techniques to the design and analysis of the business problem
  • The various approaches to structured analysis and design
  • How to apply structured analysis and design techniques

Who Should Attend

Audience includes programmers, managers, designers, analysts, and anyone interested in learning established methods for quality software development.

Prerequisites

An understanding of the basics of software development is assumed in students attending this class.


Course Outline

 Unit 1: Analysis, Design, Modeling, and Architecture

  • Systems and Software Engineering
    • The Software Life Cycle
    • The Process of Developing Software
    • The Phased Approach
    • Analysis
    • Requirements Analysis
    • Systems Analysis
    • Design
  • Modeling
    • Analysis Modeling
    • Design Modeling
    • Answering Questions
    • Architecture
  • The Role of Documentation

Unit 2: Analyzing to Determine the Problem

  • Statement of Work
  • Problem Statement
    • How to Define the Real Problem
    • Stating the Vision
  • Business Case Overview
    • Scope of Work
    • Justification
    • Functional Goals
  • Confirmation: How Do We Know It’s the Right Problem?
  • Defining the Problem: The Requirements Process
    • Requirements Definition
    • Requirements Analysis Process

Unit 3: Designing the Solution

  • What Is Design?
  • The System Design Process
  • Analysis and Design
    • What Is the Difference?
    • Examples
  • Design Process
    • Design Levels
    • Flowdown and Allocation
    • Creating the Design
    • Exercise: Modeling a User Interface
    • Design Methods
    • Documenting the Design
    • Verification

Unit 4: Design and Analysis Methods: Data Modeling

  • Overview
    • Data Modeling Using E-R Diagrams
    • Entities
    • Attributes
    • Relationships
    • Many:many Relationships
    • Entity Subtypes
    • Participation
    • Comparing Notations
    • Notations that Look Different but Have the Same Meaning
  • Creating and Applying the Data Model
    • Find the Noun Technique
    • Analytical Processes
    • Structure and Approach
    • Data Modeling in the Design
  • Application of Design Principles
    • Functional Dependency and Normalization
    • Functional Dependencies
    • Using Functional Dependencies
    • Functional Dependency and Normalization
    • Normal Forms
    • Normalizing
    • When and Where to Use Normalization

Unit 5: Design and Analysis Methods: Process Modeling

  • Overview
  • Entity-Activity Analysis
    • Stimulus – Response
    • Event Processing
    • Cross Reference Matrices
  • Dataflow Diagrams
    • Scope or Level 0 Diagram
    • Sources and Sinks
    • Processes
    • Flows
    • Structured Decomposition
    • Leveling the Diagram
    • Quality Checks
    • Detail Dataflow Diagrams
    • Verifications
  • Activity Diagrams
    • Activity Diagram Syntax
    • Swim Lanes
    • Applying the Activity Diagram
  • State Transition Diagrams
    • Application
    • Format
    • Events and Triggers
    • Following the Flow
    • Applying the State Machine
  • Process Analytical Tools and Techniques
  • Program Specifications

Unit 6: Approaches to Software Development

  • Evolution of Software Engineering Practices
  • The Discipline of the Software Engineering Approach
    • Structure
    • Method
    • Documentation
  • Structured Approaches
    • Linear
    • Waterfall
    • U or V Model
    • Information Engineering
    • When to Use
    • Risks Involved
    • Incremental
    • Staged Delivery
    • Incremental Life Cycle
    • When to Use
    • Risks Involved
  • Evolutionary
    • Top-down Structured (Yourdon-DeMarco)
    • Spiral- and Risk-Based (Boehm)
    • Rapid Application Development
    • Prototyping
    • Iterative Development
    • Exercise: Planned Iterations
    • When to Use
    • Risks Involved
  • Agile Approaches
    • Agile Concepts and Principles
    • Scrum
    • Extreme Programming
    • When to Use
    • Risks Involved
  • Applying Analysis and Design to the Selected SDLC

Unit 7: Final Thoughts and Keys to Success

  • Where to Go for More Information
  • Industry Keys to Success Summary

Please Contact Your ROI Representative to Discuss Course Tailoring!