SlideShare une entreprise Scribd logo
1  sur  14
ESSENSE – A Kernel of Essentials for Software Engineering Brian Elvesæter, SINTEF ICT Method Engineering – ME’11 21 April 2011, Paris, France 1
Outline Request for Proposal (RFP) Problem statement Desired solution Objectives of the RFP RFP development history and team Method architecture and the Kernel approach Requirements: The Kernel Requirements: The Language Proposed RFP schedule Questions
Problem statement Traditional software engineering and process engineering approaches are viewed by development teams as being too heavyweight and inflexible. Software processes defined by separate process engineers typically do not leave enough flexibility for a development team to customize and tailor the process they use, not just at the beginning, but continuously as necessary over the course of a development effort.  As a result, the use of many good practices and processes is often missing or ad hoc in many development efforts, limiting the ability of development teams to be effective and scalable while remaining flexible and agile.
Desired solution Agile software development is often effectively supported by the use of significant software frameworks that provide: a toolkit of components (libraries and templates) an easy-to-use scripting language for flexibly composing the components.  A similar kind of framework is desired for the flexible creation of software development methods. a set of practices out of which methods can be composed To allow the broadest possible applicability, what needs to be standardized are not the practices themselves, but the common ground of underlying concepts and principles used to define various practices.  an easy-to-use practitioner-oriented modeling language (DSL) is needed to define practices based on the common ground and composing them into methods.  The goal is to support a development team, i.e. the practitioners in defining, refining and customizing themselves the process they are actually using during the course of a software development effort.
ESSENSE RFP Objectives Solicits submissions for ESSENSE a Domain-Specific Language and a Kernel of Essentials for Software Engineering 	(aka. the Common Ground) Goal: a language and a kernel that are scalable, extensible, and easy to use,  allowing people to describe the essentials of  	their current and future methods and practices. Tool support: enable methods and practices to be  composed, compared, evaluated, tailored, used, adapted, simulated and measured by practitioners as well as taught and researched by academic and research communities.
RFP development history & team Version 0: December 2010, Issue list, OMG technical meeting, Santa Clara, USA Version 1a: February 2011, Draft RFP http://www.omg.org/cgi-bin/doc?ad/2011-02-01 Version 1b: March 2011, Updated RFP, AB review, OMG technical meeting, Washington DC, USA http://www.omg.org/cgi-bin/doc?ad/2011-03-01 Version 2a/b: May/June 2011, Revised RFP, OMG technical meeting, Salt Lake City, USA Core team Arne-Jørgen Berre (SINTEF) Dave Cuningham (Fujitsu UK) Brian Elvesæter (SINTEF) Shihong Huang (FAU) Ivar Jacobson (IJI) Paul McMahon (PEM Systems) Ed Seidewitz (Model Driven Solutions) Ed Seymour (Fujitsu UK) Other contributors SEMAT Adaptive Systems Cordys SOFTEAM ESI-Tecnalia ...
Method architecture A method is a composition of practices. Methods are enactable. A practice is a repeatable approach to doing something with a specific purpose in mind. A practice provides a systematic and verifiable way of addressing a particular aspect of the work at hand. The Kernel includes essential elements of software engineering. The Language is the domain-specific language to define methods, practices and the essential elements of the Kernel.
Method Practices A key idea is the existence of a Kernel The Kernel is very small, extracted from a large number of methods It contains a starting point (slots) for the things that every process has, e.g.  work, team, requirement, software system, opportunity and stakeholder  The Kernel is practice and method agnostic. Leaders Developers Analysts Testers Process engineers
Kernel: Straw man (illustrative conceptual model) Alphas(Abstract-Level Progress Health Attributes) represent things to work with that subsume and encapsulate work products at a higher level of abstraction. (1) relevant to an assessment of the project’s progress (stated objectives such as deadlines, costs, quality) (2) can be determined (directly or indirectly) in terms of the current state of the project’s work products < describes < supports organizes > Alpha Work Product Pattern progressed by > < supports produces > progresses > organizes > < supports organizes > Pattern Space Activity Space Activity < involves < involves Competency
Kernel: Straw man (illustrative concrete syntax) Things to Work with Things to Do Understand the Need Ensure StakeholderSatisfaction Accept the System Opportunity Requirements System Specify the System Shape the System ImplementSoftware Test the System Release the System Project Way of Working Team Establish Project Steer Project Support Team Conclude Project Competencies Patterns to Apply CustomerRepresentative Kernel Developer Analyst Tester Leadership
Requirements: The Kernel Definition Expressed in the Language. Encompass the fundamental concepts in the Software Engineering domain, including definitions of elements and their significant relationships. Conciseness Only include a small set of elements that are truly essential. The number of essential elements is expected to be closer to 10 than to 100. Scope Cover from the smallest projects to large systems and systems-of-systems. Broad practice coverage Support many different practices used by significant segments of the industry. Broad lifecycle coverage Accommodate various lifecycle models used by significant segments of the industry. Broad technology coverage Adaptable to a wide range of software technologies (programming languages, specification languages, graphical notations, software tools) used by significant segments of the industry. Comparison Provide a basis for the comparison of methods and practices to see which are suitable for a given situation. Measurement Provide a basis for the measurement of methods and practices, both to enable performance evaluation and to guide evaluation and validation in research. Extension Ability to add practices, levels of detail and lifecycle models.
Requirements: The Language Definition Abstract syntax model defined in MOF (Meta-Object Facility). 	 Formal static and operational semantics defined in terms of the abstract syntax. Graphical concrete syntax that formally maps to the abstract syntax. Textual concrete syntax that formally maps to the abstract syntax. Description Support the description of practices and methods in terms of the essential elements of the Kernel. Composition Support the composition of practices to describe existing and new methods. Work Progress Allow the representation of work progress. (For example, describing a practice that involves iterative development requires describing the starting and ending states of every iteration.) Enactment Support the enactment of methods, both as used to help plan endeavors and as applied (or executed) as part of the day-to-day activities in real projects.
Proposed RFP schedule
Questions Email: brian.elvesater@sintef.no OMG website: http://www.omg.org SEMAT website: http://www.semat.org

Contenu connexe

Tendances (13)

Ch01
Ch01Ch01
Ch01
 
Mini Project- Personal Multimedia Portfolio
Mini Project- Personal Multimedia PortfolioMini Project- Personal Multimedia Portfolio
Mini Project- Personal Multimedia Portfolio
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
 
Cascon06 tooldemo.ppt
Cascon06 tooldemo.pptCascon06 tooldemo.ppt
Cascon06 tooldemo.ppt
 
Software engineering interview questions
Software engineering interview questionsSoftware engineering interview questions
Software engineering interview questions
 
Nasrin
NasrinNasrin
Nasrin
 
Lesson 8...Question Part 2
Lesson 8...Question Part 2Lesson 8...Question Part 2
Lesson 8...Question Part 2
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - Basics
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Prvt file test
Prvt file testPrvt file test
Prvt file test
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
M017548895
M017548895M017548895
M017548895
 

En vedette (9)

Me2011 presentation by Manfred Jeusfeld
Me2011 presentation by Manfred JeusfeldMe2011 presentation by Manfred Jeusfeld
Me2011 presentation by Manfred Jeusfeld
 
Me2011 Presentation by Loniewski
Me2011 Presentation by LoniewskiMe2011 Presentation by Loniewski
Me2011 Presentation by Loniewski
 
Kingfisherairline
KingfisherairlineKingfisherairline
Kingfisherairline
 
ME2011 presentation by Winter
ME2011 presentation by WinterME2011 presentation by Winter
ME2011 presentation by Winter
 
ME2011 presentation by Overbeek
ME2011 presentation by OverbeekME2011 presentation by Overbeek
ME2011 presentation by Overbeek
 
ME2011 presentation by Levina
ME2011 presentation by LevinaME2011 presentation by Levina
ME2011 presentation by Levina
 
ME2011 presentation by Zikra
ME2011 presentation by ZikraME2011 presentation by Zikra
ME2011 presentation by Zikra
 
ME2011 presentation by Cortes Cornax
ME2011 presentation by Cortes CornaxME2011 presentation by Cortes Cornax
ME2011 presentation by Cortes Cornax
 
ME2011 presentation by Börner
ME2011 presentation by BörnerME2011 presentation by Börner
ME2011 presentation by Börner
 

Similaire à ESSENSE

Essence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible MethodsEssence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible MethodsEd Seidewitz
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...zillesubhan
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharingJas Chong
 
Stat Tech Reportv1
Stat Tech Reportv1Stat Tech Reportv1
Stat Tech Reportv1stat
 
Technical competency dictionary for it
Technical competency dictionary for itTechnical competency dictionary for it
Technical competency dictionary for itConfidential
 
How to improve Developer Documentations ?
How to improve Developer Documentations ?How to improve Developer Documentations ?
How to improve Developer Documentations ?Utsav Parashar
 
software development methodologies
software development methodologiessoftware development methodologies
software development methodologiesUTeM
 
Requirementv4
Requirementv4Requirementv4
Requirementv4stat
 
1 P a g e Going Agile – A Case Study Dwayne .docx
1  P a g e  Going Agile – A Case Study  Dwayne .docx1  P a g e  Going Agile – A Case Study  Dwayne .docx
1 P a g e Going Agile – A Case Study Dwayne .docxhoney725342
 
Automatic Term Recognition with Apache Solr
Automatic Term Recognition with Apache SolrAutomatic Term Recognition with Apache Solr
Automatic Term Recognition with Apache SolrJIE GAO
 
Project Management
Project ManagementProject Management
Project ManagementBabu Appat
 
System Analisis And Designing
System Analisis And  DesigningSystem Analisis And  Designing
System Analisis And DesigningAbdurrahman A.S.M
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxKhcThKhnhHuyn1T20ACN
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.Masoud Kalali
 
Successful Single-Source Content Development
Successful Single-Source Content Development Successful Single-Source Content Development
Successful Single-Source Content Development Xyleme
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashedlivgeni
 

Similaire à ESSENSE (20)

Essence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible MethodsEssence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible Methods
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharing
 
Stat Tech Reportv1
Stat Tech Reportv1Stat Tech Reportv1
Stat Tech Reportv1
 
Technical competency dictionary for it
Technical competency dictionary for itTechnical competency dictionary for it
Technical competency dictionary for it
 
How to improve Developer Documentations ?
How to improve Developer Documentations ?How to improve Developer Documentations ?
How to improve Developer Documentations ?
 
software development methodologies
software development methodologiessoftware development methodologies
software development methodologies
 
Requirementv4
Requirementv4Requirementv4
Requirementv4
 
Uml 2.x
Uml 2.xUml 2.x
Uml 2.x
 
1 P a g e Going Agile – A Case Study Dwayne .docx
1  P a g e  Going Agile – A Case Study  Dwayne .docx1  P a g e  Going Agile – A Case Study  Dwayne .docx
1 P a g e Going Agile – A Case Study Dwayne .docx
 
Automatic Term Recognition with Apache Solr
Automatic Term Recognition with Apache SolrAutomatic Term Recognition with Apache Solr
Automatic Term Recognition with Apache Solr
 
Project Management
Project ManagementProject Management
Project Management
 
Sd Revision
Sd RevisionSd Revision
Sd Revision
 
System Analisis And Designing
System Analisis And  DesigningSystem Analisis And  Designing
System Analisis And Designing
 
Agile and XP
Agile and XPAgile and XP
Agile and XP
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptx
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
Chapter1
Chapter1Chapter1
Chapter1
 
Successful Single-Source Content Development
Successful Single-Source Content Development Successful Single-Source Content Development
Successful Single-Source Content Development
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
 

Plus de Method Engineering 2011 - IFIP WG.8.1 Working Conference (11)

ME2011 presentation by Hoppenbrouwers
ME2011 presentation by HoppenbrouwersME2011 presentation by Hoppenbrouwers
ME2011 presentation by Hoppenbrouwers
 
ME2011 presentation by Asadi
ME2011 presentation by AsadiME2011 presentation by Asadi
ME2011 presentation by Asadi
 
ME2011 presentation by Faci
ME2011 presentation by FaciME2011 presentation by Faci
ME2011 presentation by Faci
 
Me2011 Granularity presentation by Henderson-Sellers
Me2011 Granularity presentation by Henderson-SellersMe2011 Granularity presentation by Henderson-Sellers
Me2011 Granularity presentation by Henderson-Sellers
 
Me2011 Method Assessment by Henderson-Sellers
Me2011 Method Assessment by Henderson-SellersMe2011 Method Assessment by Henderson-Sellers
Me2011 Method Assessment by Henderson-Sellers
 
Me2011 presentation by Sophie Dupuy-Chessa
Me2011 presentation by Sophie Dupuy-ChessaMe2011 presentation by Sophie Dupuy-Chessa
Me2011 presentation by Sophie Dupuy-Chessa
 
Me2011 presentation by Victoria Torres
Me2011 presentation by Victoria TorresMe2011 presentation by Victoria Torres
Me2011 presentation by Victoria Torres
 
ME2011 presentation by Vlaanderen
ME2011 presentation by VlaanderenME2011 presentation by Vlaanderen
ME2011 presentation by Vlaanderen
 
ME2011 presentation by Mirandolle
ME2011 presentation by MirandolleME2011 presentation by Mirandolle
ME2011 presentation by Mirandolle
 
ME2011 Keynote by Marko Bajec
ME2011 Keynote by Marko BajecME2011 Keynote by Marko Bajec
ME2011 Keynote by Marko Bajec
 
ME11 Opening
ME11 OpeningME11 Opening
ME11 Opening
 

Dernier

Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 

Dernier (20)

Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 

ESSENSE

  • 1. ESSENSE – A Kernel of Essentials for Software Engineering Brian Elvesæter, SINTEF ICT Method Engineering – ME’11 21 April 2011, Paris, France 1
  • 2. Outline Request for Proposal (RFP) Problem statement Desired solution Objectives of the RFP RFP development history and team Method architecture and the Kernel approach Requirements: The Kernel Requirements: The Language Proposed RFP schedule Questions
  • 3. Problem statement Traditional software engineering and process engineering approaches are viewed by development teams as being too heavyweight and inflexible. Software processes defined by separate process engineers typically do not leave enough flexibility for a development team to customize and tailor the process they use, not just at the beginning, but continuously as necessary over the course of a development effort. As a result, the use of many good practices and processes is often missing or ad hoc in many development efforts, limiting the ability of development teams to be effective and scalable while remaining flexible and agile.
  • 4. Desired solution Agile software development is often effectively supported by the use of significant software frameworks that provide: a toolkit of components (libraries and templates) an easy-to-use scripting language for flexibly composing the components. A similar kind of framework is desired for the flexible creation of software development methods. a set of practices out of which methods can be composed To allow the broadest possible applicability, what needs to be standardized are not the practices themselves, but the common ground of underlying concepts and principles used to define various practices. an easy-to-use practitioner-oriented modeling language (DSL) is needed to define practices based on the common ground and composing them into methods. The goal is to support a development team, i.e. the practitioners in defining, refining and customizing themselves the process they are actually using during the course of a software development effort.
  • 5. ESSENSE RFP Objectives Solicits submissions for ESSENSE a Domain-Specific Language and a Kernel of Essentials for Software Engineering (aka. the Common Ground) Goal: a language and a kernel that are scalable, extensible, and easy to use, allowing people to describe the essentials of their current and future methods and practices. Tool support: enable methods and practices to be composed, compared, evaluated, tailored, used, adapted, simulated and measured by practitioners as well as taught and researched by academic and research communities.
  • 6. RFP development history & team Version 0: December 2010, Issue list, OMG technical meeting, Santa Clara, USA Version 1a: February 2011, Draft RFP http://www.omg.org/cgi-bin/doc?ad/2011-02-01 Version 1b: March 2011, Updated RFP, AB review, OMG technical meeting, Washington DC, USA http://www.omg.org/cgi-bin/doc?ad/2011-03-01 Version 2a/b: May/June 2011, Revised RFP, OMG technical meeting, Salt Lake City, USA Core team Arne-Jørgen Berre (SINTEF) Dave Cuningham (Fujitsu UK) Brian Elvesæter (SINTEF) Shihong Huang (FAU) Ivar Jacobson (IJI) Paul McMahon (PEM Systems) Ed Seidewitz (Model Driven Solutions) Ed Seymour (Fujitsu UK) Other contributors SEMAT Adaptive Systems Cordys SOFTEAM ESI-Tecnalia ...
  • 7. Method architecture A method is a composition of practices. Methods are enactable. A practice is a repeatable approach to doing something with a specific purpose in mind. A practice provides a systematic and verifiable way of addressing a particular aspect of the work at hand. The Kernel includes essential elements of software engineering. The Language is the domain-specific language to define methods, practices and the essential elements of the Kernel.
  • 8. Method Practices A key idea is the existence of a Kernel The Kernel is very small, extracted from a large number of methods It contains a starting point (slots) for the things that every process has, e.g. work, team, requirement, software system, opportunity and stakeholder The Kernel is practice and method agnostic. Leaders Developers Analysts Testers Process engineers
  • 9. Kernel: Straw man (illustrative conceptual model) Alphas(Abstract-Level Progress Health Attributes) represent things to work with that subsume and encapsulate work products at a higher level of abstraction. (1) relevant to an assessment of the project’s progress (stated objectives such as deadlines, costs, quality) (2) can be determined (directly or indirectly) in terms of the current state of the project’s work products < describes < supports organizes > Alpha Work Product Pattern progressed by > < supports produces > progresses > organizes > < supports organizes > Pattern Space Activity Space Activity < involves < involves Competency
  • 10. Kernel: Straw man (illustrative concrete syntax) Things to Work with Things to Do Understand the Need Ensure StakeholderSatisfaction Accept the System Opportunity Requirements System Specify the System Shape the System ImplementSoftware Test the System Release the System Project Way of Working Team Establish Project Steer Project Support Team Conclude Project Competencies Patterns to Apply CustomerRepresentative Kernel Developer Analyst Tester Leadership
  • 11. Requirements: The Kernel Definition Expressed in the Language. Encompass the fundamental concepts in the Software Engineering domain, including definitions of elements and their significant relationships. Conciseness Only include a small set of elements that are truly essential. The number of essential elements is expected to be closer to 10 than to 100. Scope Cover from the smallest projects to large systems and systems-of-systems. Broad practice coverage Support many different practices used by significant segments of the industry. Broad lifecycle coverage Accommodate various lifecycle models used by significant segments of the industry. Broad technology coverage Adaptable to a wide range of software technologies (programming languages, specification languages, graphical notations, software tools) used by significant segments of the industry. Comparison Provide a basis for the comparison of methods and practices to see which are suitable for a given situation. Measurement Provide a basis for the measurement of methods and practices, both to enable performance evaluation and to guide evaluation and validation in research. Extension Ability to add practices, levels of detail and lifecycle models.
  • 12. Requirements: The Language Definition Abstract syntax model defined in MOF (Meta-Object Facility). Formal static and operational semantics defined in terms of the abstract syntax. Graphical concrete syntax that formally maps to the abstract syntax. Textual concrete syntax that formally maps to the abstract syntax. Description Support the description of practices and methods in terms of the essential elements of the Kernel. Composition Support the composition of practices to describe existing and new methods. Work Progress Allow the representation of work progress. (For example, describing a practice that involves iterative development requires describing the starting and ending states of every iteration.) Enactment Support the enactment of methods, both as used to help plan endeavors and as applied (or executed) as part of the day-to-day activities in real projects.
  • 14. Questions Email: brian.elvesater@sintef.no OMG website: http://www.omg.org SEMAT website: http://www.semat.org