iTranslated by AI
WBS Easy: Simplifying Risk Analysis in WBS for PMOs and PMs
For some reason, YouTube is banned, so I am using Vimeo instead.
Background
Have you ever worked in a role related to PM (Project Management) or PMO (Project Management Office)?
Given the current environment where "AI writes code automatically," it seems that the importance of PM and PMO, roles that "move people," is increasing.
However, when someone who has been writing code as an engineer suddenly starts working as a PM or PMO, they need to unlearn their previous technical working style and learn new methods.
In simple terms, there are techniques such as "how to use Excel," "how to write a short-term WBS," and "how to write sequence diagrams." More difficult tasks include "defining specifications to improve user experience," "coordination between stakeholders," and "understanding dependencies and critical paths."
It was none other than me who was thrown into chaos by such PMO work.
Since I started working as a PMO, I became a useless dummy, unable to do anything other than technical tasks amidst uncertainties like the following:
- Drawing WBS lines without considering buffers or risks
- Clumsiness in coordination with stakeholders
- Being unable to foresee risks as uncertainties or set priorities
- Documents written in non-concise Japanese
In other words, while I could read code in React, Next.js (with experience in bug fixing), Go, and Android, I couldn't handle Japanese, communication, or project management.
Being thrown into chaos by the PMO job, I eventually failed to run the project well and quit my company at the time. I decided to rethink what I could have done better to run the project more successfully (I am currently earning some pocket money by taking on IT work for my parents, while reading the code of the autonomous driving OSS, Autoware...).
Therefore, this time, I thought about "how can novice PMOs and PMs run their business more successfully?"
Challenges
In considering the challenges, I reorganized where I, as an "N=1" individual, stumbled in my PMO work. The following three points seemed to be the causes of my stumbling.

Challenge 1: Unable to grasp assumed risks when writing a WBS and creating a plan
As a rough engineer, I was good at "building the happy path at high speed," but I often left understanding sub-normal or abnormal paths to the QA team or other thoughtful engineers. Such a personality surfaced during the planning stage as well. I created plans at the WBS stage without considering risks or buffers, and I received mountains of reviews. I realized my lack of imagination outside of my work as an engineer.
Challenge 2: Not good at coordinating with stakeholders
I was a socially awkward introvert, so coordination with stakeholders did not go well either. There were frequent misunderstandings due to the way I used language, and even when told to coordinate with stakeholders, I could not imagine who or what I should coordinate.
Challenge 3: Poor at using Generative AI for project progress and poor at running PDCA cycles with my boss
My boss told me I should create outputs using Generative AI, but I was vague about what kind of prompts to write, I couldn't really ask my boss for advice on how to do it, and I didn't have the passion to work until I improved things with my own mechanisms using Generative AI.
How should I have solved these three challenges?
Looking back at challenges 1 through 3, the common factor was "that I couldn't see the relationships between people."
WBS delays were also caused by human relationships or conflicting interests, such as:
- Delay in customer decision-making
- Misunderstandings with outsourcing partners
- Mismatched expectations with my boss
I wanted to solve these issues, which are faced by people who do not yet have the ability to ask Generative AI effectively, using IT services powered by Generative AI.
Solution
Amidst such remorse for the past, I came up with the hypothesis: "Aren't risks in project management manifested only within individual stakeholders or between stakeholders? And if so, can't we model them?"
If engineers are in "technical roles" or "positions that solve technical problems," then PMOs and PMs are "roles that move people" or "positions that solve problems between people."
Reflecting on the situations where I struggled as a PMO:
- WBS delays
- Lack of coordination with stakeholders
- Misalignment with my boss
- Overlooking risks
All of these were mostly problems related to people.
Of course, there are technical challenges. However, even with technical challenges, "human relationships" significantly affected project progress, such as:
- Who makes the decisions?
- Who needs to be consulted?
- Who is responsible for the task?
- Whose approval are we waiting for?
So, I began to think:
"Can't most risks in project management be expressed as people themselves, or as the relationships between people?"
If so, by identifying the stakeholders in a project and systematically analyzing them individually or in combination, even an inexperienced PMO might be able to discover risks.
In other words, it is explained as follows.

Suppose there are a total of n stakeholders in Project P, consisting of "n-1 human stakeholders + the environment itself."
I thought that most risks in a project could be expressed as either:
- Risks caused by a single stakeholder
- Risks caused by the relationship between stakeholders (two stakeholders)
(Of course, there might be risks caused by relationships between three stakeholders, but they are complex and have high computational costs, so I have not considered them.)
In this case, there are "n + \frac{n(n-1)}{2}" points where risks occur.
In other words, by listing the relevant stakeholders for each step of the WBS and investigating and sorting their individual and combined effects, I thought it would be possible to systematically extract risks and select important ones.
Product Details
Usage Scenario
Our service is intended for novice PMOs and PMs to use when they want to "know the risks, such as how much buffer is needed or what is necessary for coordination with stakeholders, in each step of the WBS."
Feature 1: Automatic WBS Creation
If you want to start, first have the generative AI create a WBS.
You need to input the "project overview," "project purpose," and "project requirements."

After inputting and waiting 30-50 seconds, the WBS and descriptions for each step will be output.

Feature 2: Risk Analysis Function
Once the WBS is displayed, you can perform risk analysis.
To perform risk analysis, click "Perform risk analysis" in the box for each step of the WBS at the bottom of the WBS.

Risk analysis follows the procedure described above in the following steps.
An example of the flow is as follows.
- Understanding stakeholders (up to 7 stakeholders plus 1 environment stakeholder for a total of 8)
- Brute-force extraction of individual and pair stakeholder tasks (up to 3 items per pair)
- Sort stakeholders by the average "priority" of the extracted tasks. Clicking each stakeholder displays their task list in order of priority.
- Priority = Expected delay days x Risk score

→ This allows you to understand "which stakeholder's tasks to watch out for" and "what countermeasures or communication should be taken for that stakeholder" for each step of the WBS. Through these, I solve the problems of novice PMOs/PMs such as "not knowing risks" and "not knowing how to communicate."
Example: In the image above, the "Backend Development Team" has the deepest red background, and the "Environment" has the lightest red. Therefore, the priority is the "Backend Development Team," and if you click on the team, the "Task Content" and "Workarounds" will appear below.
Feature 3: Risk Analysis JSON Download/Replay
Since this risk analysis does not save contents using a database, you need to follow these steps to save and replay the same content:
- Press the "Download" button on the risk analysis result page to save the JSON containing risk information locally.
- Upload the locally downloaded JSON from the following site to replay the risk information.
System Architecture
The code is managed in the following Github repository.
Azure Architecture

Azure Static Web Apps updates when you push to Github.
Azure Functions can be deployed from local VSCode.
In Azure Foundry, I used GPT-4o-mini from the limited options because the tier was low.
As mentioned, I wanted to avoid the hassle of using a database (having been hit with high charges on AWS Aurora in the past, I only trust things like Dynamo), so for now, data persistence is secured by JSON save/replay.
Frontend
Surprisingly, in this day and age, the code was written by hand with Copilot completion!!! I prioritized speed, so I used 'any' frequently. The mock I made first had catastrophic design, so I had ChatGPT think of a good design, and also wrote the CSS by hand with Copilot completion!!!
It's a hobby code, so I hope the AI automation police will forgive me...
Frontend: React 19 + TypeScript
UI Library: Material-UI (MUI)
Routing: React Router v7
Gantt Chart: @svar-ui/react-gantt
Build Tool: Vite
Styling: Emotion (CSS-in-JS)
Prompt Ingenuity
In the prompt, I wrote one example of input/output content so that OpenAI could easily guess. Also, I sort by looking at the likelihoodScore and delayTime properties of the JSON object output by OpenAI. In other words, I use the JSON results returned by OpenAI directly for the judgment.
Also, the prompt for extracting stakeholders is currently set to extract only 7 stakeholders. This could be increased if I weren't afraid of calculation time, but I think 9 is sufficient even at most.
Through this Hackathon...
While building this, I thought that if I have another opportunity to work as a PMO or similar, I want to think of solutions that can solve the problems of on-site PMO/PM roles. It was a great opportunity to rethink my past work! (Maybe I'll use it for my work with my parents first)
Also, since I usually only use AWS, I was glad to learn about Azure development such as Azure Static Web Apps, Azure Functions deployment, and how to use Azure Foundry.
Actually, I wanted to create an AI web application using "Minimax Tree of Thoughts" like the paper below, but I lacked the ability.
Thank you for reading this far!
Also, I don't know if "WBS Easy" is a correct name lol
Discussion
そうですよねー。納得です。
ありがとうございます!
「PMO見習いもどき」の直感も一応筋が通ってたみたいで安心しました