logo

Business Systems Development Course

course overview

download outline

Select Country and City to View dates & book now

Overview

Learn how to use object-oriented techniques from requirements gathering to implementation. Students learn how to analyze and design classes and their relationships to each other in order to build a model of the business requirements

Audience

This course is intended for anyone involved in the production, deployment and maintenance of software.

Skills Gained

  • Overview of OOAD
  • Requirements Workflow
  • Analysis Workflow
  • Class Identification
  • Class Relationship Analysis
  • Design Workflow
  • Software Development Process
  • RUP
  • Approach new complex software development with confidence
  • Model applications using UML
  • Implement the software based on the design
  • Establish a software development methodology for in-house development

Prerequisites

Familiarity with software development in general is helpful. Duration Two days.

Outline

Outline of Introduction to OO Analysis and Design Training 1. Overview of OOAD

  • Topics
  • A Brief History of Object Oriented Languages
  • Tower of Hanoi
  • Objects
  • Objects Examples
  • Objects Identification and Attributes
  • Operations and Methods
  • Object Relationship
  • Encapsulation
  • Classes
  • Examples of Classes
  • Examples of Object Type Identification in UML
  • Inheritance
  • Example of Inheritance
  • Discovering Inheritance
  • Polymorphism
  • Example of Polymorphism
  • Object-Oriented Programming Languages
  • Development Process
  • The Rational Unified Process
  • Inception Phase
  • Elaboration Phase
  • Construction Phase
  • Transition Phase
  • Software Development Life Cycle with the RUP
  • What is UML?
  • History of UML
  • UML 2 Architecture
  • UML Infrastructure
  • UML Superstructure (or UML)
  • Object Constraint Language (OCL)
  • UML Diagram Interchange
  • Building Blocks of UML
  • Things in UML
  • Examples of UML Things
  • Relationships in UML
  • Examples of UML Relationships
  • Diagrams in UML
  • Classifier in UML
  • Examples of UML Classifiers
  • Common Mechanisms in UML
  • Common Mechanisms in UML cont
  • Examples of UML Extensibility
  • Advantages of UML
  • Summary

2. Requirements Workflow

  • Requirements Workflow
  • What Is A Requirement?
  • Requirements Gathering
  • What Is Requirements Management?
  • Requirements Management
  • Timing of Requirements Workflow
  • The Cost Of Requirement Errors
  • The Game Plan Towards Building Quality Software
  • Problem Analysis and Understanding User Needs
  • Problem Analysis Steps
  • Business Models
  • Gather Requirements
  • Interviewing
  • Requirements Workshop
  • Brainstorming
  • Brainstorming- Idea reduction
  • Storyboarding
  • Use Cases
  • Prototyping
  • Requirements and the Unified Process
  • Recall: Inception Phase
  • Example of Use Cases
  • Recall: Elaboration Phase
  • Example of a Use Case Diagram
  • Delivery

3. Use Case Development

  • Benefits of Use Cases
  • Classifying Use Cases
  • Levels of use cases
  • For use case modeling
  • Use Case Modeling
  • Use Case Modeling Steps
  • Step 1 - Scope
  • Lists used to manage scope In/out list
  • Step 2 - Actors
  • Actor Notation
  • Finding Actors
  • Finding Actors - continued
  • Step 3 - Goal List
  • Step 4 and 5 Finding Use Cases
  • Sections Of A Use Case
  • Documenting Use Cases
  • Use Case Notation
  • Action Sequence
  • Use Case Relationships
  • Time Schedule Application
  • Case Study
  • Case Study Time Schedule Management
  • Use Cases Time Schedule Management
  • UC01 Add a new appointment
  • Use Case Diagram
  • Time Schedule Use Case Diagram

4. Analysis Workflow

  • Analysis Workflow
  • Motivation
  • Analysis Deliverables
  • Good Analysis Characteristics
  • Analysis in the Rational Unified Process
  • Analysis Workflow Steps
  • Class Analysis
  • What is an Analysis Class?
  • Analysis Class Relationships
  • Use Case Analysis
  • Architectural Analysis
  • Packages
  • Package practicality
  • Post Analysis

5. Class Identification

  • Identifying Classes
  • Entity Class
  • Control Class
  • Boundary Class
  • A Good Class
  • A Good Class cont'd
  • Bad Classes
  • Finding Classes and their Relationships
  • Noun/verb Analysis
  • Noun/verb Analysis example
  • Refine
  • CRC Cards
  • What is a Responsibility?
  • What is a Collaboration?
  • Identifying Classes Using CRCs
  • CRC Cards An Example
  • Class Diagram
  • Class Notation in UML
  • The Name Compartment
  • The Attribute Compartment
  • The Operation Compartment
  • Translating CRC Cards to a Class Diagram
  • The Scheduling System
  • UC-01 Classes
  • The EmployeeInfo Class
  • Object Diagram
  • Object Notation in UML
  • Object Links and Messages
  • Message Notation
  • Link Types
  • Examples of Object Links

6. Class Relationship Analysis

  • UML Diagrams
  • Types of Class Relationships
  • Identifying Class Relationships
  • Examples of Relationships in UML
  • Class Association Relationship
  • Class Association Relationships in UML
  • Reading Class Associations
  • Multiplicity
  • Reading Multiplicity
  • Aggregation
  • Aggregation An Example
  • Composition
  • Composition An Example
  • Qualification
  • Qualification An Example
  • Association Class
  • Association Class An Example
  • Class Diagram Multiplicity and Ordering
  • Class Diagram Operations Compartment
  • Class Diagram Interface Notation
  • Class Diagram Combining Interface Notations
  • Class Diagram Object Relationships
  • Package Diagram

7. Design Workflow

  • Analysis and Design
  • Design Time
  • Design in RUP
  • Design vs. Analysis Model
  • One Model Or Two?
  • Design Workflow
  • Design Classes
  • Design Class Refinement
  • Class Removal
  • Refining Relationships
  • Use Case Design
  • Construction

8. The Software Development Process

  • Software Development Processes
  • Risk Management
  • What is a "risk"?
  • Identify
  • Analyze
  • Plan and Manage
  • Review
  • Requirements Change
  • Change Control Board
  • Handling Change
  • Incorporating Change
  • Quality Assurance
  • Testing
  • Testing Categories
  • UI Testing
  • UI Testing - continued
  • Common problems with error messages
  • Common UI Errors
  • Functional testing
  • Types of testing
  • Types of testing - continued
  • Bugs
  • Configuration Management
  • Goals of Team Development
  • Team Development Architecture
  • Repository
  • Version Control Systems
  • Agile Modeling
  • AM Values
  • AM Principles
  • AM Practices
  • AM Practices Continued
  • Using AM

9. The Software Development Project Life Cycle Using RUP

  • Software Development Methodologies
  • Waterfall Development Methodology
  • Iterative Development Methodology
  • Iteration v.s. Waterfall Process
  • Low Ceremony/High Ceremony
  • Comparison of Some Software Methodologies
  • Spirit of RUP: Well-Defined Software Engineering
  • Two Dimensions of the RUP Process
  • Dynamic Dimension of RUP: Lifecycle Phases & Milestone
  • Static Dimension of RUP: Modeling Elements
  • Static Dimension of RUP: Disciplines
  • Typical RUP Roles
  • Spirit of RUP: Iterative & Risk-Driven Approach
  • The RUP Iteration
  • Spirit of RUP: Customizable and Configurable Process
  • Inception Phase cont
  • Develop a Vision Document
  • Develop a Vision Document: An Example
  • Develop System Overview
  • Develop System Overview: An Example
  • Plan the Project and Analyze Risks
  • Plan the Project and Analyze Risks: An Example
  • Plan the Project and Analyze Risks: An Example cont
  • Elaboration Phase cont
  • Develop Use Case and Domain Object Model
  • Develop Executable Architecture
  • Construction Phase cont
  • Organize Teams Around Architecture
  • Example of Construction Iterations
  • Transition
  • Transition cont
  • Examples of a RUP Development Lifecycle
  • Typical Time & Resource for a RUP Development Lifecycle
  • Multiple Development Lifecycles

Talk to an expert

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. Its a cost effective option. One on one training can be delivered too, at reasonable rates.

Submit an enquiry from any page on this site and let us know you are interested in the requirements box, or simply mention it when we contact you.

All $ prices are in USD unless it’s a NZ or AU date

SPVC = Self Paced Virtual Class

LVC = Live Virtual Class

Please Note: All courses are availaible as Live Virtual Classes

Trusted by over 1/2 million students in 15 countries

Our clients have included prestigious national organisations such as Oxford University Press, multi-national private corporations such as JP Morgan and HSBC, as well as public sector institutions such as the Department of Defence and the Department of Health.