17 Lecture
17 Lecture
RUP promotes iterative development, where software is developed in small increments. This allows for
frequent feedback and adjustments, reducing risks associated with late changes in requirements.
Boehm, B. W., & Turner, R. (2003). Balancing Agility and Discipline: A Guide for the Next Generation of Software Development. Addison-Wesley
One of the strengths of RUP is its adaptability to different project sizes and types. Organizations can
customize the framework to fit their specific needs, making it a versatile choice for various software
development projects
Kroll, P., & Kruchten, P. (2003). The Rational Unified Process: An Introduction. IBM Press
RUP Phases: Inception Phase
Essential Activities:
Planning and preparing the business case (feasibility study and project justification)
Exploration of current business processes, roles and responsibilities
Understanding and Articulating the business processes (process descriptions or business process
modelling: BPMN)
Identification and evaluation of potential strategies for reengineering of business processes (existing
systems)
Creation of business domain model (business use cases)
Formulating the scope of the project (requirements, constraints, and acceptance criteria)
RUP Phases: Elaboration Phase
Essential Activities:
To ensure that the architecture, requirements and plans are stable enough.
To produce an evolutionary prototype of production-quality components, as well as possibly one or
more exploratory, throw-away prototypes to mitigate specific risks.
Creating and base-lining detailed iteration plans for the construction phase.
Putting in place the development environment, including the process, tools and automation support
required to support the construction team.
RUP Phases: Construction Phase
The construction phase of the RUP is identical to the construction activity of the generic process.
Essential Activities
All necessary & required features & functions for the software increment are then implemented in source
code.
Unit tests are designed and executed for each component being implemented.
Integration tests are performed due to assembling or integration of components.
RUP Phases: Transition Phase
Essential Activities
User acceptance testing (Alpha testing & Beta testing) to validate the new system against user
expectations
Finalizing end user support material
Training of end users and maintainers
Creating product release and getting user feedback
Fine-tuning the product based on user feedback
Making the product available to the end users
RUP/UP: Iteration Patterns
Iteration Pattern: Incremental Lifecycle
The incremental strategy determines user needs, and defines the system requirements, and then
performs the rest of the development in a sequence of builds. The first build incorporates parts of the
planned capabilities, the next build adds more capabilities, and so on until the system is complete.
For more complex development problems, where there is complexity translating the design into
code: increase the number of iterations in the construction phase and its length.