Archives

What is the Internet of Things?

A term like “Internet of Things” (IoT) can become so over-used that it loses all meaning. Those of us who were around for the “Web 2.0” hype cycle remember this situation. In retrospect, the outcome of “Web 2.0” was the interactive, self-authoring Internet, as we know it today: Twitter, YouTube, Facebook, blogs, among others. In technology, once something becomes successful it simply becomes the way things are, and no longer needs a name. I believe we will see a similar phenomenon around IoT: once it has transformed the world, it will no longer even need a name, and it will just be the way things are.

In this series, we will discuss what IoT is, why it’s going to happen, and how it will change the world even more profoundly than did its predecessor,–the once-overhyped term “Web 2.0”.

The Internet is moving rapidly toward connecting all the people on the planet via their computing devices. With the addition of smart and increasingly inexpensive mobile devices, people’s access to the Internet has moved ever closer to ubiquity over the past decade. By the year 2014, over 40% of the global population –almost three billion people—had Internet access. In the group of populous, industrialized countries that used to be called the “G5” (US, UK, Germany, France and Japan), over 85% of people have Internet access, and the rest of the world is rapidly catching up.

As the cost of computing and storage power has plummeted, and connectivity has become widespread, next-frontier technologists are now looking toward connecting not only people, but also “things”, over the Internet. IoT—sometimes referred to as the “Internet of Everything”—describes what many consider the next evolution of the Internet. The IoT vision is that over time, many of the elements of the physical world will have a presence on the Internet, much as approximately 1.3 billion people have a presence on Facebook today . While the cup of coffee sitting next to you may never have its own Facebook page, it may in the future be connected to a local network or to the Internet, and be able to signal your coffee pot when it’s time to brew another batch—or let the waitress know when you need a warm-up.

The concept of devices talking to each other via the Internet is, of course, nothing new. When we speak about “people” being on the Internet, we are only speaking figuratively. It’s really our machines—our laptops, desktops and mobile devices—that are connected, either via wires or radio signals, not we humans ourselves. The Internet is already composed entirely of “things”; we just happen to use some of those things as our communication devices and alter egos. So what is changing? When we speak of an “Internet of Things”, what we mean is that devices themselves will begin to play more of the role currently reserved for humans . In particular, devices and their intermediaries will directly create and act on the bulk of the meaningful data available through the Internet, autonomously and without human intervention. More and more, these inanimate objects will begin to communicate directly with each other, make decisions and take autonomous action, and then reach out through the Internet to communicate with us.

A little surprisingly, this hasn’t happened yet to any great degree. Currently and over the history of the Internet, people created most of the content on the Internet by typing, scanning, talking, recording, photographing, filming or through other means. In 2012, only about 30% of all new digital data of any sort was generated by non-human directed machines such as sensors, computer log files and security cameras ; the remaining 70% was created by people, directly or indirectly, with much of it being redundant copies of TV shows stored on DVR’s.

Not all this data—nor all the human-generated data—is available via the Internet, but as the world gets connected that will change. The growth in the rate of machine-generated data is faster than that of human-generated data, and this trend is likely to continue, in part because the number of “things” will, over time, vastly outnumber the number of humans. According to one estimate, in 2014 there were approximately twice as many non human-directed devices connected to the Internet as there were humans on the planet , and this ratio is only expected to grow .

The idea of machine-to-machine communication is clearly central to the Internet of Things, but these are not the same thing. Machine-to-Machine communication, often abbreviated “M2M”, is the “Thing” analogy to a phone call from one person to another. The communication is transient and “point to point”, even though the “call” might be placed through a switch that could potentially connect that phone to many others. A device connected to IoT is more like a person posting on Facebook or making a blog entry—the information posted by that device is persistent and accessible to anyone or any thing having permission to read it and respond, or otherwise act on it. What’s different is that for human-to-human posts, the “intelligence” already resides in the person making, reading or responding to the post. In IoT, the “intelligence” must reside in the network or in the device itself. It’s this “intelligence” that imputes meaning to the data supplied by the sensors, and decides how to act on it.

It’s clear that some devices will become ever more intelligent—cars, for example. However in many cases the “brains” of the Internet of Things will not be in the device, but in the Internet itself. Or, more precisely, in the cloud. Many everyday things will gain sensory rather than thinking capabilities, as well as the ability to communicate what they are sensing to the Internet cloud. In the next 10 years, I expect my coffee cup, for example, could acquire a heat sensor to measure how warm my coffee is, a pressure sensor to determine how full the cup is, and even connectivity and a power source—but not a brain.

The “brains in the cloud” approach allows bringing together the input from many sensors, meaning more interesting and complex behaviors can occur. It also allows learning from past behaviors, and making correlations with other situations beyond those experienced by any particular device. For example, a system in the cloud could observe the behavior of many coffee cups to learn when people tend to refill them, based on how full and how warm the cup is. The system can then use this average information to service a new patron at a restaurant, for example. By keeping the end-point devices “dumb”—that is, endowing them with sensors but not brains—systems can also be rapidly changed and upgraded, without worrying about upgrading literally billions of end-points.

As storage and computing costs grow ever cheaper as predicted by Moore’s Law, intelligence and storage will undoubtedly be distributed among an increasing number of devices as well. Looking out far enough, even throwaway objects like disposable coffee cups may become “smart”. But for now, genuinely “smart” devices are not really the essence of IoT. The essence is distributed sensors and connected devices, with an increasingly smart brain to acquire and act on (near) real-time information.

Now read Part 2 in this series: Uber as an example of where IoT is headed

Dr. Jim Walsh is CTO at GlobalLogic, where he leads the company’s innovation efforts. With a Ph.D. in Physics and over 30 years of experience in the IT sector, Dr. Walsh is a recognized expert in cutting-edge technologies such as cloud and IoT.

References

http://www.internetlivestats.com/internet-users/

http://www.rfidjournal.com/articles/view?4986

http://www.technologyreview.com/view/509656/consumers-generate-most-of-the-worlds-data-but-machines-are-catching-up/

http://www.emc.com/about/news/press/2014/20140409-01.htm

Cisco IBSG White Paper “The Internet of Things: How the Next Evolution of the Internet is Changing Everything” , Dave Evans, Cisco IBSG, April 2011

Collaboration is one of the most important aspects for successful Agile teams. However, after working with many Agile projects, I realized that collaboration goes beyond simply working together. True collaboration means asking the question, “How can I help you?” As in, “How can I help reach your/our goals? How can I help remove your roadblocks?” I feel the simple phrase “How can I help you?” should become part of the default culture of Agile teams and organizations. Focus should shift from reaching “my” goals to “our” goals.

In this post, let’s take a look at some key collaboration patterns for collocated teams that are helping many teams worldwide.

collocated-teams

No Hierarchies

Collaboration prospers in environments with no hierarchy. I still see teams that have evolved from a deep hierarchical cultural background. Agile has no specific team roles, and everybody works in a generalist style. But in teams and cultures with an hiearchical mindset, it’s not uncommon to see junior team members calling their seniors as sir, madam, etc. An hierarchical mindset almost always kills a collaborative mindset. Remember, hierarchy has nothing to do with team culture, but has more to do with an organization’s culture.

Swarming

Irrespective of whichever Agile framework you work with, it is frustrating to have a team looking very busy — with lots of items in the “In Progress” column — but nothing with a DONE status. This is one of the natural repercussions for teams that use standup as a status update meeting.

One of the key tenets of Kanban is to reduce the cycle time of user-stories (i.e., move user-stories to the DONE column as soon as possible). As I discussed in a previous blog, “stop starting, start finishing,” is the famous Mantra that needs to become the anthem of every team.

By embracing this philosophy, many teams have moved towards a culture of Swarming. In this approach, instead of only one developer working on one user-story, multiple team members focus on finishing a single user-story as soon as possible. Swarming is not limited to certain ceremonies like standup, either; it is a team culture.

Pair Programming

Although statistics show that high-performing teams almost always pair on tasks, in reality, many candidates in the Shu state (Shu Ha Ri – ?) of their Agile journey outrightly reject the pair programming approach altogether. Their argument seems to be logical: isn’t it a waste of effort or so-called “resources” to put two people on the same task?

The fact is that pair programming is not just about a pair of typists, but much more. “Evolutionary design” refers to a design that is well thought out and that evolves continuously. It provides the bare minimum functionality but can still be achieved at runtime. This being said, pairing discussions help programmers move towards evolutionary design.

Furthermore, pairs don’t get distracted as a normal solo programmer would. This may be surprising to people who never practiced pair programming, but it’s entirely possible for any team member to resume any user-story at any point in time — like a relay race member. There are no more hidden islands of knowledge. This approach also enables key developers to move on to new projects instead of getting stuck in a project just because they are key team members. So as you can see, pairing is an important pattern for collocated as well as remote teams.

Team-Driven KPIs

During one of my presentations, a member from the audience told me a very interesting story. He said, “I worked in a team that followed all these cool ideas and principles of working together as team collaboratively. Personally speaking, they all make a lot of sense and work well for teams. Our team also worked in close collaboration among developers and testers. The bug count was tremendously reduced because of how we helped and supported each other. However, when it came to performance appraisals, I got pulled by my manager just because of the same reason — the number of defects coming out of the project were very low. My KPI was driven on the number of bugs extracted.”

Doesn’t that sound shocking? And yet in many organizations, that’s the ground reality. Teams move on to Agile, but the organization somehow does not. This disconnect can have an adverse effect on collaboration between team members. Agile is a cultural change and cannot be limited to just a team-level; it must be embraced by the entire organization. However, in this particular scenario, it’s important to have team-driven-KPIs instead of individual driven KPIs.

Cardwalls

Many organizations in India work as outsourcing service companies. Since most customers are located in the US, Europe, or other parts of the world, it becomes important to use electronic tools like Jira, Trello, or Rally to transparently look at team progress. That’s important for the customers and makes a lot of sense.

However, electronic tools are more like refrigerators in that you need to open them and then look for relevant information. Using cardwalls can be a much more effective way to keep track of a team’s work. Of course, the obvious objection is, “Why use cardwalls when we already have electronic tools?” And to be honest, I never used cardwalls or saw them being used before I worked with an onshore customer team.

However, while working with physical cardwalls, I realised their importance. They significantly change the way a team collaborates because members have discussions around them, and the standups start looking real. Team members can move cards around physically, everyone can understand what other people are working on, and standups become sync-up forums rather than just status updates. Standups also become shorter, and the team focuses on sprint progress rather than individual progress because they can actually see this progress on the wall.

Shrikant Vashishtha is the Director of Engineering for GlobalLogic’s CTO department. He has over 15 years of experience in the IT industry and is currently based in Noida, India.

Sentiment analysis and opinion mining have become an integral part of the product marketing and user experience as both businesses and consumers turn to online resources for feedback on products and services. This white paper explores the evolution and challenges of sentiment anaysis, as well as how to best leverage it.

My automobile hobby naturally started with the purchase of my first car (a Renault 19), which also coincided with the beginning of my IT career. In 2002, I got engaged with motorsports, actively participating in competitions as a pilot until 2008, when I became a Candidate Master of Motor Sports of Ukraine. These days I rarely take part in contests, though I often organize them. For example, last year Kharkiv hosted GlobalLogic Classic Rally on stock cars, and I managed the organization of this event. Apart from that, I have other automotive hobbies that are closer to the IT field.

For a long time, I’ve been working with a Speed Car Laboratory at KhNAHU (Kharkiv National Automobile and Highway University), helping create injection engine control systems and electronic equipment for their high-speed cars. Six years ago I became interested in an ecological automotive project called Shell Eco-marathon. In this competition, student teams have to construct a vehicle that is able to cover a certain distance with minimal gasoline consumption. The team whose car is the most energy-efficient wins the competition.

car-1
Photo: https://www.flickr.com/photos/shell_eco-marathon/sets/

My fellows from KhNAHU and I have been tracking this competition since 2008. In 2009 we built our own eco-vehicle, and since 2010 we’ve been participating in the Shell Eco-marathon in Europe. This year’s event in Rotterdam gathered about 200 teams from Europe. There are a range of races within the competition, which are divided into two main groups: Urban Concept and Prototypes.

We participated in the Prototypes races, which is for custom-made three-wheeled (or sometimes four-wheeled) vehicles. At first glance these vehicles don’t really look like cars, but they have all the necessary parts. However, unlike Urban Concept participants, we are not obligated to use real automotive elements in our prototype — which is why our vehicle’s construction was based on… bicycle units.

car-2

My role in this project involved developing the car and getting it ready before the race. I worked on the engine control system and a telemetry system assembled from easily accessible electronics, namely an Android smartphone and a PC-connected Bluetooth module. This system is used to control and and manage the operation of the engine during its warm-up. During the race, the smartphone is attached to the pilot’s back, and he can see the indicators on the mirrors inside the car. It really helps in the course of the race.

The competition race is very similar to driving in a city. Fifteen cars pull into the track, one after another. It’s important to take many circumstances into account while driving: you have to choose the best place and proper manner of driving so that you don’t get caught in a pack of cars on the track. Besides that, you have to keep in mind your fuel expenditure and start the engine no more and no less than necessary. According to the rules, the average speed should be no less than 25 km/h or, to be precise, you have to cover 10 laps (total length: 16 km) in 39 minutes.

car-3

When our car enters a race, it usually accelerates up to 30-35 km/h, upon which we turn off the engine and move inertially till the speed drops to 22-23 km/h. Then we start the engine again for 3 or 4 seconds to pick up speed. At a 1.5 km distance (one lap) we have to turn on the engine only 3 or 4 times. It’s just a few runs, isn’t it? But the strongest team of the competition only turns on their engine just once for a few seconds!

In 2013, we covered the required distance on 32 ml of gasoline. In other words, we covered 476 km with 1 liter of gasoline. We scored 22nd out of the 90 registered participants in our group. Moreover, we were among the top-50 racers overall, which is actually not bad. Our 2010 race result, 570 km on 1 liter of gasoline, officially entered the Book of Records of Ukraine! Unfortunately, at the 2014 competition, we couldn’t pass the whole distance and record the result officially. Nevertheless, we have on-board telemetry data for the first six out of sixteen kilometers of race track. According to this data, the result could have amounted to about 1150-1230 km with 1 liter! This achievement is a result of changes in the fuel supply system. This result cheered us up, and we are determined to confirm our progress at Shell Eco-marathon next year.

car-4
Besides that, we have an idea to develop a program that would suggest the best strategy of driving depending on a racing situation. Such a strategy is very important during the competition. Still, a lot depends on the driver’s proficiency, vehicle design, and investments in it as well.

For instance, our car is made of fiberglass. The total weight of the construction, including the engine, is 43 kg. It seems to be a light machine, yet the French team — a leader in the 2013-2014 competitions — has a car of a similar design that weighs only 18 kg. The price of the body is also very different: our car’s body costs $3000, while the French team’s body equals to €8000-12000. Besides that, a carbon body can be manufactured only in Western Europe, and preferably you have to get a few similar constructions to experiment.

The same goes for an engine. We use a ready-made motor converted to an injection engine. In fact, it is a motor from a hand-controlled grass trimmer. The engine capacity is 35 сс. Actually, the French team has a motor of the same capacity, but it was tailor-made to achieve the lowest fuel consumption due to the highest energy efficiency. It is an unusual motor with very long piston strokes. At the same time, it is not universal: this engine can only work on one vehicle. But its energy efficiency is proven: in 2013 it took the car only 7 ml of fuel to cover 10 km. This year the French team concentrated on driving mode optimization and the introduction of low-friction ceramic bearings. It gave them an opportunity to add another 700 km to their figures and record a result of 3314,9 km with 1 liter of gasoline.

We haven’t reached the best possible result on our car yet, and in 2015 we are ready to come up with better figures and prove them officially. I think that young students in our team have a huge potential because the word “impossible” is absent from their minds. Myself, I often pay too much attention to constraints, quality requirements or costs, while missing opportunities, and then I refuse. “Let’s do it?” — “No. It’s impossible because…” But the students still don’t know it They know nothing about the impossibility — and therein lays their strength! Sure, they often lack knowledge … But still, my best motivation is to suggest creating something and to hear “Sure, let’s do it!” In fact, we usually succeed!

By the way, this principle also applies to innovations in IT projects. The most initiative engineers often become idea drivers, even when they don’t have enough experience. Ultimately, they achieve great results and inspire their colleagues both in professional projects and hobbies.

Sergiy Podnos is a Senior Project Manager at GlobalLogic Ukraine with over fourteen years of experience in the IT industry.

Business success is a temporary thing: competition urges companies to be effective and innovative in order to keep their market edge. Startups intrinsically understand this principle, which is why they are able to achieve great results without having many resources. So what can large companies learn from startups about innovation, and how can an organization’s greatest resource — its people — contribute to this innovation?

My Experience as a “Startupper”

Two years ago, I participated in hackathon for the first time. During this event, spontaneous teams of strangers embodied their ideas in prototypes (e.g., web, mobile, hardware) over a weekend. I met fantastic people who had one common feature (apart from being highly qualified specialists): they eagerly wanted to make the world a better place. For 48 hours, these people passionately coded, designed, explored markets, shot videos, and rehearsed their pitches. They worked without thinking of creature comforts, and they only took a few hours to sleep. But exhausted as they were, they were driven by realizing their ideas.

At that hackathon, which was held at Kyiv Polytechnical Institute, my team unexpectedly took the first place. Our product, motify.me, was focused on helping people achieve their dreams through communicating with those who have already achieved them. In just a few months, with our poorly working prototype and an engaging PowerPoint presentation, we received seed investments in exchange for a share in our startup. Hence, I suddenly became the co-owner and shareholder of an American company with a Ukrainian investor.

startup1
Although we eventually decided to close down the project, the experience compelled me to analyze the operational activities of startups and big companies — especially since it seemed that startups are often more effective. Initially, it seemed that the key was the company’s size. However, it soon became obvious that it wasn’t the size of the company that mattered, but its ability to quickly and effectively make decisions, its entrepreneurial flexibility, its absence of bureaucracy, its ability to choose the most up-to-date technologies and approaches, etc. In order to condense these factors into a single word, I’ll use the term “innovation.”

Why do Companies Need Innovations?

I don’t think anybody has systematized a company’s lifecycle better than Ichak Adizes did. The idea is that, from Infancy to Prime (terms used by Adizes), a company stays flexible, has a strong intrinsic entrepreneurial component in management, and is focused on growing and winning its place in the market. After a company finds and securely occupies this place (i.e., Stability stage), experimenting with new ideas becomes a lower priority than administrating.

startup2

Paradoxically, companies start to need innovations most when they reach their mature stages (i.e., Stability to Early Bureaucracy). This is the reason why they swallow up their competitors, which appear to be more flexible and promising (e.g., Facebook’s acquisition of WhatsApp and Instagram). Through this approach, corporations can feel “young” again and strengthen their positions in the market.

It’s encouraging to see that GlobalLogic, a mature company, cultivates a culture of openness to new ideas. For instance, it holds an annual proof-of-concept (POC) contest in which the company’s consultants can play the role of a startupper and realize their boldest ideas. It’s also interesting to note that some of these POCs become actual GlobalLogic products, which provides a path to a much more interesting business model.

Where to Start?

In order to maintain its success, a company should track innovations, including technologies, processes, marketing, people management, etc. It is especially important to track technologies, which tend to change quickly. (And naturally, it has the biggest importance for technological companies.) Below are some steps that managers can take to drive innovation within an organization:

Challenge traditional approaches

  • Use your teams’ creativity to complete tasks that you have previously completed by yourself
  • Intensify cooperation with other departments and managers – you’ll notice that you have many common interests
  • Turn staffing into an exciting process both for candidates and yourself
  • Consider what else you can do for your clients

Cultivate an entrepreneurial spirit

  • Set ambitious goals and give more freedom to your people
  • Attend startup events, either by yourself or with your team
  • Initiate a hackathon within your company

Evolve and educate your staff

  • Practice distance learning for yourself and your teams (e.g., Stanford, Udacity, and other online courses)
  • Organize a team viewing of TED Talks
  • Refresh your corporate library
  • Participate in professional conferences

On an individual level, each of us can make our company great. Below are several books that can help with your endeavors:

Innovator’s Dilemma – Clayton Christensen

  • An innovator’s Bible, this book helps readers understand how breakthrough innovations differ from supporting ones, why some companies fail even when the managers do everything right, etc.

Good To Great – Jim Collins

  • This book focuses on how to turn a good company into a great one through stories about prominent leaders and enterprises.

Lean Startup – Eric Ries

  • This book explores the adaptation of “lean principles” in business (i.e., a way to reach the greatest results with a minimal budget in conditions of uncertainty).

Managing Corporate Lifecycles – Ichak Adizes

  • This book delves into managing the corporate lifecycle.

Organizational Culture and Leadership – Edgar H. Schein

  • This book focuses on the leader’s role in incorporating culture development.

startup3
Summary

In order to stay successful in business, you shouldn’t remain satisfied with achieved results. History has shown us many examples of leading companies who have had to give ground to talented and diligent newcomers. The truly great companies are the ones that eagerly evolve so as to preserve their market leadership. Innovative thinking is the foundation of their success.

Yuriy Koziy is a senior consultant at GlobalLogic’s Kyiv center with over ten years of product engineering and development experience. He most recently shared his startup and management experience as a guest speaker at the Lviv Project Management Day 2014 conference.

A few weeks ago, I had the pleasure of moderating a stellar panel as part of an evening co-hosted by GlobalLogic and the Churchill Club, “Engineering Great Products and Customer Experience.”

Looking at the conservatively dressed, largely non-tattooed audience, I guessed that most of them were business people, not designers. Asking for a show of hands, about two thirds of the audience identified themselves as coming from outside the “hardcore software design” community. I’ve been in the software world for a long time, and it struck me that ten years ago, the audience for any event about building great products would have been radically tipped toward the design community, not the business community. Ten years ago, relatively few successful business people focused on “great”. Profitability and market penetration, yes. Product differentiation, yes. Time to market, yes. But until recently “great” was a philosophy, not a mainstream business strategy.

This shift, I think, can be attributed to a focus on “great” by two companies who have become wildly successful in a business sense: Apple and Google. Between 2004 and 2014, Apple’s Market Cap grew from $10 billion to $450 billion; Google’s grew from a 2004 post-IPO valuation of $23 billion to over fifteen times that value today. While no single factor is responsible for such success, I think most would agree that Apple’s focus on great design and Google’s on technology innovation were among the primary factors fueling their tremendous business growth.

So, with the help of an amazing panel–Catherine Courage (SVP Customer Experience at Citrix), Steve Johnson (VP of User Experience at LinkedIn), Frederik Pferdt (Head of Innovation & Creativity Programs at Google), Charles Warren (SVP of Product Design at Salesforce.com) and Larry Tesler (Chief Experience Officer at Mine, Inc.)—I and the audience tried to uncover what it takes to create great products consistently and repeatedly, and what trends they see ahead.

One challenge that must be overcome is the cultural difference between people who design and people who implement. Uncovering the secret sauce to making engineers and designers work successfully together can be the key to creating wonderful products. The panel brought up many great points to consider, including what makes a good designer–both practically and philosophically–and what makes a good design team leader. The discussion led to a related point that design teams shouldn’t just have a variety of people with different disciplines, but also multi-disciplinary individuals, and that finding employees that fit the company culture is just as important as finding people who have the right skills.

Throughout the evening, the discussion continued around strategies for creating great products, probing the panelists’ opinions on different issues including A/B testing and defining process. And, since the theme of the evening included trends, I enjoyed leading the panelists through a lightning round of questions that asked them about where they see upcoming trends and in which companies they find inspiration. It was interesting to hear the panel mention South Korean web designers as setting trends, along with companies like Audi and Tesla as the ones doing inspiring work.

The whole evening was a great reminder of the progress made in software in the past ten years, with designers now holding a full seat at the table together with engineering and marketing. I sincerely hope the audience (and the panel) left with new perspectives on creating “great” products and customer experience, and where we should look to see upcoming trends.

Limiting “Work in Process” (WIP) items is one of the key ideas behind Kanban and Lean approaches to developing software. Having too many WIPs might make it look like everyone is sufficiently busy, but there’s really no functional outcome for the end user.

In my experience, it is much more important to work towards completing the user story — in other words, to stop starting and to start finishing.

It’s natural to assume that this “stop starting, start finishing” philosophy is limited to Lean and Kanban methodologies. After all, Scrum works so well that it doesn’t run into WIP issues, right? Wrong! Let’s look at a typical Scrum standup:

In this example scenario, the project has around 9-10 team members. At the beginning of the sprint, the team creates subtasks for each user story together. The idea behind this method is that any team member should be able to pick up any subtask at any point in time — thereby limiting roadblocks or delays.

During the Scrum standup, each team member shares what he/she did yesterday, what he/she will be doing today, and if there are any impediments. Although this approach provides a decent insight into individual tasks, it fails to provide a broader progress indicator on how close the team is to completing the individual user stories and thereby the sprint. Instead, a better idea is to let the team assess how everyone can collaborate and help each other to move the user stories to the DONE column.

Now you’re probably thinking, “That’s an interesting theory, but is it really necessary? After all, the end user will only see the finished features after the sprint is over.” While technically this is true, let’s look a little deeper at the internal Scrum mechanics.

First of all, since testers receive user stories at the very end of a sprint, they are typically the ones who are under the time crunch to finish the user story on-time and with production-ready quality. However, if the entire team focuses on finishing the user story early, the testers may have more time to test it.

The “stop starting, start finishing” principle encourages better teamwork among team members. For example, in a standard Scrum team, I may choose not to help my colleague because I want to focus on finishing my own task. But if we are all focused on the greater goal of finishing the user story, then it’s in my best interest to help my colleague with his/her tasks. In fact, the primary measure of progress in a Scrum project (as per the Scrum burndown/burnup chart) is how much work remains in a sprint or how much work has been completed — NOT how much work has been started.

So in reality, the Lean approach of “stop starting, start finishing” also aligns very well with Scrum methodology. Specifically, it’s important to look at the user story as a whole during a Scrum standup and to identify how the entire team can work together to close the user story as early as possible.

In my own experience, the best way to do this is to discuss outstanding tasks during the standup and to place WIP limits with each workflow, like in a Kanban project. This approach will result in better throughput, a more thoroughly tested user story and — most importantly — a happier end user.

Shrikant Vashishtha is the Director of Engineering for GlobalLogic’s CTO department. He has over 15 years of experience in the IT industry and is currently based in Noida, India.

One of the surprising technology trends of 2013 was the rate of massive mobile adoption. We witnessed how Facebook suddenly pivoted to mobile within a year, with an astonishing 73% of their user base accessing the site on a mobile device. And, we saw Paypal become a standard for mobile transactions, with a 93% increase in transactions over the previous year.

Mobile is the fastest technology adoption in human civilization history and is creating a new playing field for companies and consumers. According to data from the International Data Corporation (IDC), vendors shipped more than a billion smartphones in 2013, up 38.4% from the 725.3 million devices shipped in 2012. For consumers, the revolution means freedom of use, location and computing power that increase every year in their pockets. For companies, it offers an unprecedented scale to reach billions almost instantly.

The mobile wave is just here and being massively adopted over the next 3 years. It is becoming mainstream in an accelerated way and expected to overcome desktop-based computers this year. Prior to this was the desktop and server computing wave, which started at enterprises and then moved to consumers (PCs); now we are experiencing the opposite. Consumer use is impacting what devices are used at an enterprise and what enterprises sell/how they communicate with their customers.

Where the opportunity relies

As many of the prominent new Internet companies are building real high-growth businesses, every company is now becoming a digital business, and building great mobile experiences will be at the heart of every company strategy in the next 10 years. For many people, mobile is just a new channel to extend their business. However, even though omnichannel looks good on paper, very few companies master it. Companies simply have translated their internal systems and organization complexity to their customers, and that needs to change in order to increase engagement and loyalty. Therefore simplifying, refocusing and reimaging every touchpoint are a must. Those touchpoints will be increasingly mobile in nature, as systems of engagements will have mobile devices as a centerpiece. At the same time, it’s not just technology that is changing:

New business models
Digital enables new business models to be explored. The media industry is an example of how business models are changing, where content is king but convenience has become the queen. A great example of this is the subscription-based model of Netflix, which has become a Hollywood disruptor and enabler. Netflix provides shows and movies on demand–allowing viewers to break away from cable companies and movie theaters for entertainment. The content is still consumed, but in a different manner. Business model innovation is a must in a market where consumers want access to everything, at any time, on any device.

A B2Any world
Not long ago, we used to differentiate companies that address the consumer market (B2C) and companies that address other businesses as their market (B2B). Today the rise of bring-your-own-device (BYOD) and the success of SaaS (Software as a Service) business models allow distinctions to blur. As friction to conduct business is reduced and engagement channels automate, we will see B2Any companies taking over markets and addressing customers in a personalized way on a large scale.

Barriers blurring
Classic industry distinctions appear to be no longer valid in an all-digital world. Digitization of business is leveling the field and lowering barriers of entry, which is blurring the lines between industries. For example, is Amazon a retailer, a media company or a shipping company? Companies must become a customer company and fight for consumer loyalty: the mission, purpose and a consistent way to express it across touchpoints will become a competitive advantage.

Real real-time
As digitalization of businesses progress, real time has become a must-have feature. From large scale recommendation engines to real-time messaging platforms, the need to be “right here, right now” and allow consumers, employees and partners to make informed decisions is key.

Ways we use mobile
With business lines blurred and real-time becoming a must-have feature, companies are creating new ways to include mobile into everyday items, like using your smartphone as a hotel key or embedding your identity into your phone instead of carrying around a driver’s license or social security card.

Gap in the existing landscape

In order to capitalize on this opportunity, companies have to deal with their existing landscapes and overcome some aspects to capitalize fully on this trend. For many of them this will be a survival effort.

Outdated and legacy platforms not optimized for user engagement
Systems are not prepared for the level of activity that mobile brings. Platforms are optimized to conduct transactions and reduce costs–not to engage users.

Rise of the user experience
After a decade of interacting daily with consumer-friendly platforms, consumers demand the same form of easy-to-use interfaces from all interactions, including banking, marketing, home automation.

Explosion in data and integration points
Companies will create and store more than 7 zettabytes of data in 2014–almost 10 times more than in 2009–but the future will require a different infrastructure to create, manage and store more than 44 times the data we manage today by 2020. In addition to data, widely available web services can now be easily integrated, whether they are internal or external. The APIs are here to stay but there is no structured approach today to integrate such complexity.

No record of building and managing great software products
Building successful software products remains a core skillset of the internet consumer companies (probably their least understood competitive advantage) to build a great product and attract a massive audience. It is clear that almost every company must acquire this skillset and partner with leaders in this industry, as building a system of record (ERP, SCM) is different than building a system of engagement that grows revenues and keeps consumers loyal. Many companies have used in part Agile Methodologies to build software, but process is just a piece of the puzzle–a dynamic organization, a Product Development practice and a culture that foster innovation is also required.

Roadmap to a cohesive Mobile First strategy in your company

Aspects of a successful strategy:

Start small scale aggressively
Placing small bets at the beginning are the best way to start. The reason is the faster your organization learns, the faster it will move ahead. Changing an organization and adopting new skillsets is not an easy task, but you need a program that ensures continuity and is structured for the long term.

Focus on simplification and engagement levels
Companies must focus on redesigning the user experience, using tools like customer journey and identifying bottleneck areas from the user perspective, and then apply mobile technologies to engage and simplify life and reduce friction to do business with your company. A clear example of this approach is how retail banks move more operations to mobile apps–increasing engagement while reducing costs.

Assemble cross-disciplined teams
Technology adoption is just a small piece of the adoption puzzle; organizational change is probably the most challenging. Companies are generally structured around silos, with a centralized IT organization. This type of single-system thinking must change to adopt a customer-centric view as cross disciplined teams that are part of a mobile strategy will foster collaboration and set a new way to approach projects.

Create a mobile architecture blueprint

(1) Master the open web

Open web technologies are the key to adopting the mobile wave. Centralized authentication and adopting API management tools are critical to deploy a successful mobile infrastructure. Whether your decision is to go mobile web or native open web, technologies are a key component. Open web standards have evolved and matured over the past decade and have become easier to integrate as building blocks. Standards like OAuth in authentication or REST, JSON for data transport and HTML5, CSS3 and Javascript are critical to the next wave of responsive-designed systems of engagement.

(2) Re-architect your middleware to support next generation mobile applications

When a company scales from a few scattered set of mobile apps to a more comprehensive strategy integrating customers, partners, employees and smart devices, the typical ad-hoc architecture needs to be revised. Event driven, task oriented and real-time are the nature of the majority of highly successful mobile apps. In order to support these, legacy architectures have to evolve. Consider updating your current architecture to support a new set of use cases and the type of infrastructure consumer internet companies have by applying the Reactive Applications concept. Current architectures are not ready to support growth coming from mobile engagement and new scale out cloud-based models are more cost effective, resilient and extensible. New frameworks like Node.js and runtimes like Akka that extends Java Virtual Machine offer the best support for these scenarios. Unlock your data from legacy systems by designing REST APIs for either internal or external consumption. In the end, the goal is to enable an ecosystem where your developers and partners can quickly innovate and create easy ways to access your data and engage customers in new ways.

Big Data technologies will allow you to collect manage and exploit vast amounts of information coming from every interaction with your customers. It was simply unthinkable several years ago to allow companies like Amazon to run their recommendation engine or advertising companies to send relevant ads to you. This type of system architecture which was only within reach of big internet companies in the past is at your reach now. Mobile will be the window to your company but the intelligence in each interaction will rely on your cloud and big data infrastructure.

(3) Make improvement decisions driven by data and real time insights

By collecting every client mobile interaction and analyzing patterns, you can improve engagement and effectiveness of apps in a rapid feedback loop. The same way A/B testing is working at a massive web scale, you can integrate those technologies easily into your mobile apps. This will transform the usual “design, build, deploy and forget” approach in a closed positive feedback loop that will allow continuous improvement in your apps.

The outcome

We are just now scratching the surface in this new business transformation. Impact will be big and will include customers at the center of a company’s ecosystem. By lowering the barriers for customers to have a dialog with brands and establish relationship of equality, companies will gain their loyalty. Digitization of your business through Mobile First strategy adoption will allow you to unlock value and serve customers in new ways, increase your profits by delivering new models to engage them, and optimize your existing technology investments to further increase productivity.

Juan Cabrera is VP of Technology at GlobalLogic. He has over 13 years of experience and is currently based in San Francisco, California.

Software development teams are very focused on customer satisfaction (and rightly so), and there’s no doubt that high team throughput is one of the most important factors in customer satisfaction. According to Wikipedia, throughput is best described as “the rate at which a system generates its products / services per unit of time.”

While there are many factors that affect throughput, I would like to focus on product ownership. In this blog, I’ll look at some issues within product ownership that may have a massive impact on a team’s throughput. I’ll also look at some probable solutions and their relation to the “Definition of Ready” approach, which I’ll explain in a moment.

Below are some common issues related to product ownership that I have personally witnessed while working with various Agile teams:

In a distributed Agile project, the Product Owner’s focus is often fragmented among many projects. As a result, he/she may not have much time for backlog grooming or clearing the team’s queries.

The development team works on half-baked stories because they only discuss stories with the Product Owner during the planning meeting. This may be too late, considering that some stories may require further elaboration or clarifications.

Some teams try to resolve these additional queries by following up during the sprint, but this approach further complicates the issue since the team may not receive answers in time. As a result, story completion gets delayed and the cycle time gets bloated. The Product Owner may also become annoyed by the team bugging him/her all the time with so many questions.

What do you do in these situations? The development team’s management can try initiating discussions with the customer’s management about assigning a dedicated Product Owner to the project, but in my experience, this rarely happens because of Human Resource constraints on the customer’s side. Some teams simply sulk and do nothing about the situation, but of course this only leads to suffering for both the team and the customer. So what other alternatives are available?

Regarding Product Owner bandwidth, why not help the customer help you? One solution is to have the Scrum Master coach the Product Owner on backlog grooming. This approach works pretty well for a small Scrum team, but for bigger teams, the Product Owner may require dedicated help.

Regarding the second problem of half-baked stories, I suggest applying the “Definition of Ready” approach. Simply put, any user story coming from inside the sprint backlog must be READY, and any user story moving out of the sprint must be DONE.

In order to come up with “ready to play” stories, development teams conduct regular backlog grooming sessions with the Product Owner. In a backlog grooming session, the Product Owner explains user stories one by one. The team asks clarification questions and thrashes out all grey areas during the discussion. When a user story becomes clear, and the team no longer has any unanswered questions or blockers, the story is considered READY.

The team then estimates the user story in story points. This process continues through the entire duration of the session for other stories, as well. For some stories, the Product Owner will take note of unanswered questions and then park those stories for further analysis.

Apart from removing blockers, the goal of the “Definition of Ready” approach is to also create a common understanding between the team and the Product Owner on READY user stories. In the teams I worked with, the frequency of backlog grooming exercises was once per week for 2-week sprints. However, it’s up to each team to come up with the frequency that works for best for them.

As you can see, the “Definition of Ready” can range from a simple statement of readiness (left image) to a more detailed report (right image).

ready1
For better planning and visibility, the Product Owner and Scrum Master can also share a Kanban board that contains the probable backlog of the next three sprints. Below is an example of a READY Kanban board.

ready2
As you can see in the above image, the user stories in the “Iteration+1” column are not implicit candidates for the next sprint planning. Only stories in the “Ready to Play” column are potential candidates for sprint planning. In general, the user stories become clearer as they move from left to right on the Kanban board. For instance, when a story is placed in the “Iteration+3” column, it may have high-level details. As it moves farther towards the “Iteration+2” or “Iteration+1” columns, more details get added and the story becomes clearer.

Working towards this story readiness helps the Product Owner become better organized. At the same time, it helps the development team avoid waiting endlessly for blockers to get resolved during the sprint. By removing blockers from the pipeline early on, you can increase sprint throughput and improve a project’s outcome.

Shrikant Vashishtha is the Director of Engineering for GlobalLogic’s CTO department. He has over 15 years of experience in the IT industry and is currently based in Noida, India.

As trends such as machine-to-machine connectivity, smart devices, social networks, and migrating to the cloud progress, there is a growing concern around the compromise of privacy and data security. GlobalLogic’s Juan Manuel Caracoche (CTO, Latin America) and Tzvi Kasten (AVP, Business Development & Security Practice Head) provide a high-level description of the current security environment, including the various aspects of this domain and how they interact. Future white papers in this series will take a deeper look at the various challenges and solutions of Information Security.

  • URL copied!