Tag Archives: Agile

Bias: It’s like Kryptonite to Collaboration


Collaborate: the concept is so ingrained with agile development that it’s one of the four components of Alistair Cockburn’s simplified Heart of Agile approach (along with Deliver, Reflect and Improve.)  Yet, collaboration has an “achilles heel”, a Kryptonite of sorts, that no one really talks about:  Bias.

Before we get into the roots of Bias and its effects, let’s explore what’s at the core of Collaboration.

Collaboration

To collaborate (according to Google Dictionary) is to

cooperate, join (up), join forces, team up, get together, come together, band together, work together, work jointly, participate, unite, combine, merge, link, ally, associate, amalgamate, integrate, form an alliance, pool resources, club together,  fraternize, conspire, collude, cooperate, consort, sympathize…

Collaboration relies on a combination of team skills: listening, communicating, connecting, cooperating, observing, and setting aside personal agendas and opinion.

Bias is like Kryptonite to Collaboration

Bias creeps in innocuously while we’re truly practicing our good communication skills; it can coat our words and can jade our thought process without us even being aware of it.  At best, bias skews our creativity, at worst, it kills trust and collaboration.

While we may not perceive bias in ourselves or others (“after all, we’re open and honest professionals doing our best”) – it’s there.

The good news is that Bias is like the iceberg below the surface that we didn’t know was there, and once we’re aware its there, we can dismantle its effects.

Through conscious practice and exercises, our awareness of our own biases can increase and we can override its effects.

Types of Bias

Bias comes in a variety of flavors and styles – and, we all have it in one way or another. The first step to overcoming bias is to recognize and acknowledge it in ourselves.

What kind of bias(es) do you hold?  I’ve condensed the list of bias types (from data analytics and psychology sites) and added examples for agile projects:

  1. Confirmation Bias – We skew our observation of an event, concept, person in a way that confirms our already held belief.  A pattern of highlighting news that agrees with the agenda of the left or right, and ignoring the other side.
    Example:  Changes are needed to a delivered report because legislation changed (fact), and we think “Typical of the users always changing their minds” (confirms our belief.)
  2. Attribution Bias – We attribute an action to someone based on their personality (flaws) rather than the situation.
    Example:  The project is delayed because testing isn’t finished.  We think:  “the tester doesn’t know what they are doing” (attributing it to a personality flaw) rather than looking at the situation of tester work overload.
  3. Commitment Bias – Continuing to invest in a derailed project because of the sunk costs already committed (time/effort/money.)
    Example: We think: How can we bail on this project after we’ve already spent a year and $500K on it?
  4. Labeling Bias – We (un)consciously describe or label a person/group in a way that influences how we think about them.
    Example:  We think marketing (people) have no clue about technology (so why ask them for input)?
  5. Spin Bias – We accept only one interpretation (ours) of an event or policy to the exclusion of the other.
    Example:  We spin the news (especially when there is a gap):  China banned cryptocurrencies, so it must be because of… (nefarious financial dealings…)
  6. Spurious Correlation Bias – We believe causality (without checking) between two potentially (un)related events or circumstances.
    Example:  Gas prices always go up before a long weekend.
  7. Omission Bias – Leaving out important information/people (certain facts or details) on a project because we don’t see its relevance.
    Example:  We didn’t think of including IT folks in a renovation project meetings (we omitted the importance of moving the network…)
  8. Not like Me Bias – Dismissing information or ideas because of the source or group generating it.
    Example:  We think that new hires have no idea about how our company works (when their input may be fresh and show us new ways to work.)

When we allow these unconscious biases to influence how we send or receive information, we stymie true collaboration.

What biases do you see in yourself and your workplace?  When I, personally realize I have a particular bias, I make a conscious effort to pause before responding.  When I’m prone to say something that would block collaboration (words like “we can’t do that…” or even the seemingly innocent thought in my head like “what on earth?” I try to stop and ask myself why I would think that.  Pausing to reflect and see the part that my unconscious bias plays, really helps me to collaborate better.  Might it work for you?

Would you Play Along?

Over the coming weeks, please join me in a new blog series called “The 5% Social Experiment” where I’ll post some easy social experiments to identify and overcome workplace bias.

Can I count on you to play along?

Carol

Advertisements

Chicken and Egg and Agile: What comes first Hard or Soft skills?


How would YOU answer this question?

Stereotypically people answer based on their experience and expertise:  

  • technical pros choose hard skills first (programming, math, logistics, complex problem solving,) because they involve complexity and are quantifiable. Soft skills are seen as qualitative (less value) and simpler (aka “fluff”) and easier to learn on the job;    
  • business people choose soft skills first (communication, emotional intelligence, listening, time management, collaboration) because it can be impossible to work with people who lack them. Technical skills, they reason, are easier to learn. 

Ultimately, we need a combination.  The most successful agile teams possess a combination of both skills: clear communication, understanding, empathy, time management, collaboration AND technical competency.

Oft cited research states that 85% of job success comes from having well-developed soft skills (people skills) and 15% is a result of technical skills and knowledge.  Software development used to be an anomaly to this, but no more.

A Look at SD History 

A mere 30 years ago, engineers and computer scientists owned software development: programming was a specialized skill that afforded coders both job security and relative seclusion.  In the beginning, before SDLC (software development life cycle) methodologies, users wrote out bits of requirements and passed them over (“the wall”) to programmers who turned them into computer programs using “code and fix.”  Interactions between the business and IT (information technology) were isolated, formal, and controlled. 

I remember colleagues 25 years ago lamenting that “software development would be so much easier if we didn’t have to deal with users.”

Fast forward to today’s agile environment where communication, collaboration and frequent software deployment are norms.  Co-located open space team areas replace rows of stoic IBM coders working in isolation and according to a recent Career Builder study: 77% of employers now believe that soft skills are equally as important as “hard” or “technical” skills in the work environment. 

Yet… technical professionals go into their professions for the same reasons they always did: to solve complex problems based on math and science.

The Value of Soft Skills

Reading stories of agile transformation success leads one to think that every workplace is like Google:  teams of co-workers celebrating each other’s differences, playing games at work, seeking to maximize their collaboration – the perfect combination of soft and hard skills. 

In 2013, Google decided to test its hiring hypothesis by analyzing 15 years’ worth of hiring, firing, and promotion data.

This project led to the surprising discovery that hard skills come in last among the top seven qualities of Google’s top employees.

“The top 7 characteristics of a successful Google employee are in fact:

  1. Being a good coach
  2. Communicating and listening well
  3. Possessing insights into others (including others different values and points of view)
  4. Having empathy toward and being supportive of one’s colleagues
  5. Being a good critical thinker and problem solver
  6. Being able to make connections across complex ideas
  7. STEM expertise

If nearly all of the top characteristics of success at Google are soft skills, then there is a strong argument for investment in those skills being not just a sound investment, but a vital one.”  https://insights.learnlight.com/en/articles/measure-roi-of-soft-skills/

Can soft skills be learned?

The jury is out on this – some say yes (emotional intelligence, awareness, communications classes) while others profess that soft skills are personality based.  

What is YOUR experience – do you think soft skills can be learned? 

Have we reached the Shangri-la in software development with agile?  

How would you answer this post: What comes first in agile – soft skills or hard skills?

Thank you in advance for your comments.

Carol

3C’s of Measurement Success – Create, Confirm, Convince


I recently recorded the remote meet-up presentation I did for Ryerson College (Toronto, Canada) called 3C’s of (FSM- Functional Size Measurement) Success – Create, Confirm, Convince.  The focus of the presentation was about how to position software measurement for success with management – especially in the context of agile software development.

What is this Thing – the Heart of Agile – all about?


If you’re an agilist (my word for those who embrace agile concepts to do great work) – you’ll be interested to hear about the Heart of Agile directly from the mouth of its founder Dr Alistair Cockburn.

Join me TOMORROW (Thursday Oct 4, 2018) at 10:00am Eastern Daylight Time as I interview Dr Cockburn in St Petersburg, FL about the new Heart of Agile and where it fits into the landscape of Agile Software Development.

Here’s the link (recording will be posted later if you cannot access Facebook!)

No automatic alt text available.

https://www.facebook.com/events/364530300951242/

p.s. Here’s the link to the website under development:  https://heartofagile.com/

Join me!

Carol

The Death of Brainstorming? Say it isn’t so…


I love the articles in the New Yorker, and the following one caught my eye because of the Brainstorming topic. In leadership courses, I’ve espoused the value of brainstorming when done right (without judgement and analysis) – and I’ve seen positive results.  Could it be that the creative process might actually work better when criticism is allowed to fly?

Say it isn’t so

When I teach brainstorming techniques, I always find it interesting that the creative (right brain dominant) thinkers in the group really love and contribute more during the “Brainstorming” free flow of ideas phase (before analysis sets in), while the linear, engineering style (left brain dominant) thinkers in the group can’t wait for the second phase where the ideas are analyzed and critiqued.  Divergent thinking followed by convergence of ideas.  Made perfect sense to me and the students demonstrated how safe each group felt – depending on which side of the brain dominated their idea flow.

So now, it appears that the “Steve Jobs” style of criticism before acceptance, domineering boss-like, judgment first ways of working have merit, or do they?  Read the article then read on and comment (please!)

Here’s the link to “Groupthink” if you cannot reach it above.

I’m conflicted…

about this latest “research” and given my international experiences in presenting in over 30 countries to technical audiences, I have to say that Information Technology and software development are as much about the people and psychology (trust and communication) as they are about technology and engineering problems.

I’ve seen success with collaborative approaches like Kanban, agile, Rational (Use Cases) – which I believe succeed because we bring disparate viewpoints of the customers and suppliers together and address various learning styles (visual, audio and kinesthetic) to gain the highest levels of understanding.  Brainstorming is one such technique whereby the most dominant (i.e., typically the most critical of all ideas except his/her own) no longer gets to direct the problem solving.

What’s BEEN your experience?

I look forward to your comments – do you agree with these findings? – and to further research… and to hopefully announcing that Brainstorming is NOT dead, in fact, it just needed a wake-up call to re-energize the benefits for a new iPad generation!

Technology at the Speed of Sound… Catch up at Light Speed at LSSC11!


I have to admit that I have not programmed a computer for many years and I have no idea how to write Visual Basic or Java or dot net.  (Yes, I have done raw html and could still manage in SAS if I had to!)

And I can also admit that the proliferation of models and methods from Agile, Scrum, Kanban, Lean, Six Sigma, Xtreme Programming, CMMI(R) (Capability Maturity Model), to manifesto driven systems development,  has me daunted.

Which ones are interchangeable, which are compatible, which are contradictory, and (OMG) where should one start to learn how to avoid the pitfalls?

It’s all a matter of diving in to each and learning the ins-and-outs and best practices — except I know that there are as many opinions about best practices as there are models.

Okay, I can already hear you saying:  “Carol, as a software measurement/Function Point Analysis and PMP (Project Management Professional), you probably don’t need to know much about any of these” — except that I do!

My clients will ask me about these and other emerging topics – and expect that I know the best course of action they should take with Lean/ Kanban/ Agile methods for their company.  And I simply do not have spare time to read all the books, experiment, fail, try again, and then decipher what is hype and what is real in this space!

So what is a sane, intelligent, forward thinking IT professional like me to do when faced with an overwhelming mountain of information like this so I can properly advise my clients?

The answer is: ATTEND the Lean Software & Systems Conference 2011 (#LSSC11)!

There is no other conference in the same timeframe that offers more than this growing conference!

Being held 3-6 May, 2011 at the Hyatt Long Beach in Southern California, this annual conference boasts over 90 speakers over a 3 day period on topics ranging from:

See the full program at http://lssc11.leanssc.org

All given by practitioners and experts for practitioners!  And the majority of presenters have real world, hands-on experience in the trenches with Kanban, Lean, Agile and Scrum and lived to tell about it!

Why not catch up to technology racing at the speed of sound by accelerating your learning Light Speed with LSSC?

There is no similar conference offering the breadth or depth of topics, experience sharing, or real case study results in the Kanban and Lean software development space.

And the May 5, 2011 Brickell Key awards for excellence in the advancement of Lean in software development will recognize some outstanding nominees working in the area – some of which are professionals just like you!

I know that I will catch up on these major topics and more – in record time – by attending LSSC11.  If you are an IT professional, don’t you owe it to yourself to check it out?

Read about the Program and the Speakers at LSSC11 and register today!

Wishing you an eventful and productive week and I hope to see you in Long Beach on May 3, 2011!

Regards,
Carol

Share

Whose job is IT anyways?


The title was a purposeful play on the acronym “IT” (information technology) because there is often no one person who takes responsibility for failed IT projects. In addition, it is not as if there are not project failures everywhere.

Notwithstanding one of my least favorite (but often quoted) research studies, the Chaos Report cites that about one-third of projects are successful when it comes to IT.  What gets in the way of project success?  Lots of circumstances and lots of people!

When a software intensive project fails, there is no lack of finger-pointing and blame sharing – yet seldom do teams stand up and confess that the failure (over budget and behind schedule and failing to meet user needs) was due to a combination of over and under factors, along with fears:

  • overzealous and premature announcements (giving a date and budget before the project is defined);
  • over optimistic estimates of how quickly the software could be built;
  • under estimation of the subject complexity;
  • assumptions that the requirements were as solid as the customer professed;
  • under estimation of the overall scope;
  • under estimation of how much testing will be needed;
  • under estimation of how much time it takes to do a good job;
  • under estimation of the learning curve;
  • under estimation of the complexity of the solution;
  • under estimation of the impact of interruptions and delays;
  • over anticipation of user participation;
  • over optimism about the availability of needed resources;
  • over optimism about hardware and software working together;
  • over optimism about how many things one can do at once;
  • risk ignorance (“let’s not talk about risk on this project, it could kill it”);
  • over optimism of teamwork (double the team size doesn’t half the duration);
  • fear of speaking up;
  • fear of canceling a project (even if it is the right thing to do);
  • fear of pointing out errors;
  • fear of being seen as making mistakes;
  • fear of not being a “team player”;
  • fear of not knowing (what you think you should);
  • fear of not delivering fast enough;
  • fear of being labeled unproductive;
  • fear of being caught for being over or under optimistic.

Therefore, I ask you, on a software intensive IT project, whose job is it to point out when there are requirements errors, or something is taking longer than it should, or it is costing more than anticipated. In traditional waterfall development because there’s so much work put into the planning and documenting of requirements, pointing out errors are  either no one’s job or the team’s (collective) job which really relates to no one’s job.

Often it is easier (and results in less conflict) to not say anything when the scope or schedule or budge go awry on a software project. Yet it is this very behavior that results in so much rework and so many failed projects.

Agile and Kanban projects are different

Several of the advantages to using Kanban and Lean and Agile approaches to software and systems development is that the methods address the very items outlined above.  Building better software iteratively becomes every developer’s job rather than no one’s:

  • Fear of pointing out errors is removed because the time that goes into a scrum is days and weeks not months (so participants don’t get defensive about change);
  • Over and under optimism remains but is concentrated on smaller and less costly components of work (i.e. days instead of months or years);
  • Risk is not avoided or ignored because we are no longer dealing with elongated and protracted development cycles (spanning seasons);
  • Assumptions come out with better and more frequent discussions;
  • Over optimism about how many things one can do at once is removed because Kanban limits the amount of work-in-progress;
  • Under estimation of the impact of interruptions and delays is minimized because such factors are addressed in Kanban;
  • Over anticipation of user participation is managed through direct user involvement.

What do you think?  Join us at the Lean Software and Systems Consortium conference LSSC11 from May 3-6, 2011 as participants and speakers address the best ways of advancing software and systems methods including Lean, Kanban, Agile and other exciting new ways to deliver high quality software more efficiently and effectively.

These newer approaches make it easier for everyone in IT to make it their job to build better software.

Wishing you a productive week!

Carol
@caroldekkers (twitter)

Share

The importance of Being There (at work)!


Did you know?

Only 26 percent of IT employees in North America are fully engaged at work, while 22 percent are actually disengaged, according to a global study by consulting firm BlessingWhite.

Being there…

At a time when unemployment is at an all-time high, only one-quarter of IT workers are fully engaged or Wowed by their work, while the remaining 75% just go through the paces or don’t care at all.  When you consider specific industries fraught with frustrations of rework (exceeding 40% in some areas) and impossible deadlines such as in waterfall development, I would bet the excitement factor of going to work is even less.

#Kanban, #Lean, and #Agile communities are exceptions

The Agile Manifesto recently celebrated its 10th anniversary last month, and Kanban, Six Sigma, Lean, and Agile methods now share space with waterfall as leading methods in the software and systems development space.  Agile (in my humble opinion) was one of the first to restore a sense of sanity in software development.  In earlier times, a group of  business customers with rapid fire changing requirements would challenge software developers (tired of the constant change and “jello” like demands) for amorphous software products.  The result too often – failure.

It makes sense, in this type of environment, to do iterative development.  It was illogical to do the opposite: long development cycles to produce products already obsolete before they hit desktop computers.

Approaches like Kanban, Lean, Agile, Personal Kanban and others continue to transform our industry and inspire software developers to become “fully engaged” in the work.

Less head banging… but you have to engage

Certainly there is head banging and more job satisfaction in this new world (if “tweet volume” is any indication, the Kanban/ Lean/ Agile communities are a happier lot!) but it takes commitment to show up and be part of the action.

I believe that the Kanban and Lean and Agile communities know the importance of really being present and engaging at work.  We also know it is critical to create a community of like-minded people who meet in-person – at conferences, local meetings, at social events.

LSSC11 is coming soon!

The landmark Lean Software and Systems conference is only 10 weeks away in Long Beach, CA on May 3-6, 2011.  Make your choice of conference to attend in 2011 the LSSC11 (especially if you can only attend one!)  See my related post Top 10 Reasons to attend LSSC11.

Join the movement of people who know the Importance of Being There in software and systems development: The Lean and Kanban and Agile communities.  I hope I will meet you at LSSC11!

Have a Wow! and engaging week at work,

Carol

Share

WTP?* No more methodology battles…


Ever since my college days (many months ago!) there has been a “situation” concerning IT and the business.  Despite a plethora of new methods, technologies, software, and business-focused efforts, the valley of communication between IT and the business remains. Sure, there has been progress – business analysts, project management, agile development, Kanban and others have brought the customer to the table (so to speak) with software developers, but the gap remains.

Just today, a colleague in the Kanban / Lean development space remarked on Twitter:

Master servant“I think IT and business are stuck in a master / servant relationship as opposed to a trusted partner one.”

It seems that the more that things change, the more they stay the same… and it is frustrating. There is so much work to do in terms of communication, education, soft skills to bridge this gap.

So WTP* of methodology battles?

Really, WTP (What’s The Point) of methodology battles in software development? I see it all the time in cyberspace and at conferences:

  • Function points (and flavors within) versus lines-of-code versus story points versus use case points;
  • CMMI® versus SPICE (a European framework);
  • PMI (Project Management Institute) certification versus IPMA (International Project Management Association) versus Prince 2;
  • Kanban versus Agile versus Scrum versus Waterfall?

Perhaps it is human nature to pick battles we think we can win (as opposed to looking at the overall bigger challenge of the business / IT dysfunction), but What’s the Point?

When you come down to it, a Win/Lose result in software development (along the lines of schoolyard “My mother is smarter than your mother”) ends up being a Lose/Lose for everyone involved. Emotions flare, tempers rise, and time is wasted.  In addition, when you consider the bystanders (other professionals and executives) watching these methodology “catfights”, it’s no wonder many of them step back and retrench without a second thought about ways forward.

Case in point – the function point wars fueled by assertions of “my way (of counting) is better than yours” or “ours is a 2nd generation method while yours sucks” is a pitiful battle proposition when one considers that a mere 10% of organizations measure any software development at all.  Yet the battles go on fueled by notions of superiority and self-congratulation.  (It is no wonder why some organizations forego function points altogether.)

I see the same battles brewing in the Kanban, Lean, Agile, RAD and Waterfall communities.  While each approach offers its own advantages and strong points, none is a panacea and in fact, a diversified team of qualified practitioners can often blend practices to increase output and quality.  When allowed to co-exist in relative harmony (with the goal to deliver better software, reduce rework, and delight customers) – the results could be stellar.  But, we’re not there yet.   I can imagine that when the power nailgun was introduced into construction, it probably faced the same resistance as modern methods have in software development.  Of course, since human beings and professional credibility is involved in both industries – opinions emerge about the best way forward.

No matter which “camp” or area you adhere to in software development, there is no silver bullet or Swiss Army Knife.  We have to learn to lay down our petty differences and work together for the betterment of our customers – and over time, maybe our customers will take notice that we are collaborating for them.

LSSC11If you agree with the notion of collaborating and learning about how professionals are integrating these various approaches (and others) together, be sure to attend LSSC11 (sponsored by the Lean Software and Systems Consortium) being held May 3-6, 2011 in Long Beach, CA.

I can promise you’ll see Kanbaners, Agilistas, Scrumbies, Sigmalites, and even a few Waterfallers working the space networking, sharing, and gently sparring (in jest) – all for the advancement of our industry.  Why not plan to join us?

Carol

Share

There’s no time for “One of these days is none of these days” in IT


Let’s face it

– an investment in software development can be one of the most expensive and medieval timesrisk-laden endeavors a corporation can make, especially when requirements volatility and uncertainty are part of the mix.  In medieval times (of software development this would be pre-2000), customers and developers often jostled over requirements and clashed on issues of flexibility during strict waterfall development.  Then after months of protracted requirements discovery, the construction process would be frequently disrupted by “unanticipated change”.

Fortunately, for everyone involved, innovative techniques flexible to change and offering shorter, more iterative delivery cycles emerged.  Today, a myriad of choices exist that embrace flexibility and deliver high-quality software more effectively and efficiently than ever thanks to agile, XP, scrum, CMMI, project management and other concepts.  Additionally, methods that worked well in other industries have been adapted and tailored for use in IT (six sigma, kaizen, TQM, theory of constraints, just-in-time, Kanban, etc.).

A few of the most fundamental

yet simple concepts of Lean/Kanban/Just-in-Time development (and other methods) include minimizing waste (non-value added activities), removing roadblocks/delays and limiting work-in-progress (WIP).

If we consider software development as a “pipeline” of constant flowing work packets, any unresolved blockages can end up clogging the entire system.  As such, when life intervenes (as it always does) to interrupt or delay the flow of a work packet, approaches such as Kanban  highlight potential blockages before they clog the entire flow.  Teams can then identify remedial actions so that the right work is done at the right time, freeing up resources to concentrate on work where they can be highly productive.  Moreover, while waterfall development commonly fills the pipeline beyond capacity (without realizing it), Kanban limits the input stream to match the available capacity.  Once work is actively in the pipe, a critical delay (“one of these days…”) signals trouble and work can be removed (“none of these days”) until such time as it can be productively worked again or triaged to prevent ongoing delays.  If we are serious about reducing waste (non-value added activity) or delays, IT should never tolerate proverbial “one of these days is none of these days” delays in process.

Unexpected events and delays are a natural part of life (and software development).  The difference with Kanban and JIT is that there is a conscious response to bottlenecks and work stoppage rather than panic or blame reactions (OMG!  What do we do now?) typical of waterfall development.

Can Kanban co-exist with Agile development?

I believe so (and perhaps this is the attitude of a naive believer in both).  Can Kanban co-exist with Waterfall development? Again, I believe the answer is yes.  What do you think?

Don’t forget to register (and tell your management to register!) for the upcoming FREE knowledge webinar on January 18, 2011 featuring

LSSC11 Chairperson, Kanban expert and Author:
David Anderson

on Lean Decision Making, January 18, 2011 from noon – 1 pm Pacific Standard Time (3-4pm Eastern Standard Time). Here’s what this FREE webinar is all about:

Lean thinking assumes it is economically better to build a culture of trust in an organization of empowered individuals to accelerate decision-making and shorten lead times than to mitigate risk with bureaucracy and delayed delivery. Understand the economic model controlling the forces of risk, uncertainty, business value, quality, cost and schedule that affect decision-making and process policy setting. This webinar will show how lean thinking can translate into process and policy decisions more closely aligned with business goals.

Register today to reserve your webinar place!

Why not make 2011 the year that you make a difference in the world of software development by getting up to speed on Lean approaches?  Plan to join us 3-6 May 2011 in Long Beach, CA, USA for the Lean Software and Systems conference (acronym LSSC11) – register today!

Carol
Share