12 January 2010

DRA in Project Management

In the good old, bad old days of Knowledge Engineering, the “iterative approach" often meant in practice "keep adding rules until the client runs out of money".  This mindset persisted as our field came to be called Business Rules, when there was a common assumption that one could simply gather whatever rules the "experts" considered pertinent, arrange them into groups, and deploy them as rule services.  Now Decision Management (DM) has turned this deeply misguided idea on its head by stressing that one must first define the business decisions to be automated, before harvesting the specific rules to implement them (see for example James Taylor on "Using Decision Management to improve Requirements”).

Decision Requirements Analysis (DRA) formalises this top-down process, allowing a rigorous specification of the decisioning requirements at the outset of a rules project.  The main benefit is improved project management:  DRA results in better plans, less risk, and tighter control on scope.

Scope of supply

DRAW is essentially a scoping exercise, and should therefore be carried out as the very first task in a rules implementation project.  The results can then be recorded in a document which will define the scope of supply, to be signed off by the client before any further work is carried out.  Since it covers only the decisioning requirements (which may not be all the functional requirements) FICO calls this the Decision Definition Document (DDD).  It contains the following sections:
  • Business Context: the background to the project including the goals of Decision Management
  • Decision Points: a description of the client’s business process, specifying the points at which decisions are required of rule services and the principal decisions to be made at those points
  • Decision Requirements: the Decision Requirements Diagram (DRD), supported by verbal definitions of all of its nodes (including estimates of size and complexity of knowledge and data nodes)
  • Scope: a statement of the scope of supply, defined as sets of nodes on the DRD, and illustrated with a diagram, as below.

Scope Boundary on the DRD


The DDD is a simple, brief document, but provides a very clear definition of the decisioning requirements, allowing the scope to be tightly controlled.  This is not to prevent changes during the project but to allow them to be properly managed. Every harvested rule should directly determine one of the decisions in scope, belong to one of the knowledge areas in scope, and use only data provided by the data areas in scope.  If rules are discovered which do not fit into these constraints, the agreed change control procedure should be followed to consider the cost of extending the scope to include the new decisions, knowledge areas or data.  Provided a thorough requirements analysis has been conducted such changes should seldom be required.

Planning

Rules discovery is in itself one of the major sources of risk in a traditional rules project, because it is open-ended and often far too large to be managed as a single task.  This risk cascades to many other tasks which are dependent on it.  Introducing DRA before rules discovery allows the production of complete and detailed plans at the outset of a project, with specific discovery, development and testing tasks for each knowledge node on the DRD.  The effort required for these tasks may be estimated using the information in the DDD.

DRA can also provide a higher-level structure to the plan.  If a phased or iterative approach is being used, increments of functionality may be defined as sets of nodes on the DRD.  The objectives of this partitioning are that:
  • Each increment can be delivered in one phase or iteration
  • Each increment provides some distinct functional benefit to the client
  • The increments are loosely coupled: i.e. there are few arrows between nodes in different increments
  • Each decision node is in the same increment as the knowledge node(s) it requires.
This example DRD shows the decisioning functionality partitioned into three increments:

Increments on the DRD


A typical project plan under RUP would then have the following high-level structure:
  • Inception:  establish the scope of decisoning using DRAW;  establish high-level technical and non-functional requirements;  agree project goals, plan and governance
  • Elaboration:  establish the detailed technical requirements and retire the most significant risks by building a simple "empty" prototype decision service integrating with the client architecture
  • Construction:  over a number of iterations, gradually add increments of functionality to the prototype until the decision service is complete, performing rules discovery as required for each increment
  • Transition:  perform user testing, training and handover.
DRA therefore allows us to achieve a new "iterative approach", more in step with mainstream IT project management principles, which is committed to the delivery of an agreed set of decisions within an agreed budget and timescale.

11 comments:

  1. Lettt me share all of you about #5 Tips for Project Management Success, I hope you enjoy it

    1. Plan your day using time management techniques

    As a project manager, time management skills are essential because you are dealing with a wide range of tasks that demand a quick turnaround time. Planning your day will go a long way in keeping you organized and increasing your productivity. Assist your task planning by using project management software which helps you track the work of you and your team.

    If you are not very tech savvy, a simple to-do list can also be a great organizational tool. Prioritize your most important tasks by putting them at the top of the list and less important ones at the bottom. Having a visual plan of your daily tasks helps to keep you on track and aware of time.

    Related post: Free ebook 104 secrets to become a great project manager

    2. Include stakeholders in important project conversations

    While you will have plenty of responsibilities regarding the project, don’t neglect your clients.

    Good communication is essential is keeping both parties informed of project progression, curtailing scope creep, and apprised of changing requirements. Some clients may have different expectations when it comes to communication, so make sure to establish the frequency and type of communication (like emails, phone calls, and face-to-face conversations) at the beginning of your project.

    Establishing communication expectations early helps alleviate stakeholder uncertainty about communication frequency and delivery.

    3. Regularly communicate with your team

    Daily team communication helps keep misunderstandings and unclear requirements under control. Keeping your team informed in every step of the project is essential to project management success.

    For example, a study published by Procedia Technology found that good communication skills were the cornerstone of project management. The study examined over 300 “construction project managers, architects, construction managers, engineers and quantity surveyors” and their successes and failures on various construction projects.

    4. Anticipate project setbacks

    Even the best-laid plans often go awry.

    Remember that even with a high amount of planning and attention to detail, your project may still encounter some challenges. Pay attention to complaints from stakeholders or colleagues, and other warning signs, like a missed deadline or cost overrun, that there may be a problem.

    Preventing a crisis will keep your project running smoothly, save you a lot of time, and keep you, your team, and your stakeholders confident in progressing with the project.

    Unfortunately not every complication can be avoided. Crisis management skills are essential for dealing with the unexpected. Project managers need to be flexible and pragmatic. Improvise and make sharp decisions when needed.

    Related post: 92 free project management templates

    5. Stay focused on the details

    A common problem project managers encounter is having the project aims not aligned with the organization’s objectives. A great project manager will strategize a plan for the project to lead back to the overall success of the business.

    Know your project’s scope by heart and avoid wandering outside of the project’s requirements. It’s too easy to get lost in minor details and forget what your focus is, so a well-planned project scope is essential for success.

    And final, you should use KPI to measure effectiveness of the project, here are full list: 76 project management KPIs

    ReplyDelete
    Replies
    1. Less Code, More Impact: The Modern Development Paradigm

      IEEE projects for cse

      The mantra "less code is more" has gained significant traction in recent years, reshaping software development practices. Here's a deeper dive into why this shift is occurring:

      The Benefits of Less Code
      Increased Developer Productivity: By leveraging existing libraries, frameworks, and low-code/no-code platforms, developers can focus on core business logic.
      Improved Code Maintainability: Smaller codebases are generally easier to understand, modify, and debug.
      Faster Time-to-Market: Reduced development time often translates to quicker product launches.
      Reduced Costs: Lower development and maintenance expenses.
      Higher Quality: Less code often means fewer bugs and vulnerabilities.
      Key Drivers of the Less Code Movement
      Low-Code/No-Code Platforms: These platforms enable rapid application development with minimal coding.
      Cloud-Based Services: Cloud providers offer pre-built services and infrastructure, reducing the need for custom code.

      Cloud Computing Projects Final Year Projects

      Open-Source Libraries: A vast ecosystem of open-source libraries provides ready-made solutions for common tasks.
      DevOps and CI/CD: These practices emphasize automation and efficiency, reducing the need for manual code intervention.

      python projects for final year students

      Delete
  2. Plancentral best Project Management app or software for business professionals. Its a Teamwork platform for easy task management, messaging & collaboration.

    ReplyDelete
  3. It was so interesting to read & I feel thanks to you for posting such a informative blog, keep in blogging..
    best project management software

    ReplyDelete
  4. I strongly agree with your points regarding Decision Requirements Analysis. I would recommend to use software like Procore for such project management.

    ReplyDelete
  5. This blog is so much instructive. Since I learned about turnaround planning. Turnaround planning Vancouver, BC is a decent method to get the information investigating. I would state along these lines is the most straightforward approach to discover precise information.

    ReplyDelete
  6. Very good explanations of the Retail ERP software basics, it's good to know that! A friend of mine has implemented a company which is best ERP software in Hyderabad right now, she provides cloud based ERP software in Hyderabad for Retail Stores, so I hope it goes well for her.
    Best regards

    ReplyDelete
  7. It was so interesting to read & I feel thanks to you for posting such a informative blog.
    Best-Online-Project-Management-software .

    ReplyDelete
  8. Hats off to your presence of mind..I really enjoyed reading your blog. I really appreciate your information which you shared with us.
    Project Management

    ReplyDelete