Agile Modelling in Software Engineering Audrey Nemeth Vladimir

  • Slides: 15
Download presentation
Agile Modelling in Software Engineering Audrey Nemeth, Vladimir Borisov

Agile Modelling in Software Engineering Audrey Nemeth, Vladimir Borisov

AM Values • Communication • Simplicity • Feedback • Courage • Humility Source: http:

AM Values • Communication • Simplicity • Feedback • Courage • Humility Source: http: //www. agilemodeling. com/values. htm

AM Principles • Assume Simplicity • Embrace Change • Enabling the Next Effort is

AM Principles • Assume Simplicity • Embrace Change • Enabling the Next Effort is Your Secondary Goal • Incremental Change • Maximize Stakeholder Investment Source: http: //www. agilemodeling. com/principles. htm

AM Principles • • • Model With a Purpose Multiple Models Quality Work Rapid

AM Principles • • • Model With a Purpose Multiple Models Quality Work Rapid Feedback Software Is Your Primary Goal Travel Light

AM Principles (Supplementary) • Content is More Important Than Representation • Open and Honest

AM Principles (Supplementary) • Content is More Important Than Representation • Open and Honest Communication

AM Practices • • • Active Stakeholder Participation Apply the Right Artifact(s) Collective Ownership

AM Practices • • • Active Stakeholder Participation Apply the Right Artifact(s) Collective Ownership Create Several Models in Parallel Create Simple Content Depict Models Simply Source: http: //www. agilemodeling. com/practices. htm

AM Practices • • Display Models Publicly Iterate to Another Artifact Model in Small

AM Practices • • Display Models Publicly Iterate to Another Artifact Model in Small Increments Model With Others Prove it With Code Single Source Information Use the Simplest Tools

How AM Practices Fit Together Source: http: //www. agilemodeling. com/essays/practices. Fit. Together. htm

How AM Practices Fit Together Source: http: //www. agilemodeling. com/essays/practices. Fit. Together. htm

What is AM used for? • You are taking an agile approach to development

What is AM used for? • You are taking an agile approach to development in general • You plan to work iteratively and incrementally • The requirements are uncertain or volatile • The primary goal is to develop software • The active stakeholders are supportive and involved • The development team is in control of its destiny • The developers are responsible and motivated • Adequate resources are available for the project

AM in Software Development Projects AM is meant to be tailored into other, fullfledged

AM in Software Development Projects AM is meant to be tailored into other, fullfledged methodologies, enabling you to develop a software process which truly meets your needs.

Agile Model Driven Development

Agile Model Driven Development

AM in e. Xtreme Programming The three most common misconceptions are that software designers:

AM in e. Xtreme Programming The three most common misconceptions are that software designers: • don’t model • don’t document • if they do model, only use modeling artifacts of UML www. extimeprogramming. com

AM in Unified Process In the RUP there are three disciplines that encompass modeling

AM in Unified Process In the RUP there are three disciplines that encompass modeling activities for a single project – Business Modeling, Requirements, and Analysis & Design – and the EUP adds Enterprise Business Modeling and Enterprise Architecture

AM in Feature-Driven Development

AM in Feature-Driven Development

How to Save Time • in Modelling – Design models that are just barely

How to Save Time • in Modelling – Design models that are just barely good enough – For a given model, use the simplest tool – Effective developers make use of multiple models • in Documentation – Unit tests form much of the detailed design documentation – When dealing with a part of the software that is really complicated, either document it thoroughly or redesign it to make it simpler