Lean Thinking Inside and Outside a Software Engineering Company <ul><li>AdaCore Lean/Agile Event </li></ul><ul><li>Paris <...
Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examp...
Praxis – Basic Facts <ul><li>Established in 1983 </li></ul><ul><li>First software company to BS5750 (now ISO 9001) </li></...
Desired Value <ul><li>To inform you of the background to Praxis’ work  with Lean principles </li></ul><ul><li>To give exam...
Praxis Approach to Software – Correctness by Construction <ul><li>C-by-C has the same guiding principles, whatever the lif...
Core Process & Example Techniques <ul><li>Requirements eg use of REVEAL (inspired by work of Professor Michael Jackson) </...
SPARK™ <ul><li>A language, toolset and design approach for the development of ultra-reliable software. </li></ul><ul><ul><...
Example Project 1 – NATS iFACTS <ul><li>interim Future Area Control Tools Support (iFACTS) </li></ul><ul><li>Development o...
Example Project 2 – SHOLIS <ul><li>Ship Helicopter Landing System </li></ul><ul><li>First ever project delivered to Interi...
Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examp...
Principles of Lean Thinking <ul><li>Specify  value : Value is defined by customer in terms of specific products & services...
Principle 1 – Value <ul><li>Products and services defined by the customer  </li></ul><ul><li>Example </li></ul><ul><ul><li...
Principle 2 – Waste <ul><li>Anything which does not contribute to value </li></ul><ul><li>Many forms of waste </li></ul><u...
Principle 3 – Flow <ul><li>Processes linked by sequential dependencies progress at the rate of the slowest </li></ul><ul><...
Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examp...
Lean Inside the Company <ul><li>Praxis sees lean principles as a key part of its own business processes </li></ul><ul><li>...
Lean Recruitment <ul><li>Problem environment </li></ul><ul><ul><li>Recruitment was taking too long </li></ul></ul><ul><ul>...
Lean Recruitment <ul><li>Vacancy token drives advertising and selection </li></ul><ul><ul><li>Interview dates specified in...
Lean Project Start-up <ul><li>Problem environment </li></ul><ul><ul><li>Opportunities developed by business managers and b...
Lean Project Start-up <ul><li>Action </li></ul><ul><ul><li>Bid token tracks opportunity from prospect to project </li></ul...
Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examp...
Lean Outside <ul><li>Above examples are internal </li></ul><ul><li>As consultants we offer our successful experiences to o...
Lean Modification Process <ul><li>Problem Environment </li></ul><ul><ul><li>Substantial software project enters new delive...
Lean Modification Process <ul><li>Improve quality of modifications on entry into change process </li></ul><ul><ul><li>Revi...
White Box Safety <ul><li>Context </li></ul><ul><ul><li>Safety-critical systems subject to rigorous assessment </li></ul></...
White Box Safety <ul><li>Approach </li></ul><ul><ul><li>Value: Acceptable argument of fitness for purpose </li></ul></ul><...
Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examp...
Implications <ul><li>High integrity systems traditionally inflexible </li></ul><ul><ul><li>Legacy standards </li></ul></ul...
Opportunities <ul><li>There is a Lean route to good product </li></ul><ul><li>And it can be cheaper than traditional means...
<ul><li>Praxis High Integrity Systems Limited </li></ul><ul><li>20 Manvers Street </li></ul><ul><li>Bath BA1 1PX </li></ul...
Upcoming SlideShare
Loading in...5
×

Lean Thinking Inside and Outside a Software Engineering Company (Dave Jackson)

1,312

Published on

In this series of talks, our panel of experts present real world examples that illustrate how Lean Production concepts are being successfully applied to software development. In particular to applications that have to meet the highest levels of safety and security.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,312
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
119
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Page
  • Lean Thinking Inside and Outside a Software Engineering Company (Dave Jackson)

    1. 2. Lean Thinking Inside and Outside a Software Engineering Company <ul><li>AdaCore Lean/Agile Event </li></ul><ul><li>Paris </li></ul><ul><li>March 2009 </li></ul><ul><li>Dave Jackson </li></ul><ul><li>Technical Delivery Manager </li></ul><ul><li>Praxis High Integrity Systems Limited </li></ul>
    2. 3. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    3. 4. Praxis – Basic Facts <ul><li>Established in 1983 </li></ul><ul><li>First software company to BS5750 (now ISO 9001) </li></ul><ul><li>Turnover $24M </li></ul><ul><li>Permanent staff c. 150 </li></ul><ul><li>Locations </li></ul><ul><ul><li>UK: Bath, London, Loughborough </li></ul></ul><ul><ul><li>International Expansion: Paris, … </li></ul></ul><ul><li>Markets </li></ul><ul><ul><li>Strategic: Defence, Aerospace, ATM, Rail, Nuclear </li></ul></ul><ul><ul><li>Tactical: Automotive, Medical, Finance </li></ul></ul><ul><li>Part of the Altran Group </li></ul><ul><ul><li>Since 1997 </li></ul></ul><ul><ul><li>Turnover $2.5Bn </li></ul></ul><ul><ul><li>Staff of 17,000 </li></ul></ul><ul><ul><li>Global: Europe, USA, Asia, South America </li></ul></ul>
    4. 5. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    5. 6. Praxis Approach to Software – Correctness by Construction <ul><li>C-by-C has the same guiding principles, whatever the lifecycle phase: </li></ul><ul><li>Combine safety, security and operational constraints in every step </li></ul><ul><li>Capture information completely and precisely </li></ul><ul><li>Make small, well-defined, analysable steps </li></ul><ul><li>Document once, in the right place </li></ul><ul><li>Verify correctness before moving to next step </li></ul><ul><li>Justify approach before moving to next step </li></ul><ul><li>Use the best tool for the job at each step </li></ul><ul><li>Use intelligence, not just “box-ticking mentality” </li></ul>
    6. 7. Core Process & Example Techniques <ul><li>Requirements eg use of REVEAL (inspired by work of Professor Michael Jackson) </li></ul><ul><li>High level design eg use of UML </li></ul><ul><li>Specifications (precise and complete black box descriptions of behaviour) eg use of CSP, Z, etc. </li></ul><ul><li>Detailed design eg INFORMED (in-house Praxis proprietary method) </li></ul><ul><li>Module Spec & Code eg SPARK </li></ul>
    7. 8. SPARK™ <ul><li>A language, toolset and design approach for the development of ultra-reliable software. </li></ul><ul><ul><li>A design and implementation technology for high integrity software </li></ul></ul><ul><ul><li>Enables proof of correctness, and absence of run-time errors (eg buffer overflows) </li></ul></ul><ul><ul><li>Enables deep static analysis, including separation of safe/secure and unsafe/insecure state </li></ul></ul><ul><li>Example uses </li></ul><ul><ul><li>All flight critical software on Eurofighter </li></ul></ul><ul><ul><li>Tornado, Harrier, Hawk, Hercules, Nimrod, A380 </li></ul></ul><ul><ul><li>Mastercard SMART card, ALSTOM ERTMS </li></ul></ul>
    8. 9. Example Project 1 – NATS iFACTS <ul><li>interim Future Area Control Tools Support (iFACTS) </li></ul><ul><li>Development of new air traffic control tools to increase capacity in UK airspace </li></ul><ul><ul><li>Trajectory prediction, Conflict detection, Flight path monitoring </li></ul></ul><ul><li>Specified and implemented by Praxis, as an addition to existing NERC system </li></ul><ul><li>Joint Praxis / NATS team </li></ul><ul><ul><li>Part of wider NATS IPT </li></ul></ul><ul><ul><li>Includes training NATS staff </li></ul></ul><ul><li>SW01 (US’s ESARR 6) safety evidence provided using Praxis’ C-by-C methods </li></ul>
    9. 10. Example Project 2 – SHOLIS <ul><li>Ship Helicopter Landing System </li></ul><ul><li>First ever project delivered to Interim DEF STAN 00-55, SIL4 </li></ul><ul><li>Specified in Z </li></ul><ul><li>Written in SPARK </li></ul><ul><li>Formal proof of both Z and SPARK very effective </li></ul><ul><li>Demonstrated that proof is more cost effective than testing </li></ul><ul><li>Demonstrated that system testing more cost effective than unit testing </li></ul><ul><li>Developed for a fixed price </li></ul><ul><li>7 LOC per day </li></ul><ul><li>0.22 defects per KLOC </li></ul>
    10. 11. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    11. 12. Principles of Lean Thinking <ul><li>Specify value : Value is defined by customer in terms of specific products & services </li></ul><ul><li>Identify the value stream : Map out all end-to-end linked actions, processes, and functions necessary for transforming inputs to outputs to identify and eliminate waste </li></ul><ul><li>Make value flow continuously: Having eliminated waste, make remaining value-creating steps “flow” </li></ul><ul><li>Let customers pull value: Customer’s “pull” cascades all the way back to the lowest level supplier, enabling just-in-time production </li></ul><ul><li>Pursue perfection : Pursue continuous process of improvement striving for perfection </li></ul><ul><li>After Murman </li></ul>FOCUS
    12. 13. Principle 1 – Value <ul><li>Products and services defined by the customer </li></ul><ul><li>Example </li></ul><ul><ul><li>Independent V&V project </li></ul></ul><ul><ul><li>Deliverables: Plan, Process, Specifications </li></ul></ul><ul><ul><li>Client need: Bug reports, Regression tests </li></ul></ul><ul><li>Tools </li></ul><ul><ul><li>Stakeholder analysis </li></ul></ul><ul><ul><li>Context modelling </li></ul></ul><ul><ul><li>Workshops </li></ul></ul>Does the value of a program lie in the output, or the error messages? http://farm3.static.flickr.com/2218/2180467051_0202df7e4f.jpg
    13. 14. Principle 2 – Waste <ul><li>Anything which does not contribute to value </li></ul><ul><li>Many forms of waste </li></ul><ul><ul><li>Delay </li></ul></ul><ul><ul><li>Rework </li></ul></ul><ul><ul><li>Nugatory work </li></ul></ul><ul><ul><li>Overstretch </li></ul></ul><ul><li>Tools </li></ul><ul><ul><li>Product breakdown structure </li></ul></ul><ul><ul><li>Right-to-left planning </li></ul></ul><ul><ul><li>Correctness by Construction </li></ul></ul>Example: Re-planning a major railway upgrade programme to identify essential dependencies identified a 30% saving
    14. 15. Principle 3 – Flow <ul><li>Processes linked by sequential dependencies progress at the rate of the slowest </li></ul><ul><li>Example: Waterfall software lifecycle (Requirements, Architecture, HLD, LLD, Code, Test) </li></ul><ul><li>Tools: R-to-L planning, Spiral / Parallel lifecycles, Takt time, Theory of Constraints </li></ul>Kanban - a token carrying the information necessary to produce a desired item
    15. 16. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    16. 17. Lean Inside the Company <ul><li>Praxis sees lean principles as a key part of its own business processes </li></ul><ul><li>Process improvement approach suggested by the principles: </li></ul><ul><ul><li>Identify value </li></ul></ul><ul><ul><li>Seek & eliminate waste </li></ul></ul><ul><ul><li>Maximise forward flow of value </li></ul></ul><ul><ul><li>Pull through self-explanatory tokens </li></ul></ul><ul><li>Examples: </li></ul><ul><ul><li>Recruitment </li></ul></ul><ul><ul><li>Project initiation </li></ul></ul><ul><ul><li>Also used in staff performance review, … </li></ul></ul>
    17. 18. Lean Recruitment <ul><li>Problem environment </li></ul><ul><ul><li>Recruitment was taking too long </li></ul></ul><ul><ul><li>Senior staff were spending lots of time reviewing CVs and interviewing </li></ul></ul><ul><li>Analysis </li></ul><ul><ul><li>Value: a suitable employee starts work at the right time on a package which motivates them </li></ul></ul><ul><ul><li>Waste: inappropriate interviews, offers declined, renegotiation of package, delays </li></ul></ul>
    18. 19. Lean Recruitment <ul><li>Vacancy token drives advertising and selection </li></ul><ul><ul><li>Interview dates specified in advertising </li></ul></ul><ul><ul><li>Management approval of package </li></ul></ul><ul><li>Candidate token drives recruitment of an individual </li></ul><ul><ul><li>Carries all personal details </li></ul></ul><ul><ul><li>Provides guidance on each action (review, interview, offer) </li></ul></ul><ul><li>Outcome </li></ul><ul><ul><li>Able to increase permanent and contract staff by around 50% in 12 months </li></ul></ul><ul><ul><li>CV review effort down by a significant factor </li></ul></ul>
    19. 20. Lean Project Start-up <ul><li>Problem environment </li></ul><ul><ul><li>Opportunities developed by business managers and bid teams </li></ul></ul><ul><ul><ul><li>Focussed on winning work </li></ul></ul></ul><ul><ul><li>Projects delivered by operational organisation </li></ul></ul><ul><ul><ul><li>Focussed on successful delivery </li></ul></ul></ul><ul><li>Project initiation perceived as taking unnecessary time / effort </li></ul>
    20. 21. Lean Project Start-up <ul><li>Action </li></ul><ul><ul><li>Bid token tracks opportunity from prospect to project </li></ul></ul><ul><ul><li>Includes bid strategy, initial plans </li></ul></ul><ul><ul><li>Automatically identifies necessary approvals (inc specialist review) </li></ul></ul><ul><ul><li>Make plan and assumptions available to project team </li></ul></ul><ul><li>Outcome </li></ul><ul><ul><li>Reduced change </li></ul></ul><ul><ul><li>Many project plans now subsumed by simple project brief </li></ul></ul>
    21. 22. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    22. 23. Lean Outside <ul><li>Above examples are internal </li></ul><ul><li>As consultants we offer our successful experiences to our clients </li></ul><ul><li>Skills delivered through both </li></ul><ul><ul><li>Adoption on fee-earning projects </li></ul></ul><ul><ul><li>Skills transfer in consultancy engagements </li></ul></ul>
    23. 24. Lean Modification Process <ul><li>Problem Environment </li></ul><ul><ul><li>Substantial software project enters new delivery phase on completion of a milestone </li></ul></ul><ul><ul><li>Outstanding modification backlog grows </li></ul></ul><ul><li>Analysis </li></ul><ul><ul><li>Most changes are made quickly </li></ul></ul><ul><ul><li>Small selection subject to very long negotiation </li></ul></ul>
    24. 25. Lean Modification Process <ul><li>Improve quality of modifications on entry into change process </li></ul><ul><ul><li>Review checklist </li></ul></ul><ul><ul><li>Early rejection of inappropriate or inadequately characterised change </li></ul></ul><ul><li>Action and result </li></ul><ul><ul><li>Significant reduction in modification backlog </li></ul></ul>Backlog Time Change
    25. 26. White Box Safety <ul><li>Context </li></ul><ul><ul><li>Safety-critical systems subject to rigorous assessment </li></ul></ul><ul><ul><li>Prescriptive standards for documentation and evidence </li></ul></ul><ul><ul><li>Large quantities of evidence </li></ul></ul><ul><ul><li>Changes in environment may invalidate parts of argument / evidence </li></ul></ul><ul><li>Safety standards are traditionally prescriptive, </li></ul><ul><li>Not targeted at product (only process), </li></ul><ul><li>Wasteful </li></ul>
    26. 27. White Box Safety <ul><li>Approach </li></ul><ul><ul><li>Value: Acceptable argument of fitness for purpose </li></ul></ul><ul><ul><li>Evidence not directly required for this is waste </li></ul></ul><ul><li>Outcome </li></ul><ul><ul><li>Smaller cheaper and more compelling safety cases & products </li></ul></ul><ul><ul><li>Change only requires rework where it matters for the safety of the product </li></ul></ul><ul><li>Context-dependent safety arguments captured, eg, in Goal Structured Notation (GSN) </li></ul><ul><li>Modern and emerging safety standards strongly supportive of this approach </li></ul>
    27. 28. Desired Value <ul><li>To inform you of the background to Praxis’ work with Lean principles </li></ul><ul><li>To give examples of how we’ve adopted Lean </li></ul><ul><ul><li>In our internal business processes </li></ul></ul><ul><ul><li>In our delivery to clients </li></ul></ul><ul><li>To identify some implications and opportunities </li></ul>
    28. 29. Implications <ul><li>High integrity systems traditionally inflexible </li></ul><ul><ul><li>Legacy standards </li></ul></ul><ul><ul><li>Heavyweight processes </li></ul></ul><ul><li>Lean has useful lessons </li></ul><ul><ul><li>Concentrate process on where it adds value </li></ul></ul><ul><ul><li>Reduce waste: lower cost, improved timescales, profit. </li></ul></ul><ul><li>And it helps your company run smoothly too! </li></ul>
    29. 30. Opportunities <ul><li>There is a Lean route to good product </li></ul><ul><li>And it can be cheaper than traditional means </li></ul><ul><li>Focus on </li></ul><ul><ul><li>Defect elimination (value) </li></ul></ul><ul><ul><li>Early defect removal (waste) </li></ul></ul><ul><ul><li>Minimise dependencies between outputs </li></ul></ul><ul><ul><li>Capture evidence as it’s needed, if it’s needed </li></ul></ul>
    30. 31. <ul><li>Praxis High Integrity Systems Limited </li></ul><ul><li>20 Manvers Street </li></ul><ul><li>Bath BA1 1PX </li></ul><ul><li>United Kingdom </li></ul><ul><li>Telephone: +44 (0) 1225 466991 </li></ul><ul><li>Facsimile: +44 (0) 1225 469006 </li></ul><ul><li>Website: www.praxis-his.com </li></ul><ul><li>Email: David.Jackson@praxis-his.com </li></ul><ul><li>Mobile: +44 (0) 7920 151391 </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×