Welcome!

Industrial IoT Authors: Olivier Huynh Van, Pat Romanski, Liz McMillan, Christopher Harrold, Derek Weeks

Related Topics: Java IoT, Industrial IoT, Microservices Expo, Open Source Cloud, IoT User Interface, Apache

Java IoT: Blog Feed Post

Four Tests to Determine If You Are Following Agile Development

Do you necessarily have to have a small, co-located, cross-functional team to be able to claim that your process is indeed agile

Am I the only person who thinks that we need a clear, well understood and unambiguous determine if the development process that you are following can be classified as Agile development process?

Do you necessarily have to have a small, co-located, cross-functional team to be able to claim that your process is indeed agile? If you go by what agile thought leaders are saying then “small”, “co-located” and “cross-functional” is no longer considered a necessary condition for classifying a process as agile.

Agile 1.1Indeed, the answer to the following questions is no longer an outright no.

  • Can agile process scale to a large team size?
  • Can distributed project team claim to be using agile development?
  • Can off-shored projects work on agile mode?
  • Can agile development co-exist with CMMi?

Obviously, to be able to answer “yes” to these question we would need to come up with a process which different from what you would have followed for a ”small”, “co-located” and “cross-functional” team. Now, how would you determine if this modified process can indeed be classified as a agile development process?

Without suitable tests the discussion would boil down to your opinion pitted against mine.

Can agile projects fail?

Without such a test you can always argue that the project failed because the process chosen was not really an agile development process and that is why the project failed.

Without suitable tests there is no way to counter such an argument.

I prefer “A” over “B” but “B” is also important

I am not criticizing the agile manifesto. It is brilliantly piece of articulation … it conveys, without being explicit, how agile processes are different from the “heavy weight” processes prevailing in 2001.

However, it does not help us in determining when a process can be classified as agile and when it ceases to be agile.

Minimum common denominator

Is it possible to take the popular agile development processes like Scrum, XP and TDD and find out what is common the minimum common denominator and use that as a test?

There are 2 problem to this approach:

  1. Which methodologies would you choose?
  2. Would you find significant commonality?

Selecting list of mandatory practices

There is a growing list of practices which are classified as agile practice – daily stand-up meeting, continuous integration, pair programming … the list is quiet large.

Is it possible to choose from the list a set of mandatory practices – a necessary condition for a process to be considered as agile development process?

Again, there are 2 problems:

  1. Coming to a consensus on what is mandatory practice is a difficult task
  2. What happens when an new and better practice emerges as a substitute for one of the selected practice?

Four Tests to determine if you are following an Agile process

Test 1: Software is developed in iteration regularly delivering working code

I think this test is beyond any debate! Nobody … nobody would claim a process to be agile without an iterative approach. Iteration without working code is meaningless. Working code also implies continuous testing.

Similarly, iteration without feedback is again meaningless. So, regular feedback from users is mandatory.

But beyond that there are many variants to iterative approach.

  • Should your iterations be of fixed interval?
  • Do you need to have a process of continuous integration?
  • Is it necessary to have an automated regression test suite?
  • Should you focus on always having a potentially shippable product?

These are all good practices, very important in certain situations, but not necessarily applicable in all situation.

Test 2: Never say no to change because it is not there in the plan or because it involves rework

Indeed, there can be many valid reasons why you may have to say no to change.

  • The impact of the change may be very significant, involving huge amount of extra work disrupting other planned features.
  • The value of the change may not sufficient to justify the effort to incorporate the change.
  • The change may be inconsistent with the way the rest of the software is expected to work.

There can be many other reasons for not accepting the change or deferring the change for later.

But, refusing a change because it is not there in the plan or because you have to discard parts of code which you have already done is not an acceptable reason in any process that claims to be an agile process.

Test 3: Accept that everything cannot be explicitly specified

Typical traditional process would work as follows:

  • A requirement analysis would be done and a software requirement specification document would be prepared
  • User will go through it and approve it
  • The software would be built and tested according to what is written in the document
  • User will try the software and claim that several important features are missing
  • Development team will claim that they have not been specified
  • User will claim that they are obvious

This approach is unacceptable in any agile process.

It is not that documentation is not important. What is unacceptable is to insisting that everything has to be explicitly documented.

It is like Japanese approach to communication. In western culture when A communicates something to B and B has not properly understood it then A is to be blamed because he did not check if the understanding is correct. In Japanese culture, the blame in on B because B did not ensure that his understanding is correct.

Test 4: You follow only those processes which you have found it to be of value under the given circumstances

If you have gone through an exercise of spring cleaning you would realize that how every object you pick somehow looks useful and you do not want to throw it.

Same thing happens when you are given a super-set of practices and asked to choose what you should follow. This is the approach followed by all heavyweight processes including RUP. Every practice in isolation would look useful.

So, any process which claims to be agile start with bare minimum practices and allows the project team to choose practices which will add real value in the given circumstances. It also has mechanism of having a regular introspection which allows discarding practices which has not proved its worth.

In Lean parlance it is called maximizing the work not done.

What do you think?

  • Are these tests have any value?
  • Are they relevant?
  • Have I missed out any important dimension of agile?

I am eagerly waiting for you feedback.

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

@ThingsExpo Stories
What are the new priorities for the connected business? First: businesses need to think differently about the types of connections they will need to make – these span well beyond the traditional app to app into more modern forms of integration including SaaS integrations, mobile integrations, APIs, device integration and Big Data integration. It’s important these are unified together vs. doing them all piecemeal. Second, these types of connections need to be simple to design, adapt and configure...
What happens when the different parts of a vehicle become smarter than the vehicle itself? As we move toward the era of smart everything, hundreds of entities in a vehicle that communicate with each other, the vehicle and external systems create a need for identity orchestration so that all entities work as a conglomerate. Much like an orchestra without a conductor, without the ability to secure, control, and connect the link between a vehicle’s head unit, devices, and systems and to manage the ...
24Notion is full-service global creative digital marketing, technology and lifestyle agency that combines strategic ideas with customized tactical execution. With a broad understand of the art of traditional marketing, new media, communications and social influence, 24Notion uniquely understands how to connect your brand strategy with the right consumer. 24Notion ranked #12 on Corporate Social Responsibility - Book of List.
Just over a week ago I received a long and loud sustained applause for a presentation I delivered at this year’s Cloud Expo in Santa Clara. I was extremely pleased with the turnout and had some very good conversations with many of the attendees. Over the next few days I had many more meaningful conversations and was not only happy with the results but also learned a few new things. Here is everything I learned in those three days distilled into three short points.
The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, will compare the Jevons Paradox to modern-day enterprise IT, e...
Major trends and emerging technologies – from virtual reality and IoT, to Big Data and algorithms – are helping organizations innovate in the digital era. However, to create real business value, IT must think beyond the ‘what’ of digital transformation to the ‘how’ to harness emerging trends, innovation and disruption. Architecture is the key that underpins and ties all these efforts together. In the digital age, it’s important to invest in architecture, extend the enterprise footprint to the cl...
SYS-CON Events announced today that Commvault, a global leader in enterprise data protection and information management, has been named “Bronze Sponsor” of SYS-CON's 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Commvault is a leading provider of data protection and information management solutions, helping companies worldwide activate their data to drive more value and business insight and to transform moder...
What does it look like when you have access to cloud infrastructure and platform under the same roof? Let’s talk about the different layers of Technology as a Service: who cares, what runs where, and how does it all fit together. In his session at 18th Cloud Expo, Phil Jackson, Lead Technology Evangelist at SoftLayer, an IBM company, spoke about the picture being painted by IBM Cloud and how the tools being crafted can help fill the gaps in your IT infrastructure.
SYS-CON Events has announced today that Roger Strukhoff has been named conference chair of Cloud Expo and @ThingsExpo 2016 Silicon Valley. The 19th Cloud Expo and 6th @ThingsExpo will take place on November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. "The Internet of Things brings trillions of dollars of opportunity to developers and enterprise IT, no matter how you measure it," stated Roger Strukhoff. "More importantly, it leverages the power of devices and the Interne...
Digital innovation is the next big wave of business transformation based on digital technologies of which IoT and Big Data are key components, For example: Business boundary innovation is a challenge to excavate third-party business value using IoT and BigData, like Nest Business structure innovation may propose re-building business structure from scratch, as Uber does in the taxicab industry The social model innovation is also a big challenge to the new social architecture with the design fr...
In this strange new world where more and more power is drawn from business technology, companies are effectively straddling two paths on the road to innovation and transformation into digital enterprises. The first path is the heritage trail – with “legacy” technology forming the background. Here, extant technologies are transformed by core IT teams to provide more API-driven approaches. Legacy systems can restrict companies that are transitioning into digital enterprises. To truly become a lea...
Data is an unusual currency; it is not restricted by the same transactional limitations as money or people. In fact, the more that you leverage your data across multiple business use cases, the more valuable it becomes to the organization. And the same can be said about the organization’s analytics. In his session at 19th Cloud Expo, Bill Schmarzo, CTO for the Big Data Practice at EMC, will introduce a methodology for capturing, enriching and sharing data (and analytics) across the organizati...
Adobe is changing the world though digital experiences. Adobe helps customers develop and deliver high-impact experiences that differentiate brands, build loyalty, and drive revenue across every screen, including smartphones, computers, tablets and TVs. Adobe content solutions are used daily by millions of companies worldwide-from publishers and broadcasters, to enterprises, marketing agencies and household-name brands. Building on its established design leadership, Adobe enables customers not o...
DevOps at Cloud Expo, taking place Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th 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 wait for long dev...
IoT offers a value of almost $4 trillion to the manufacturing industry through platforms that can improve margins, optimize operations & drive high performance work teams. By using IoT technologies as a foundation, manufacturing customers are integrating worker safety with manufacturing systems, driving deep collaboration and utilizing analytics to exponentially increased per-unit margins. However, as Benoit Lheureux, the VP for Research at Gartner points out, “IoT project implementers often ...
Why do your mobile transformations need to happen today? Mobile is the strategy that enterprise transformation centers on to drive customer engagement. In his general session at @ThingsExpo, Roger Woods, Director, Mobile Product & Strategy – Adobe Marketing Cloud, covered key IoT and mobile trends that are forcing mobile transformation, key components of a solid mobile strategy and explored how brands are effectively driving mobile change throughout the enterprise.
Businesses are struggling to manage the information flow and interactions between all of these new devices and things jumping on their network, and the apps and IT systems they control. The data businesses gather is only helpful if they can do something with it. In his session at @ThingsExpo, Chris Witeck, Principal Technology Strategist at Citrix, will discuss how different the impact of IoT will be for large businesses, expanding how IoT will allow large organizations to make their legacy ap...
Video experiences should be unique and exciting! But that doesn’t mean you need to patch all the pieces yourself. Users demand rich and engaging experiences and new ways to connect with you. But creating robust video applications at scale can be complicated, time-consuming and expensive. In his session at @ThingsExpo, Zohar Babin, Vice President of Platform, Ecosystem and Community at Kaltura, will discuss how VPaaS enables you to move fast, creating scalable video experiences that reach your ...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life sett...
In his session at @ThingsExpo, Kausik Sridharabalan, founder and CTO of Pulzze Systems, Inc., will focus on key challenges in building an Internet of Things solution infrastructure. He will shed light on efficient ways of defining interactions within IoT solutions, leading to cost and time reduction. He will also introduce ways to handle data and how one can develop IoT solutions that are lean, flexible and configurable, thus making IoT infrastructure agile and scalable.