applying essence in practice - omg · 2015-11-09 · applying essence in practice / essence...
TRANSCRIPT
![Page 1: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/1.jpg)
Essence Workshop June 20, 2013
www.semat.org
Applying Essence in Practice Ed Seidewitz
Ivar Jacobson International
![Page 2: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/2.jpg)
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 2013 2
![Page 3: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/3.jpg)
What is an alpha?
Applying Essence in Practice / Essence Workshop / 20 June 2013 3
• 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.
![Page 4: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/4.jpg)
The Kernel Alphas
Applying Essence in Practice / Essence Workshop / 20 June 2013 4
Customer
Solution
scopes and constrains
< performs and plans
< fulfils
^ produces
Work Team
Software System
Requirements
Way of Working
^
< provide Stakeholders Opportunity
focuses >
use and consum
e >
supports >
Set
up
to
addr
ess
>
Endeavor
Opportunity Opportunity Stakeholders
4
![Page 5: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/5.jpg)
The Alpha structure
Applying Essence in Practice / Essence Workshop / 20 June 2013 5
State
XXXXXXXXXXXXXXXXXX XXXXXXXXXXX
XXXXXXXXXXXX
State XXXXXXXXXXXXXXXXXX
XXXXXXXXXXX
XXXXXXXXXXXX
State XXXXXXXXXXXXXXXXXX
XXXXXXXXXXX
XXXXXXXXXXXX
……..
Checklist An Alpha
![Page 6: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/6.jpg)
Requirements– one of the alphas
Applying Essence in Practice / Essence Workshop / 20 June 2013 6
What the software system must do to address the opportunity and satisfy the stakeholders.
![Page 7: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/7.jpg)
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
![Page 8: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/8.jpg)
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
![Page 9: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/9.jpg)
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
![Page 10: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/10.jpg)
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 2013 10
![Page 11: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/11.jpg)
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 2013 11
![Page 12: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/12.jpg)
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 2013 12
![Page 13: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/13.jpg)
What is the real situation
Applying Essence in Practice / Essence Workshop / 20 June 2013 13
Software System
Work
Team
Requirements
![Page 14: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/14.jpg)
Plan: Determine Current State
Applying Essence in Practice / Essence Workshop / 20 June 2013 14
Achieved Not Achieved
![Page 15: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/15.jpg)
Identify States by Applying State Cards
Applying Essence in Practice / Essence Workshop / 20 June 2013 15
![Page 16: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/16.jpg)
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 2013 16
![Page 17: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/17.jpg)
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 2013 17
![Page 18: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/18.jpg)
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 2013 18
Decision To Fund
Decision To Go Live
In Production
Operating the Software
![Page 19: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/19.jpg)
Different Development, Different Planning
Agile Traditional 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
![Page 20: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/20.jpg)
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 2013 20
![Page 21: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/21.jpg)
Running Agile Development with Scrum
Product Backlog
To Do Doing Done
Customer Representatives Team
Scrum Master
Production
Decision to Fund Decision to Go Live
Development Idea
Applying Essence in Practice / Essence Workshop / 20 June 2013 21
![Page 22: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/22.jpg)
Agreeing on Iteration Objectives
Applying Essence in Practice / Essence Workshop / 20 June 2013 22
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?
![Page 23: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/23.jpg)
Tasks and Sub-Alphas
Task 1
Task 2
To Do Doing Done
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 2013 23
![Page 24: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/24.jpg)
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 2013 24
![Page 25: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/25.jpg)
Documenting Practices
Tacit Practices
With Coaching
Explicit Practices
With Coaching
Background
Capability
Common Different
Explicit Practices Needed
Tacit Practices Sufficient
High
Low
Applying Essence in Practice / Essence Workshop / 20 June 2013 25
![Page 26: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/26.jpg)
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 Lifecycle Modern Lifecycle Modern Lifecycle
Architecture Centric Emerging Architecture
Emerging 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 2013 26
![Page 27: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/27.jpg)
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 2013 27
![Page 28: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/28.jpg)
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 2013 28
![Page 29: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/29.jpg)
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 2013 29
![Page 30: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/30.jpg)
Scrum Roles
Scrum roles are represented as Patterns
Product Owner (Guideline Preview)
Product Owner (Card Preview)
Applying Essence in Practice / Essence Workshop / 20 June 2013 30
![Page 31: Applying Essence in Practice - OMG · 2015-11-09 · Applying Essence in Practice / Essence Workshop / 20 June 2013 3 • Alpha is an acronym for an Abstract-Level Progress Health](https://reader034.vdocument.in/reader034/viewer/2022042622/5fab5779aa52bd4231788962/html5/thumbnails/31.jpg)
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 2013 31