|By Udayan Banerjee||
|January 19, 2013 02:00 PM EST||
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.
- 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:
- Which methodologies would you choose?
- 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:
- Coming to a consensus on what is mandatory practice is a difficult task
- 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.
Internet of @ThingsExpo, taking place November 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 Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devices - comp...
Sep. 28, 2016 12:30 PM EDT Reads: 5,095
Cloud computing is being adopted in one form or another by 94% of enterprises today. Tens of billions of new devices are being connected to The Internet of Things. And Big Data is driving this bus. An exponential increase is expected in the amount of information being processed, managed, analyzed, and acted upon by enterprise IT. This amazing is not part of some distant future - it is happening today. One report shows a 650% increase in enterprise data by 2020. Other estimates are even higher....
Sep. 28, 2016 12:30 PM EDT Reads: 4,103
SYS-CON Events announced today that SoftLayer, an IBM Company, has been named “Gold Sponsor” of SYS-CON's 18th Cloud Expo, which will take place on June 7-9, 2016, at the Javits Center in New York, New York. SoftLayer, an IBM Company, provides cloud infrastructure as a service from a growing number of data centers and network points of presence around the world. SoftLayer’s customers range from Web startups to global enterprises.
Sep. 28, 2016 12:30 PM EDT Reads: 1,022
One of biggest questions about Big Data is “How do we harness all that information for business use quickly and effectively?” Geographic Information Systems (GIS) or spatial technology is about more than making maps, but adding critical context and meaning to data of all types, coming from all different channels – even sensors. In his session at @ThingsExpo, William (Bill) Meehan, director of utility solutions for Esri, will take a closer look at the current state of spatial technology and ar...
Sep. 28, 2016 12:20 PM EDT
Fifty billion connected devices and still no winning protocols standards. HTTP, WebSockets, MQTT, and CoAP seem to be leading in the IoT protocol race at the moment but many more protocols are getting introduced on a regular basis. Each protocol has its pros and cons depending on the nature of the communications. Does there really need to be only one protocol to rule them all? Of course not. In his session at @ThingsExpo, Chris Matthieu, co-founder and CTO of Octoblu, walk you through how Oct...
Sep. 28, 2016 12:00 PM EDT Reads: 2,272
19th Cloud Expo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterpri...
Sep. 28, 2016 12:00 PM EDT Reads: 4,400
The vision of a connected smart home is becoming reality with the application of integrated wireless technologies in devices and appliances. The use of standardized and TCP/IP networked wireless technologies in line-powered and battery operated sensors and controls has led to the adoption of radios in the 2.4GHz band, including Wi-Fi, BT/BLE and 802.15.4 applied ZigBee and Thread. This is driving the need for robust wireless coexistence for multiple radios to ensure throughput performance and th...
Sep. 28, 2016 12:00 PM EDT Reads: 1,645
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...
Sep. 28, 2016 11:49 AM EDT Reads: 196
“We're a global managed hosting provider. Our core customer set is a U.S.-based customer that is looking to go global,” explained Adam Rogers, Managing Director at ANEXIA, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Sep. 28, 2016 11:45 AM EDT Reads: 3,074
Is your aging software platform suffering from technical debt while the market changes and demands new solutions at a faster clip? It’s a bold move, but you might consider walking away from your core platform and starting fresh. ReadyTalk did exactly that. In his General Session at 19th Cloud Expo, Michael Chambliss, Head of Engineering at ReadyTalk, will discuss why and how ReadyTalk diverted from healthy revenue and over a decade of audio conferencing product development to start an innovati...
Sep. 28, 2016 11:45 AM EDT Reads: 2,079
In his general session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, discussed cloud as a ‘better data center’ and how it adds new capacity (faster) and improves application availability (redundancy). The cloud is a ‘Dynamic Tool for Dynamic Apps’ and resource allocation is an integral part of your application architecture, so use only the resources you need and allocate /de-allocate resources on the fly.
Sep. 28, 2016 11:30 AM EDT Reads: 2,847
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 ...
Sep. 28, 2016 11:21 AM EDT Reads: 138
If you had a chance to enter on the ground level of the largest e-commerce market in the world – would you? China is the world’s most populated country with the second largest economy and the world’s fastest growing market. It is estimated that by 2018 the Chinese market will be reaching over $30 billion in gaming revenue alone. Admittedly for a foreign company, doing business in China can be challenging. Often changing laws, administrative regulations and the often inscrutable Chinese Interne...
Sep. 28, 2016 11:00 AM EDT Reads: 374
As ridesharing competitors and enhanced services increase, notable changes are occurring in the transportation model. Despite the cost-effective means and flexibility of ridesharing, both drivers and users will need to be aware of the connected environment and how it will impact the ridesharing experience. In his session at @ThingsExpo, Timothy Evavold, Executive Director Automotive at Covisint, will discuss key challenges and solutions to powering a ride sharing and/or multimodal model in the a...
Sep. 28, 2016 10:45 AM EDT Reads: 268
SYS-CON Events announced today that CDS Global Cloud, an Infrastructure as a Service provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. CDS Global Cloud is an IaaS (Infrastructure as a Service) provider specializing in solutions for e-commerce, internet gaming, online education and other internet applications. With a growing number of data centers and network points around the world, ...
Sep. 28, 2016 10:30 AM EDT Reads: 2,948
SYS-CON Events announced today that LeaseWeb USA, a cloud Infrastructure-as-a-Service (IaaS) provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. LeaseWeb is one of the world's largest hosting brands. The company helps customers define, develop and deploy IT infrastructure tailored to their exact business needs, by combining various kinds cloud solutions.
Sep. 28, 2016 10:15 AM EDT Reads: 3,252
Big Data has been changing the world. IoT fuels the further transformation recently. How are Big Data and IoT related? In his session at @BigDataExpo, Tony Shan, a renowned visionary and thought leader, will explore the interplay of Big Data and IoT. He will anatomize Big Data and IoT separately in terms of what, which, why, where, when, who, how and how much. He will then analyze the relationship between IoT and Big Data, specifically the drilldown of how the 4Vs of Big Data (Volume, Variety,...
Sep. 28, 2016 10:00 AM EDT Reads: 1,095
WebRTC is bringing significant change to the communications landscape that will bridge the worlds of web and telephony, making the Internet the new standard for communications. Cloud9 took the road less traveled and used WebRTC to create a downloadable enterprise-grade communications platform that is changing the communication dynamic in the financial sector. In his session at @ThingsExpo, Leo Papadopoulos, CTO of Cloud9, discussed the importance of WebRTC and how it enables companies to focus...
Sep. 28, 2016 10:00 AM EDT Reads: 2,214
For basic one-to-one voice or video calling solutions, WebRTC has proven to be a very powerful technology. Although WebRTC’s core functionality is to provide secure, real-time p2p media streaming, leveraging native platform features and server-side components brings up new communication capabilities for web and native mobile applications, allowing for advanced multi-user use cases such as video broadcasting, conferencing, and media recording.
Sep. 28, 2016 09:15 AM EDT Reads: 3,173
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, wh...
Sep. 28, 2016 09:00 AM EDT Reads: 3,851