Wednesday, October 31, 2018

Is achieving CMMI ML3 supposed to be scary?

Dear CMMI Appraiser,

Our CMMI Appraiser is scaring us! This whole CMMI certification thing is worse than a tax audit. He’s keeping us in meetings for hours. He is demanding work product evidence for every single sub-practice in the model ... It is so over-engineered and burdensome. Is getting a CMMI ML3 supposed to be like this? ~ Don B.

Don,

Maybe you should have called 911. It sounds like you are under siege!  It’s more than a little eerie that your question comes on Halloween … Done wrong, a CMMI appraisal can be a real nightmare!


I’m not trying to make light of your situation (well, maybe a little - if you don't laugh, you'll cry). But it’s really scary to think that some of my brethren Lead Appraisers are so far off the deep end that they are making the CMMI feel like murder.

The intention of the CMMI is that you gather together, have fun, learn new skills, establish new traditions and come away the better for it. Where, oh where did your sick and twisted CMMI appraiser go wrong?

Let’s set the record straight.

First, as you are experiencing, too many meetings are a productivity KILLER. It’s a pretty good rule of thumb that the more meetings you have, the less you can accomplish. I’ve heard Lead Appraisers say things like, “We need to have a lot of meetings because they need everything clarified face-to-face, or else how can they understand the projects, resolve issues or risks or assumptions or any of those things?”  AAAAAAHHHHHHH!!  Shoot me now!

Somebody call the process police! That explanation is just criminal.

Second, a SCAMPI appraisal is NOT an audit! A good Lead Appraiser is the OPPOSITE of an auditor. The CMMI is a model for continuous improvement, and a Lead Appraiser is tasked with not only ensuring that you’re using the model properly, but that you are getting value out of it, and that your company is using it to become a better or – as I call it – a great company. That’s the bottom line of CMMI.

If your Lead Appraiser is insisting on seeing “work product evidence,” or what they call “artifacts” in CMMI v1.3 for every single sub practice in the model, he’s acting like an auditor. The CMMI does NOT call for an audit of subpractices! Talk about shattering the stillness of the night with blood-curdling screams!

A Lead Appraiser who behaves like an auditor is driving wrong behaviors, wasting money, and making people hate CMMI. He might as well come at you with a machete.

Clearly what’s happening is that your Lead Appraiser is over-engineering what his task is. He probably thinks the way to win business is to force you down a path where you are terrified of him and think you need to memorize everything that’s in the book. Nothing could be further from the truth. There is no reason for anyone in your company to do that.

Don, this may be difficult, but I want you to remain calm. Stay on the line, and know that the practices in the CMMI are valuable guidance for you. They are not things to comply with, as written. They are guidance for you; their job is to help you make yourself incrementally and iteratively better.

A good Lead Appraiser won’t care if you know what the GPs are, by their numbers. All a good Lead Appraiser will care about is: Are you training people? Do you have a process for doing work? Do you have policies? Are you improving as an organization? Are you learning about yourselves?

You need a good Lead Appraiser, Don. Wake up from the nightmare.  Fast. We’ve seen that movie. What a horror show!

[Join us for "Everything You Need to Know about CMMI v1.3" on Friday, November 9th at 2PM. Register for the FREE webinar here.]

Like this blog? Forward to your nearest engineering or software exec! 

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author, and consultant with years of real-world experience with the CMMI in all types of organizations. Jeff has taught thousands of students in CMMI trainings and has received an aggregate satisfaction score of 4.97 out of 5 from his students.

Visit www.broadswordsolutions.com for more information about running a successful CMMI program.

Thursday, October 25, 2018

Why Is CMMI V2.0 a Game-Changer?

Jeff, Why do you consider CMMIV2.0 a game-changer? ~ Tom Cagley, SPaMCast

[Editor's Note: This CMMI Appraiser has had the pleasure of being interviewed many times by Tom Cagley on the Software Process and Measurement Cast (SPaMCast) about CMMI, Agile, and Performance Improvement. On the most recent episode, we're talking CMMI V2.0, and how to begin transitioning to and using the new Model upgrade. Listen to the full interview at SPaMCast 512.]

Tom,

The CMMI Institute is very serious about turning CMMI from a process model into a performance model -- though they haven't quite mastered it yet.


Even so, there has been a lot of progress in CMMI V2.0. In the old Model, CMMI v1.3, we had a bunch of vertical practices like Project Planning, Project Monitoring, and Technical Solutions -- and we still have some of those. But the way the practices are framed now, in V2.0, is much more organized around "threads." 

Previously, instead of threads, we had what you could almost consider “requirements.” These were aspects of the Model that seemed to be saying, “You must do this, you must do this, and you must do this.” It was up to you figure out how to instantiate these requirements at your company level in order to create threads from it so that each one actually manifested as a behavioral outcome, and you could say, "This is how our teams behave."

In CMMI V2.0, they really did a much better job than CMMI v1.3 in representing the "Practice Areas," as they call them now, and the practices within them, in more of a thread-based fashion. Now it's easier to look at it and at least make sense of what they were trying to do. To get to this point, the CMMI Institute re-architected the CMMI around four major areas for CMMI2.0: “Doing, Managing, Enabling, and Improving.”

I always tell my students that another word for process is “work.” Process isn't overhead. Process is actually how work is supposed to happen. Well, in the new Model upgrade, I think the CMMI Institute really took that to heart. Not only did they create the four large categories or areas, but they mapped threads to each area, resulting in 12 different threads. They're calling those “capabilities.” Capabilities are things like ensuring quality, for instance, or engineering and developing products. In CMMI V2.0, the practice areas are grouped together in a manner that the Institute best believed met the intent of that thread. 

This is a complete departure from v1.3. I think the architectural changes alone are a game-changer for those people who either need to implement CMMI for contractual purposes, or for just improvement purposes as they grow and get larger as companies.

If folks are interested getting training on all of the changes in the new model, we are hosting another CMMI 2.0 class this Spring. Feel free to learn more about “CMMI V2.0 Training! – Plus Optional Agile/CMMI Integration Workshop” on April 1-5, 2019.

# # #

I hope my readers have enjoyed this segment of my interview with Tom Cagley on SPaMCast #512. We'll be talking more about the changes in the new upgrade, CMMI V2.0, in the next segment. Please check back soon.

Like this blog? Forward to your nearest engineering or software exec!

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author and consultant with years of real-world experience with the CMMI in all types of organizations. Jeff has taught thousands of students in CMMI training classes and has received an aggregate satisfaction score of 4.97 out of 5 from his students.

Visit www.broadswordsolutions.com for more information about engineering strategy, performance innovation, software process improvement and running a successful CMMI program.

Monday, October 22, 2018

Which Scrum Master Certification should I get? CSM or PSM?

Jeff - I'm thinking of getting some Scrum Master training to help me get a new job.  Which one should I get?

There are two different version of Scrum Master certification: the Certified Scrum Master (CSM) from the Scrum Alliance, and the Professional Scrum Master from Scrum.org.
The CSM requires that you take a class from an instructor certified by the Scrum Alliance, and the class must be the formal CSM class. The exam is fairly easy, and so is the class, so much so that there has been a lot of criticism in the market about it.  Cost is roughly $800-1000 for the class, and that often included the cost of the online test.
Right now, the CSM is the “HR standard” in corporate IT for hiring new Scrum Masters - like it or not.  There are a lot of reasons to NOT like the use of certs for hiring criteria, but I'll leave that to another post.
The Professional Scrum Master cert from scrum . org does not require a certified class, and you can take the test based on your own study of the Scrum Guide and hands-on experience. I feel that this was done on purpose to encourage real experience as the teacher, vs learning in the 2-day class . This would align more with agile values. 
My experience was that the PSM exam is much more difficult, and also much more practical and scenario than the CSM.
A lot of hiring managers are moving to the PSM as the standard for hiring because of the experiential nature of it, and how robust the test is, as compared to CSM.  To the extent that HR managers use certs for criteria, this is a good thing.
That all said, certifications are not a very good way to make hiring decisions, but if you don’t have a lot of solid work experience, a PSM can be helpful.
Good luck!
Like this blog? Forward to your nearest engineering or software exec!

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author and consultant with years of real-world experience with the CMMI in all types of organizations. Jeff has taught thousands of students in CMMI training classes and has received an aggregate satisfaction score of 4.97 out of 5 from his students.

Visit www.broadswordsolutions.com for more information about engineering strategy, performance innovation, software process improvement and running a successful CMMI program.

Friday, October 12, 2018

Why CMMI 2.0?

Jeff, There is a new CMMI in town. What's that all about? Why CMMI 2.0? ~ Tom Cagley, SPaMCast

[Editor's Note: Over the coming weeks, this CMMI Appraiser will be sharing excerpts from a recent conversation with Tom Cagley on the Software Process and Measurement Cast (SPaMCast) about CMMI V2.0, and how to begin transitioning to and using the new Model upgrade. Listen to the full interview at SPaMCast 512.]

Tom, as you know, the CMMI was developed by Carnegie Mellon University’s Software Engineering Institute (SEI) as is a process improvement framework for software and engineering systems, and is currently administered and positioned more as a performance improvement framework by the CMMI Institute. The model is utilized by organizations large and small across the globe to improve capabilities and performance, but there hadn't been an upgrade to CMMI since 2010. Change was overdue.



When the CMMI Institute was spun off by the SCI and Carnegie Mellon into a standalone entity, now owned by ISACA, they were handed an existing product. The challenge was that few people from the Software Engineering Institute made the switch over to the new organization, and so, for a long time, they were really just keeping up in operations mode. They moved over some of the QA folks who looked at appraisals, along with a couple of the technical staff folks, only one of whom remains.

The product they were handed was CMMI v1.3. Everybody in the industry knew that version 1.3 had issues, despite being the defacto standard among the federal government contractors. For starters, it was very academic-focused. I always joke with my classes that v1.3 reads like it was written by 20 PhDs and 25 attorneys.

I believe there was an honest effort to try to make it more clear. But I think what they ended up doing was making it harder to read in the end. It's a particular flaw that has always gotten in the way of more general acceptance.

Another challenge has been that the appraisal method of version 1.3 was pretty heavy duty. As a result, lot of company owners and directors weren't excited about doing CMMI. They wanted to get that accreditation or “CMMI certification” as they called it (the accurate terms is to achieve a "rating"), but found it very difficult.

So not only was the wording ambiguous in many of the 356 practices in Maturity Level 3, but it also was an appraisal method that demanded a very high documentary evidence standard. Every one of those 356 practices required an artifact of some sort. You could have an artifact that spread across many practices, but on the whole appraisals were an exercise in collecting, categorizing and scoring mostly artifacts, and then adding some affirmations or verbal statements towards the end.

This was considered a very heavy, expensive time consuming effort. Companies were spending hundreds of thousands of dollars – sometimes less, sometimes more – in order to achieve that rating, and much of that cost was the appraisal.

So, between somewhat ambiguously worded practices and the way they were architected in the model, and the way the appraisal method was conducted, there was cause for the industry to scream out and say: “Hey, the federal government is going to keep demanding this. This is too much for us and too expensive. We need a better solution.” And that was the driver for change.

Fortunately, the CMMI Institute is blessed by a truly visionary leader, Kirk Botula, for whom I have a great deal of respect. Not only is Kirk a musician, and a fine musician at that, but he has also got a really good eye for the industry, having run a software company prior to joining the Institute. He brought a real industry-focused, consumer-focused view to the CMMI Institute that never existed in the SCI, in my opinion.

The changes started slowly. The industry was slow to react to Kirk’s new kind of approach. They were a little shell-shocked, I think, when they were asked to find out what their customers really wanted. Kirk was masterful at pulling together focus groups. He's traveled the world talking to people, and did a lot of industry research to find out what is it that people want. Then the Institute enlisted the help of partners, lead appraisers, and instructors -- and everyone they could talk to who did this for a living – and got them all to come together and help create this new product. The result was version 2.0.

There was a lot of talk about, “Should this be version 1.4?” Kirk was very clear in saying: No, it shouldn't be. It should be something totally new, totally different. The team worked hard on it, and released a version 2.0 just a couple of months ago.

As of yet, no appraisals have been conducted, but the very first public training class was done a couple of weeks ago and I was fortunate enough to teach that first class. I got to be the first one to stand up and talk about the new model and what was great about it, and honestly, some things that weren't as good as I had hoped. The class went swimmingly, and it really looks like CMMI V2.0 is going to be a game-changer in the industry.

If folks are interested getting training on all of the changes in the new model, we are hosting another CMMI 2.0 class in February. Feel free to learn more about “CMMI V2.0 Training! – Plus Optional Agile/CMMI Integration Workshop” on April 1-5, 2019.

# # #

I hope my readers have enjoyed this segment of my interview with Tom Cagley on SPaMCast #512. We'll be talking more about the changes in the new upgrade, CMMI V2.0, in the next segment. Please check back soon.

Like this blog? Forward to your nearest engineering or software exec!

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author and consultant with years of real-world experience with the CMMI in all types of organizations. Jeff has taught thousands of students in CMMI training classes and has received an aggregate satisfaction score of 4.97 out of 5 from his students.

Visit www.broadswordsolutions.com for more information about engineering strategy, performance innovation, software process improvement and running a successful CMMI program.

Monday, October 8, 2018

Won’t coders working on automation put themselves out of business?

Won’t coders working on Automation put themselves out of business?


When I was a young programmer (more decades ago than I care to remember) my first job was writing compilers. Everyone said to me, “don’t you feel bad putting all those assembler programmers out of business?” Of course, I didn’t because, well, I was getting paid to create compilers, but more importantly those compilers would go on to help the next generation of developers create great sites like google and Facebook - which never would have been written in 8086 assembler!
In the early 90s I had a job writing CASE tools - an early form of code automation, and we developed “point-and-click” interfaces that “wrote” c code in the background. “Wrote” is a strong word given that it all came from a database of code we had written previously, but that’s what it seemed like, and it enabled the next generation to easily create solutions without having to write in c themselves.
People asked me the same question about putting c programmers out of business, but it was obvious that it would end up helping, not hurting, the industry.
Sure - new tools and languages needed to be learned, but it relieved developers from even more drudge work, and let them focus on the good stuff - creating solutions.
Today, people are asking the same thing about automation. Automation will cause another shift in skill sets, but someone has to create and maintain the infrastructure, and then someone will exploit the outcomes to create entirely new, in-imagined solutions to problems. And the good thing about that is, humans will always have problems to solve!
So, stay sharp. Keep up on your skills, and don’t fear the future! Good luck!

Saturday, October 6, 2018

What Processes to "CMMI Companies" use?

What Process to "CMMI Companies" use?

Dear Readers – We've been having a lot of fun on Quora.com recently. For those who are new to the social media platform, I've found it to be a place for high-level discourse about (among other interesting topics) engineering strategy and software process improvement. Below is today's response. Enjoy! ~ the CMMI Appraiser

Great question!

The CMMI contains a set of Practices that our categorized by Process Areas (note: V2.0 calls them Practice Areas now, but both v1.3 and V2.0 are active).
These are not “processes,” they’re an academic breakout of the things great companies do, but think of them more like an inventory of behaviors.
Companies that adopt CMMI are using the model as a checklist of things to examine and, potentially add to, or improve, their processes based on the practices.
ALL companies that adopt CMMI have processes for:
  • Managing Projects (including plans, estimates, risks, data management and management suppliers, and measuring performance).
  • Defining, Designing, building, delivering, and testing solutions to requirements
  • Controlling work products (versioning), ensuring all the relevant work products are in sync.
  • Ensuring quality of performance and work products
  • Managing the continuous improvement of the organization
It helps to think of the CMMI this way, as opposed to focusing on the list or practices.
I like to use the CMMI as a check on what we are ALREADY doing, and to improve on our performance in all of the various areas.
And finally, if you want someone to verify that you’re examining all of these things, you can get appraised by a lead appraiser, and get a rating (Maturity Level).
You can find our more about this at www.broadswordsolutions.com.
Good luck!
Like this blog? Forward to your nearest engineering or software leader!

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author and consultant with years of real-world experience with the CMMI in all types of organizations.

Visit www.broadswordsolutions.com for more information about engineering strategy, performance innovation, software process improvement and running a successful CMMI program.

How can I become a Software Developer at 41?

How can I change my career and become a SW developer at age 41?

Dear Readers – We've been having a lot of fun on Quora.com recently. For those who are new to the social media platform, I've found it to be a place for high-level discourse about (among other interesting topics) engineering strategy and software process improvement. Below is today's response. Enjoy! ~ the CMMI Appraiser

That’s an excellent question!
I myself was a late starter. My first career was in music, and I was in my 30s before I picked up my first computer. Now, at 58, I’ve been a developer, analyst, project manager, architect, CTO, VP, and CEO - all in the software business - so it’s definitely possible!
It’s hard to break into this business as an older person. It’s definitely dominated by young, bright, energetic people, so it can be intimidating.
Obviously, you’ll need to gain some competence in coding and analysis, and this can be done at your local community college, or even through self-study and sites like Kahn Academy, which offers college level courses for free. Strive to be the best - because competence will be your most valuable asset.
I would start by building some of your own software applications right away. Just pick something simple, and just write some programs. College courses are good, but nothing beats actual development of a working app!
It’s going to be tough to walk into a job where you’re competing with younger folks that have experience, but let’s focus on the things you’ve probably learned along the way:
  • Focus
  • Patience
  • Complex problem solving
  • Controlling your ego (that’s a big one)
  • Pacing yourself for the longer-term
  • Understanding what high quality looks like
  • Experience collaborating with a lot of other people
  • An interest in a long-term position where you can build a career, instead of looking for the next raise or promotion. There is nothing wrong with that, but it tends to be a greater focus on the younger employee.
It's no coincidence that this closely maps to the principles in the Agile Manifesto!

I’m not saying that some young people don’t have this, but someone that’s a little more experienced WITH PEOPLE, not code, tend to have the 10,000 hours of experience in these skills that are still being learned by younger, newer developers.
So, don’t sell yourself short, your age is an asset. There area lot of smart people in the SW industry, and the competition is fierce, but you do have a few things in your corner, and you can exploit them to help equalize the conditions of employment.
Good luck!
Like this blog? Forward to your nearest engineering or software leader!

Jeff Dalton is a Certified SCAMPI Lead Appraiser, Certified CMMI Instructor, author and consultant with years of real-world experience with the CMMI in all types of organizations.

Visit www.broadswordsolutions.com for more information about engineering strategy, performance innovation, software process improvement and running a successful CMMI program.

Tuesday, October 2, 2018

What are DOD and DOR in Scrum, and Why Should I Use Them?

What is DOD and DOR in Scrum, and why should I use them?

Ceremonies and techniques like “Definition of Done,” and “Definition of Ready” are common across many different types of agile teams and frameworks, not just scrum, they are often implemented as an “agile best practice.” Neither of these are new to the software business - frameworks like CMMI and PMBOK have been using these, with different names, for decades.

They are both a type of “validation” and are quite valuable.  And positioning them as "ceremonies" allows them to act as a control so that all team members agree to move forward.  Good stuff, and much needed.

Definition of Ready, or DOR, and sometimes called "Ready for Work," is a set of criteria that must be satisfied in order for an Epic or a Story to be accepted by the team. The story should be instantly “actionable,” and ready to build. This happens BEFORE you build it, so you can think of this as “pre-validation.”
According to the SW Engineering Institute, over 70% of defects are injected at the point of requirements acceptance by the team, mostly because they fail to be validated in one or more of the established criteria. The most common method for doing this is INVEST:
  1. Is the Story Independent?
  2. Is the story Negotiable (with the team, product owner, etc)
  3. Is the Story Valuable?
  4. Is the Story Estimable?
  5. Is the Story sized correctly (or “small”)?
  6. Is the Story Testable?
Other companies use SMART Goals, or their own set of criteria. Some companies use a meeting like “Three Amigos,” or “Three Diverse Humans” to do this as well. Boeing uses the CAM method (“Cranial Analysis Method”), which is like Three Amigos but with people who say they’re really smart :)
The important part is that they address the question “Is this a GOOD story?”
Definition of Done, or DOD, is the team’s agreement on what it means to complete a story. This happens AFTER you build it, so you can think of it as “post-validation.”
  1. Typical criterion for DOD are:
  2. The Story is Tested
  3. All defects are fixed
  4. The Product Owner has approved it
  5. The documentation is complete
Developing a good, solid set of criteria to validate stories both BEFORE and AFTER you build them is a basic function of software engineering, and there use will help to eliminate defects earlier.
There is more information about these, and other agile ceremonies, at agilecxo.org.

Good luck!