For about twenty years, most IT organisations were built around three words: Plan, Build, Run. It was a good model. It gave everyone a place. Plan owned the budget and the roadmap. Build owned the code. Run owned the servers and the pager. With AI agents and spec-driven development, that model no longer fits. What [...] The post From Plan-Build-Run to Specify-Generate-Verify-Operate appeared first…
I hear the same sentence in almost every project I join. “We have a frontend team and a backend team.” Nobody questions it. It is just how software is built today. But this split was never a technical decision. It was a hiring decision. And with AI agents in the loop, the reason behind it [...] The post appeared first on Martinelli .
How one underrated Actuator metric explained a recurring OutOfMemoryError in a Spring AI MCP server — and why the default keep-alive setting is the wrong default. The post The MCP Server That Leaked a Connection Every Four Minutes appeared first on Martinelli .
Most software modernization projects do not fail because of technology. They fail because nobody knows anymore what the old system actually does. The code is there. It runs. It carries the business every day. But the people who wrote it are gone, the documentation is outdated, and the requirements only exist implicitly in the code. [...] The post Modernizing Legacy Systems with the AI Unified…
Every time I talk about Spec-Driven Development, someone says the same thing. “That is just waterfall.” They mean it as a gotcha. It is not. Two things are going on here. First, most people have never read what Royce actually wrote. Second, even the real waterfall is good in the right place. Let me take [...] The post Waterfall Was Never the Problem appeared first on Martinelli .
Use cases have been around since 1987. In May 2024, Ivar Jacobson, Ian Spence, and Keith de Mendonca published a refreshed guide called Use-Case 3.0. If you read my earlier post on Use-Case 2.0, this is the natural next step. Use-Case 3.0 keeps the same core ideas and adds structure so that use cases fit any [...] The post Use-Case 3.0: The Refreshed Guide to Driving Development with Use Cases…
In the AI Unified Process (AIUP), the spec sits at the center. The use case is the unit of work. You write a system use case, AI generates the code, and tests confirm the behavior. The use case is the source of truth. The code is a derived artifact. That puts a lot of weight [...] The post AI Writes the Code. This Book Still Teaches the Use Cases. appeared first on Martinelli .
In software, “shift-left” means doing the important work earlier. The earlier you catch a problem, the cheaper it is to fix. We learned this with testing and later with security. The same idea now applies to specifications. And in the AI Unified Process (AIUP), it is the part that matters most. The post Shift-Left: Getting the Spec Right Before the Code appeared first on Martinelli .
When an AI agent builds a screen for you, the slow part is no longer writing the code. It is reviewing it. You have to read what the agent produced and decide if you trust it. The more code it writes, the more you have to read, and the more places a subtle mistake can [...] The post Web Components Mean Less Code to Review (A Win for AI Built Business Apps) appeared first on Martinelli .
In a spec-driven world, every change to the running system has a reason. Either the system does something it should not do, or we want it to do something new. AIUP captures this with two work item types that sit next to the main Use Case flow: Bug and Enhancement. The post Bug or Enhancement? How the AI Unified Process Handles Change Requests appeared first on Martinelli .