Sustainable software development




















These are projects that are unknowingly practicing unsustainable development. In unsustainable development, teams are primarily reactive to changes in their ecosystem. By and large, these teams are caught in a vicious cycle of reacting to events and working harder and longer hours akin to being on a treadmill or walking up a down escalator.

The result is a project death spiral , where the rapidity of descent depends on the amount of complexity faced by the team and its principles and practices and discipline. In sustainable development , teams are able to be proactive about changes in their ecosystem.

Their ability to be proactive is enabled by their attention to doing the work that is of the highest value to customers with high quality and reliability and an eye toward continual improvement despite increasing complexity. These teams are in a virtuous cycle , where the more team is able to improve themselves and how they work together, the greater their ability to deal with increasing complexity and change.

Underlying sustainable development is a mindset that the team is in it for the long haul. The team adopts and fosters principles and practices that help them continually increase their efficiency, so that as the project gets larger and more complex and customer demands increase, the team can continue at the same pace while keeping quality high and sanity intact.

They do this by continually minimizing complexity, revisiting their plans, and paying attention to the health of their software and its ability to support change. Sustainable development is a mindset principles and an accompanying set of practices that enable a team to achieve and maintain an optimal development pace indefinitely.

Note that optimal doesn't mean fastest— that would be pure coding, such as for a prototype. Sustainable development is about efficiency and balancing the needs of the short and long term.

It means doing just the right amount of work to meet the needs of customers in the short term while using practices that support the needs of the long term. There are not enough software projects today where over time a team can stay the same size or even shrink and still deal with the increasing complexity of its software and its ecosystem and increasing customer demands. In sustainable development, the needs of the short term are met by regularly producing software that has the highest possible value to customers.

This is done while keeping the cost of change as low as possible, which lays the foundation for future changes and makes it possible to quickly respond to changes in the ecosystem.

Sustainable development, as depicted in Figure , is a liberating experience for the lucky teams who can achieve it. While they have to deal with stress in the form of constant change, they have the advantage that they are in control of the situation and can out ship their competitors because they are able to respond more rapidly and at a much lower cost.

They are also able to be proactive about new technologies or new opportunities in any form. Figure In sustainable development, the cost of change stays low over time. The team is able to respond to changing requirements and changes to the software's ecosystem. This is a pace that the team can maintain indefinitely. Key indicators of sustainable development are an ability to keep the number of defects relatively constant over time while recognizing that the software must be modified to keep the cost of change under control.

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time. Pearson Education, Inc. This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:. For inquiries and questions, we collect the inquiry or question, together with name, contact details email address, phone number and mailing address and any other additional information voluntarily submitted to us through a Contact Us form or an email.

We use this information to address the inquiry and respond to the question. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey. Occasionally, we may sponsor a contest or drawing.

Participation is optional. Learn how to define, build and run sustainable software applications. Srinivasan Rakhunathan Senior Program Manager. Paola Customer Success Account Manager. Christopher Maneu Startups Cloud Advocate. Raymond Li Program Manager. Sustainable Software Learn how to define, build and run sustainable software applications.

This number is significantly important if we consider that Search, simple click, simple letter typed in the search box have an impact on the environment when browsing Internet.

The main challenge tends to be an organizational one of getting developers and leaders aligned. However, he also noted that if all developers are sustainability advocates, the product they release will tend to be sustainable. This is why he advocates teaching sustainability in computer science programs and making changes through education.

Mattera also emphasized the important role developers play in this. Adams added that another way to ensure success at adopting sustainable principles is to actually publicly state in your team that this is something to work on. Akamai , energy patterns , greening digital , sustainability. She covers Microsoft, data, programming languages, and UI frameworks and libraries.

She likes tabletop gaming and knitting. Follow her on Twitter at jsargey! Get access to this and other exclusive articles for FREE! Build environmental sustainability into your development teams.

Article Tags Akamai , energy patterns , greening digital , sustainability.



0コメント

  • 1000 / 1000