Upload
june-sung-park
View
217
Download
0
Embed Size (px)
Citation preview
8/10/2019 Essence Tutorial (JP)
1/75
8/10/2019 Essence Tutorial (JP)
2/75
Table of ContentI. Software Engineering Methods Today
II. Introduction to EssenceIII. Method Description and Enactment IV. Essence Use Cases and Case Studies
1. Method-Agnostic Project SteeringExample 1Case Study 1
2. Method DescriptionExample 2Case Study 2, 3,4
3. Practice Library and OrchestrationExample 3
4. Project Support Environment
V. SEMAT Yesterday, Today & Tomorrow
IIIT-B / Sask
The views or opinions expressed in this talk are solely the authors ownand do not necessarily represent the views or opinions of SEMAT Inc.
8/10/2019 Essence Tutorial (JP)
3/75
I. Software Engineering Methods
Today
IIIT-B / Sask
8/10/2019 Essence Tutorial (JP)
4/75
Evolution of Software Engineering Methods
IIIT-B / Sask20001980197019601950 1990
Waterfall
Structured
Object-Oriented
Information Engineering
Component-Based
Process(Method)
Practice
SpiralProcess
8/10/2019 Essence Tutorial (JP)
5/75
Evolution of SE Methods: Capgemini
IIIT-B / Sask20001980197019601950 1990
Process(Method)
Practice
SDM SDM2
Structured ADP forMainframe Apps
InformationEngineering for
Client/Server Apps
Component-Based Dev for
Web Apps
Waterfall Process Iterative Proces
Windahl Finnigan, The Life Cycle of the
Agile Unified Process, Capgemini, 2012.(http://www.youtube.com/watch?v=X19IVn4qkC8 )
http://www.youtube.com/watch?v=X19IVn4qkC8http://www.youtube.com/watch?v=X19IVn4qkC8http://www.youtube.com/watch?v=X19IVn4qkC8http://www.youtube.com/watch?v=X19IVn4qkC8http://www.youtube.com/watch?v=X19IVn4qkC88/10/2019 Essence Tutorial (JP)
6/75
Software Engineering Practices
IIIT-B / Sask
ServiceIS
StrategyPlanning Architecting Development Ope
BusinessModel
ApplicationUI
Logic
Data
TechnicalInfrastructure
Management ofIT Service
BPM
Business AnalysisX
Analytics /Big Data MDDXP
EA
Web 2.0 / Mobility
SOA
MDM
SaaS
App Platform /Virtualization /
Project Mgmt IT Serv
8/10/2019 Essence Tutorial (JP)
7/75
Software Engineering Method Enactment
IIIT-B / SaskOMG, Software & System Process Engineering Metamodel Specification (SPEM) Version 2.0, April 2008.
8/10/2019 Essence Tutorial (JP)
8/75
II. Introduction to Essence
IIIT-B / Sask
8/10/2019 Essence Tutorial (JP)
9/75
What is Essence?
Prior to Essence, natural languages or SPEM 2.0, adomain-specific language, have been used todescribe software engineering methods.
Essence provides standard kernel and language toprescribe and enact software engineering methods,which was adopted as OMG standard in June 2014.
The Essence kernel provides a minimal set of essential elements that prevail in any softwareengineering project.
IIIT-B / Sask
Object Management Group, Essence-Kernel And Language For Software EngineeringMethods 1.0-Beta 2, 2014. ( http://www.omg.org/spec/Essence/1.0 / )
http://www.omg.org/spec/Essence/1.0/http://www.omg.org/spec/Essence/1.0/http://www.omg.org/spec/Essence/1.0/8/10/2019 Essence Tutorial (JP)
10/75
Essence Kernel
Alpha
Activity Space
Competency
IIIT-B / Sask
8/10/2019 Essence Tutorial (JP)
11/75
8/10/2019 Essence Tutorial (JP)
12/75
Alpha
Alpha representsthings to deal within any softwareengineering project.
Essence takes thesystems approachto softwareengineering.
IIIT-B / Sask
Work Way of Working
Team
Opportunity
Requirements
Software
System
Software Systems used in a Business System
June Sung Park, Software Engineering in theContext of Business Systems, in Ivar Jacobsonand Harold Lawson (ed.) Software Engineeringin the Systems Context, College Publications:London (forthcoming)
Osterwalder, A. et al. Business ModelGeneration, 2010.(http://www.businessmodelgeneration.com / )
http://www.businessmodelgeneration.com/http://www.businessmodelgeneration.com/http://www.businessmodelgeneration.com/8/10/2019 Essence Tutorial (JP)
13/75
Alpha
Alpha (as an acronymof Abstract -LevelProgress HealthAttribute) representsdimensions of thestate of a softwareengineering project.
Essence prescribes a
state machine forsoftware engineering.
IIIT-B / Sask
Project State with Direction and Goals for a Software Sy
Cecile Peraireand Todd Sedano, "State-Based Monitoring and Goal-Driven Project Steering: FSEMAT Essence Framework", International Conference on Software Engineering , Hyder
8/10/2019 Essence Tutorial (JP)
14/75
Alpha State and Checklist
IIIT-B / Sask
Ivar JacobsonMcMahon, IaLidman, TheEngineering: Kernel , Addis
8/10/2019 Essence Tutorial (JP)
15/75
Alpha Decomposition and Extension
IIIT-B / Sask
An alpha may have lower-level, moregranule sub-alphas whose statescontribute to and drive the state of the super-alpha.
Association between super-alphasand sub-alphas can be many-to-many.
Extension allows local changes to bemade to the values of the attributesof an element (e.g. alpha) in thecontext of an element group (e.g.practice).
Alpha
Alpha E
8/10/2019 Essence Tutorial (JP)
16/75
8/10/2019 Essence Tutorial (JP)
17/75
Activity Space
IIIT-B / Sask
C u s t o m e r
S o
l u t i o n
E n d e a v o r
ExplorePossibilities
UnderstandStakeholder
Needs
EnsureStakeholderSatisfaction
Use theSystem
Understandthe
Requirements
Shape theSystem
Implementthe System
Test theSystem
Deploy theSystem
Operatethe System
Prepare todo the Work
Coordinatethe Activity
SupportTeam
TrackProgress
Stop theWork
8/10/2019 Essence Tutorial (JP)
18/75
Activity Space and Activity
Activity spaces arecontainers of activitiesperformed in a project method.
An activity may be a part of another activity forming awork breakdown structure.
The association betweenactivity spaces andactivities can be many-to-many.
IIIT-B / Sask
Activity Space
8/10/2019 Essence Tutorial (JP)
19/75
Activity Space and Alpha State
Activities may change the alphastates of the software engineeringproject.
Activities can be assigned target alpha states or checkpoints (i.e.criteria of done).
Pre and post conditions of eachactivity space are suggested interms of alpha states in the kernel.
Essence enables a semi-Markoviandecision process for softwareengineering.
A Target-State to Activity MappingAlgorithm can be used to determinethe next action.
IIIT-B / Sask
Activity Space
Competency
t a r g e
t s >
Alpha
Alpha State
< h a s
June Sung Park, Essence-Based, Goal-Driven Adaptive Software Engineering, KAIST, 2014.
8/10/2019 Essence Tutorial (JP)
20/75
Activity Space and Alpha State
IIIT-B / Sask
Alpha States
Activity Spaces
Opportunity Stakeholde
Id
e
S
uo
N V
u
E
absh
Vabe
e
e
B
t
u
R
o
z
R
ee
e
Inov
In
eme
Explore Possibilities
Understand Stakeholder Needs
Ensure Stakeholder Satisfaction
Use the System
8/10/2019 Essence Tutorial (JP)
21/75
Competency
IIIT-B / Sask
C u s t o m e r
S o
l u t i o n
E n d e a v o r
Stakeholder Representation
Analysis Development Testing
Leadership Management
8/10/2019 Essence Tutorial (JP)
22/75
Competency
IIIT-B / Sask
Essence kernel suggestsfive levels of competency:
Level 1 Assists Level 2 Applies Level 3 Masters Level 4 Adapts Level 5 Innovates
SFIA Foundation, SFIA 5 Framework Reference, 2011.
8/10/2019 Essence Tutorial (JP)
23/75
Competency and Role
IIIT-B / Sask
profiles>
organizes>
Alpha
Alpha State
Activity Space
Competency
< h a s
t a r g e
t s >
Patterns can arrangelanguage elements intoarbitrary meaningfulstructures.
A role may be defined byreferencing requiredcompetencies, havingresponsibility of work
products, and participationin activities.
8/10/2019 Essence Tutorial (JP)
24/75
Software Talent Management
IIIT-B / Sask
B. Curtis, S. A. Miller and W. E. Hefley, The People CMM: AFramework for Human Capital Management, Addison-Wesley, 2009.
8/10/2019 Essence Tutorial (JP)
25/75
Kernel Extension
IIIT-B / Sask
Patterns can arrangelanguage elements intoarbitrary meaningfulstructures.
Resources can be attachedto any language element.
Tags add user definedinformation to anylanguage element.
User-Defined Types detail,explain, and constrain theproper usage of particularpatterns, resources, or tags.
8/10/2019 Essence Tutorial (JP)
26/75
III. Method Description and Enactment
IIIT-B / Sask
8/10/2019 Essence Tutorial (JP)
27/75
8/10/2019 Essence Tutorial (JP)
28/75
Practice Description in Essence
IIIT-B / Sask
A practice is described inEssence by mapping its work products, activities and roles toEssence alphas and activityspaces and competencies,respectively.
Pr
Wor
A
Essence Kernel
Alpha
Alpha State
Activity Space
Competency
8/10/2019 Essence Tutorial (JP)
29/75
Scrum Practice
IIIT-B / Sask
Development Team
Taskreakdown
Jeff Sutherland and Ken Schwaber, The Scrum Guide, 2013. ( http://www.scrumguides.org/ )
http://www.scrumguides.org/http://www.scrumguides.org/8/10/2019 Essence Tutorial (JP)
30/75
Scrum Practice in Essence
IIIT-B / Sask
ScrumPractice
Ensure StakeholderSatisfaction
Understand theRequirements
Coordinate theActivity
Support Team
Track Progress
ProductBacklog
SprintBacklog
Definition ofDone
Scrum Team
Release Plan Sprint Goal
ProductIncrement
Sprint Plan
Total WorkRemaining
ImprovementPlan
Requirements
Software System
Work
Team
Way of Working
June Sung Park, Paul E. McMahon and Barry Myburgh, Scrum Powered by Essence, SEMAT, 2014.Ivar Jacobson, Ian Spence and Pan-Wei Ng, Agile and SEMAT -Perfect Partners, Communications of the ACM 56:11, 2013, pp. 53-59.
8/10/2019 Essence Tutorial (JP)
31/75
Method Composition
IIIT-B / Sask
Requirements Product Backlog SprintBacklog
Software System Definition ofDone
Work
Team Scrum Team
Release Plan Sprint Goal
ProductIncrement
Sprint Plan
Total WorkRemaining
Ensure StakeholderSatisfaction
Understand theRequirements
Coordinate theActivity
Support Team
Track Progress
ProducRefi
Sprint
Sprint P
Daily
Sprint Retr
Way of Working ImprovementPlan
ScrumPractice
Explore Possibilities
nderstand StakeholderNeeds
Shape the System
Software RequirementModel
Software Architecture
June Sung Park, Software Engineering in the Context of Business Systems, in Ivar Jacobson and Harold
Lawson (ed.) Software Engineering in the Systems Context, College Publications: London (forthcoming)
Stakeholder
BusinessRequirements
AgileModeling
Opportunity
Ambler, S. and M.Lines, DisciplinedAgile Delivery: APractitioners Guide
to Agile SoftwareDelivery in theEnterprise, IBMPress, 2012.
8/10/2019 Essence Tutorial (JP)
32/75
Method Composition
IIIT-B / Sask
Kernel elements additionally covered by Agile ModelingKernel elements covered by Scrum
Add X
AddSPM
L. Williams, G. Brown, A. Meltz+ Engineering Practices: ExperTeams, International SymposiuEngineering and Measurement
8/10/2019 Essence Tutorial (JP)
33/75
Process Enactment
IIIT-B / Sask
PracticeEssence Kernel
Alpha
Alpha State
Activity Space
Competency
Work Product
Activity
Role
The practice activities
included in the project method are mapped tothe activities toconstitute the project workflow.
Workflow activitiescan be orchestratedusing a BPM engine.
A project method canbe re-composedadaptively to addresscritical issues that mayoccur during theproject.
Proje
Gatewa
8/10/2019 Essence Tutorial (JP)
34/75
Process Enactment
IIIT-B / Sask
June Sung Park, Essence Kernel -Based Enterprise Method Architecture,Essence Workshop , OMG Technical Meeting, Berlin, June 20, 2013.(http://semat.org/? page_id=193 )
Jin Young Jang, Essencia: Open Source Project for DeEssence- Based Method Enactment Tool, SEMAT KNovember 13, 2014 (In Korean).
http://semat.org/?page_id=193http://semat.org/?page_id=193http://semat.org/?page_id=1938/10/2019 Essence Tutorial (JP)
35/75
8/10/2019 Essence Tutorial (JP)
36/75
Essence Maturity Model
IIIT-B / Sask
1. Method-AgnosticProject StateMonitoring andActivity Planning
2. PracticeDescription in
Essence andMethodComposition
3. Essence-BasedPractice Libraryand ProcessOrchestration
4. Essence-PoProject SupEnvironme
8/10/2019 Essence Tutorial (JP)
37/75
1. Method-Agnostic Project Steering
IIIT-B / Sask
Given the pain points of the
project underway, identifythe alphas that are related. Assess the current states of
those alphas. Set the target states of the
alphas to relieve the painpoints.
Determine activities toperform to move the project state to the target alphastates.
Alpha
Alpha State
< h a s
8/10/2019 Essence Tutorial (JP)
38/75
Example 1
IIIT-B / Sask
Project Synopsis A team with 5 developers is
working on the 2 nd release of a Web-based LeaningManagement System for auniversity.
Current Pain Point Faculty members are resisting
migration to the new systemand giving no or negativefeedback.
Alpha Selection Stakeholder alpha state cards
are looked at.
8/10/2019 Essence Tutorial (JP)
39/75
Example 1
IIIT-B / Sask
Current State Identification
The stakeholders have alreadybeen recognized . They are Administrators ,
Faculty , and Students. Target State Selection
However, no facultyrepresentatives have beenappointed.
Assumption that facultymembers would providefeedback spontaneously waswrong.
The team agrees that represented becomes thetarget state for thestakeholder alpha.
8/10/2019 Essence Tutorial (JP)
40/75
Example 1
IIIT-B / Sask
Next Action Selection
Activity 1: Appoint stakeholder representativesfor the faculty group,including supportive andunsupportive facultymembers.
Activity 2: Agree on ormodify the existing definitionof responsibilities andcollaboration approaches withthe faculty representatives.Because of the iterative natureof the endeavor, thestakeholders need to agree onproviding feedback on aregular basis.
8/10/2019 Essence Tutorial (JP)
41/75
Example 1
IIIT-B / Sask
Current State Identification
Four faculty representativeshave been appointed: twosupportive and twounsupportive.
Negative feedback wasreceived from facultymembers saying they do not see the value of the newsystem.
Alpha Selection Opportunity alpha state cards
are investigated.
8/10/2019 Essence Tutorial (JP)
42/75
8/10/2019 Essence Tutorial (JP)
43/75
Case Study 1
A presentation on ESSENCE was given by Ivar
Jacobson and Ian Spence at Google in Zurich inJuly 2014. In order to explore Essence in a practical
setting, a 2-day workshop was hosted at Google Switzerland in October 2014 by MartinLanders, an engineering manager for YouTube.
He and his team of five engineers took a look
at Essence and its serious games .
IIIT-B / SaskGoogle Tech Talk ( http: //www.youtube.com/watch?v=WNlERrVxYjs&list=UUtXKDgv1AVoG88PLl8nGXmw )
Martin Landers said: Playing progress poker, reviewing health indicators and decheckpoints triggered some good conversations in the team and helped crystallize somrisks that I thought the team wasnt aware of or vice-versa.
http://www.youtube.com/watch?v=WNlERrVxYjs&list=UUtXKDgv1AVoG88PLl8nGXmwhttp://www.youtube.com/watch?v=WNlERrVxYjs&list=UUtXKDgv1AVoG88PLl8nGXmwhttp://www.youtube.com/watch?v=WNlERrVxYjs&list=UUtXKDgv1AVoG88PLl8nGXmw8/10/2019 Essence Tutorial (JP)
44/75
Benefits
IIIT-B / Sask
Enables
multidimensionalthinking andempowers teamreflections
Allows adaptive,situational project planning andmonitoring
Prevents losingsight of the valueto be created forcustomers
Step Back &Look at Project
Holistically(Alphas)
Monitor Progress(Alpha StateChecklists)
Set Project Goals(Target Alpha
States)
Decide How toReach Goals
(Activity)
PerformActivities 0
12345
6Opportu
Team
Way of Working
Work
C. Peraire, Introduction to the SEMAT Essence Framework, Carnegie Mellon University, 2013.
8/10/2019 Essence Tutorial (JP)
45/75
2. Method Description
IIIT-B / Sask
Help process engineers to
describe different softwareengineering practices using thecommon Essence kernel andlanguage.
Help practitioners compareand select practices to use in aproject.
Help practitioners define theproject method by mergingselected practices resolvingoverlaps and conflicts.
June Sung Park, Paul E. McMahon and Barry Myburgh, Scrum Powered by Essence, SEMAT, 2014.
organizes>Alpha
Alpha State
Activity Space
Competency
< h a s
t a r g e
t s >
profiles>
8/10/2019 Essence Tutorial (JP)
46/75
8/10/2019 Essence Tutorial (JP)
47/75
Example 2
IIIT-B / Sask
BPMModeling
Opportunity
Stakeholder
Requirements
SoftwareSystem
Work
Team
Way ofWorking
Process Goals aligned with Business Strategy
Process Owner and Actors
Business Requirements and KPIs
BPMN 2.0 Models executable on the Process Engine
As-Is Process Analysis, To-Be Process Design andSimulation
Cross-Functional Teamwith Process Actors and Process Engineers
Process Modeling Heuristics, Patterns and Tool
8/10/2019 Essence Tutorial (JP)
48/75
Explore Possibilities
UnderstandStakeholder Needs
Understand theRequirements
Shape the System
Prepare to Do the Work
Coordinate Activities
Track Progress
Example 2
IIIT-B / Sask
BPMModeling
Conduct Benchmarking of Global Best Practices
Analyze Business Strategies andProcess Capabilities to Improve
Analyze the Current Process andSet Improvement Goals and KPIs
Design and Simulate the To-Be Process andDevelop the Implementation Plan
Justify ROI of the Process Modeling Project,Organize and Train the Team
Develop the Process Modeling Project Plan
Track the Process Modeling Project
8/10/2019 Essence Tutorial (JP)
49/75
Example 2
IIIT-B / Sask
BPMModeling
ExplorePossibilities
UnderstandStakeholder
Needs
Understandthe
Requirements
Shape theSystem
ConductBenchmarking ofGlobal Best Practices
Analyze BusinessStrategies and
Process Capabilitiesto Improve
Analyze the CurrentProcess and SetImprovement Goals
and KPIs
Design and Simulatethe To-Be Processand Develop the
Implementation Plan
R
Coherent
Acceptable
Requirements
Conceived
Bounded
8/10/2019 Essence Tutorial (JP)
50/75
Example 2
IIIT-B / Sask
BPMModeling
ConductBenchmarking ofGlobal Best Practices
Analyze BusinessStrategies and
Process Capabilitiesto Improve
Analyze the Current
Process and SetImprovement Goalsand KPIs
Design and Simulatethe To-Be Processand Develop the
Implementation Plan
BusinessRequirementsand KPIs
Coherent
Acceptable
Requirements
Conceived
Bounded
ChecklistProcess goals aredetermined.As-Is process isdescribed.Process problemsare identified.Root causes of theproblems areidentified.Process KPIs aredefined.Target KPIs are set.
8/10/2019 Essence Tutorial (JP)
51/75
d
8/10/2019 Essence Tutorial (JP)
52/75
Case Study 2
IIIT-B / Sask
According to Perkens-
Golomb, Munich Re wasexperiencing a Tower of Babel where with nocommon language it wasnearly impossible todiscuss and plausibly agreeon a healthy course for aproject.
With the introduction of alphas, teams were able toverbally describe thelifecycle of a healthy project.
Julie Pike, Munich Re and Essence Kernel and Language for SoftwareEngineering Methods: A Case Study, 2014. ( http://bit.l y/1GaJcu8 )
http://t.co/AsjZhxgMkAhttp://t.co/AsjZhxgMkAhttp://t.co/AsjZhxgMkA8/10/2019 Essence Tutorial (JP)
53/75
C S d 3
8/10/2019 Essence Tutorial (JP)
54/75
Case Study 3
IIIT-B / Sask
Ivar Jacobson International, Asian Telecommunications Equipment Vendor Successfully Achieves Rapid and Sustainable Agile Transformation(http://bit.ly/1BF3vAr )
Scrum practice for smallteams
Super Scrum practice forlarge teams 50+
Requirements practice foragile collaboration withbusiness reps
Continuous integration anddelivery
Practice to automateintegration and deployment
Contracting practice forsourcing and collaborationwith contractors
Architecture practice
Testing practice and defectprevention Integration across the
product teams running agileor traditional approaches.
http://t.co/11t52JzRPBhttp://t.co/11t52JzRPB8/10/2019 Essence Tutorial (JP)
55/75
8/10/2019 Essence Tutorial (JP)
56/75
3 P ti Lib d O h t ti
8/10/2019 Essence Tutorial (JP)
57/75
3. Practice Library and Orchestration
IIIT-B / Sask
Practices to be applied tothe activities in thesoftware engineeringprocess of a project areselected from the practicelibrary.
Target states are definedfor activities.
Progress of an activity isassessed using the alphastate checklists.
Depending on the current state, the activity iscontinued, competed, orrepeated.
June Sung Park, Activity-Centric Mapping of Software Engineering Practices to Essence Kernel, KAIST, 2013.Jin Young Jang, Essencia: Open Source Project for Developing an Essence- Based Method Enactment Tool,SEMAT Korea Workshop , Seoul, November 13, 2014 (In Korean).
E l 3
8/10/2019 Essence Tutorial (JP)
58/75
Example 3
IIIT-B / Sask
Project Synopsis*
A research institution (KAISTInstitute) and a private company(Reakosys) conducted a collaborativesoftware project called MobileCloudlet R&D Project to develop agroup photo curation service basedon Wi-Fi Direct technology.
June Sung Park, Essence-Based, Goal-Driven Adaptive Software Engineering, KAIST, 2014.
* Project titled Development of DeviceCollaborative Giga-Level Smart CloudletTechnology supported by the ICT R&Dprogram [391104004] of MSIP/IITP of Korea.
Example 3
8/10/2019 Essence Tutorial (JP)
59/75
Example 3
IIIT-B / Sask
Project Phase I
An extended Scrum method was used. After an initial system architecturewas designed, an initial product backlog consisting of user stories wasproduced together with supportingrequirement models including UMLuse case diagrams and class diagrams.
Developers conducted test-drivendevelopment to implement the sprint backlog.
Example 3
8/10/2019 Essence Tutorial (JP)
60/75
Example 3
IIIT-B / Sask
Project Phase II After the system architecture was
stabilized, the product backlog wasexpanded to enhance themarketability of the softwareservices.
During the first phase, a significant amount of rework was observedbecause requirements were not detailed enough for the developers.
To address this problem additionalrequirement modeling practices wereemployed including use casescenarios, sequence diagrams and UIwireframes.
Example 3
8/10/2019 Essence Tutorial (JP)
61/75
Example 3
IIIT-B / Sask
Activity Activity Space Activity Goal States Practices
Product Envisioning
Explore Possibilities; UnderstandStakeholder Needs; Understandthe Requirements
I Stakeholder::Recognized; Opportunity:: Identified SolutionNeeded Value Established; Requirements:: Conceived Bounded I Software Prod
ReleasePlanning
Understand Stakeholder Needs;Prepare to Do the Work;Coordinate Activity
I Stakeholder:: Represented; Opportunity:: Viable; Team:: SeededFormed; Work:: Initiated; Way of Working:: Principles EstablishedFoundation Established
I Project ManagEnactment;
Product Backlog Dev &Refinement
Understand Stakeholder Needs;Understand the Requirements;Shape the System
III
Stakeholder:: Involved In Agreement; Requirements::CoherentAcceptable
I User Story; U
II User Story; UUI Wireframe ArchitectureDesign Shape the System
I Software System:: Architecture Selected I Service-OrientedII Software System:: Architecture Selected Demonstrable II SOA;Event-D
Sprint Planning Prepare to Do the Work
III Work:: Prepared
III Planning Poke
Daily ScrumCoordinate Activity; Track
Progress; Support the Team
I Work:: Started; Team:: Collaborating; Way of Working:: In Use I Task Board
IIWork:: Started Under Control ; Team:: Collaborating Performing ;Way of Working::In Use II Task Board;
Test-DrivenDevelopment
Implement the System; Test the System
III Software System:: Demonstrable Usable
I CRC; XP; CoII CRC; XP; CM
Sprint Review
Ensure Stakeholder Satisfaction;Test the System; Track Progress
III
Stakeholders:: Satisfied for Deployment; Opportunity:: Addressed;Requirements:: Addressed; Work:: Concluded
III Product Dem
Increment Release Test the System
III Software System:: Ready
III Release Mana
Sprint Retrospective
Support the Team III Way of Working:: In PlaceIII Essence-Base
Benefits
8/10/2019 Essence Tutorial (JP)
62/75
Benefits
IIIT-B / Sask
The project may add or replacethe practices employed in theproject method dynamically andadaptively based on actualdevelopment of the project situation.
Project team members can useconvenient activity cards tounderstand the goal and current state of the activity in progress,and take appropriate actions.
4. Project Support Environment
8/10/2019 Essence Tutorial (JP)
63/75
IIIT-B / Sask
The Essence-based project methodis imported to a project management tool to define theproject WBS.
The practices associated withproject activities are linked to thepractice-specific tools (such asmodeling tool, testing tool, etc.).
The project dashboard displaysthe Essence-based state progressand health that can be drilleddown to activity-level check points.
Likely to be available in a fewyears.
Essence-Meth
Enactme
ProjectMgmtTool
ModelingDev
Tool
ProjectDashboard
8/10/2019 Essence Tutorial (JP)
64/75
V. SEMATYesterday, Today & Tomorrow
IIIT-B / Sask
SEMAT in the Beginning
8/10/2019 Essence Tutorial (JP)
65/75
SEMAT in the Beginning
Software Method Crisis Abundance of unique methods that are hard to compare in the lack of a theoretical basis
Vision (2009) Create the kernel allowing people to describe their current and future practices and methods
a common vocabulary and framework So that they can be compared, evaluated, composed, simulated, applied, measured, taug
researched.
IIIT-B / Sask
June Sung Park, Ivar Jacobson, Barry Myburgh, Pontus Johnson and Paul E. McMahon, SEMAT Yesterday, Today and Tomorrow, SEMAT, 2014.(http://semat.or g/wp-content/uploads/2014/12/SEMAT-Yesterday-Today-and-Tomorrow-v1.0.pdf )
Essence Design Principles
http://semat.org/wp-content/uploads/2014/12/SEMAT-Yesterday-Today-and-Tomorrow-v1.0.pdfhttp://semat.org/wp-content/uploads/2014/12/SEMAT-Yesterday-Today-and-Tomorrow-v1.0.pdfhttp://semat.org/wp-content/uploads/2014/12/SEMAT-Yesterday-Today-and-Tomorrow-v1.0.pdf8/10/2019 Essence Tutorial (JP)
66/75
Essence Design Principles
Extensible
Actionable
Composable
Adaptable
Scalable
IIIT-B / Sask
SEMAT Today
8/10/2019 Essence Tutorial (JP)
67/75
SEMAT Today
What do you think are benefits from usingEssence?
I may check the progress health of a software projectindependent of the software engineering practicesused.
I may describe various software engineering practicesusing the common Essence kernel and language sothat they become comparable and integrated into acoherent project method.
I may use Essence kernel as the common quality gatesin monitoring the progress of multiple projects underway in my organization.
I may use Essence kernel in teaching the foundation of software engineering and show differences andsimilarities among different software engineeringpractices.
I don't see any benefits from learning and usingEssence.
IIIT-B / SaskJune Sung Park, SEMAT Essence User Survey, March 2014 (https://www.surveymonkey.net/results/ SM-PRLY3P2L/).
SEMAT Today
8/10/2019 Essence Tutorial (JP)
68/75
SEMAT Today
OMG Essence 1.0 Beta 1 released in June 2013, Beta 2 in June 2014.
IIIT-B / Sask
Not started
Insufficiently Achie
Sufficiently Achiev
Level of Achievement
Over-achieved
0
1
2
3
June Sung Park, SEMAT Essence User Survey, March 2014 (https://www.surveymonkey.net/results/ SM-PRLY3P2L/).
SEMAT Organization
8/10/2019 Essence Tutorial (JP)
69/75
SEMAT Organization
4 work areas 100+ participants 2000 supporters 7 regional chapters
(+Malaysia under dev) 75 signatories
IIIT-B / Sask
SEMAT Activities
8/10/2019 Essence Tutorial (JP)
70/75
SEMAT Activities
Theory Area General Theory of Software Engineering Workshop: 20~30 papers
submitted Practice Area
Early adopters of Essence: Fujitsu Services, Munich Re, KPN, UKgovernment, Japanese consumer electronics, Chinesetelecommunication product, Chinese Internet media company, etc.and many more global companies considering adoption
Essence User Guide and Practice Development Guide under
development (Initial versions to appear by year end) A few books and several papers published in CACM, etc. Case study reports (Munich Re, Asian Telco, Global Internet Service
Provide, etc.) Essence tools being offered free from IJI (Practice Workbench,
EssWork, iOS app for Alpha State Cards), and being developed byuEngine Solutions and a couple of others
IIIT-B / Sask
SEMAT Activities
8/10/2019 Essence Tutorial (JP)
71/75
SEMAT Activities
Education Area Essence tutorial in ICSE 2013 and 2014 One-Day Essence Workshop in OMG Meeting in
2013, and the second forthcoming in Reston inMarch 2014.
Regional chapters holding Essence workshops:China, Korea, Latin America, Russia, SouthAfrica
IJI certified as SEMAT-authorized Essencetraining institution
University courses: CMU SV, Florida Atlantic U,Free U Bozen, KTH RIT, NU Columbia, UDuisburg-Essen, U Oslo
IIIT-B / Sask
SEMAT Activities
8/10/2019 Essence Tutorial (JP)
72/75
Community Area SEMAT Inc. established in Florida SEMAT Newsletter published bimonthly SEMAT All Hands meeting SEMAT on Wikipedia and LinkedIn
(http: //en.wikipedia.org/wiki/SEMAT , https: //www.linkedin.com/groups/Semat-2848533 ) SEMAT Website being rebuilt
(http://semat.org/ )
IIIT-B / Sask
SEMAT Activities
http://en.wikipedia.org/wiki/SEMAThttp://en.wikipedia.org/wiki/SEMAThttp://en.wikipedia.org/wiki/SEMAThttps://www.linkedin.com/groups/Semat-2848533https://www.linkedin.com/groups/Semat-2848533http://semat.org/http://semat.org/https://www.linkedin.com/groups/Semat-2848533http://en.wikipedia.org/wiki/SEMAT8/10/2019 Essence Tutorial (JP)
73/75
Regional Chapters China Software Industry Association (CSIA)
adopted SEMAT as a pivotal component of its QPlan.
Korea Chapter received government grants forR&D on Essence ($0.9M).
Russia Chapter is working on an extension of the Essence kernel for Systems Engineering
Latin America and South Africa held Essenceworkshops.
IIIT-B / Sask
SEMAT Tomorrow
8/10/2019 Essence Tutorial (JP)
74/75
Broaden Other areas than software engineering will be addressed: for instance, system engin
business engineering maybe anything that has to do with human endeavors. Deepen
Other possible ways of getting to a General Theory of Software Engineering will be pursudont want to restrict research in any way, and for that matter doesnt wantconstructive work in our sphere of interest.
Reach Out Practice library and marketplace. Curricula, texts and reference materials for teaching software engineering including high sch Certification of Essence training institutions and trainers and Essence-enabling tools Metrics for measuring users success with Essence Regional chapters in U.S.A., Europe and other regions Help 20M software practitioners worldwide take advantage of the output of SEMAT
IIIT-B / Sask
SEMAT Tomorrow
8/10/2019 Essence Tutorial (JP)
75/75
Watts Humphrey may have shown real forethought ahead of the first SEMAT meeting in Zurich, March2010, when he said:
SEMAT results are a collective effort from thecommunity for the community. Working together, we are refounding software
engineering.
IIIT-B / Sask
This meeting in Zurich is likely to be a historicoccasion much like the 1968 NATO session inGarmish.