SN-Logo NewSN-Logo NewSN-Logo NewSN-Logo New
  • Agile Training
    • Scrum Master
    • Scrum Product Owner
    • Leadership Development
    • Private Workshops
    • Calendar
  • Enterprise Solutions
    • Agile Transformation
    • Unstoppable Program
    • Agile Keynotes
    • Private Workshops
  • Products
    • Personal Agility Book
    • Ten Agile Contracts Book
    • Extreme Manufacturing Explained
  • Blog
  • About
    • Peter B. Stevens
    • Scrum
    • Personal Agility
    • Saat Network
  • Contact
0

CHF0.00

✕
New location for my Scrum Trainings in Zurich
03-06-2013
XM Principle 3: Test-Driven Development
05-06-2013

XM Principle 2: Object-Oriented, Modular Architecture

Published by Peter Stevens on 04-06-2013
Categories
  • extreme manufacturing
  • wikispeed
  • xm
Tags

In the software industry until the 1980’s, programs were developed on a procedural model. This led to extremely complex, unmaintainable solutions. A change to one part of the program usually required changes throughout the program.

This ‘tight-coupling’ is still pervasive in automotive designs. A change to the suspension requires a change to the chassis, which requires a change to something else, with eventually impacts the design of the entire car.

Today software developers use “information hiding” and object-oriented design patterns to create loosely coupled, highly modular solutions. So you can change for instance the login process without having to modify other parts of your system.

At the X-Prize competition, many of the competitors dropped out. Why? As it became clear that there would be many entrants, the organizers planned to hold a race on city streets to determine the overall winner. This was changed to a coast-to-coast rally, and finally they settled on a race over a very demanding, closed course racetrack. Each acceptance scenario posted very different demands on the suspension. These changes posed huge challenges for teams that could not embrace change rapidly.

The WIKISPEED car is designed as 8 modules, with simple interfaces between the modules. Due to its modular architecture, WIKISPEED was able to switch suspension systems with a minimum of fuss. WIKISPEED has also discovered it can apply related patterns, like inheritance and code reuse, to its advantage.

Embracing change is a core agile value. The ability to adapt rapidly meant WIKISPEED did better in the X-Prize competition than the nearly 100 entrants who dropped out without producing a car.

How do you achieve an object-oriented, modular architecture? The next two principles will help you:

  • Test-Driven Development (Red, Green, Refactor)
  • Contract-First Design

The 10 Principles of Extreme Manufacturing

Share
Peter Stevens
Peter Stevens

Related posts

Extreme Manufacturing, Explained

Extreme Manufacturing, Explained (click image for PDF)

25-09-2023

Extreme Manufacturing, Explained


Read more
10-07-2014

XM Principle 10: Partner Patterns


Read more
09-07-2014

XM Principle 9: Scaling Patterns


Read more

Comments are closed.

Learn more about Agile

  • Scrum for CEOs October 12&13, 2023
    in Amsterdam
    October 12, 2023 -
    October 13, 2023
    Register Now
  •  

  • Certified Scrum Product Owner | Face-2-Face | English | Oct 26-27, 2023
    in Zürich
    October 26, 2023 -
    October 27, 2023
    Register Now
  •  

  • Certified Scrum Master | Face-2-Face | English | Nov 16-17, 2023
    in Zürich
    November 16, 2023 -
    November 17, 2023
    Register Now
  •  

  • Certified Scrum Product Owner | Face-2-Face | English | Dec 05-06, 2023
    in Zürich
    December 05, 2023 -
    December 06, 2023
    Register Now
  •  

Saat Network GmbH is a small, independent company dedicated to helping you discover and apply the values, principles and practices that will enable you to thrive in the 21st century.

Quick Links

  • What Really Matters – Peter Stevens’ Blog

High Performing Teams

  • Get Stuff Done
  • Get Right Stuff Done
  • Create Alignment
  • Leadership

Free Resources

  • Personal Agility Institute
  • Impressum
  • Terms and Conditions
  • Privacy Policy
© 2023 Saat Network GmbH. All Rights Reserved.
0

CHF0.00

✕

Login

Lost your password?

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
Read more about our Privacy Policy
Cookie SettingsAccept All
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDurationDescription
mailchimp_landing_site1 monthThe cookie is set by MailChimp to record which page the user first visited.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDurationDescription
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
_ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
_gat_gtag_UA_42152348_11 minuteSet by Google to distinguish users.
_gcl_au3 monthsProvided by Google Tag Manager to experiment advertisement efficiency of websites using their services.
_gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDurationDescription
NID6 monthsNID cookie, set by Google, is used for advertising purposes; to limit the number of times the user sees an ad, to mute unwanted ads, and to measure the effectiveness of ads.
test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
COMPASS1 hourNo description
cookies.jssessionNo description available.
S1 hourNo description available.
SAVE & ACCEPT
Powered by CookieYes Logo