Development Processes
Discussion of development processes, both Agile and Orchestrated.
Back in January, Brian H. Prince from Microsoft interviewed me about the UML features in Visual Studio Team System 2010. Today, he informed me that the interview is finally live on Channel 9
My buddy Josh Holmes has written a very excellent post on the Return on Investment (ROI) for software. I recommend it to anyone who sees software as a business, not just a job or a hobby. Last week, the always-worth-reading Patrick Greene made a comment that made me start thinking specifically about the ROI for Requirements Analysis. Most teams and most managers know they have a requirements problem; but too many of them say, “But we’re too busy to fix it, so we’ll just start coding.” Or “We’d like...
Continuing The Project that Time Forgot, a UML case study. (Click images for larger versions.) On the surface, this Episode may seem almost social. Demented and sad, but social. But if you could join Hacker Girl, reading Geek Girl’s Tablet PC over her shoulder, you might see a different picture: And you would also see this diagram: You saw a conversation. Geek Girl hopes that Pilot saw a conversation. But she saw an interview, and a chance to capture and model requirements. Let’s review the notation...
Update: Fixed a typo and a calculation error. Josh Holmes has a great post on Return on Investment (ROI). And by “great”, I mean great even by Josh’s usual standards. He worked hard on this one. I was privileged to review three drafts before he published it; and by draft two, I was saying, “Josh, this one’s a winner. I’m going to reference this one a lot.” So stop reading me, and go read what Josh has to say. I’ll be waiting here when you get back. OK, you’ve read it. Pretty scary, huh? But the scariest...
Continuing The Project That Time Forgot, a UML case study in comic strip form... (Click pictures for larger images.) After a long hiatus due to weather, illness, work, conferences, and more stuff than I can explain, the Lounge is back. This Episode gets the ball rolling for Act II, so there’s not much new UML content here yet. But I can give you a few diagrams of the team’s review process. The process starts with some preliminaries, then splits into three threads of operations, each with a separate...
Note: This is a Best Of post from my other blog. The topic came up on Twitter, so I'm rerunning it here. Coding Geekette has a slightly dated but still timely post about The Making of a Good Developer. That post was inspired by Justin Etheredge's equally interesting post on why Being Smart Does Not a Good Developer make. Both address the idea that good developers are those who like to learn new things, not just smart people. And they lament or wonder that so many people in the software development...
Ship It On The Side Episode 3 -- Use Cases is now released. Complete with goats
(Click picture for a larger image.) No, I'm not going to name any of the devs who inspired this post. They wouldn't know who I am, anyway. But it takes an extremely high degree of arrogance to go from "I don't see a way to use this" to "This has no value, no matter who says they're getting value out of it. So I'll dismiss it, and I'll mock them" Either arrogance, or more likely, insecurity: "I don't understand this; so since those people think it's important, either they understand something I don't,...
Curtis Gray informs me that the first Ship It On The Side podcast is now published.Listen to us talk about building and shipping great software while holding down day jobs
A business classic tells us that Quality Is Free. The title is intentionally provocative: no, quality isn't free, it just pays for itself. But first, you have to pay for it. And that, unfortunately, is where we fail in the quality game so often. Corporations seem addicted to the practice of compartmentalized budgeting, or what I think of as "bucket budgeting": you've got a bunch of different buckets you pour money into at the start of the fiscal period; and each bucket can only be spent on a particular...
Note: This was scheduled for tomorrow (hence the date drawn on the strip); but due to the U.S. Thanksgiving holiday, I'm releasing it a day early. Continuing The Project That Time Forgot, a UML case study in comic strip form... (Click picture for a larger image.) So in the previous Commentary, I wrote: This Episode is all introduction. It doesn't include much UML content, and there's not much to add yet. So naturally, this Episode has no UML content. But it was necessary to set the stage and to introduce...
Starting today in Ulterior Motive Lounge: a new UML case study. (Click the picture for a larger image.) And so it begins: a "simple" software project gone awry, and the slim hope that modeling will help us to understand it better and get it back on track. And if you think you've seen this story before and you think you know where it's going, take a closer look at that "hex sign" in the dirt: There's something mighty peculiar going on on The Island... So here's how this case study is going to work....
UPDATE: My word, what a lot of typos! I blame the bright sunlight and the glare it created on my Tablet PC. And I wasn't gonna move, because bright sunlight in Michigan is a rare treat right now. Fixed! In our last Episode, The UML Guy and Geek Girl explored how State Diagrams help you to model the rich range of flow in a user interface. Today, The UML Guy has an announcement. (Click picture for a larger image.) To this point, the Lounge has been somewhat random and piecemeal. (In other shocking...
Inspired by Steve Ballmer, here's some cheerleading for the most important part of the software development process... UPDATE: Here's a larger, more legible WMV version. Once upon a time, I wrote a book. Or rather, I wrote all but one-half of chapter 3 of a book: Requirements Patterns & AntiPatterns, sold to Addison-Wesley. For various reasons -- partly lost motivation when my Dad died, partly needing to put food on the table, partly just not finding time -- I've never been able to finish chapter...
Concern Worry Obliviousness "Has this happened yet?" "Oh, no, what if this happens?" "This could never happen." "How likely is this to happen?" "Oh, no, what if this happens?" "This could never happen." "How can we tell if this happens?" "Oh, no, what if this happens?" "See no evil, hear no evil, speak no evil..." "Can we prevent this from happening?" "Oh, no, what if this happens?" "This could never happen." "What will be the impact if this happens?" "Oh, no, what if this happens?" "No problem..."...
15.5 hours in to what I hoped would be a 5 hour day... Working the last major bug on the bug list... A bug that has literally consumed over 200 hours of development spread among various team members... A bug that our best minds looked at, and looked at, and looked at, to no avail... A bug that got the project lead so frustrated, he did the programming equivalent of taping electrical tape over the blinking VCR clock... And today, the black-electrical-tape patch started showing massive bugs of its...
Process is a lie. All of it. If you're spitting and fuming because you believe in software development processes, bear with me. I have a point to make, and you'll enjoy it. If you've never believed in software development processes and you're cheering me on, take a seat and a deep breath. I have a point to make, and you're not gonna like it. But you need to hear it. Process is a Lie? Process is a lie, because process is a plan for how we'll work. And plans are lies. All of them. A plan says, "This...
...I managed to get through the entire Agile Summer Camp without drawing a single UML diagram. I must be coming down with something
(Reposted from Agile Summer Camp. The team will edit and improve that version, filling in the gaps in my memory and understanding. This is my rough draft.) Organized by Chris Woodruff with the able assistance of Josh Holmes and Michael Eaton, Agile Summer Camp 2008 was a fantastic success. This is an Agile Summer Camp Diary, documenting bits and pieces of a fun, rich, informative weekend with a crowd of unwashed geeks. No text page (nor even sadukie's great pictures) can capture the full experience...