Skip Navigation Links

Course Length:
3 Days
Course Description:
This course gives an overview of the object-oriented approach to software development with emphasis on the responsibilities and expectations of the Business Analyst. It introduces the concepts of OO development and emphasizes the usage of the Unified Modeling Language (UML) to develop and document software design. Special emphasis is placed on those aspects of OO development where Business Analysts are involved.
Who Should Attend:
This course is specifically for Business Analysts, who want to gain an object-oriented perspective to the software development life-cycle. It will also be beneficial to Project Managers, System Analysts, and Developers seeking the same knowledge.
Benefits of Attendance:
Upon completion of this course, students will be able to:
  • Discuss the fundamentals of developing software using object-oriented technology.
  • Describe the process of end-to-end software development using the principles of object-orientation.
  • Use the Unified Modeling Language to define early portions of a software system.
  • Demonstrate the place of use cases in the process of requirements management.
  • Incorporate the standard principles of requirements elicitation, and record and change management into an object-oriented project.
  • Associate the demands and importance of software testing with the principles of object-oriented development.
  • Use the UML diagrams with a business analysis perspective.
Prerequisites:
The student should have a general knowledge of the role of the Business Analyst — gained through experience or taking courses that precede this course in this curriculum path.
Course Outline:
  • Introduction to Object-Oriented Development
    1. What is object-oriented software development?
    2. Typical software life cycle
    3. Differences in OO and Procedural software life cycle
    4. Characteristics of the OO development process
    5. Benefits of using the OO development process
  • Principles of Object-Oriented Technology
    1. What is an object?
    2. What is a class?
    3. Relationship of classes to objects
    4. Three major features of object-orientation
    5. Packages in OO development
    6. How classes, objects, and packages relate to business analysis tasks
  • Visual Modeling and the UML
    1. Why use models in software development?
    2. What is the Unified Modeling Language?
    3. UML diagrams useful for the BA
    4. Other useful non-OO diagrams for visual modeling
    5. Business Process Models
    6. Data Flow Diagrams
    7. Context Diagrams
    8. The OO development process reprised with UML diagrams
  • Developing Business Use Cases
    1. Identifying major system features
    2. Discovering stakeholders
    3. Eliciting requirements and features from stakeholders
    4. More on use case diagrams
    5. Use case specifications expanded
    6. Requirements not covered with business use cases
    7. Evolving business use cases into system use cases
  • Activity Diagrams
    1. The versatility of activity diagrams
    2. Associating activity diagrams with business and system use cases
  • Capturing Static System Definition with Class Diagrams
    1. What is a class diagram?
    2. Features of class diagramming
    3. Class associations
    4. Association
    5. Aggregation
    6. Inheritance
    7. Application of class diagramming to business analysis tasks
  • Other Useful UML Diagrams for the Business Analyst
    1. Interaction diagrams and their use
    2. Capturing system dynamics with sequence diagrams
    3. Machine diagrams and their use
    4. Capturing static system features with state machine diagrams
    5. Package diagrams and their use
    6. Capturing system organization with package diagrams
  • Applying OO Principles of Reuse and Encapsulation to BA Tasks
    1. Two major principles of the OO methodology - reuse and encapsulation
    2. Abstracting the OO principle of encapsulation and applying it to the BA
    3. Separation of responsibility, information, and dynamics in BA processes
    4. Examples of BA process encapsulation
    5. Exploiting the OO principle of reuse in business analysis
    6. Examples of reuse in business analysis activities
  • Object Oriented Testing and the BA
    1. What is object-oriented testing?
    2. Applying OO principles to general software testing
    3. Testing OO systems
  • Summary
    1. Putting it all together
    2. What happens to the requirements when they leave the BA?
    3. Review the OO process from the BA perspective