Essence Workshop June 20, 2013 www.semat.org Applying Essence in Practice Ed Seidewitz Ivar Jacobson International.

Slides:



Advertisements
Similar presentations
Methods in Enterprises 2 BPMBPM BABA UXUX SOASOA EIMEIM MDD / TDD / XP EAEA PMBOK / CMMI-DEV ITILITIL Scrum / Kanban Business/IT Strategy.
Advertisements

Berlin, Germany June 20, Extending the Kernel with Practices to Create Methods Brian Elvesæter SINTEF, Oslo, Norway.
A little Software Engineering: Agile Software Development C Sc 335 Rick Mercer.
SCRUM John Drew. SCRUM - overview Scrum is a project management discipline that has evolved since the early 1990s to deliver software that meets business.
 User assignments (product owner)  ‘circle’  1 st sprint: ◦ Scrum Boards (informative workspace)  Product -, release -, sprint -, defect backlog 
Stepan Potiyenko ISS Sr.SW Developer.
Iterative development and The Unified process
Coming up: The Manifesto for Agile Software Development 1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development Software Engineering:
Process, Communication, and Certification Padma Venkata
Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Managing a Project Using an Agile Approach and the PMBOK® Guide
Agile Process: Overview n Agile software engineering represents a reasonable compromise to conventional software engineering for certain classes of software.
The Product Owner prioritizes the requirements or features through feedback from the Stakeholders & interaction with the core team The Team.
Trusted IT Group. The challenge: 40 active, concurrent IT projects  Unsatisfactory Project Delivery.
Mobile Apps: Review and Retrospectives Refresher Agile Transformation Team 1.
S/W Project Management
COMPGZ07 Project Management Presentations Graham Collins, UCL
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
RUP Fundamentals - Instructor Notes
Chapter 2 The process Process, Methods, and Tools
© The McGraw-Hill Companies, An Introduction Chapter 1 Software Project Management 4 th Edition Robert Hughes and Mike Cotterell.
Atlanta Public Schools Project Management Framework Proposed to the Atlanta Board of Education to Complete AdvancED/SACS “Required Actions” January 24,
Ontologies Reasoning Components Agents Simulations The Eclipse Process Framework Breno Machado.
Tuesday, June 8 th, Agile Development-Successful Delivery & Implementing Across the Enterprise.
Scrum’s Product Owner Role Jeff Patton Agile Product Design
Software Engineering- Scrum 徐 瑋 Alen 林芳瑜 Flora 1.
Ivar Jacobson and Ed Seidewitz A New Software Engineering Communications of the ACM, Dec. 2014, 57 (12): CS 791z Graduate Topics on Software Engineering.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Engineering System Design
Software Process Models.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Agile Assessment Gadi Lifshitz, Ayelet Kroskin, Barak Yagour, Yael Dubinsky.
MD Digital Government Summit, June 26, Maryland Project Management Oversight & System Development Life Cycle (SDLC) Robert Krauss MD Digital Government.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Coming up: The Manifesto for Agile Software Development 1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development Software Engineering:
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
1 The Manifesto for Agile Software Development “We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
Chapter 3 Agile Development
1 EMS Fundamentals An Introduction to the EMS Process Roadmap AASHTO EMS Workshop.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
CSPC 464 Fall 2014 Son Nguyen. 1. The Process of Software Architecting, Peter Eeles, Peter Cripss 2. Software Architecture for Developers, Simon Brown.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 Click to edit Master title style What is Business Analysis Body of Knowledge?
Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile.
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
44222: Information Systems Development
Introduction to Agile. Introduction Who is this guy?
Scrum Overview. Agenda What is scrum…and what it isn’t Scrum’s Characteristics The Scrum Process Scrum Phases Measurements Key Practices Backlogs Sprint.
Managing Agile Software Development Teams Using Scrum AKA: Wrangling Developers for Fun and Profit!
What’s New in SPEED APPS 2.3 ? Business Excellence Application Services.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
Barnes & Noble Alonda Morgan. Agile UX Agile.
Process 4 Hours.
Rapid Launch Workshop ©CC BY-SA.
Information Technology Project Management – Fifth Edition
By: By: Agile Scrum Master Online Training.
Development Projects / Analysis Projects / On-site Service Projects
SAFe Workshop - Oct 17 Presenter: Ray Brederode
Gathering Systems Requirements
Introduction If you have got a call for an Agile testing interview, then congratulations are in order. You may be feeling nervous, but it sure to be felt.
Introduction to Agile Blue Ocean Workshops.
Scrum Science NGSS: Engineering, Technology, Applications of Science
Gathering Systems Requirements
How to deal with requirements in an Agile context?
Executive Project Kickoff
Presentation transcript:

Essence Workshop June 20, Applying Essence in Practice Ed Seidewitz Ivar Jacobson International

The Essence Specification  “Foundation for Agile Creation and Enactment of Software Engineering Methods” (FACESEM) RFP issued June, 2011  Essence – Kernel and Language for Software Engineering Methods submitted February 2013  Essence 1.0 (alpha) adoption vote pending with OMG Board of Directors  Essence 1.0 Finalization Task Force chartered March 2013  Essence 1.0 (beta) adoption expected June 2014 Applying Essence in Practice / Essence Workshop / 20 June

What is an alpha? Applying Essence in Practice / Essence Workshop / 20 June Alpha is an acronym for an Abstract-Level Progress Health Attribute. An essential element of the software engineering endeavor that is relevant to an assessment of the progress and health of the endeavor.

The Kernel Alphas Applying Essence in Practice / Essence Workshop / 20 June Customer Solution scopes and constrains updates and changes > < performs and plans < fulfils ^ produces Work Team Software System Requirements Way of Working ^ < guides < applies < provide Stakeholders Opportunity < helps to address < demand focuses > use and consume > supports > Set up to address > Endeavor Opportunity Stakeholders 4

The Alpha structure Applying Essence in Practice / Essence Workshop / 20 June  State  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  State  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  State  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  …….. Checklist An Alpha

Requirements– one of the alphas Applying Essence in Practice / Essence Workshop / 20 June What the software system must do to address the opportunity and satisfy the stakeholders.

Requirements – states 7 Coherent Acceptable Bounded Addressed Fullfilled The need for a new system has been agreed. The purpose and theme of the new system are clear. The requirements provide a coherent description of the essential characteristics of the new system. The requirements describe a system that is acceptable to the stakeholders. The requirements have been addressed to fully satisfy the need for a new system. Conceived Enough of the requirements have been addressed to satisfy the need for a new system in a way that is acceptable to the stakeholders. Applying Essence in Practice / Essence Workshop / 20 June 2013

Checklist for requirements states 8 Recognized Coherent Acceptable Conceived Bounded Addressed Fullfilled  The initial set of stakeholders agrees that a system is to be produced.  The stakeholders that will use the new system are identified.  The stakeholders that will fund the initial work on the new system are identified.  There is a clear opportunity for the new system to address. Applying Essence in Practice / Essence Workshop / 20 June 2013

 The stakeholders involved in developing the new system are identified.  The stakeholders agree on the purpose of the new system.  It is clear what success is for the new system.  The stakeholders have a shared understanding of the extent of the proposed solution.  The way the requirements will be described is agreed upon.  The mechanisms for managing the requirements are in place.  The prioritization scheme is clear.  Constraints are identified and considered.  Assumptions are clearly stated. Checklist for requirements states 9 Coherent Acceptable Bounded Addressed Fullfilled Conceived Applying Essence in Practice / Essence Workshop / 20 June 2013

Company X, Dave and Smith  Company X runs many development projects, both small and large  Dave, the executive of Company X wants to improve software development capability  This task is assigned to Smith  Smith meets many diverse teams with different background and experience and helps them Applying Essence in Practice / Essence Workshop / 20 June

Situation: Encounter with Small Team A  Smith meets a small team A and needs to understand the current state of development.  Ponder: How do you do that? What do you look for? What do you infer and how do you come to your conclusion? Applying Essence in Practice / Essence Workshop / 20 June

Collecting the evidence  The team gave Smith some documents –Business Case –Use Case Model –Brief System Description  Smith asks some questions  What to ask? Applying Essence in Practice / Essence Workshop / 20 June

What is the real situation Applying Essence in Practice / Essence Workshop / 20 June Software System Work Team Requirements

Plan: Determine Current State Applying Essence in Practice / Essence Workshop / 20 June Achieved Not Achieved

Identify States by Applying State Cards Applying Essence in Practice / Essence Workshop / 20 June

Situation: Executives Demand a Plan  Cliché: If you don’t plan to succeed, you plan to fail.  Dave, the executive wants a plan.  Ponder: –How do you make the plan? –How do you communicate the plan? –How do you ensure that your plan works? –How detailed should your plan be? Applying Essence in Practice / Essence Workshop / 20 June

Steps to Planning  Determine Major Decision Points  Refine the Decision Points  Fill in more Details Production Decision to Start Dev. (Start Coding) Decision to Go Live (Release) Decision Points Development Idea Applying Essence in Practice / Essence Workshop / 20 June

Planning Development with Alphas Before Approval Building the Business Case In Development Developing the Software Skinny System Available Usable System Available Applying Essence in Practice / Essence Workshop / 20 June Decision To Fund Decision To Go Live In Production Operating the Software

Different Development, Different Planning AgileTraditional Phases Conceived Bounded Coherent Acceptable Addressed Fulfilled Architecture Selected Demonstrable Usable Ready Operational Retired Before Approval In Development Conceived Bounded Coherent Acceptable Addressed Fulfilled Architecture Selected Demonstrable Useable Ready Operational Retired In Production Requirements Software Sys.Requirements Software Sys. Decision To Start Decision To Go Live

Situation: Get the Team Moving  Dave wants Smith not only to conduct their development successfully but also to be grounded in a solid understanding of software development  In particular, Dave wants the team to adopt agile development Applying Essence in Practice / Essence Workshop / 20 June

Running Agile Development with Scrum Product Backlog To DoDoingDone Customer Representatives Team Scrum Master Production Decision to Fund Decision to Go Live Development Idea Applying Essence in Practice / Essence Workshop / 20 June

Agreeing on how to Iteration Objectives Applying Essence in Practice / Essence Workshop / 20 June Prioritizing Work items New Hire Training Browse Comments Post Comments Browse Album What tasks will the team need to do to achieve the above target states? What requirement items will the team need to develop to achieve the above target states?

Tasks and Sub-Alphas Task 1 Task 2 To DoDoingDone Task 3 Task4 Task 5 Task 6 Set up test environment Complete Requirement-Item A Complete Requirement-Item B Complete Requirement-Item C Objectives Task 7 Task 8 Complete more Requirement-Items Task 9 Applying Essence in Practice / Essence Workshop / 20 June

Situation: Replicating Success  Dave wants Smith to help replicate success in other teams.  Some way to describe the way of working is necessary  Smith needs a way to get internal coaches to be consistent, but allow room to improvise and innovate Applying Essence in Practice / Essence Workshop / 20 June

Documenting Practices Tacit Practices With Coaching Explicit Practices With Coaching Background Capability CommonDifferent Explicit Practices Needed Tacit Practices Sufficient High Low Applying Essence in Practice / Essence Workshop / 20 June

A Practice Architecture Mobile Application Development Method Kernel Core Banking Development Method Enterprise Integration Method Defect/Issue Tracking Configuration Management Defect/Issue Tracking Configuration Management Defect/Issue Tracking Configuration Management Common Practices Waterfall LifecycleModern Lifecycle Architecture CentricEmerging Architecture Traditional Requirements User stories Use Cases Endeavor Type Specific Practices Acceptance Test Driven Development Acceptance Test Driven Development Acceptance Test Driven Development Improvement Applying Essence in Practice / Essence Workshop / 20 June

Practice Explorer The Practice Explorer shows Practice Workbench projects The Essence Kernel project contains the elements defined in the OMG Essence specification Alphas that represent the essential things to work with Activity Spaces that represent the essential things to do Applying Essence in Practice / Essence Workshop / 20 June

ETextile, Guideline and Card views When selecting an element in the Practice Explorer you can switch between different views The ETextile Source view provides the main editor for authoring the practice using plain text and annotations The Guideline Preview renders how the guideline will be presented in HTML The Overview Card Preview renders the card presentation Applying Essence in Practice / Essence Workshop / 20 June

Scrum Essentials The Scrum practice is created as a separate practice project in the Practice Workbench The Scrum practice extends the Essence Kernel by providing more detailed guidance. Drag and drop the relevant Alphas to extend from the Essence Kernel into the Scrum practice project Drag and drop the relevant Activity Spaces to extend from the Essence Kernel into the Scrum practice project Applying Essence in Practice / Essence Workshop / 20 June

Scrum Roles Scrum roles are represented as Patterns Product Owner (Guideline Preview) Product Owner (Card Preview) Applying Essence in Practice / Essence Workshop / 20 June

Scrum Sprint Sprint is represented as a sub-alpha of Work The Sprint has States with Checkpoints The Sprint has associated the Work Product Sprint Backlog that contains the set of Product Backlog items selected for the Sprint, and the plan for delivering the product Increment Sprint (Card Preview) Sprint in Under Control State (Card Preview) Under Control (State Card Preview) Applying Essence in Practice / Essence Workshop / 20 June