Welcome!

Microservices Expo Authors: Elizabeth White, Carmen Gonzalez, Kalyan Ramanathan, Liz McMillan, Sematext Blog

Related Topics: Microservices Expo, Java IoT, Industrial IoT, Microsoft Cloud, IoT User Interface, Agile Computing

Microservices Expo: Book Review

Book Review: A Practical Approach to Large-Scale Agile Development

How HP Transformed LaserJet FutureSmart Firmware

I must admit that before I began reading this book I truly thought it was going to be another twisted story of an attempt at agile that failed in everyone's eyes except for those that needed to say it was a success. That is what I am used to.

It is kind of like when I am on a product reference call to CIO. The product is always great and the company who sold it is always wonderful. Why some people think the CIO is going to say they didn't do their due diligence when picking a vendor, and the product and company we are asking about sucks, is beyond me?

They never do. The same is true of almost all the agile projects I have seen. They end over budget, buggy, and pretty much the same way most projects end that use any other process, but they are always deemed a success by those involved.

I was ready to tell myself I was correct in my assumption when I got blasted on page 2 with the Agile Manifesto, but decided to give them to the end of the chapter. In the next section of the chapter they caught my attention with the last of a list of 6 topics which was their take on Agile/Lean Principles. Number 6 was practitioners should define agile/lean practices.

I find myself saying the same thing all the time on a ton of different projects. When it comes to leading large complex agile projects, if you have not come up through the ranks being mentored on successful agile projects, and learning through experience, not books, you have no business defining process and leading the project. I have met very few people who agree with this line of thought and it impressed me that the authors did.

That one line of thought pushed me to read chapter 2. Again I was pleasantly surprised with the authors discussing the need to engineer a solution. Not implement a process, but engineer a solution. By the end of this chapter the authors had done a great job summarizing where their teams use their resources now and assembled some excellent development objectives.

Another thing the authors discussed was the capacity of their organization to absorb change. This is something that is almost always overlooked when bringing in new development processes, agile or not, this is something that needs to be looked at throughout the entire organization. This is usually just isolated to the development teams, but the new processes affect every department when they are implemented correctly.

At the end of the chapter the authors list their achievements:
-2008 to present overall development costs reduced by 40%
-Number of programs under development increased by 140%
-Development costs per program down 78%
-Firmware resources now driving innovation increased by a factor of 8 (from 5% working on new features to 40%)

I am sure these seem exaggerated, and that is what I believed until I read the next two chapters. Over the course of the next two chapters the authors fully won me over. They proceeded to outline implementing a Software Product Line using their own process language. I know from my own experience that when Software Product Line Engineering is done correctly it will always produce improvements like those listed above.

The authors nail exactly what enables their ability to implement an iterative agile process, and that would be investing in the right architecture. Any sizable project that doesn't invest in the architecture and claims they are able to pull off the project in an agile way is full of crap, period.

Product Line Engineering is the process that offers the highest level of agility over all other processes. It is tailorable for different levels of ceremony and is therefore able to run lighter than Scrum given the right team and right environment.

One of the main benefits of Product Line Engineering is the ability to collect metrics and in Chapter 5 the authors identify how to take advantage of them the right way, which is not to manage by metrics, but to use the metrics to understand where to have conversations about what is not getting done. Chapter 5 also outlines their iterative process.

The book continues to cover excellent process practices throughout the rest of the book, and they are applied to a real world project which drives home their value even more. Below are all the chapters included in the book.

Chapter 1. Agile Principles versus Practices
Chapter 2. Tuning Agile to Your Business Objectives
Chapter 3. Aligning Architecture with Business Objectives
Chapter 4. How to Establish a New Architecture Using Agile Concepts
Chapter 5. The Real Secret to Success in Large-Scale Agile
Chapter 6. Continuous Integration and Quality Systems
Chapter 7. Taming the Planning Beast
Chapter 8. Unique Challenges of Estimating Large Innovations
Chapter 9. Our Take on Project Management for Large-Scale Agile
Chapter 10. Organizational Approach: Managing to Disadvantages
Chapter 11. Effective Agile Development Across U.S. and Indian Cultures
Chapter 12. The Right Tools: Quantum Leaps in Productivity
Chapter 13. Real-World Agile Results: HP FutureSmart Firmware
Chapter 14. Change Management in Moving Toward Enterprise Agility
Chapter 15. Differences in Our Perspective on Scaling Agile
Chapter 16. Taking the First Step

Unlike a lot of books I have read on implementing agile practices on large scale projects I believe the results of this project were reported accurately.

I also believed the results were achieved with an iterative agile process. They are honest about the issues they ran into and they hammer on prototyping for architectural issues, which is definitely the way to go.

The author's writing styles make the book an easy read and the story that is told along the way is a very interesting one. I did not get bored with even one page of this book.

This book is a must read for any CIO, Enterprise Architect, Software Architect, Project Manager, or other IT roles in charge of or involved with large scale initiatives that they are hoping to pull off in an agile way. The book tells the story of how to achieve success based on a real world success, not a made up fictional case study.

A Practical Approach to Large-Scale Agile Development: How HP Transformed LaserJet FutureSmart Firmware

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.

@MicroservicesExpo Stories
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
Between 2005 and 2020, data volumes will grow by a factor of 300 – enough data to stack CDs from the earth to the moon 162 times. This has come to be known as the ‘big data’ phenomenon. Unfortunately, traditional approaches to handling, storing and analyzing data aren’t adequate at this scale: they’re too costly, slow and physically cumbersome to keep up. Fortunately, in response a new breed of technology has emerged that is cheaper, faster and more scalable. Yet, in meeting these new needs they...
@DevOpsSummit taking place June 6-8, 2017 at Javits Center, New York City, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @DevOpsSummit at Cloud Expo New York Call for Papers is now open.
Logs are continuous digital records of events generated by all components of your software stack – and they’re everywhere – your networks, servers, applications, containers and cloud infrastructure just to name a few. The data logs provide are like an X-ray for your IT infrastructure. Without logs, this lack of visibility creates operational challenges for managing modern applications that drive today’s digital businesses.
Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more business becomes digital the more stakeholders are interested in this data including how it relates to business. Some of these people have never used a monitoring tool before. They have a question on their mind like “How is my application doing” but no id...
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.
Monitoring of Docker environments is challenging. Why? Because each container typically runs a single process, has its own environment, utilizes virtual networks, or has various methods of managing storage. Traditional monitoring solutions take metrics from each server and applications they run. These servers and applications running on them are typically very static, with very long uptimes. Docker deployments are different: a set of containers may run many applications, all sharing the resource...
Without lifecycle traceability and visibility across the tool chain, stakeholders from Planning-to-Ops have limited insight and answers to who, what, when, why and how across the DevOps lifecycle. This impacts the ability to deliver high quality software at the needed velocity to drive positive business outcomes. In his session at @DevOpsSummit 19th Cloud Expo, Eric Robertson, General Manager at CollabNet, showed how customers are able to achieve a level of transparency that enables everyone fro...
Join Impiger for their featured webinar: ‘Cloud Computing: A Roadmap to Modern Software Delivery’ on November 10, 2016, at 12:00 pm CST. Very few companies have not experienced some impact to their IT delivery due to the evolution of cloud computing. This webinar is not about deciding whether you should entertain moving some or all of your IT to the cloud, but rather, a detailed look under the hood to help IT professionals understand how cloud adoption has evolved and what trends will impact th...
Information technology is an industry that has always experienced change, and the dramatic change sweeping across the industry today could not be truthfully described as the first time we've seen such widespread change impacting customer investments. However, the rate of the change, and the potential outcomes from today's digital transformation has the distinct potential to separate the industry into two camps: Organizations that see the change coming, embrace it, and successful leverage it; and...
Internet of @ThingsExpo, taking place June 6-8, 2017 at the Javits Center in New York City, New York, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo New York Call for Papers is now open.
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...
Keeping pace with advancements in software delivery processes and tooling is taxing even for the most proficient organizations. Point tools, platforms, open source and the increasing adoption of private and public cloud services requires strong engineering rigor – all in the face of developer demands to use the tools of choice. As Agile has settled in as a mainstream practice, now DevOps has emerged as the next wave to improve software delivery speed and output. To make DevOps work, organization...
"Dice has been around for the last 20 years. We have been helping tech professionals find new jobs and career opportunities," explained Manish Dixit, VP of Product and Engineering at Dice, in this SYS-CON.tv interview at 19th Cloud Expo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Rapid innovation, changing business landscapes, and new IT demands force businesses to make changes quickly. In the eyes of many, containers are at the brink of becoming a pervasive technology in enterprise IT to accelerate application delivery. In this presentation, attendees learned about the: The transformation of IT to a DevOps, microservices, and container-based architecture What are containers and how DevOps practices can operate in a container-based environment A demonstration of how ...
More and more companies are looking to microservices as an architectural pattern for breaking apart applications into more manageable pieces so that agile teams can deliver new features quicker and more effectively. What this pattern has done more than anything to date is spark organizational transformations, setting the foundation for future application development. In practice, however, there are a number of considerations to make that go beyond simply “build, ship, and run,” which changes how...
Without lifecycle traceability and visibility across the tool chain, stakeholders from Planning-to-Ops have limited insight and answers to who, what, when, why and how across the DevOps lifecycle. This impacts the ability to deliver high quality software at the needed velocity to drive positive business outcomes. In his general session at @DevOpsSummit at 19th Cloud Expo, Phil Hombledal, Solution Architect at CollabNet, discussed how customers are able to achieve a level of transparency that e...
In his session at 19th Cloud Expo, Claude Remillard, Principal Program Manager in Developer Division at Microsoft, contrasted how his team used config as code and immutable patterns for continuous delivery of microservices and apps to the cloud. He showed how the immutable patterns helps developers do away with most of the complexity of config as code-enabling scenarios such as rollback, zero downtime upgrades with far greater simplicity. He also demoed building immutable pipelines in the cloud ...
Application transformation and DevOps practices are two sides of the same coin. Enterprises that want to capture value faster, need to deliver value faster – time value of money principle. To do that enterprises need to build cloud-native apps as microservices by empowering teams to build, ship, and run in production. In his session at @DevOpsSummit at 19th Cloud Expo, Neil Gehani, senior product manager at HPE, discussed what every business should plan for how to structure their teams to delive...