Can Oracle Unified Methodology support Agile Development Reply

The Oracle Unified Method (OUM) is built on the following five main principles as defined by Oracle:

Business Process and Use Case-Driven – Business processes and use cases are used as the primary artifacts for establishing the desired behavior of the system and for communicating this behavior among the stakeholders.

Iterative and Incremental – The development or implementation of a software system is done incrementally through repetition of a series of tasks intended to first define the system broadly, at a high-level, and then refine the definition of the system by adding details in subsequent iterations.

Architecture-Centric – The system’s architecture is used as a primary artifact for conceptualizing, constructing, managing and evolving the system that is being implemented.

Risk-Focused – A key focus of each iteration in OUM is to attack and reduce the most significant project risks. This helps ensure that the project team addresses the most critical risks as early as possible in the project lifecycle.

Flexible & Scalable – OUM is designed to support a broad range of project types. As such, it must be scalable and adaptable. The appropriate point of balance for a given project will vary based on a number of project risk and scale factors. The method has been developed with the intent that the approach for a given project be “built up” from a core set of activities to implement an appropriate level of discipline, rather than tailored down.

Agile project management principles allow for flexibility rather than the rigidity of traditional project management methodologies.
The principles behind ‘agile’ is to ‘go live’ with a minimal set of functions to derive an early ROI. Agile processes use self-organizing teams, a rapid pace, and decreased emphasis on detailed planning to allow for flexibility in managing projects.

So how are these two methods similar? How is Oracle’s OUM ‘Agile’?

Through Adaptability which is represented by the two principles of ‘Iterative and Incremental’ and ‘Flexible & Scalable’.

According to Oracle, in support of the Flexible and Scalable principle, OUM is ‘Fit-For-Purpose’

Fit for business purpose refers to the focus on delivering necessary functionality within a required timebox.

Traditionally, projects have been focused on satisfying the contents of a requirements document or rigorously conforming to an existing set of work products. Often, especially where iterative and incremental techniques have not been employed, these requirements may be inaccurate, the previous deliverables may be flawed, or the business needs may have changed since the start of the project. Collective experience shows that applying fit for purpose criteria, rather than tight adherence to requirements specifications, results in an information system that more closely meets the needs of the business.

In OUM, project managers and practitioners are encouraged to scale OUM to be fit for purpose for a given situation. It is rarely recommended or appropriate to execute every activity within OUM. OUM provides guidance for determining the core set of activities to be executed, the level of detail targeted in those activities and their associated tasks, and the frequency and type of end user deliverables. The project workplan can be developed from this core. The plan should then be scaled up, rather than tailored down, to the level of discipline appropriate to the identified risks and requirements.

Even at the task level, models and work products should be completed only to the level of detail required for them to be fit for purpose within the current iteration or, at the project level, to suit the business needs of the enterprise and to meet the contractual obligations that govern the project.

So yes, Oracle Unified Methodology has some similarities to Agile Project Management methodologies. Both can be tailored or made ‘adaptable’ to the project at hand.

Agile – The ability to be adaptable Reply

Conceptually this makes sense in software development. Changing requirements can derail a software development project. Yet there are always changes, and therefore small incremental software releases that build out a product and get in front of the product owner quickly makes sense. Changes can be adapted to quickly rather than re-designing from the ground up.

How about agile project management?

Changing direction on any project can derail the project. The pace of change in today’s world makes it difficult to absorb and manage scope, schedule and budget for successful project delivery.
Agile project management principles allow for flexibility rather than the rigidity of traditional project management methodologies.
The principles behind ‘agile’ is to ‘go live’ with a minimal set of functions to derive an early ROI. Agile processes use self-organizing teams, a rapid pace, and decreased emphasis on detailed planning to allow for flexibility in managing projects.

The project manager works with the customer to ensure that the product backlog is visible and everyone understands that it directs the team to the most profitable and valuable work possible. The project manager uses product increments and demonstrations of working functionality to keep everyone aware of real progress against goals, commitments, and vision of the product.

Traditional plan-driven software methodology uses a command-and-control approach to project management. A project plan is created that lists all known tasks. The project manager’s job then becomes one of enforcing the plan. Changes to the plan are typically handled through “change control “ that add so much bureaucracy that delivery is slowed to the pace that the plan-driven methodology can accommodate.

Agile project management, on the other hand, is much more about leadership than about management. Instead of creating a detailed plan showing the sequence of all activities the agile project manager works with the customer to layout a common understanding from which collaboration can occur. The agile project manager puts forward the vision and then leads the project team to achieve the plan.

Agile project management continuously evaluates time and cost as primary constraints. Rapid feedback, continuous adaptation are built into the team’s schedules, ensuring quality deliverables.