VCDX: Some thoughts on requirements

What is this about?

This blog post has not the intend to define what a requirement/constraint is, there are already very good posts out there. Lately I pointed a lot of people over to Jeffrey Kusters who did an excellent job of summarising it but I included also two other good links:

What is this about?

If you are like me, coming from a pure technical background, the conceptual model of the VCDX exam proves to be the hardest part – especially since your journey starts with it and there is no shortcut around it (Rene gives good advice, as always https://vcdx133.com/2014/07/09/vcdx-how-do-i-measure-if-my-customer-requirements-are-being-met/)).  Think of the conceptual model like the foundation of a house, if it is not solid everything you build on top of it will collapse eventually (btw: It happened to me, forcing me to re-write on more than one time. Pro tip: don’t be like me on this).

Summing it up: Ideally this post forces you to realise that you need to invest time into the process of learning on how to develop a conceptual model and, with as the post has a focus on requirements, learn that they do not come out of thin air. There is actually a whole field called “requirement engineering” which has the target to gather and formulate requirements – just to give you a feeling for the relevance of this topic.

Requirement engineers have methods and techniques which you can study. Use this to build an understanding of what is relevant and how it is done. Try to apply this by formulating some solid requirements for your VCDX process (and keep that knowledge for your future projects).

Where do I start?

You know, there is always google 🙂

Seriously, (solid) requirements are needed in a lot of places, one of my favorite reads is provided by the NASA.
They have a whole book online, for free – start looking at chapter 4, the System Design process: https://www.nasa.gov/connect/ebooks/nasa-systems-engineering-handbook

Do you need to read all of this and how does this all apply to VCDX?

Heck, no you don’t need all of this! But start digging into it and you learn some good stuff – they key here is building an understanding to know why requirements are important. For instance, I like the “TABLE 4.2-1 Benefits of Well-Written Requirements“.

Also, did you consider to try to talk to people who deal with requirements on a daily basis? Do you know any project manager or software developer/architect? They might be more than happy to help you out.

Can you sum it up, what does it mean for my VCDX document?

I cannot give you a definitive answer but a few personal opinions:

  • Write a requirement like the stakeholder investing money, not like the tech nerd you are (I include myself here).
  • Don’t focus on the implementation and do not make a hidden design decision out of a requirement: Focus on what the system/infrastructure needs to achieve, not how.
  • Did you test if other people understand your requirement? Ask around, also among non-technical people. Does everybody expects the same when reading your requirement?
  • For the majority of requirements, do not use subjective adjectives, e.g. what do you mean by fast storage? People might have different opinions on that.
  • Going in the same direction as the bullet point above, can you validate your requirement in any way? (Yes, this is one reason why there is a validation plan in the VCDX)
  • Be specific, set scope and expectations: Like when you include growth in percent, is it measured from your baseline or a “year over year”-value? For how many years do you need to plan? Which areas (compute, storage, …) do you need to consider?
  • Avoid any mis-interpretation with negative requirements, e.g. must not do X or Y. The “not” might be easily overlooked and there is still room for the question what the design must do.

On the topic of how much meta-data a requirement needs, I had a table with the following information:

  • Unique ID: Allows you reference the requirement in your design
  • Description: The main matter of a requirement.
  • Design quality: More for my sake to ensure I got everything covered
  • Issuer: Who signed off on the money going into this requirement?

I won’t say it is perfect but it did the job and it may be a good starting point if you haven’t considered anything in this regard.

The end

This is not much but I hope it points candidates into the right direction. I am always open for discussion and feedback, hit me on twitter if you like!

Disclaimer: Honestly, I feel like an imposter for writing this, constantly debating with myself if I can dare to put this out into the wild as I feel that my own stuff was not stellar. However, with some support from Bilal and Chris I decided to go for it. After all, it is a topic most candidates struggle with and I was no exception.

Adding some thoughts on the value of VMware certifications

This morning I posted about how I feel about the VCDX price increase. TL, DR: I can understand the reasons behind this, but VMware has to deliver value for the money.

Having said that, there is a bigger issue in the room in my opinion.

Essentially this tweet from Jason Nash triggered this post:

For what it is worth, I think that with VMware, the partner tier says not much about the technical skills and qualification.

As you can read here, the requirements for the highest level, Premier Partner, is essentially revenue driven. Sure, you need four VCPs but when you are big enough for a million of sales within 12 months, sending out four people on an ICM course is peanuts.

Do not get me wrong, the VCP has is place but from the higher partner level I would expect more to verify the expertise. VCP is a multiple choice exam, VCAP deployment is hand-on (you cannot braindump that) and design requires you to draw and place something (again, no braindumps here).

So why would or should a partner spend any money to certify his employees toward the “VMware Certified Advanced Professional”-level or even above?

The answer is: I do not know and I cannot see a business case for this at the moment.

Back on twitter Joe Silvagi  from VMware pointed out that there are business benefits for a partner:

 

Nevertheless, here I try to see it from a potential customer point of view.

You cannot pick an enterprise/premier partner and know that they have at least a number of n VCIX or even a VCDX in a certain field (solution competency) to guarantee a certain amount of knowledge.

This would really count for something BUT…

… VMware needs to promote their advanced certifications so these get the attention and value they deserve.

I had to explain to many people what my VCAP or VCIX actually means, customers and coworkers alike, and even what the next level with VCDX would be. For a VCDX attendee this is the worst case, you put effort into your certification in order to get benefits (from a pay increase to a new job) but if no one knows what this title is, you have a problem because this lowers your ROI

Compare this to Cisco, if you say “CCIE” everyone has an idea what you are talking about and goes like “ahhh” and “ohhh”.

This might be different in the US, but this is my unfortunate experience here in Germany.