Welcome!

Microservices Expo Authors: Liz McMillan, Pat Romanski, Jason Bloomberg, Automic Blog, Elizabeth White

Related Topics: Microservices Expo, Java IoT, Industrial IoT, IBM Cloud, Weblogic, Microsoft Cloud, Machine Learning , Apache

Microservices Expo: Blog Feed Post

Agile, Offshoring and Dreyfus Model of Learning

Agile works!

Agile works!

If you have any doubt about it just look at the adoption rate … look at the study results published … or just try it yourself.

Offshoring also works!

Again, if you have any doubt, just look at the growth of offshoring … look at the success of the success of the India based IT companies … try to find a reasonably large company which has no offshore presence.

People or Process … which is more important?
If you are following agile methods then … obviously … people are more important. In fact it is clearly stated in the Agile manifesto. Off course, the manifesto does not say that process is not important but it emphasizes that people are more important than process and tool.

If you are into offshoring then the clear winner is process. Almost all large offshoring outfit have focused on process and have adopted SEI-CMMi model. On the same vein, CMMi does not say the people are not important, but the focus is clearly on processes and practices.

But, is this not contradictory?

Dreyfus Model of Skill Acquisition
One possible explanation is that both people and process are important. Successful agile implementation does not ignore process. Similarly, successful offshoring does not ignore people.

However, a better explanation can be found in the Dreyfus Model of Skill Acquisition.

If you search the net you will find tons of material explaining what the model is and I have included few of the at the end of this post. However, the simplest and the shortest explanation comes from Seth Godin:

The Dreyfus model of skill acquisition posits that there are five stages people go through:

  1. Novice = wants to be given a manual, told what to do, with no decisions possible
  2. Advanced beginner = needs a bit of freedom, but is unable to quickly describe a hierarchy of which parts are more important than others
  3. Competent = wants the ability to make plans, create routines and choose among activities>
  4. Proficient = the more freedom you offer, the more you expect, the more you’ll get
  5. Expert = writes the manual, doesn’t follow it

Dreyfus Model

Offshore Software Development, CMMi and Process Focus
When the offshoring started, the workforce comprised of Novices and Advanced Beginner with a handful of experts guiding them. The growth of offshoring was too fast to move the Advanced Beginners to become Competent in the required number.

Therefore, it was logical for the organizations to focus on gaining process expertise and the most logical choice was the SEI – Capability Maturity Model (CMMi). The focus was on “Conformance to Requirement”. It was necessary to have more people to do the same work but that could be absorbed through the huge gap of salary.

Every project needed to find at least on expert. That expert could guide the team and interact with the onsite people. Projects which could not find such experts failed badly.

The growth of the offshoring industry have validated this approach.

Agile Methods and People Focus
Agile methods became popular where enough number of Competent and Proficient software developers where available. Once a developer becomes Competent he is ready and willing to take ownership of his work.

“…you might see folks at this level typically described as “having initiative” and being “resourceful.” They tend to be in a leadership role in the team…even at this level, practitioners can’t apply agile methods the way we would like—there isn’t yet enough ability for reflection and self correction…” - Andrew Hunt

Agile methods were ideally suited for Proficient software developers. All you needed to do was to…

“…Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done…” – 5th principle behind agile manifesto!

It is no surprise that agile methods worked and worked very well.

The story of offshoring is not over yet!

Offshoring growth came down from the ridiculous  30-50% per year to more down to earth 10-15%. That allowed more time to have sufficient numbers of Competent and Proficient developers. There are around 2 million ITES professional in India and even if only a small percentage can be classified as Competent and Proficient developers, you still land up with a huge number!

No wonder the India software industry has started looking beyond “Conformance to Requirement”

What about the expert?

The expert observes the world but trusts his inner vision. He concerns himself with the depth and not the surface, with the fruit and not the flower.

When expert leads, the team is hardly aware that he exists. He is content to serve as an example and not to impose his will. He doesn’t talk, he acts. When this is done, the team says, “Amazing: we did it, all by ourselves!”

The expert shapes events as they come. He steps out of the way and lets the design speak for itself. His workings remain a mystery, he just shows the results.

This might sound familiar to you because this is an condensed and modified version of The Tao of the Software Architect.

Related Articles

Read the original blog entry...

More Stories By Udayan Banerjee

Udayan Banerjee is CTO at NIIT Technologies Ltd, an IT industry veteran with more than 30 years' experience. He blogs at http://setandbma.wordpress.com.
The blog focuses on emerging technologies like cloud computing, mobile computing, social media aka web 2.0 etc. It also contains stuff about agile methodology and trends in architecture. It is a world view seen through the lens of a software service provider based out of Bangalore and serving clients across the world. The focus is mostly on...

  • Keep the hype out and project a realistic picture
  • Uncover trends not very apparent
  • Draw conclusion from real life experience
  • Point out fallacy & discrepancy when I see them
  • Talk about trends which I find interesting
Google

@MicroservicesExpo Stories
All organizations that did not originate this moment have a pre-existing culture as well as legacy technology and processes that can be more or less amenable to DevOps implementation. That organizational culture is influenced by the personalities and management styles of Executive Management, the wider culture in which the organization is situated, and the personalities of key team members at all levels of the organization. This culture and entrenched interests usually throw a wrench in the work...
As many know, the first generation of Cloud Management Platform (CMP) solutions were designed for managing virtual infrastructure (IaaS) and traditional applications. But that’s no longer enough to satisfy evolving and complex business requirements. In his session at 21st Cloud Expo, Scott Davis, Embotics CTO, will explore how next-generation CMPs ensure organizations can manage cloud-native and microservice-based application architectures, while also facilitating agile DevOps methodology. He wi...
As today's digital disruptions bounce and smash their way through conventional technologies and conventional wisdom alike, predicting their path is a multifaceted challenge. So many areas of technology advance on Moore's Law-like exponential curves that divining the future is fraught with danger. Such is the problem with artificial intelligence (AI), and its related concepts, including cognitive computing, machine learning, and deep learning.
Docker is on a roll. In the last few years, this container management service has become immensely popular in development, especially given the great fit with agile-based projects and continuous delivery. In this article, I want to take a brief look at how you can use Docker to accelerate and streamline the software development lifecycle (SDLC) process.
While some vendors scramble to create and sell you a fancy solution for monitoring your spanking new Amazon Lambdas, hear how you can do it on the cheap using just built-in Java APIs yourself. By exploiting a little-known fact that Lambdas aren’t exactly single-threaded, you can effectively identify hot spots in your serverless code. In his session at @DevOpsSummit at 21st Cloud Expo, Dave Martin, Product owner at CA Technologies, will give a live demonstration and code walkthrough, showing how ...
Cloud adoption is often driven by a desire to increase efficiency, boost agility and save money. All too often, however, the reality involves unpredictable cost spikes and lack of oversight due to resource limitations. In his session at 20th Cloud Expo, Joe Kinsella, CTO and Founder of CloudHealth Technologies, tackled the question: “How do you build a fully optimized cloud?” He will examine: Why TCO is critical to achieving cloud success – and why attendees should be thinking holistically ab...
There are several reasons why businesses migrate their operations to the cloud. Scalability and price are among the most important factors determining this transition. Unlike legacy systems, cloud based businesses can scale on demand. The database and applications in the cloud are not rendered simply from one server located in your headquarters, but is instead distributed across several servers across the world. Such CDNs also bring about greater control in times of uncertainty. A database hack ...
Did you know that you can develop for mainframes in Java? Or that the testing and deployment can be automated across mobile to mainframe? In his session and demo at @DevOpsSummit at 21st Cloud Expo, Dana Boudreau, a Senior Director at CA Technologies, will discuss how increasingly teams are developing with agile methodologies, using modern development environments, and automating testing and deployments, mobile to mainframe.
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting challenge of adapting related cloud strategies to ensure optimal alignment, from managing complexity to ensuring proper governance. How can culture, automation, legacy apps and even budget be reexamined to enable this ongoing shift within the modern software factory?
With Cloud Foundry you can easily deploy and use apps utilizing websocket technology, but not everybody realizes that scaling them out is not that trivial. In his session at 21st Cloud Expo, Roman Swoszowski, CTO and VP, Cloud Foundry Services, at Grape Up, will show you an example of how to deal with this issue. He will demonstrate a cloud-native Spring Boot app running in Cloud Foundry and communicating with clients over websocket protocol that can be easily scaled horizontally and coordinate...
@DevOpsSummit at Cloud Expo taking place Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center, Santa Clara, CA, is co-located with the 21st International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is ...
If you cannot explicitly articulate how investing in a new technology, changing the approach or re-engineering the business process will help you achieve your customer-centric vision of the future in direct and measurable ways, you probably shouldn’t be doing it. At Intellyx, we spend a lot of time talking to technology vendors. In our conversations, we explore emerging new technologies that are either disrupting the way enterprise organizations work or that help enable those organizations to co...
DevOps at Cloud Expo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to w...
In his session at 20th Cloud Expo, Scott Davis, CTO of Embotics, discussed how automation can provide the dynamic management required to cost-effectively deliver microservices and container solutions at scale. He also discussed how flexible automation is the key to effectively bridging and seamlessly coordinating both IT and developer needs for component orchestration across disparate clouds – an increasingly important requirement at today’s multi-cloud enterprise.
We define Hybrid IT as a management approach in which organizations create a workload-centric and value-driven integrated technology stack that may include legacy infrastructure, web-scale architectures, private cloud implementations along with public cloud platforms ranging from Infrastructure-as-a-Service to Software-as-a-Service.
IT organizations are moving to the cloud in hopes to approve efficiency, increase agility and save money. Migrating workloads might seem like a simple task, but what many businesses don’t realize is that application migration criteria differs across organizations, making it difficult for architects to arrive at an accurate TCO number. In his session at 21st Cloud Expo, Joe Kinsella, CTO of CloudHealth Technologies, will offer a systematic approach to understanding the TCO of a cloud application...
API Security has finally entered our security zeitgeist. OWASP Top 10 2017 - RC1 recognized API Security as a first class citizen by adding it as number 10, or A-10 on its list of web application vulnerabilities. We believe this is just the start. The attack surface area offered by API is orders or magnitude larger than any other attack surface area. Consider the fact the APIs expose cloud services, internal databases, application and even legacy mainframes over the internet. What could go wrong...
The goal of Continuous Testing is to shift testing left to find defects earlier and release software faster. This can be achieved by integrating a set of open source functional and performance testing tools in the early stages of your software delivery lifecycle. There is one process that binds all application delivery stages together into one well-orchestrated machine: Continuous Testing. Continuous Testing is the conveyer belt between the Software Factory and production stages. Artifacts are m...
In IT, we sometimes coin terms for things before we know exactly what they are and how they’ll be used. The resulting terms may capture a common set of aspirations and goals – as “cloud” did broadly for on-demand, self-service, and flexible computing. But such a term can also lump together diverse and even competing practices, technologies, and priorities to the point where important distinctions are glossed over and lost.
Most companies are adopting or evaluating container technology - Docker in particular - to speed up application deployment, drive down cost, ease management and make application delivery more flexible overall. As with most new architectures, this dream takes a lot of work to become a reality. Even when you do get your application componentized enough and packaged properly, there are still challenges for DevOps teams to making the shift to continuous delivery and achieving that reduction in cost ...