📖 2413MJCT303 • Unit V • 4 Hrs

Unit V - Object Oriented Analysis

Comprehensive University Exam Preparation Notes, Model Question Answers & Comparison Matrices

🔍
📑 Quick Jump Navigation

📌 Syllabus Topics Covered

4 Hrs Weightage

📖 Comprehensive Theoretical Notes

Exam-Oriented Theory

5.1 & 5.2 Unified Process (UP) Lifecycle & The 4 Phases

The Unified Process (UP / RUP): An iterative, incremental, use-case driven, architecture-centric, and risk-managed software engineering framework created by the Three Amigos (Ivar Jacobson, Grady Booch, James Rumbaugh).

The Four Sequential UP Phases:

  • 1. Inception Phase: Establish business case, project scope, feasibility, initial cost/schedule estimates, identify primary actors, and document ~10% of critical use cases. Milestone: Lifecycle Objectives (LCO).
  • 2. Elaboration Phase: Mitigate high-priority architectural risks, establish the baseline executable architecture, solidify core requirements (~80% of use cases), and create domain model. Milestone: Lifecycle Architecture (LCA).
  • 3. Construction Phase: Iterative coding, testing, and component development to build the remaining features and produce the complete software product. Milestone: Initial Operational Capability (IOC).
  • 4. Transition Phase: Deploy the system into the operational user environment, conduct beta testing, user training, bug fixing, and rollout. Milestone: Product Release (PR).

5.3 Understanding Requirements: The FURPS+ Model

The FURPS+ model (Robert Grady / Hewlett-Packard) categorizes software requirements:

  • F - Functionality: Feature capabilities, security, business workflows, mathematical calculations.
  • U - Usability: Human factors, UI aesthetics, ease of learning, documentation, accessibility.
  • R - Reliability: Mean Time Between Failures (MTBF), failure frequency, recoverability, predictability.
  • P - Performance: Execution speed, latency, response time, resource utilization, throughput (TPS).
  • S - Supportability: Maintainability, testability, extensibility, configurability, localization.
  • + (Plus Constraints): Design constraints, Implementation constraints (Java stack), Interface constraints (REST APIs), Physical constraints (embedded memory limits).

5.4 & 5.5 UP Disciplines and Agile Unified Process (AUP)

Core UP Disciplines (Workflows across phases):

  • Engineering Disciplines: Business Modeling, Requirements, Analysis & Design, Implementation, Test, Deployment.
  • Supporting Disciplines: Configuration & Change Management, Project Management, Environment.

Agile Unified Process (AUP): A simplified, lightweight version of the Rational Unified Process developed by Scott Ambler. Retains the 4 phases and architecture-centric focus of UP while adopting agile practices (Test-Driven Development - TDD, Agile Modeling, short iterations, lightweight documentation).

🔑 Key Concepts & Examination Keywords

Quick Terminology
Unified Process (UP)
An iterative and incremental software engineering process framework that is use-case driven and architecture-centric.
Elaboration Phase
The most critical UP phase where architectural risks are resolved and executable baseline architecture is established.
FURPS+
A comprehensive requirements classification framework covering Functional, Usability, Reliability, Performance, Supportability, plus constraints.
Agile UP (AUP)
A streamlined, lightweight adaptation of UP applying agile techniques (TDD, agile modeling) while maintaining UP phase milestones.

🎯 High-Yield Important Examination Questions

8–10 Descriptive Points Each

Q1. Explain the 4 sequential phases of the Unified Process (Inception, Elaboration, Construction, Transition) with their goals, activities, and milestone criteria.

10 MarksUnified Process PhasesCore
📝 Detailed Examination Answer (10-Point Model):
  1. Core Philosophy of Unified Process: UP organizes software engineering into 4 chronological phases containing iterative mini-projects, driven by use cases and centered on mitigating technical risks.
  2. Phase 1: Inception Purpose: Establish project viability, business rationale, return on investment (ROI), high-level project boundaries, and determine whether the project warrants funding.
  3. Inception Key Activities & Deliverables: Draft business case, identify primary actors, define ~10% of high-level use cases, outline rough cost/schedule estimates, and construct feasibility risk matrix.
  4. Inception Milestone: Lifecycle Objectives (LCO): Stakeholders evaluate project scope and business case to approve capital funding before committing major engineering resources.
  5. Phase 2: Elaboration Purpose: Mitigate primary architectural risks, validate requirements, and construct an executable baseline architecture through early prototyping.
  6. Elaboration Activities & Deliverables: Detail ~80% of use cases, construct Domain Model, design database schema, build executable architectural prototype, and refine cost estimates.
  7. Elaboration Milestone: Lifecycle Architecture (LCA): Verifies that core architectural risks are resolved and baseline architecture is proven stable before massive code construction begins.
  8. Phase 3: Construction Purpose: Iteratively develop, implement, and unit-test all remaining software modules, transforming the architectural skeleton into a complete operational system.
  9. Construction Milestone: Initial Operational Capability (IOC): Delivers the first fully integrated beta software product ready for user acceptance testing in target deployment environments.
  10. Phase 4: Transition Purpose & Product Release Milestone: Deploys software to production, performs beta testing, conducts end-user training, fixes defects, culminating in the Product Release (PR) milestone.

Q2. Explain the FURPS+ model for requirement classification with detailed examples for each category.

10 MarksFURPS+ ModelRequirements Engineering
📝 Detailed Examination Answer (10-Point Model):
  1. Origin and Significance of FURPS+: Developed by Robert Grady at Hewlett-Packard, FURPS+ is a standardized taxonomy for comprehensively capturing functional and non-functional requirements.
  2. 'F' - Functionality: Specifies core business capabilities, feature sets, mathematical calculations, security access controls, and input/output workflows (e.g., 'User can generate GST invoices').
  3. 'U' - Usability: Specifies human-computer interaction qualities: UI responsiveness, accessibility (WCAG), learnability, screen layouts, error messaging clarity, and documentation.
  4. 'R' - Reliability: Specifies system trustworthiness: Mean Time Between Failures (MTBF), failure frequency, crash recovery time, fault tolerance, and data backup integrity.
  5. 'P' - Performance: Specifies quantitative execution benchmarks: maximum transaction latency (<200ms), throughput (>5000 TPS), CPU memory footprint, and network bandwidth usage.
  6. 'S' - Supportability: Specifies ease of ongoing engineering maintenance: testability, maintainability, modularity, configurability via YAML/JSON, and multi-language localization (i18n).
  7. '+' - Design Constraints: Architectural restrictions imposed on designers (e.g., 'Must adhere to Model-View-Controller architecture and microservice boundaries').
  8. '+' - Implementation Constraints: Technical stack rules imposed on programmers (e.g., 'Must be implemented in Java 17 and utilize Spring Boot framework').
  9. '+' - Interface Constraints: Mandates compatibility with external external systems (e.g., 'Must expose OpenAPI 3.0 REST endpoints and integrate with Stripe payment gateway').
  10. '+' - Physical Constraints: Hardware sizing and environment constraints (e.g., 'Client app must consume less than 150MB RAM on Android mobile devices').

Q3. Discuss the 9 Disciplines of the Unified Process and explain how Agile Unified Process (AUP) simplifies UP for modern development teams.

10 MarksUP Disciplines & Agile UP
📝 Detailed Examination Answer (10-Point Model):
  1. Two-Dimensional Matrix Structure of UP: UP is structured across two axes: Dynamic Horizontal Axis (Time: Inception, Elaboration, Construction, Transition) and Static Vertical Axis (Disciplines / Workflows).
  2. Engineering Discipline 1: Business Modeling: Understands organizational context and business domain processes through business use case models and domain models.
  3. Engineering Discipline 2: Requirements: Elicits, analyzes, and documents system behaviors and quality constraints using Use Cases and FURPS+ specifications.
  4. Engineering Discipline 3: Analysis & Design: Transforms requirements into technical blueprints, creating class diagrams, interaction diagrams, and architectural views.
  5. Engineering Discipline 4: Implementation: Translates design specifications into executable source code, conducts unit tests, and integrates software components.
  6. Engineering Discipline 5: Test & Deployment: Verifies correctness through integration and system testing, followed by packaging and deploying releases into production environments.
  7. Supporting Disciplines (CM, PM, Environment): Manages code versioning and change requests (Configuration & Change), project scheduling and risk (Project Management), and developer tooling (Environment).
  8. Motivation for Agile UP (AUP): Traditional Rational Unified Process (RUP) became criticized for excessive documentation and heavy ceremonial overhead, prompting Scott Ambler to create AUP.
  9. Agile Techniques Integrated in AUP: Adopts Test-Driven Development (TDD), Agile Model-Driven Development (AMDD), continuous integration, and simple user stories within UP's 4 phases.
  10. Key Differences: UP vs AUP: UP uses heavy formal documentation and CASE tools; AUP prioritizes working software, lightweight modeling, and collocated collaborative communication.

⚖️ Comprehensive Comparison & Difference Tables

8+ Comparison Criteria

📊 Unified Process (UP) vs Traditional Waterfall Model

Comparison ParameterUnified Process (UP)Traditional Waterfall Model
Development ParadigmIterative and incremental with continuous feedback loops.Linear and sequential with strict phase gates.
Risk ManagementIdentifies and mitigates high architectural risks early in Elaboration.Risk mitigation occurs late; risks discovered during testing/deployment.
Requirement EvolutionEmbraces changing requirements across iterations.Assumes requirements are frozen and immutable upfront.
Delivery of Working CodeExecutable architectural baseline delivered early in Elaboration.Working software delivered only at the very end of the project.
Testing IntegrationTesting is continuous across every iteration in all phases.Testing occurs as a distinct phase near the end of the lifecycle.
Architecture FocusArchitecture-centric; builds executable prototype early.Document-centric; architecture remains theoretical on paper until coding.
Customer FeedbackContinuous customer evaluation at each iteration milestone.Customer feedback collected only at start (SRS) and final acceptance.
Project Failure RateSignificantly lower failure rate due to early risk mitigation.High project failure rate on large, evolving software systems.

📊 Agile UP (AUP) vs Standard Rational Unified Process (RUP)

Comparison ParameterAgile Unified Process (AUP)Standard Rational Unified Process (RUP)
Process WeightLightweight, streamlined, and agile-friendly.Heavyweight, highly ceremonial, and process-intensive.
Documentation PolicyLightweight; only creates models that provide immediate value.Exhaustive formal documentation artifacts for every discipline.
Testing ApproachTest-Driven Development (TDD) and automated continuous testing.Formal test planning, test scripting, and defect tracking phases.
Tooling RequirementSimple whiteboards, agile tracking tools, lightweight IDEs.Heavy Enterprise CASE tools (Rational Rose, RequisitePro).
Iteration LengthShort iterations ranging from 1 to 4 weeks.Longer iterations typically ranging from 4 to 12 weeks.
Team CommunicationInformal, daily standups, high team collaboration.Formal status reports, review boards, and sign-off meetings.
Core Discipline CountSimplified into 7 streamlined disciplines.Structured into 9 rigorous formal disciplines.
Ideal Project ContextSmall to mid-sized teams building modern agile software.Large-scale defense, aerospace, and heavily regulated enterprise systems.

⚡ Quick Pre-Exam Revision Summary

5-Minute Recap
💡 Core Takeaways & High-Yield Summary
  • Unified Process (UP) is an iterative, use-case driven, architecture-centric, risk-managed process framework.
  • The 4 UP Phases & Milestones: Inception (LCO), Elaboration (LCA), Construction (IOC), Transition (PR).
  • Elaboration phase is most critical: resolves architectural risks and builds executable baseline architecture.
  • FURPS+ model: Functionality, Usability, Reliability, Performance, Supportability + Constraints (Design/Implementation/Interface/Physical).
  • UP spans 9 Disciplines (6 engineering + 3 supporting) across the 4 phases.
  • Agile UP (AUP) simplifies UP by integrating Test-Driven Development (TDD) and lightweight agile modeling.