Helping you to get better results……
 


.. from management of your Products, Markets, Brands and Technology

 
 

Lean Software Development (LSD)

Lean Software Development (LSD) which is allied with Agile software development methods, provides guiding principles, practices and tools for improving software development. It helps software companies to: be more profitable, increase productivity, achieve faster development, eliminate waste and produce high quality software products and systems which have more value to customers.

Guiding principles include:

Maximise Value (to Customers and us) (of whole software product)

Eliminate Waste (from the 'Whole Product')

Eliminate Waste (from the Value Stream)

Motivate people (to be accountable, empowered, disciplined and creative)

Innovate through knowledge

Defer commitments

Maximise Productivity in providing Value and Quality (should flow at the pull of customers and markets)

Develop fast (Demand driven pull and flow {with real time feedback})

 

Continuous improvement and optimisation (of End to End Value Stream) (of 'Whole Product')

 
               

To achieve these guiding principles, companies adopt various practices which they use to manage and implement software product development. These practices are supported by a toolkit which helps implementation at the management level and software development project level.

Lean Software Development applies to various types of development, including:
In House IT Development
Software developed by companies for sale to customers
Software consultancies which develop bespoke software for other companies
Outsourced software development

and encompasses different types of software and systems:
Embedded systems/software: e.g. Avionics; Cellular telephones and telephone switches; controllers for automobiles; handheld computers; household appliances; Medical equipment; personal digital assistant (PDA); …………….
Desktop Applications; Enterprise Applications; Server Applications
Business Integration/ Enterprise Application Integration (EAI)
Commerce
Data and Information Management
Mobile, Speech and Enterprise Access
Networking
Organizational Productivity, Portals and Collaboration
Security
Web Applications
ERP/CRM/SCM
Mobile Applications
Business Intelligence and Workflow
Database and Middleware
Product engineering software (CAD), (CAE), (CAM)
Document Management
Geographic Information System (GIS)
Analytical software
Media and entertainment software

 

 

Lean Software Development provides a set of practices and tools which are an overlay and integrated with:
Technologies and practices:
e.g. Programming languages (Ada, C++, Java, Visual Basic, PHP ……); Programming paradigms ( Object-oriented, Structured, rule based …..)
Design Methodologies and Processes:
Agile, Crystal Clear, DSDM, Extreme Programming (XP), Scrum, Scenario Driven Development,Test-Driven Development, Software Reuse
Hardware and OS platforms:
IBM mainframes, Linux PCs, Mac OS X PC’s, Microsoft.NET, Windows mobile, Solaris, Symbian OS, Microprocessors (µP) and Microcontrollers (µC): ARM, Intel, MIPS, DOS, Linux, NetBSD, …….real-time operating system MicroC/OS-II, QNX, VxWorks ……
Product Life Cycle, Project Life Cycle and Software Development Lifecycle
Project management methods and tools:
Project planning, monitoring and control, Milestones, Risk Management, Project Metrics

 

Example DSDM stages

Lean Software Development (LSD) implements practices and tools at two levels within a company:

Software Product Management Level
Software Project/ Developer Level

Software Product Management Level, which applies across the organisation and addresses those practices which enable LSD to work on individual software development projects or within individual departments such as software test or software QA.
Introduction and implementation of LSD practices and tools at this level is typically the accountability of software managers and focuses on issues which apply across the organisation, resources and projects. These include, for example:

Front end Voices of Customers Research to identify and prioritise software development or other needs

Front end Software Competitive Analysis

Generate cross-functional methods and tools to prevent Over Development Waste

Generate methods and tools to prevent Defects Waste

Value Stream Mapping of software product flow to reduce Non-Value Added Time from process

Value Stream Mapping of information flow to reduce Non-Value Added Time from process

Manage 'departments' and work centres to minimise Queues and Bottlenecks and maintain 'flow'

Establish ways to manage 'Batch Size' and Capacity to maximise productivity and minimise delays

Methods to systematically improve the Software Development process
Encourage good problem solving to remedy root causes of problems

Set an environment for the following practices:

 

Keep options open and reduce dependencies

Defer critical or irreversible decisions to the 'last responsible moment'

Insist on a clear software product definition and architecture but not a 'complete specification' before development starts

Encourage:

 

Concurrent Development Process

Checkpoint or Decision Points scheduled 'Just in Time'

 

Software Project/ Developer Level, which applies to individual software development projects and the practices and knowledge of individual developers, testers, et. al.
Introduction and implementation of LSD practices and tools at this level is typically the accountability of project managers, software developers, testers, trainers, documenters et. al. and focuses on issues which affect the speed and productivity of development and value and quality of software products. These include, for example:

Product Definition based on prioritised Customers Needs

Minimise Over Development Waste for Whole Software Products under development

7 Types of Waste (Muda) applied to NPD Project

Value Stream Mapping of Information and Product Flow for project

Plan projects to minimise queues and bottlenecks

Tailor and improve process and tools for project specifics

Use Problem solving and disciplined experimentation to discover innovative solutions

Early release of a minimum feature set to customers for evaluation

Daily builds and rapid feedback from integration tests

A team and/or leader with experience and instincts to make good decisions

A modular architecture that supports the ability to easily add new features

Schedule critical or irreversible decisions to the 'last responsible moment' so that we have the most information available.

When developing the early features, avoid making decisions which are difficult to change

Keep options open in those areas which are most likely to change.
Experiment with various solutions then decide on the best one as late as possible

 

Lean Software Development (LSD) provides an integrated approach for developing software products.

A set of guidelines for integrating LSD with your software design methods, technologies, platforms and processes

Management Level and Project Level toolkits for practical implementation

Training Workshops and Skills Transfer

We are experienced in adapting and applying Lean Software Development (LSD) principles, practices and tools for a client's specific situation using a variety of implementation programmes and a database of tools.

Toolkits:
Our approach installs an advanced set of tools to help achieve improvements and results. We assemble these tools into a toolkit for a client's specific situation. Examples of tools include:

DOSHWIP Waste Types and Checklists
Value Stream Time and Network Maps
Gemba
MoSCoW rules
Whole Software Product' Model
Queue and Bottleneck Diagram
Cumulative Flow Diagram (CFD)
Software Development Kanban

Software Packages and Templates
Some of the tools are provided with Excel or Web based software packages or templates to facilitate practical use and ease of learning.

Implementation Programme
Each programme is tailored to the client's situation, but typically comprises the following deliverables: DOSHWIP Wastes healthcheck, Value Stream and Vallue Added Time Mapping, tailoring of toolkits, delivery of facilitated workshops and software.

Management Level: DOSHWIP Wastes healthcheck and Value Added Time Mapping for project
Project/ Developer Level: DOSHWIP Wastes healthcheck, Value Stream and Value Added Time Mapping

Agreement of programme deliverables

Tailoring of guidelines, toolkit and software for client's specifics

Facilitated workshops, 1:1 and 1:n coaching

Off-line telephone and e-mail support

 

Skills transfer to key individuals or training programme. Agreement of programme deliverables

Free Proposal
We can provide a free proposal, including programme outline with costing, to meet your requirements - please contact us.

We can also provide a formal in house training programme on the above topics, tailored to your specific needs. For more details click below:

Lean Software Development Training Workshop

For information relating to allied topics, click on the links below

New Product Introduction (NPI) or New Product Development (NPD)
Product Definition (PD) and pragmatic Quality Function Deployment (pQFD)
Product Marketing and Management

Time to Market Control and Compression (TtMCC)
Product Innovation with Market, Technology and Process Innovation
Design for Six Sigma (DFSS) or Six Sigma Product Development (SSPD) implementation programme
Product Development Training Course Workshop
Product Development, Marketing and Management Software Applications
Time to Market Product Development Healthcheck Assessment Audit


 
Contact us for more help       
Contact Time to Market

E-mail us:

Back to Top


TtM   Home  | About TtM |
Our Products and Services Implementation Programmes |TtM Training | Product Management Training | Product Management |
Product Strategy | Product Definition(pQFD) | Product Life Cycle | In Life Product Management |
Voice of Customer | Customer Life Cycle | Competitive Analysis | Value Proposition |
Time to Market | Lean Product Development | Lean Software Development |

 Resources and Information   Software | Downloads | Contact Us