Introduction to. and. Scott W. Ambler Source Documents

Similar documents
Agile Modeling (AM) Overview

The Agile Unified Process (AUP)

Agile Model Driven Development (AMDD)

Activities Common to Software Projects. Software Life Cycle. Activities Common to Software Projects. Activities Common to Software Projects

02291: System Integration

How Can a Tester Cope With the Fast Paced Iterative/Incremental Process?

Systems Analysis and Design in a Changing World, Fourth Edition

Testing in the Agile World

Introduction to Extreme Programming

Software Development Methodologies

index_ qxd 7/18/02 11:48 AM Page 259 Index

Agile Model-Driven Development with UML 2.0 SCOTT W. AM BLER. Foreword by Randy Miller UNIFIED 1420 MODELING LANGUAGE. gile 1.

Test Driven Development. René Barto SES Agile Development - Test Driven Development

defined. defined. defined. defined. defined. defined. defined. defined. defined.

XP Evolution Rachel Davies

Extreme programming XP 6

CS487 Midterm Exam Summer 2005

Agile Development

xtreme Programming (summary of Kent Beck s XP book) Stefan Resmerita, WS2015

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Lecture 7: Software Processes. Refresher: Software Always Evolves

Evolutionary Architecture and Design

Architecture and Design Evolution

Agile/Evolutionary Data Modeling: From Domain Modeling to Physical Modeling

Vendor: The Open Group. Exam Code: OG Exam Name: TOGAF 9 Part 1. Version: Demo

Software Development Process Models

K Kantor, Jeff Use Case Driven Testing, 249

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

Topic 01. Software Engineering, Web Engineering, agile methodologies.

Disciplined Agile Delivery The Foundation for Scaling Agile

Best Practices for Collecting User Requirements

The Need for Agile Project Management

Disciplined Agile Delivery The Foundation for Scaling Agile

Review: Cohesion and Coupling, Mutable, Inheritance Screen Layouts. Object-Oriented Design CRC Cards - UML class diagrams

Agile Engineering. and other stuff I m working on

Processes, Methodologies and Tools. Fall 2005

SOFTWARE LIFE-CYCLE MODELS 2.1

Software Engineering 2 A practical course in software engineering. Ekkart Kindler

"Charting the Course... Agile Database Design Techniques Course Summary

How Cisco IT Improved Development Processes with a New Operating Model

David Bernstein Five Development Practices Essential for Scrum Teams

What is a Model? Copyright hebley & Associates

Integration With the Business Modeler

Introduction to Extreme Programming. Extreme Programming is... Benefits. References: William Wake, Capital One Steve Metsker, Capital One Kent Beck

OG The Open Group OG TOGAF 9 Combined Part 1 and Part 2

An Overview of TOGAF Version 9.1

Systems Analysis & Design

DUBAI GRAND HOTEL. March 26 to (4 days) 9 am to 4 pm

ADD 3.0: Rethinking Drivers and Decisions in the Design Process

THIS IS ONLY SAMPLE RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. WE ARE NOT RESPONSIBLE Name: xxxxxx

Data Virtualization Implementation Methodology and Best Practices

Agile Database Techniques Effective Strategies for the Agile Software Developer. Scott W. Ambler

Chapter 5. The Database Life Cycle. Class 04: Topic 3.1: The Database Life Cycle

An Architect s Point of View. TSP Symposium Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

The Process of Software Architecting

Founda'ons of So,ware Engineering. Process: Agile Prac.ces Claire Le Goues

Cloudreach Data Center Migration Services

Introducing Enterprise Architecture. into the Enterprise

Bringing QA Into the Agile Process

Enterprise Architecture Views and Viewpoints in ArchiMate

Data Governance Quick Start

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE

I am Stephen LeTourneau from Sandia National Laboratories Sandia s National Security Missions include: Nuclear Weapons Defense Systems & Assessments

Final Paper/Best Practice/Tutorial Advantages OF BDD Testing

TABLE OF CONTENTS CHAPTER TITLE PAGE

Hochperformante Softwarearchitekturen Planung, Zufall oder Erfahrung? Unser Geheimrezept!

Building a New Rational Web Site with Rational Suite

Scaling agile with Atlassian and SAFe

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

Agile Testing Course: 15 16/11

Objectives. Connecting with Computer Science 2

Design Intent in an Agile Context Part II

PERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract

Examples. Object Orientated Analysis and Design. Benjamin Kenwright

Meltem Özturan

Value & Role of Business Analyst in Agile. Presented by: Jagruti Shah Associate Business Consultant Mastek Ltd

Architects: Anchors or Accelerators to Organizational Agility?

to the Enterprise Brussels - Tuesday 20th April 2004 Chris Greenslade Introducing Enterprise Architecture Introducing Enterprise Architecture

LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus

B Nagaraju

Introduction to UML. (Unified Modeling Language)

2015 Ed-Fi Alliance Summit Austin Texas, October 12-14, It all adds up Ed-Fi Alliance

Polyclinic Information System

SAFe AGILE TRAINING COURSES

I keep hearing about DevOps What is it?

Certification requirements for VeriSM

XP: Planning, coding and testing. Practice Planning game. Release Planning. User stories. Annika Silvervarg

Transition Plan (TP)

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

WHAT S NEW IN QLIKVIEW 11

Optimize tomorrow today.

Object Oriented Model of Objectory Process

Tuesday, November 15. Testing

Level 4 Diploma in Computing

TDWI Data Governance Fundamentals: Managing Data as an Asset

Software Testing. An Overview

Agile Project Management White Paper

Understanding the Open Source Development Model. » The Linux Foundation. November 2011

Top 5 Reasons to Consider

Transcription:

Introduction to and Scott W. Ambler scott.ambler@ronin-intl.com Copyright 2001-2002 Scott W. Ambler 1 Source Documents www.agilemodeling.com The Agile Modeling Workshop Course Notes (www.ronin-intl.com) www.agiledata.org www.modelingstyle.info Copyright 2001-2002 Scott W. Ambler 2 1

Overview Agile Modeling What is Agile Modeling? What are Agile Models? Values of Agile Modeling Principles of Agile Modeling Practices of Agile Modeling Agile Modeling & Other Processes Agile Data What is the Agile Data Method? Philosophies Roles of Agile Data Making it Work in Practice Copyright 2001-2002 Scott W. Ambler 3 Agile Modeling (AM) Copyright 2001-2002 Scott W. Ambler 4 2

What is AM? AM is a chaordic, practices-based process for modeling and documentation. AM is a collection of practices based on several values and proven software engineering principles AM is a light-weight approach for enhancing modeling and documentation efforts for other software processes such as XP and RUP Copyright 2001-2002 Scott W. Ambler 5 Scope of AM Agile Modeling (AM) Base Software Process (XP, UP, DSDM,...) Your Process Copyright 2001-2002 Scott W. Ambler 6 3

What Are Agile Models? Agile models: Fulfill their purpose Are understandable Are sufficiently accurate Are sufficiently consistent Are sufficiently detailed Provide positive value Are as simple as possible Agile models are just barely enough! Copyright 2001-2002 Scott W. Ambler 7 This is an Agile Model Copyright 2001-2002 Scott W. Ambler 8 4

So Is This Copyright 2001-2002 Scott W. Ambler 9 And this Copyright 2001-2002 Scott W. Ambler 10 5

And this Apache Struts <<framework>> IEncryption IAccessControl Security <<infrastructure>> Online Ordering <<application>> XML ICustomer Customer IPersistence Persistence <<infrastructure>> Shipping <<application>> XML IOrder Order JDBC Corporate DB <<database>> Copyright 2001-2002 Scott W. Ambler 11 And this TCUSTOMER # CUST_NO: integer CUST_SOCIAL_SECURITY_NO: char(10) CUST_FIRST_NAME: char(20) CUST_SURNAME: char(20) CUST_SALUTATION: char (5) CUST_PHONE_NO: char(20) TCUSTOMER_ADDRESS # CUST_NO: integer # ADDR_ID: integer ADDR_USAGE_CODE: char(2) TADDRESS # ADDR_ID: integer ADDR_STREET char(40) ADDR_CITY: char(20) ADDR_ZIP: char(20) ADDR_STATE_CODE: char(2) ADDR_COUNTRY_CODE: char(3) Copyright 2001-2002 Scott W. Ambler 12 6

Values of AM Communication Simplicity Feedback Courage Humility Copyright 2001-2002 Scott W. Ambler 13 Principles of AM Core Assume Simplicity Embrace Change Enabling the Next Effort is Your Secondary Goal Incremental Change Model With a Purpose Multiple Models Maximize Stakeholder Investment Quality Work Rapid Feedback Software Is Your Primary Goal Travel Light Supplementary Content is More Important Than Representation Everyone Can Learn From Everyone Else Know Your Models Know Your Tools Local Adaptation Open and Honest Communication Work With People s Instincts Copyright 2001-2002 Scott W. Ambler 14 7

Core Practices of AM Active Stakeholder Participation Apply the Right Artifact(s) Collective Ownership Consider Testability Create Several Models in Parallel Create Simple Content Depict Models Simply Display Models Publicly Iterate to Another Artifact Model in Small Increments Model With Others Prove it With Code Use the Simplest Tools Supplementary Apply Modeling Standards Apply Patterns Gently Discard Temporary Models Formalize Contract Models Model to Communicate Model to Understand Reuse Existing Artifacts Update Only When It Hurts Copyright 2001-2002 Scott W. Ambler 15 Observation: There is more to modeling than the UML User Interface Flow External Interface Specification Essential User Interface Prototype User Interface Prototype Component Deployment Change Cases Essential Use Case Model -or- User Stories Use Case Model -or- User Stories State Chart Collaboration CRC Model Business Rules Sequence Class Model (Design) Activity Non-Functional Requirements Constraints Class Model (Analysis) Persistence Model Source Code Copyright 2001-2002 Scott W. Ambler 16 8

The Agile Data (AD) Method Copyright 2001-2002 Scott W. Ambler 17 What is the (AD) Method? The Agile Data (AD) method is a collection of philosophies that will enable IT professionals within your organization to work together effectively when it comes to the data aspects of software-based systems. The AD method is based on the values and principles of the Agile Alliance. The AD method works well with practices of Agile Modeling (AM) (www.agilemodeling.com) Copyright 2001-2002 Scott W. Ambler 18 9

Philosophies of AD 1. Data is one of several important aspects of software-based systems. 2. Development teams must consider and act appropriately regarding enterprise issues. 3. Enterprise groups exist to nurture enterprise assets and to support other groups, such as development teams, within your organization. These enterpris e groups should act in an agile manner that reflects the expectations of their customers and the ways in which their customers work. 4. Each development project is unique, requiring a flexible approach tailored to its needs. One software process does not fit all and therefore the relative importance of data varies based on the nature of the problem being addressed. 5. IT professionals must work together effectively, actively striving to overcome the challenges that make it difficult to do so. 6. You should actively strive to find the sweet spot for any issue, avoiding the black and white extremes to find the gray that works best for your overall situation. Copyright 2001-2002 Scott W. Ambler 19 There is more to modeling than data models! User Interface Flow External Interface Specification Essential User Interface Prototype User Interface Prototype Component Deployment Collaboration Change Cases Essential Use Case Model -or- User Stories Use Case Model -or- User Stories State Chart CRC Model Business Rules Sequence Class Model (Design) Activity Non-Functional Requirements Constraints Class Model (Analysis) Persistence Model Source Code Copyright 2001-2002 Scott W. Ambler 20 10

Data Design Constraints, Data Models The Roles of the AD Method Agile DBAs Standards, Guidelines, "Current State" Guidance Data-Oriented Change Requests, Questions Application Design Constraints, Application Models Information Regarding Current State, Vision for Future System-Oriented Change Requests, Questions Application Developers Development Efforts Enterprise Models, Vision For Future Enterprise Administrators Enterprise Architects Enterprise Models, Vision For Future Copyright 2001-2002 Scott W. Ambler 21 Agile Database Techniques Database refactoring Mapping techniques & technologies Continuous unit testing Up-to-date migration scripts You can work iteratively and incrementally if you choose to! Copyright 2001-2002 Scott W. Ambler 22 11

Making it Work in Practice Copyright 2001-2002 Scott W. Ambler 23 AM, AD, and XP User Stories Test Scenarios Requirements New User Story, Project Velocity Bugs Achitectural Spike System Metaphor Release Planning Release Plan Iteration Latest Version Acceptance Tests Customer Approval Small Releases Uncertain Estimates Confident Estimates Next Iteration Spike Exploration Phase Planning Phase Iterations to Release Phase Productionizing Phase Maintenance Phase Copyright 2001-2002 Scott W. Ambler 24 12

AM, AD, and XP Stand Up Meeting at 9:00 Pair Up -- Quick Design Session Test Q&A Code Refactor Integrate or Toss Go Home at 17:00 Copyright 2001-2002 Scott W. Ambler 25 AM, AD, and the Unified Process Copyright 2001-2002 Scott W. Ambler 26 13

When Will AM & AD Work For You? You are taking an agile approach to development You are working iteratively and incrementally Uncertain or volatile requirements Your primary goal is to develop software You have active stakeholder support and involvement The development team is in control of its destiny A true champion for agility exists You have responsible and motivated developers You have adequate resources available to you Copyright 2001-2002 Scott W. Ambler 27 When Won t AM & AD Work for You? One or more of the previous factors isn t there Your organizational culture is geared towards a prescriptive culture You have a large and/or distributed team Copyright 2001-2002 Scott W. Ambler 28 14

Resources www.agilemodeling.com www.agiledata.org www.modelingstyle.info www.agilealliance.org www.ronin-intl.com Copyright 2001-2002 Scott W. Ambler 29 Feel Free to Email Me! Scott W. Ambler scott.ambler@ronin-intl.com Copyright 2001-2002 Scott W. Ambler 30 15