24

The Roadmap to Software Factories Tools, Patterns and Frameworks

Embed Size (px)

Citation preview

Page 1: The Roadmap to Software Factories Tools, Patterns and Frameworks
Page 2: The Roadmap to Software Factories Tools, Patterns and Frameworks

The Roadmap to Software Factories

Tools, Patterns and Frameworks

Page 3: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

What is a Software Factory?“Models are used not only for analysis and design, but to support many varied types of computation across the entire software life cycle – even at run time”

“Software Factories are really just the logical next step in the continuing evolution of software development methods and practices”

Page 4: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

ContextPast Adhoc tools and

personal styles Exploration of best practices

Present

Disparate tools and patterns

Emerging best practices

Future Integrated tools and patterns

Consolidation and adoption of best practices

Page 5: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Lifecycle

Page 6: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Envisioning

Poor communication

Core business goals often missed

Page 7: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Envisioning

Inward View

Business goals and successfactors in isolation

Page 8: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Envisioning

Outward Focus

Holistic view of business –“What do we provide?”

Page 9: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Planning

Static functional and technicalrequirements

Adhoc Requirements and Featurediscovery

Page 10: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Planning

Static Use Case and Use Caseanalysis

Personas and Scenarios *

Page 11: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Page 12: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

DesignDesign for one use, singlepurpose, single system

Design for reuse, services for sharingand consuming

Tools provide modelling capabilities

Page 13: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Developing

Basic Patterns evolving

Re-use gained through evolution of delivery

Reliance on raw man power

Page 14: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Developing

Patterns used to communicateand design best practice

Use of Code Generators to simplifyand accelerate infrastructure tasks *

Page 15: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Page 16: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Developing

Model Driven Development

Test Driven Development

Integrated Pattern -> Code in tools

Page 17: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Stabilising

Manual Integration

Developer or QA resource provides adhoc testing coverage

Basic level of CM applied

Page 18: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

StabilisingUse of Build Frameworks

Use of Unit Testing *

Continuous Integration *

Tools support CM processes

Page 19: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Page 20: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Deploying

Release build by hand or usingsimple install project

For manual release, developer contextoften required

Page 21: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Deploying

Components assembled byautomated build scripts

Release packaging automated

Developer context still required for manual release

Page 22: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Deploying

Release, associated release notesand status reports automated

Strong context linking issues, change-sets and builds

Environments modelled (e.g. DSI)

Page 23: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Conclusion

Progression from disparate approaches, to distillation of best practice into patterns and toolsBetter end to end tools and frameworks (e.g. Visual Studio Team System)Focus on discipline and maturity

Page 24: The Roadmap to Software Factories Tools, Patterns and Frameworks

Roadmap to Software Factories

Further informationSoftware Factories Initiative:

http://lab.msdn.microsoft.com/teamsystem/workshop/sf/default.aspx

Download slides/links:http://turtle.net.nz/blog

Jeremy Boyd: [email protected] Orange: [email protected]