Phases and Sprints

Hi,

Something occurred to me today while trying to do an exercise that I didn’t have time to do and will not have time to do tonight. Those things bother me, but little visual metephors are nice and at least I got one of them.

We have lots of little “exceptions” in the world of language and science. “I after E” is a rule, of course, except after “C” and blah blah “neighbor and weigh”. That is just one. And at one point leopards were jungle creatures until they found one in the snow and said, oh, that’s a “snow leopard”. We adapt as wel go along, more so the further we get from math, which is one gigantic tautology with both sides of the equals sign (or in language, the “is”) are the same exact thing.

SDLC methodologies are not close to math. They involve complex ideas (words, thoughts) that even when defined have a context, an environment, and a value.

Remember years ago I was writing about PMI and phases? Sure you do. Yes you do. Okay, well I did. I made this sassy little picture:

And then I gave a whole bunch of artifacts as examples:

And I was thinking, Sprints are obviously a different animal from the above, but the iteration is common. I get the impulse to say, “well, a spike is not really a backlog item but it kind of is, so let’s call it something special and make an exception.” This is commonplace. I would suggest taking a step back, maybe?

If you took all the stuff that Scrum calls “spikes” and all the stuff that people say don’t really fit in a Sprint such as political or organizational change, fact-finding missions, hardware setup, etc etc, and consider them along with the backlog in a Sprint planning session, then the first model of outputs driving inputs holds. In fact, even without applying it wholistically, inputs in Scrum and Agile still drive outputs and vice versa. It is about responding to change, and responding in general.

Kinda neat at this moment. Maybe not a big deal, but I can see two schools of thought merging here in a really obvious way that never occurred to be as vividly before. It is a bit embarassing, I suppose. Still, I bare my soul to you, Dear Reader. A Sprint need not be limited to tasks or stories. Really, I don’t know if it *ever* is… no matter how cut and dry the backlog seems. There is always churn in the background, and actions have reactions.

Best,

Josh

Disciplined Professionals over OOTB Process

Artsy today

(that’s a 22″ bicep… Arnold won the Olympia with ~21″ biceps – you know how we do?!!)

Soon I will post doodles.

Not having a tablet has limited my ability to convey ideas.

That will all change shortly. Also, my book project is officially stalled because I need to work more billable hours.

Doodles are coming. Cool doodles. Workflow doodles that make fun of workflow doodles. Doodles that will make some people upset and some smile. Doodles. By nature, they are informal. Stay tuned… I am excited.

Also, a new project landed in my lap that has been taking some seriously unexpected time. I will not tweet this update, but for those who do read the blog (there is 120 or so subscribed to my feed!) I wanted to give an update because I have that illusion that people care about what I say and want to know where I am.

BTW – CMMI is a gauge, a guide, a more or less academic set of guidelines that originated with the United States Government. It is not something to be emulated, just a mirror to view your organization. These efforts for CMMI for Agile are extraordinary and I don’t know how to say it, but you can imagine how I feel about it, maybe.

Feeling sassy today.

Check out this really slick graphic that I did not do (credit goes to Sarah Chong) depicting Social Media demographics. No idea how they got the data, but it looks slick. We dig slick.

Best,

Josh

Cue the Unsolved Mysteries Music….. UPDATE!

Thanks to Laura, who is practically gifting a brand new tablet to the MiT Team (right now, just me). When she has a site, I will link to her, but for now the world will have to wait for her design and advertising talents. She is busy. Doing stuff.

How getting my CSM changed my life

It didn’t, but it did allow me to apply for the CSP, which has substantive value and has me jazzed a bit. I will likely be kissing the Scrum Alliance‘s bum for the next few months at least while they evaluate my application.

I did get my own link: http://www.scrumalliance.org/profiles/86036-joshua-milane and web pages about me are almost always very cool.

Again, thanks to BigVisible for demonstrating the Agile tenets through their actions, even when nobody is watching.

I have to also give a big shout out to the Agile Alliance, and I will remain an Agile proponent above all else (I mean, besides my wife, pizza, and some other things).

Best,

Josh

Why I Care

I have to admit I do not fully understand the reason that I care so much about, of all things, the SDLC. I care more about building software than I care about Global Warming, Shamu, or almost anything besides family and trying to get big. There are a couple of potential reasons for this, and I want to list them not so you or I understand, but so the reason I have become an evangelist without a sponsor can be brought to light. It is a selfish post. Maybe you will have thoughts about it. Maybe they will be “dang this kid is a mess” or “boy, we need to hire him ASAP.” That is up to you.

1. Dad said to find out what you are better than other people at, and consider it as a career. He actually said something slightly different, but you don’t know Dad so you would not understand him as it reads.

2. The SDLC is what delivers software;

2a. Software can keep track of inventory or pay bills, but it can also bring hope to the hopeless and health to the sick. It can do real good, and the SDLC drives the delivery of all these little bricks that will build that world our children will live in.

3. My career has followed a path much like a river follows the landscape (or, if you like Hendrix quotes, like the Moon loves the Great Blue Sea). It evolved naturally, took on momentum, and I did not set a goal but instead chose a direction that would bring me closer to where I wanted to be, even though I could not fully articulate where I wanted to be.  I did not choose to be this weird half PM half SDLC half Generalist person. I’d have been better off sticking with VB back in the 90′s and updating my MS skills along the way so I could present myself as a Technical Lead with crazy Visual Studio skills and mastery of all things MS. I’d be better off in regard to the availability of contracts where there is a very quantitative measure, at least. For me, that is not enough.

4. I react on a visceral level to fraudulent or insincere and profit-motivated actions in the Agile arena. This is probably a result of the aforementioned.

5. I was a philosophy major, and see no use in that which cannot be applied except to allow those who want to engage in cerebral debate that very luxury. I have not time for luxury, with so much work to do. We want to change the world here at MiT Consultants.

6. I love people who care about what they do, and the SDLC helps me help them. At the end of the day, I have made absurd amounts of money and felt good about a number, but I have also helped a kid in a really bad part of Boston find a job, and felt good about life. Huge difference. Agile and not just Scrum is simply the realization that the SDLC is a process unlike others and where change is expected, you must check in often. It is why babies are not left alone for days at a time; they need to be assessed. Hungry? Thirsty? Whatever else babies need too – I do not have any yet. I think they need like, hugs and stuff as well. :)

7. I abhor thieves and frauds, as stated, and the proper SDLC ensures a transparency that makes perpetrating something I consider criminal and other consider “business” near impossible. I have not always been an Angel. I will not lie. However, my word has always been good and I have never broken a promise. I also have always done what I thought was right, in my chest, regardless of the process’ dictum. Of course, first you try to change the process or rule, but failing that I simply will not tell a Client that “you have to pay 50 percent more if you want it to work with Internet Explorer; we never discussed that and it is not in the SOW.” Oh yeah – there are companies that do that. I worked for one. It still makes me stick to my stomach. I introduced informed estimates (which slowed down the estimate process) and Management was displeased until we started landing more projects despite submitting fewer bids. I abhor sloppiness and selfishness. I do so in a very selfish way.

8. OO GUI tools enabled iterative development and “Agility” during the Development Phase by breaking what was lines and lines of code into encapsulated and re-visitable, refactorable, replaceable components. PowerBuilder was a leader in the mid 90′s. They had the Data Window. I was part of that, and thought it was awesome. We did JAD sessions before anyone was talking about Agile. Agile is not some shiny new thing with infomercials. It is substantive. Before it was applied to development, people were using iterations. If you have ever drawn up a legal contract, you are familiar with documentation iterations and collaboration within a team environment.

There are more reasons, but that is enough.

I was recently in an interview when someone told me “you seem very sure of yourself. Is that ever a problem?” This was a Sr. VP asking me, so I wanted to be clear on what he was suggesting. I asked if he meant I come across as cocky. He said no. I then explained that I love to be wrong, and I love to be the dumbest person in the room. There is no one right answer. Look at my blog. Back in 2007 I was saying things with utter and rabid conviction that I would tear apart now like Mikey the Wonder Dog tears apart vitually every toy meant for “normal dogs.” I don’t take those posts down and try to instill some false sense of knowing the right answer all along. When I, personally, learn through experience or teaching, I learn it more “deeply” than if I read it and believe it. I digest it, and like a vitamin that I am deficient in, it is made part of the organism. The delivery method. Part SDLC, part Practitioner.

Fact: People don’t like change.

Fact: People like it when change is their idea much better than when it is imposed.

Fact: People want to do well and feel good.

Fact: Dictum is the opposite of adoption.

Fact: People are what software is all about. Even with MDA and RDF (support RDF please! And Stop. Trusting. Google. SERIOUSLY! (Great video, thank you Mr. Olivieri).

Start working WITH impartial standards) – it is ultimately about people. Stop trusting “experts” and become an expert. Nobody knows what you do like you do, and you can test expert theories, would be negligent not to, probabbly, but ultimately it is your (our) responsibility to take ownership. If I am speaking to a President of a 500MM dollar corporation, they are eyes and a brain with motivations and a mind that I have free access to. Why introduce bologna into something so powerful?

I don’t mean the bologna sandwich. A sandwich can make a lot of people really like you. It is how I got Lara to marry me. Romance at the Deli. I am quite the courtship artist. Ask her ;)

So here is another place I will contradict myself. I got into a bit of a beef with several Twitter folks (Twits) about the fact that they were “Agile Coaches” teaching Scrum. My reasoning was that Scrum is a process, and the Agile Manifesto expresses the need for people before process. In other words, no one process is best for all teams.

I still agree with that, but have thought about it. Even writing the Agile Manifesto was a *process*. Scrum happens to be very digestible and it sets guidelines for transition to Agile or refining of Agile/Scrum technique. It is bright and shiny and there are certificates that lend it authority and it makes sense to start with Scrum – but accompanied with the basic Agile tenets and the flexibility to introduce concepts like Kanban if the team reveals itself to be more likely to adopt it. Here we have processes and people, and the people are informing the processes, which in turn provide guidance or best practices to the people. It becomes academic and about semantics. Scrum is ready to go. XP is not as much. Kanban is really super cool to ME, but makes other people stare with that blank look. I think it is because I learned to be Agile even when working construction, then learned it as it applies to software in form of Scrum, and can see the value streams in the process through the eyes of a non-technical person, a technical person, and a change facilitator. This makes me that aforementioned Generalist, but is also pretty empowering. Basically, I want you and your team to have success. I want software to change the world. I want to be a part of that amazing movement where a glimmer in the eye of an entrepreneur becomes an applications with a million users. That is magical. My discipline is facilitating change and manifesting the abstract as real, repeatable, value-filled brick to build that future my kids will live in. In software, we have enormous responsibility. We must protect technology from big money lobbying and marketing and encourage the community to sing We Are the World and get stuff done. Get it done. Feeling good about yourself and your career will follow from getting it done.

Bless you, and thanks for your time today. It is a gorgeous 72 degrees here dead in the middle of Providence and Boston, and I am going to be changing my entire business model, inspired by the sun. I know which way to go. I know which way I need to go. And, more importantly, I know how to help you. Stay tuned, please.

Best Regards, and if you ride motorcycles, please remember it isn’t you that you have to worry about. It is the other guy/gal who is bopping along to The Cheeky Girls and driving like an idiot.

The Cheeky Girls will make you smile. Or, you will lose all respect for me. Click at your own risk. Not obscene, but they say the word “bum” a couple times and some of you are tightasses. :)

Josh Milane

A recommendation for Boston Scrum Training

I have rarely had the pleasure of dealing with a company as human and transparent as BigVisible here in Boston.

http://www.bigvisible.com/

If you require CSM, CSP, CSPO or other Scrum training, I can say that I have spoken to the vast majority of the big players and BigVisible is by far the coolest.

Short but sweet; I felt compelled while looking at my calendar for March.

I will let you know how the course goes. It will be interesting to see how they present Scrum after having the pleasure of attending a 2 day workshop by Agile Bob of www.agileforall.com and discussing it for what seems like eons, practicing it for a number of years. The more perspectives, the better… IMO. Bob had great visuals and exercises. I am a fan of learning through visual, auditory, tactical, and as many senses as possible.

Best,

Josh

Stop the Line. I mean, stop the car!

Some problems or failures of development do not manifest until the product goes live (the servers go up, the car hits the streets, etc). The Stop The Line mentality of manufacturing and the Just In Time (JIT) practices are great at rolling out product, but when things happen quickly, there is not a lot of time for forethought and there is very little time for testing outside unit testing or TDD. What other kind of testing is there? Human testing… user error testing… real life, this thing is now rolling along and we got it out fast but damn, I am not sure that was the best way to do it testing. Analysis is lacking. Isn’t a tenent of Agile that you cannot know everything up front? Does that mean that we say, “oh well, we will figure it out when we get there?” Classically it does – with a little bit of “keep it in our sights” thrown in. However, there are cases where it should not and this latest fiasco is a great example of not putting on the Lean hat and setting out to conquer the world, nor the Scrum hat, nor any hat in particular.

I find it interesting that the Prius was held up for so long as an example of Agility and Lean principles. It was amazing. The spec was something like “fit 4 people and get 50 mpg” and the engineers surpassed the spec in an extremely short period of time.

We need to be more holistic as we deliver products. Think about the road ahead. Our code might be extensible, but is our set of assumptions? Have we tried extending it? Has anyone driven the car?

It got 50 mpg and fits 4 people, but you might want to make sure the floormat doesnt catch on the gas or worse: that the electronics are bad. Surpassed the vision, but killed people in a way that is downright ridiculous. I would like to say it is over-intellectualizing of process, but that is the pot calling the kettle black.

Everything in moderation, please, as informed and practical professionals. Let’s not have cults.

Best,

Josh

Toyota: Floor it! I mean, Floormats!

I have to go to a meeting but I have to at least say that I am excited at the scandalous possibilities the recent developments with Toyota may have in the Agile community.

If they *did* know there was an issue with the electronics (and if there even was one), where does the JIT / Lean come into play? The product is shipped (delivered), yeah?

Nope. It lives out there and carries, in this case, human lives. This carries risk and manifestation of a different type of muda, if it is true.

Goodness I don’t understand English-speaking people who use that word. It would be one thing if muda meant something more complex, but it means “waste”. Ya’ll cant just say WASTE? Fo rizzle?

Anyhow, lesson:

Just because it has shipped it does not mean you are done! Waste can come back and manifest as an ass whupping.

Gotta read more about this and get back to you. I know you are holding your breath… give me a few.

Thanks,

Josh

Feature Analysis Spin

It used to be that you could identify the priority of a feature by using a few metrics such as user value, business value, and technical difficulty. Those are really the three biggies, and I think those days are really gone if we are going to be honest. In software development, people love things that help quantify the problems or illustrate what can be a black box of development. I do not aim to devalue the FFA, but only put it in context a little. Truthfully, I did not know that this was called an FFA until a small development shop let me know that of course, there was an acronym for that. The same development shop happened to assign a value to Business Value without Client input, so just goes to show: you can know the acronyms and sound good at the presales meeting, but when it comes to building software, all that fancy talk falls away and you better be able to deliver. Everything in context.

Anyhow, say we have two tasks, one super easy and one really difficult. For sake of illustration, we will assume the same UV and BV.

As a side note, you can apply multipliers if, for instance, there is a reason to favor BV over UV or vice versa. That is *usually* the way I do it, even if it is BV(1.2) or UV(1.1). This is often referred to as a flexibility matrix when discussed and shown as a standalone concept. It is just a way of weighting things. See a rather strange perversion of the Iron Triangle (Time, Scope, Cost) for a nice writeup on the flex matrix. That is what the cool kids call it. Flex matrix.

Hard Task (scale of 1-5 with 1 being low)

  • Business Value 2
  • User Value 2
  • Technical Difficulty 5
    • Total of 9 (BV times UV times TD)

Easy Task (scale of 1-5 with 1 being low)

  • Business Value 2
  • User Value 2
  • Technical Difficulty 1
    • Total of 5

So here we would have the Hard Task ranking higher in priority than the Easy Task.

Funny: what happens if we change “Difficulty” to “Ease”?

Hard Task (scale of 1-5 again, with 1 being low)

  • Business Value 2
  • User Value 2
  • Technical Ease 1
    • Total of 5 (BV times UV times TD)

Easy Task (scale of 1-5 again, with 1 being low)

  • Business Value 2
  • User Value 2
  • Technical Ease 5
    • Total of 9

It changes things completely. It makes our grid of values and features/tasks Agile.

What was changed was the value of effort. Low effort is valued higher with Technical Ease. You can start knocking things off your backlog quickly this way. That is, for all the tasks that exist independently and without dependencies of external factors of any sort. It also assumes that low effort means quicker execution, which is not always the case.

Constant re-evaluation during your iterations will change the values that each task has assigned. The numbers, and backlog priority, will change. Even if you are not doing Scrum, this can be used to track features or tasks within any methodology that I can think of right now aside from strict “The GANTT IS GOD” SDLCs. No offense. I once worshiped the WBS like nobody’s business and yeah, do still use them sometimes although largely in an informal setting.

That said, with the devaluing of difficult technical tasks, you do not get to pay less attention to them right away. Indeed, certain flags are thrown when something is going to be very hard technically. This is where some Agilistas (I think they like to be called that instead of Agilists) miss the boat. Discovery is important, and you know how much discovery you need when you do it. Not before. I can mention a time I had a Client who said we would need to interface with his MSSQL Server. No problem, right? Eh… this thing was not only on an old haggard machine, but was fed old data by a complex and convoluted Foxpro system. It wound up being a huge task and Foxpro was replaced. Or, a reversed scenario: I can think of a time that a Ruby on Rails front end was proposed for an Ektron CMS installation, and it looked perfectly straightforward on paper.

Thanks for your time,

Josh

Disabling Google Buzz The Easy Way

I’ve been saying for a long time that “Don’t Be Evil” is a nice slogan, but in reality we all know what comes with tremendous amounts of data and information – tremendous power. Google may not be outright evil, but this centralization of all things G- and movement towards high speed fiber, cloud processing, etc., I just think that this article about disabling Google Buzz is useful. I did the silly tweaks that you could do before and was in the process of changing free email providers for personal use, but I am glad CNET points this addition to the settings tab within GMail. I would not have noticed.

I have been known to be a conspiracy theorist and really want to believe in the Loch Ness Monster, so I get where you are coming from if you shrug this off, but every time there is a new shiny gadget I am the first to want it. I had every Nextel phone that came out, as they came out for no real reason. Google Buzz is about as useful to me as Google Wave – but is extremely useful to data hoarders.

Anyhow, I found this on Twitter @andrea88 - I actually have the flu and just turned 36 so I am not doing much besides moping around today. Thanks, Andrea.

Thanks, be well. Don’t get this bug I have. Enjoy your dogs. Eat something bad for you. Be easy.

Best,

Josh

Page 4 of 18« First...2345610...Last »