Useful UML Modeling: UML for Project Managers

Useful UML Modeling: UML for Project Managers

The interview was going well. The interviewer was a project manager / architect. “We have identified these use cases for the project. Now what do we do?” he asked. The question was not one of methodology. He knew the basics of how to write a use case specification and how to draw use case diagrams.

When I probed deeper, I found that he was really asking me, “How do I approach this as a project manager? Serially? All at once, in parallel? What is my next step?” He did not know how to plan when using use cases.

[login]There is nothing magical about use cases. Use cases are merely another way to organize a group of functional requirements for a system. Organizing groups of functional requirements is not new in software development. In more “traditional” requirements elicitation and analysis approaches, functional decomposition was used to decompose functional requirements into smaller cohesive component functions (to be later recomposed into the larger functionality). Instead of a typical hierarchical decomposition, use cases organize requirements around the various flows of the use case.

Understanding this allows us to plan use case development similarly to any other software development. However, use cases enable us to better assess the value of the use case’s functionality to the business. A business stakeholder typically would find it difficult to assess how valuable a functionally decomposed function or sub-function is to the overall business. However, because use cases are scenario driven by a specific actor, the business stakeholders can more easily relate the use case to the actual business activity being performed. This allows us to more easily establish a value-based development plan.

Here is a very basic approach to planning your use case development (it is a simplified technique based on the Quality Function Deployment approach to product development). First, identify your candidate use cases. Next (or as you identify your candidates) create the basic short description (2 or 3 sentences for example) for each use case. You now have enough information to do a very coarse prioritization of the use cases.

Examining these use cases, based on value, what is the priority of each use case according to your business stakeholders? (If your stakeholders cannot prioritize the use cases that may be an indicator that your short descriptions may not be clear as to what value they provide. What is that use case trying to achieve? What is its objective? Or maybe you are asking the wrong stakeholders?)

Have your stakeholders rank the importance of the use cases on whatever scale you and they are comfortable with. For this discussion let us use a 1-10 scale, where 1 means least important and 10 most important. You now have your use cases prioritized based on importance/value to the customer. Note that this discussion may provide clarifications of what the stakeholder really want from the use cases, which in turn may change the existing description. This is a good thing. Better to find out now than to find out as acceptance testing begins.While this is a simple approach, you are not quite done. If you believe software development is a profession, you can’t just take the stakeholders’ input as the way things will be. If you do, you have become an “order taker” instead of a professional offering thoughtful technical input to your stakeholders. You and your team need to assess these use cases and determine your ability to actually deliver the use case functionality. It’s your turn to prioritize. This time you prioritize by how difficult/risky the implementation of these use cases will be. Use the same scale as your stakeholders did regarding value/importance. In this discussion, 1 means very easy / no risk and 10 would be very difficult / very risky.

How do you resolve these two viewpoints? You now have two characteristics that you can plot against each other. Create a diagram where the y axis is the stakeholders’ importance ranking and the x axis is your technical difficulty ranking. Then “plot” the individual use cases on this grid. See Figure 1.

Figure 1: Use Case Plot.

Next partition the plot into four quadrants. Moving counter-clockwise, the upper right quadrant contains the high risk use cases (high importance and high difficulty). The upper left quadrant contains the high importance, less difficult use cases. The lower left contains use cases that are not that important and are less difficult. The lower right use cases are not important, but are high difficulty. See Figure 2.

Figure 2: Prioritized Use Case Plot.

This plot can give you the coarse plan for your use cases. Again moving counter-clockwise, the upper right, high risk use cases should be done first. Being high risk you need to mitigate the risk these use cases have before completing other work. If these can’t be done, your entire project may need to be canceled or redefined. The upper left (Do It) are the mainstay of your development. They are important and less difficult. Do these next. The lower left (Maybe) quadrant contains those use cases that you may want to do if you have additional time or resources (chuckle, chuckle) because they are easier and not that important. The last quadrant, lower right are the use cases you may want to descope. Why would you want to develop functionality that is very difficult to create and the stakeholders don’t really want?

Now you have the basic sequence of how to proceed through your use cases. They will mature at varying rates during the development lifecycle. See Figure 3.

Figure 3: Use Case Progression.

Caveats. Realize that this simple method is not to indicate that you should be approaching your development in a serial, waterfall manner. This technique can be used for incremental or iterative or agile development approaches. It merely gives you a way to easily prioritize your use cases (or functional blocks, user stories, or whatever units of work you are using). Also, you should consider adjusting your prioritization based on any interdependencies that may exist between your use cases. (Hopefully there are not many. If there are, that may indicate a problem with your use case definitions.)

The UML is not just a great tool for requirements elicitation, analysis, and design, it also can help the project manager to effectively plan and direct the development cycle.

devx-admin

devx-admin

Share the Post:
Bold Evolution

Intel’s Bold Comeback

Intel, a leading figure in the semiconductor industry, has underperformed in the stock market over the past five years, with shares dropping by 4% as

Semiconductor market

Semiconductor Slump: Rebound on the Horizon

In recent years, the semiconductor sector has faced a slump due to decreasing PC and smartphone sales, especially in 2022 and 2023. Nonetheless, as 2024

Learn Web Security

An Easy Way to Learn Web Security

The Web Security Academy has recently introduced new educational courses designed to offer a comprehensible and straightforward journey through the intricate realm of web security.

Military Drones Revolution

Military Drones: New Mobile Command Centers

The Air Force Special Operations Command (AFSOC) is currently working on a pioneering project that aims to transform MQ-9 Reaper drones into mobile command centers

Tech Partnership

US and Vietnam: The Next Tech Leaders?

The US and Vietnam have entered into a series of multi-billion-dollar business deals, marking a significant leap forward in their cooperation in vital sectors like

Bold Evolution

Intel’s Bold Comeback

Intel, a leading figure in the semiconductor industry, has underperformed in the stock market over the past five years, with shares dropping by 4% as opposed to the 176% return

Semiconductor market

Semiconductor Slump: Rebound on the Horizon

In recent years, the semiconductor sector has faced a slump due to decreasing PC and smartphone sales, especially in 2022 and 2023. Nonetheless, as 2024 approaches, the industry seems to

Elevated Content Deals

Elevate Your Content Creation with Amazing Deals

The latest Tech Deals cater to creators of different levels and budgets, featuring a variety of computer accessories and tools designed specifically for content creation. Enhance your technological setup with

Learn Web Security

An Easy Way to Learn Web Security

The Web Security Academy has recently introduced new educational courses designed to offer a comprehensible and straightforward journey through the intricate realm of web security. These carefully designed learning courses

Military Drones Revolution

Military Drones: New Mobile Command Centers

The Air Force Special Operations Command (AFSOC) is currently working on a pioneering project that aims to transform MQ-9 Reaper drones into mobile command centers to better manage smaller unmanned

Tech Partnership

US and Vietnam: The Next Tech Leaders?

The US and Vietnam have entered into a series of multi-billion-dollar business deals, marking a significant leap forward in their cooperation in vital sectors like artificial intelligence (AI), semiconductors, and

Huge Savings

Score Massive Savings on Portable Gaming

This week in tech bargains, a well-known firm has considerably reduced the price of its portable gaming device, cutting costs by as much as 20 percent, which matches the lowest

Cloudfare Protection

Unbreakable: Cloudflare One Data Protection Suite

Recently, Cloudflare introduced its One Data Protection Suite, an extensive collection of sophisticated security tools designed to protect data in various environments, including web, private, and SaaS applications. The suite

Drone Revolution

Cool Drone Tech Unveiled at London Event

At the DSEI defense event in London, Israeli defense firms exhibited cutting-edge drone technology featuring vertical-takeoff-and-landing (VTOL) abilities while launching two innovative systems that have already been acquired by clients.

2D Semiconductor Revolution

Disrupting Electronics with 2D Semiconductors

The rapid development in electronic devices has created an increasing demand for advanced semiconductors. While silicon has traditionally been the go-to material for such applications, it suffers from certain limitations.

Cisco Growth

Cisco Cuts Jobs To Optimize Growth

Tech giant Cisco Systems Inc. recently unveiled plans to reduce its workforce in two Californian cities, with the goal of optimizing the company’s cost structure. The company has decided to

FAA Authorization

FAA Approves Drone Deliveries

In a significant development for the US drone industry, drone delivery company Zipline has gained Federal Aviation Administration (FAA) authorization, permitting them to operate drones beyond the visual line of

Mortgage Rate Challenges

Prop-Tech Firms Face Mortgage Rate Challenges

The surge in mortgage rates and a subsequent decrease in home buying have presented challenges for prop-tech firms like Divvy Homes, a rent-to-own start-up company. With a previous valuation of

Lighthouse Updates

Microsoft 365 Lighthouse: Powerful Updates

Microsoft has introduced a new update to Microsoft 365 Lighthouse, which includes support for alerts and notifications. This update is designed to give Managed Service Providers (MSPs) increased control and

Website Lock

Mysterious Website Blockage Sparks Concern

Recently, visitors of a well-known resource website encountered a message blocking their access, resulting in disappointment and frustration among its users. While the reason for this limitation remains uncertain, specialists

AI Tool

Unleashing AI Power with Microsoft 365 Copilot

Microsoft has recently unveiled the initial list of Australian clients who will benefit from Microsoft 365 (M365) Copilot through the exclusive invitation-only global Early Access Program. Prominent organizations participating in

Microsoft Egnyte Collaboration

Microsoft and Egnyte Collaboration

Microsoft has revealed a collaboration with Egnyte, a prominent platform for content cooperation and governance, with the goal of improving real-time collaboration features within Microsoft 365 and Microsoft Teams. This

Best Laptops

Top Programming Laptops of 2023

In 2023, many developers prioritize finding the best laptop for programming, whether at home, in the workplace, or on the go. A high-performing, portable, and user-friendly laptop could significantly influence

Renaissance Gaming Magic

AI Unleashes A Gaming Renaissance

In recent times, artificial intelligence has achieved remarkable progress, with resources like ChatGPT becoming more sophisticated and readily available. Pietro Schirano, the design lead at Brex, has explored the capabilities

New Apple Watch

The New Apple Watch Ultra 2 is Awesome

Apple is making waves in the smartwatch market with the introduction of the highly anticipated Apple Watch Ultra 2. This revolutionary device promises exceptional performance, robust design, and a myriad

Truth Unveiling

Unveiling Truths in Bowen’s SMR Controversy

Tony Wood from the Grattan Institute has voiced his concerns over Climate and Energy Minister Chris Bowen’s critique of the Coalition’s support for small modular nuclear reactors (SMRs). Wood points

Avoiding Crisis

Racing to Defy Looming Financial Crisis

Chinese property developer Country Garden is facing a liquidity challenge as it approaches a deadline to pay $15 million in interest associated with an offshore bond. With a 30-day grace

Open-Source Development

Open-Source Software Development is King

The increasingly digital world has led to the emergence of open-source software as a critical factor in modern software development, with more than 70% of the infrastructure, products, and services

Home Savings

Sensational Savings on Smart Home Security

For a limited time only, Amazon is offering massive discounts on a variety of intelligent home devices, including products from its Ring security range. Running until October 2 or while

Apple Unleashed

A Deep Dive into the iPhone 15 Pro Max

Apple recently unveiled its groundbreaking iPhone 15 Pro and iPhone 15 Pro Max models, featuring a revolutionary design, extraordinary display technology, and unrivaled performance. These new models are the first