Loading presentation...

Present Remotely

Send the link below via email or IM


Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.


Obtaining Quality in Software Development

No description

Jean-Philippe Rivard

on 12 September 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Obtaining Quality in Software Development

The Path to Perfection Obtaining Quality in Software Development Quality Simple Design Shared Understanding SHU Meaning "Protect", "Obey" Implies you will learn "the fundamentals, the techniques, the heuristics, the fundamentals" http://en.wikipedia.org/wiki/Shuhari HA Meaning "Detach", "Digress" Implies you will "be breaking with the tradition, detaching from the illusions of self." http://en.wikipedia.org/wiki/Shuhari RI Meaning "leave", "separate" Implies you will use "no techniques or proverbs, all moves are natural, becoming one with spirit alone without clinging to forms". http://en.wikipedia.org/wiki/Shuhari Passes its tests Minimizes duplication Maximizes clarity Has fewer elements based on The Four Elements of Simple Design by J.B. Rainsberger http://www.jbrains.ca/permalink/the-four-elements-of-simple-design XP teams build software to a simple, but always adequate design and they keep the design exactly suited for the current functionality of the system. There is no wasted motion and the software is always ready for what's next. Design in XP is not a one-time thing, or an up-front thing, it is an all-the-time thing. http://xprogramming.com/what-is-extreme-programming/ But what makes a design, simple? Principle Practices Being in control of our code, even code developed by others, gives courage to make modifications, alterations to eliminate all duplication and sins. Automated Unit Testing
Test Driven Development Principle Every piece of knowledge must have a single, unambiguous, authoritative representation within a system Practices Test Driven Development
Commonality/Variability Analysis A. Hunt & D. Thomas - The Pragmatic Programmer Clean code reads like well-written prose. It never obscures the designer's intent but rather is full of crisp abstractions and straightforward lines of control Principle Grady Booch in Chapter 1 of Robert C. Martin's Clean Code Practices Using Intention Revealing Names
Appropriate levels of abstraction
Shared Coding Standards
Telephone Test Jean-Philippe Rivard Principle By coding only what you need for the tests, you automatically get just enough design to have the perfect architecture for the current system. Kent Beck, Test-Driven Development by Example Practices Test-Driven Development
Full transcript