By salt-productions. Agenda  RUP  Agile Practices  Scrum  Putting it all together with & for People.

Slides:



Advertisements
Similar presentations
Keith McMillan Principal, Adept Technologies Copyright (C) 2008, Adept Technologies llc.
Advertisements

Colin Weaver The Eleven Essential Behaviours of Successful Agile Project Teams.
Chapter: 3 Agile Development
E X treme Programming & Agile Modeling Copyright © 2003 Patrick McDermott UC Berkeley Extension
Software Development Methodologies 1. A methodology is: A collection of procedures, techniques, principles, and tools that help developers build a computer.
The Role of Project Managers in Agile Darren Wilmshurst ACIB CITP
What is Agile? Agile is a software methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration.
Slide Set to accompany Web Engineering: A Practitioner’s Approach
Agile Project Management with Scrum
Agile Architecture? Paul Lund 24 th Nov Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it.
Agile Methods.
Agile Principles Suradet Jitprapaikulsarn 1. What is Agility? Effective (rapid and adaptive) response to change Effective communication among all stakeholders.
Does it work with Data Warehouses?. “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we.
Introduction to Agile.
Software engineering Process models Pavel Agejkin.
DE (est) 2. -Joe Justice What does HR output? Exercise.
DE (est) 2. -Steve Denning -Joe Justice What do these groups output? Exercise.
How Agile Are You? Larry Apke Agile Expert
CONFIDENTIALITY © 2010 BA ValueBASE LLP, The concepts and methodologies contained herein are proprietary to BA ValueBASE LLP. Duplication, reproduction.
The Two Faces of Project Management Bendik Bygstad, NITH IFI, 25.Sept 2009.
1 Staffordshire UNIVERSITY School of Computing Slide: 1 Prototyping Agile Software Development 2 Agile Methods and Software Architectures.
AgileCamp Presents: Scrum. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons Attribution 4.0.
The Two Faces of Project Management Bendik Bygstad, NITH IFI, 16.Sept 2008.
1 Agile Methodology & Programming Ric Holt July 2009.
Software Engineering Modern Approaches
Agile Programming Principles.
The Agile Primer July 2008 © ThoughtWorks 2008.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
Chapter 4 Agile Development
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
AGILE Methodology. AGILE  derived from the word ‘agile manifesto’, also called the Manifesto for Agile Software Development which is a formal proclamation.
AgileCamp Presents: Agile 101. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons Attribution.
Project Workflow. How do you do it? -Discussion-
CS1: Classic Software Life Cycle “Waterfall” method: 1.Requirements/Analysis Determine the problem to be solved – client-centered 2.Specification.
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 121 Software Design I Lecture 4 Duplication.
AGILE COTS Václav Pergl We are uncovering better ways of developing software by doing it and helping others do it. Through this work.
1 11/21/2015 ã 2007, Spencer Rugaber Agile Manifesto February, 2001 XP, SCRUM, DSDM, Adaptive Software Development,
UX meets XP. Overview of core approaches to creating interactive software Waterfall, iterative design, Agile Hybrid methods of evaluation H&P Chapter.
Why (or When) Agile Fails Creating high performance software delivery teams.
Jeff Briggs Senior Consultant Capstone Consulting.
#2-What is Agile? Why Agile? Subtopics 1- Agile motivation for software / systems 2- Agile tenets and principles 3- Agile as a risk mitigation strategy.
- Discussion of Chapter 1 in Martin and Martin.  We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Chapter 3 Agile Development
Module 2: What is Agile? Why use it? TLO: Given a DoD program involved in software development, the student will recognize situations where applying agile.
The Agile Manifesto Some thought starters for Ogilvy on how to work with Agile and SCRUM approaches to managing projects.
Agile Introduction Emerson Murphy-Hill. Agile Manifesto/Alliance XP, SCRUM, DSDM, Adaptive Software Development, Crystal, FDD February 2001 (Snowbird,
By: Isuru Abeysekera AGILE DEVELOPMENT. WHAT IS AGILE DEVELOPMENT? Broad term used to describe several methods for a development process Introduced in.
Industrial Software Development Process Bashar Ahmad RISC Software GmbH.
© 2014 IBM Corporation “Leaders Guide to Radical Management” for DevOps with Steve Denning Chapters 6 and 7: From Bureaucracy to Dynamic Linking by Delivering.
Baby Steps to Agility How to Grow Into Agile. A little about me A little about Agile Growing into Agile Questions Goals.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
Agile Project Management and the yin & yang of
Introduction to Agile Software Development
Principles for Agile Development
Jenna Maghie, Policy Officer
Agile Training Day 2 November 17, 2015.
Teaching Agile Methods CSEE&T 2017, Savannah, Georgia
Project Management and the Agile Manifesto
How to Successfully Implement an Agile Project
Rosa María Torres de Paz
The Agile Manifesto is based on 12 principles
Informatics 121 Software Design I
Introduction to Agile Blue Ocean Workshops.
How Strong is Your Agile Foundation
Adjective: Able to move quickly and easily. Principles and Values
Chapter 3: Agile Software Processes
Projects, Assignments, and other Assessments
Agile Development.
Presentation transcript:

by salt-productions

Agenda  RUP  Agile Practices  Scrum  Putting it all together with & for People

The Rational Unified Process

RUP Best Practices

RUP Essentials  Vision—Develop a Vision Vision  Plan—Manage to the Plan Plan  Risks—Mitigate Risks and Track Related Issues Risks  Business Case—Examine the Business Case Business Case  Architecture—Design a Component Architecture Architecture  Prototype—Incrementally Build and Test the Product Prototype  Evaluation—Regularly Assess Results Evaluation  Change Requests—Manage and Control Changes Change Requests  User Support—Deploy a Usable Product User Support  Process—Adopt a Process that Fits Your Project Process 1.

RUP Roles RUP Definition: A role is an abstract definition of a set of responsibilities for activities to be performed and artifacts to be produced. Skills: A person acting in the Requirements Specifier role needs good communication skills, both in terms of expressing themselves verbally and in writing. Knowledge of the business and technology domain is also important, but is not typically necessary for every project team member acting in this role. For the requirements specifier role to be carried out efficiently, the person playing this role needs to be familiar with the productivity tools used to capture the results of the requirements work.

My Experience with RUP

Management View

Business View

Technical View

Now, Discover Your Strengths achiever, activator, adaptability, analytical, arranger, belief, command, communication, competition, connectedness, context, deliberative, developer, discipline, empathy, fairness, focus, futuristic, harmony, ideation, inclusiveness, individualization, input, intellection, learner, maximizer, positivity, relator, responsibility, restorative, self- assurance, significance, strategic, woo

Now, Discover Your Strengths futuristic strategic maximizer adaptability ideation Optimize Development Process Optimize System Value Optimize Application Architecture Optimize Process Performance Optimize Implementation Optimize Technical Architecture Optimize System Quality Optimize Business Value

At the core, I believe Agile Methodologists are really about "mushy" stuff… about delivering good products to customers by operating in an environment that does more than talk about "people as our most important asset" but actually "acts" as if people were the most important, and lose the word "asset".

Do the Mushy Stuff!  Corporate Culture  Agile Principles  Best Practices of RUP  Custom Agile RUP Process  Focus on the RUP Essentials  Manage RUP phases with Scrum  Give People the ability to achieve goals using their own unique set of strengths

Optimize Business Value and Optimize System Value  Agile Principle: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.  Agile Principle: Business people and developers must work together daily throughout the project.  Agile Principle: Simplicity--the art of maximizing the amount of work not done--is essential.  Agile Principle: Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.  RUP Best Practice: Manage Requirements

Optimize Process Performance  Agile Principle: Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.  Agile Principle: Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.  Agile Principle: Working software is the primary measure of progress.  RUP Best Practice: Develop Iteratively

Optimize Development Process Agile Principle: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Agile Principle: The best architectures, requirements, and designs emerge from self- organizing teams. Agile Principle: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Agile Principle: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

Scrum  Scrum is a simple framework used to organize teams and get work done more productively with higher quality. It allows teams to choose the amount of work to be done and decide how best to do it, thereby providing a more enjoyable and productive working environment.  Scrum focuses on prioritizing work based on business value, improving the usefulness of what is delivered, and increasing revenue, particularly early revenue.  Designed to adapt to changing requirements during the development process at short, regular intervals, Scrum allows teams to prioritize customer requirements and adapt the work product in real time to customer needs. By doing this, Scrum provides what the customer wants at the time of delivery (improving customer satisfaction) while eliminating waste (work that is not highly valued by the customer).

Scrum Roles  Product owner: responsible for the business value of the project  ScrumMaster: ensures that the team is functional and productive  Team: self-organizes to get the work done

Scrum Ceremonies  Sprint planning: the team meets with the product owner to choose a set of work to deliver during a sprint  Daily scrum: the team meets each day to share struggles and progress  Sprint reviews: the team demonstrates to the product owner what it has completed during the sprint  Sprint retrospectives: the team looks for ways to improve the product and the process.

Scrum Deliverables  Product backlog: prioritized list of desired project outcomes/features  Sprint backlog: set of work from the product backlog that the team agrees to complete in a sprint, broken into tasks  Burndown chart: at-a-glance look at the work remaining (can have two charts: one for the sprint and one for the overall project)

Product Backlog

Sprint Backlog

Burndown Chart

The Scrum Framework Sprint Planning Daily Scrum Sprint Review Sprint Retrospective

Develop a Vision The Team supports the Product Owner as they define the features of the product or desired outcomes of the project.

Manage to the Plan The ScrumMaster ensures that the process is followed, including issuing invitations to daily scrums, sprint reviews, and sprint planning.

Mitigate Risks and Track Related Issues The ScrumMaster removes barriers and shields the team from external interferences.

Design a Component Architecture Agile Principle: Continuous attention to technical excellence and good design enhances agility. RUP Best Practice: Model Visually RUP Best Practice: Use Component Architectures

Incrementally Build & Test the Product

Regularly Assess Results

Manage and Control Changes

Deploy a Usable Product

Adopt a Process that Fits Your Project  Agile Principle: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.  Agile Principle: The best architectures, requirements, and designs emerge from self- organizing teams.  Agile Principle: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.  Agile Principle: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

Adopt a Process that Fits Your Project People  Agile Principle: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.  Agile Principle: The best architectures, requirements, and designs emerge from self- organizing teams.  Agile Principle: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.  Agile Principle: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Optimize the process with the strengths of the actors!

Sprint Planning For this sprint : 1) I will use my analytical strength to Optimize System Quality by taking ownership of the test tasks 2) I will use my command strength to Optimize Application Architecture by confronting those who do not follow the selected architectural patterns 3) I will use my input strength to Optimize Implementation by noting the various styles being used in the application code

Sprint Retrospective  I met my Goal!  1 – strongly agree  2 – agree  3 – neutral  4 – disagree  5 – strongly disagree  Reasons for ratings of 3, 2, and 1  lack of skill (e.g. tried but didn't do as well as expected)  lack of opportunity (e.g. no tasks available)  lack of time (e.g. other tasks took priority or PTO)

People First; Process Second  Every team member has distinct strengths  Every team member is unique - no single person has quite the same configuration of strengths as somebody else  Every team member will be productive, creative, focused, generous and resilient when they figure out how to play to their strengths most of the time.  And when you do; your customers, colleagues, company, and you will win.  Everyone will win. Adapted from Go Put Your Strengths to Work by Marcus Buckingham

The ScrumMaster Potential ScrumMaster Strengths: achiever, activator, adaptability, analytical, arranger, belief, command, communication, competition, connectedness, context, deliberative, developer, discipline, empathy, fairness, focus, futuristic, harmony, ideation, inclusiveness, individualization, input, intellection, learner, maximizer, positivity, relator, responsibility, restorative, self- assurance, significance, strategic, woo