SlideShare a Scribd company logo
work in progress
comments appreciated!




 In search of the Higgs
                        or
What's wrong with SEMAT?
                                 Rich Hilliard
                             richh@mit.edu
Note to the Reader

This presentation sketches an argument which
is to be more fully elaborated (with references)
as a full paper

I am circulating it in this preliminary form to
encourage feedback which I will take into
consideration in completing that paper
Software Engineering and Physics:
an analogy

I won't argue for the analogy here -- you'll have
to see the full paper for the details
The Higgs
Physicists have been searching for evidence of the Higgs
since it was hypothesized (1964)

The Higgs plays two important roles:
● as unifier: explaining physical phenomena (electricity,
    magnetism and light as the electroweak force)
●   as evidence: that the Standard Model is valid
In Software Engineering ...
What are our standard models?

Is there a Software Engineering "Theory of
Everything"?
Software Engineering
"theories of everything"?
● Software & Systems Process Engineering Metamodel
  (SPEM)

● ISO 24744, Software Engineering Metamodel for
  Development Methodologies (SEMDM)

● ISO/IEC TR 24774, Software and systems engineering --
  Lifecycle management -- Guidelines for process
  description

● Software Engineering Method and Theory (SEMAT)
Software Engineering:
"theories of everything"?

●   Each offers a theory of what Software
    Engineering is

● Are the process models our "Standard
  Models"?

(I hope not)
Why SEMAT?
● I focus on SEMAT because it is the most recent, it
   should have learned from its predecessors, and it is still
   under development ...

● My goal is to point out a missing dimension which is not
   prominent -- actually altogether missing! -- from the
   current models
About SEMAT
● The goal of SEMAT is to

   "refound software engineering based on a solid theory,
   proven principles and best practices" [Vision]

● Following its predecessors (listed above), SEMAT
   outlines an ontology of software engineering process,
   method and product
SEMAT is built upon...
"a Kernel and a Language for software engineering method
specification. They are scalable, extensible, and easy to use,
and allow people to describe the essentials of their existing
and future methods and practices so that they can be
compared, evaluated, tailored, used, adapted, simulated
and measured by practitioners as well as taught and
researched by academics and researchers." [Essence]
The SEMAT Kernel...
"... must include a concrete representation of the acts and
artifacts of software development, applicable to a wide
range of software projects. It must also provide an
extension language for adaptation to specific methods,
practices and patterns." [Vision]

"... includes the essential elements that are always prevalent
in every software engineering endeavor, such as
Requirements, Software System, Team and Work."
[Essence]
All very nice, but ...

Is SEMAT an adequate basis for a Software
Engineering Theory of Everything?

(I think not)

There are questions that cannot be formulated
-- nor answered -- within the SEMAT ontology
(Sample) Questions SEMAT cannot
answer
● What Work Items should I look at to assess progress in
  developing this System?
● What links a Requirement on this System with a Work
  Item with a Team?
● Does this Team have the right skills to successfully
  deliver this Work Item?
● Is this Work Item affected (e.g., will it need reworking)
  by a change to this Requirement?
● What risks might befall this System? Are they being
  mitigated, managed and solved?
Process models are missing the Why of
Software Engineering

If the SEMAT Alphas are the 'fundamental
particles' of Software Engineering, what is the
'Higgs field' that holds them together and gives
them meaning?
Concerns!
"Concerns are what we care about in software."
[COSMOS]
concern: interest in a system relevant to one or more of its
stakeholders ... A concern pertains to any influence on a
system in its environment; including developmental,
technological, business, operational, organizational,
political, economic, legal, regulatory, ecological and social
influences [42010]
Concerns, as in Dijkstra's phrase, "separation of
concerns": ...
Dijkstra's "separation of
concerns"
Let me try to explain to you, what to my taste is characteristic for all intelligent
thinking. It is, that one is willing to study in depth an aspect of one's subject
matter in isolation for the sake of its own consistency, all the time knowing that
one is occupying oneself only with one of the aspects. We know that a program
must be correct and we can study it from that viewpoint only; we also know that
it should be efficient and we can study its efficiency on another day, so to speak.
In another mood we may ask ourselves whether, and if so: why, the program is
desirable. But nothing is gained--on the contrary!--by tackling these various
aspects simultaneously. It is what I sometimes have called ``the separation
of concerns'', which, even if not perfectly possible, is yet the only available
technique for effective ordering of one's thoughts, that I know of. This is what I
mean by ``focussing one's attention upon some aspect'': it does not mean
ignoring the other aspects, it is just doing justice to the fact that from this
aspect's point of view, the other is irrelevant. It is being one- and multiple-track
minded simultaneously. [Dijkstra]
Concerns bind the other elements
Concerns underwrite the reasons for work (processes and
tasks):
● e.g., We perform this work item because it yields an
   understanding of system deployment

Concerns give work products their meanings:
● e.g., This work product explains how reliability is
   managed during system development
Concerns are the things we are interested in; they bind
together processes, artifacts, people, in terms of their
relevance
Therefore ...

Concerns must be modeled and managed as
first-class entities of any software engineering
ontology to be useful to practical method
definition and execution

This is completely missing from SEMAT and
other process model approaches
Existing work on concerns
Concerns are not a new idea...

●   Concern spaces
●   Concern-oriented software engineering
●   Viewpoints
●   ISO/IEC/IEEE 42010 (originally IEEE 1471:
    2000): concerns to select and organize
    architecture viewpoints
Aside
There are other issues with the SEMAT,
i.e., with its ontology -- but these are
topics for another time
(Call me)
References
[42010] ISO/IEC/IEEE 42010:2011, System and software engineering
-- Architecture description.
[COSMOS] S.M. Sutton Jr. and I. Rouvellou, "Concern Space Modeling
in COSMOS", OOPSLA 2001.
[Dijkstra] E.W. Dijkstra, On the role of scientific thought. 1974. http:
//www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD447.
html
[Essence] Essence – Kernel and Language for Software Engineering
Methods, OMG, ad/2012-08-15
[FSC] "Framing Stakeholders' Concerns", special issue of IEEE
Software, Nov/Dec 2010.
[Vision] Software Engineering Method and Theory -- A Vision
Statement
Sidebar: Concerns in SEMAT
"In everything we do we apply the principle of 'separation
of concerns''. For instance, we separate what the
practitioner wants to work with from what a process
engineer needs, in such a way that the practitioner doesn't
need to 'see' more than what is of interest to her/him. We
also separate practitioners from one another; all developers
do not have the same level of interest." [Vision]
Sidebar: Concerns in SEMAT
SEMAT uses the phrase, "separation of concerns" -- but
does not follow through on taking concerns seriously as
first-class entities

Rather than allowing first-class concerns, SEMAT fixes
three areas of concern:
● Customer, Solution and Endeavor

This is too coarse (and static) to be of use in actual projects

More Related Content

What's hot

Developing Knowledge-Based Systems
Developing Knowledge-Based SystemsDeveloping Knowledge-Based Systems
Developing Knowledge-Based Systems
Ashique Rasool
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
Decision support systems
Decision support systemsDecision support systems
Decision support systems
MR Z
 
OR
OROR
Plan design implement
Plan design implementPlan design implement
Plan design implement
MR Z
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
Shri Shankaracharya College, Bhilai,Junwani
 
System Analysis and Design slides by Belew yenealem DTU Ethiopia
System Analysis and Design slides by Belew yenealem DTU EthiopiaSystem Analysis and Design slides by Belew yenealem DTU Ethiopia
System Analysis and Design slides by Belew yenealem DTU Ethiopia
Debre Tabor University
 
Computational thinking
Computational thinkingComputational thinking
Computational thinking
Jackson Kuo
 
Information Systems design science research
Information Systems design science  researchInformation Systems design science  research
Information Systems design science research
Raimo Halinen
 
Patterns Overview
Patterns OverviewPatterns Overview
Patterns Overview
Fáber D. Giraldo
 
Unit 1( modelling concepts & class modeling)
Unit  1( modelling concepts & class modeling)Unit  1( modelling concepts & class modeling)
Unit 1( modelling concepts & class modeling)
Manoj Reddy
 
Designing the expert system
Designing the expert systemDesigning the expert system
Designing the expert system
asimnawaz54
 
Fuzzy expert system
Fuzzy expert systemFuzzy expert system
Fuzzy expert system
Hsuvas Borkakoty
 
Module 2 design patterns-2
Module 2   design patterns-2Module 2   design patterns-2
Module 2 design patterns-2
Ankit Dubey
 
Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)
Ahmed Farag
 
Chapter1 introduction-to-design
Chapter1 introduction-to-designChapter1 introduction-to-design
Chapter1 introduction-to-design
Vin Voro
 
Hevner design-science
Hevner design-scienceHevner design-science
Hevner design-science
shmushmu
 
SoftComputingc2
SoftComputingc2SoftComputingc2
SoftComputingc2
DrPrafullNarooka
 

What's hot (18)

Developing Knowledge-Based Systems
Developing Knowledge-Based SystemsDeveloping Knowledge-Based Systems
Developing Knowledge-Based Systems
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Decision support systems
Decision support systemsDecision support systems
Decision support systems
 
OR
OROR
OR
 
Plan design implement
Plan design implementPlan design implement
Plan design implement
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
 
System Analysis and Design slides by Belew yenealem DTU Ethiopia
System Analysis and Design slides by Belew yenealem DTU EthiopiaSystem Analysis and Design slides by Belew yenealem DTU Ethiopia
System Analysis and Design slides by Belew yenealem DTU Ethiopia
 
Computational thinking
Computational thinkingComputational thinking
Computational thinking
 
Information Systems design science research
Information Systems design science  researchInformation Systems design science  research
Information Systems design science research
 
Patterns Overview
Patterns OverviewPatterns Overview
Patterns Overview
 
Unit 1( modelling concepts & class modeling)
Unit  1( modelling concepts & class modeling)Unit  1( modelling concepts & class modeling)
Unit 1( modelling concepts & class modeling)
 
Designing the expert system
Designing the expert systemDesigning the expert system
Designing the expert system
 
Fuzzy expert system
Fuzzy expert systemFuzzy expert system
Fuzzy expert system
 
Module 2 design patterns-2
Module 2   design patterns-2Module 2   design patterns-2
Module 2 design patterns-2
 
Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)
 
Chapter1 introduction-to-design
Chapter1 introduction-to-designChapter1 introduction-to-design
Chapter1 introduction-to-design
 
Hevner design-science
Hevner design-scienceHevner design-science
Hevner design-science
 
SoftComputingc2
SoftComputingc2SoftComputingc2
SoftComputingc2
 

Viewers also liked

Concerns
ConcernsConcerns
Concerns
Rich Hilliard
 
Knowledge mechanisms in IEEE 1471/ISO 42010
Knowledge mechanisms in IEEE 1471/ISO 42010Knowledge mechanisms in IEEE 1471/ISO 42010
Knowledge mechanisms in IEEE 1471/ISO 42010
Rich Hilliard
 
Using UML for architecture description
Using UML for architecture descriptionUsing UML for architecture description
Using UML for architecture description
Rich Hilliard
 
Introduction to SEMAT
Introduction to SEMATIntroduction to SEMAT
Introduction to semat essence
Introduction to semat essenceIntroduction to semat essence
Introduction to semat essence
uEngine Solutions
 
ISO/IEC 42010 Recommended Practice for Architectural description
ISO/IEC 42010 Recommended Practice for Architectural descriptionISO/IEC 42010 Recommended Practice for Architectural description
ISO/IEC 42010 Recommended Practice for Architectural description
Hongseok Lee
 
All about ISO/IEC/IEEE 42010 (r5)
All about ISO/IEC/IEEE 42010 (r5)All about ISO/IEC/IEEE 42010 (r5)
All about ISO/IEC/IEEE 42010 (r5)
Rich Hilliard
 

Viewers also liked (7)

Concerns
ConcernsConcerns
Concerns
 
Knowledge mechanisms in IEEE 1471/ISO 42010
Knowledge mechanisms in IEEE 1471/ISO 42010Knowledge mechanisms in IEEE 1471/ISO 42010
Knowledge mechanisms in IEEE 1471/ISO 42010
 
Using UML for architecture description
Using UML for architecture descriptionUsing UML for architecture description
Using UML for architecture description
 
Introduction to SEMAT
Introduction to SEMATIntroduction to SEMAT
Introduction to SEMAT
 
Introduction to semat essence
Introduction to semat essenceIntroduction to semat essence
Introduction to semat essence
 
ISO/IEC 42010 Recommended Practice for Architectural description
ISO/IEC 42010 Recommended Practice for Architectural descriptionISO/IEC 42010 Recommended Practice for Architectural description
ISO/IEC 42010 Recommended Practice for Architectural description
 
All about ISO/IEC/IEEE 42010 (r5)
All about ISO/IEC/IEEE 42010 (r5)All about ISO/IEC/IEEE 42010 (r5)
All about ISO/IEC/IEEE 42010 (r5)
 

Similar to In search of the Higgs or What's wrong with SEMAT?

Applying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software EngineeringApplying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software Engineering
Majed Ayyad
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
Susan Cox
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architectures
Majong DevJfu
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
Nandhini S
 
System architecture infosheet
System architecture infosheetSystem architecture infosheet
System architecture infosheet
jeanrummy
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2Thoughts On Architecting V4 2
Thoughts On Architecting V4 2
bmercer
 
09 introduction to_modeling
09 introduction to_modeling09 introduction to_modeling
09 introduction to_modeling
Majong DevJfu
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
AMITJain879
 
software architecture
software architecturesoftware architecture
software architecture
Manidheer Babu
 
502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf
PradeepPandey506579
 
Sociotechnical Walkthrough Workshop@AECT17
Sociotechnical Walkthrough Workshop@AECT17 Sociotechnical Walkthrough Workshop@AECT17
Sociotechnical Walkthrough Workshop@AECT17
Isa Jahnke
 
Architectural Thinking - What Is Architecture?
Architectural Thinking - What Is Architecture?Architectural Thinking - What Is Architecture?
Architectural Thinking - What Is Architecture?
ingo
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
Smita Agarwal
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
AmadouBagayoko2
 
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
AftaZani1
 
SYBTech_2021_Patt_Unit 4 Object Oriented Analysis Part I.pdf
SYBTech_2021_Patt_Unit 4  Object Oriented Analysis Part I.pdfSYBTech_2021_Patt_Unit 4  Object Oriented Analysis Part I.pdf
SYBTech_2021_Patt_Unit 4 Object Oriented Analysis Part I.pdf
NitinShelake4
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Dr Sukhpal Singh Gill
 
Contemporary Software Engineering Practices Together With Enterprise
Contemporary Software Engineering Practices Together With EnterpriseContemporary Software Engineering Practices Together With Enterprise
Contemporary Software Engineering Practices Together With Enterprise
Kenan Sevindik
 
On System Design
On System DesignOn System Design
On System Design
mustafa sarac
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
Ivano Malavolta
 

Similar to In search of the Higgs or What's wrong with SEMAT? (20)

Applying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software EngineeringApplying Systems Thinking to Solve Wicked Problems in Software Engineering
Applying Systems Thinking to Solve Wicked Problems in Software Engineering
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architectures
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
 
System architecture infosheet
System architecture infosheetSystem architecture infosheet
System architecture infosheet
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2Thoughts On Architecting V4 2
Thoughts On Architecting V4 2
 
09 introduction to_modeling
09 introduction to_modeling09 introduction to_modeling
09 introduction to_modeling
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
 
software architecture
software architecturesoftware architecture
software architecture
 
502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf
 
Sociotechnical Walkthrough Workshop@AECT17
Sociotechnical Walkthrough Workshop@AECT17 Sociotechnical Walkthrough Workshop@AECT17
Sociotechnical Walkthrough Workshop@AECT17
 
Architectural Thinking - What Is Architecture?
Architectural Thinking - What Is Architecture?Architectural Thinking - What Is Architecture?
Architectural Thinking - What Is Architecture?
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
 
lecture7.ppt
lecture7.pptlecture7.ppt
lecture7.ppt
 
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
 
SYBTech_2021_Patt_Unit 4 Object Oriented Analysis Part I.pdf
SYBTech_2021_Patt_Unit 4  Object Oriented Analysis Part I.pdfSYBTech_2021_Patt_Unit 4  Object Oriented Analysis Part I.pdf
SYBTech_2021_Patt_Unit 4 Object Oriented Analysis Part I.pdf
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
Contemporary Software Engineering Practices Together With Enterprise
Contemporary Software Engineering Practices Together With EnterpriseContemporary Software Engineering Practices Together With Enterprise
Contemporary Software Engineering Practices Together With Enterprise
 
On System Design
On System DesignOn System Design
On System Design
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 

More from Rich Hilliard

3 Talks at WICSA 2008
3 Talks at WICSA 20083 Talks at WICSA 2008
3 Talks at WICSA 2008
Rich Hilliard
 
Using Aspects in Architecture Description
Using Aspects in Architecture DescriptionUsing Aspects in Architecture Description
Using Aspects in Architecture Description
Rich Hilliard
 
C4ISR architectures and software architectures
C4ISR architectures and software architecturesC4ISR architectures and software architectures
C4ISR architectures and software architectures
Rich Hilliard
 
The architect's job: 1996 version
The architect's job: 1996 versionThe architect's job: 1996 version
The architect's job: 1996 version
Rich Hilliard
 
Forces on architecture decisions (WICSA 2012)
Forces on architecture decisions (WICSA 2012)Forces on architecture decisions (WICSA 2012)
Forces on architecture decisions (WICSA 2012)
Rich Hilliard
 
All about-ieee-1471
All about-ieee-1471All about-ieee-1471
All about-ieee-1471
Rich Hilliard
 

More from Rich Hilliard (6)

3 Talks at WICSA 2008
3 Talks at WICSA 20083 Talks at WICSA 2008
3 Talks at WICSA 2008
 
Using Aspects in Architecture Description
Using Aspects in Architecture DescriptionUsing Aspects in Architecture Description
Using Aspects in Architecture Description
 
C4ISR architectures and software architectures
C4ISR architectures and software architecturesC4ISR architectures and software architectures
C4ISR architectures and software architectures
 
The architect's job: 1996 version
The architect's job: 1996 versionThe architect's job: 1996 version
The architect's job: 1996 version
 
Forces on architecture decisions (WICSA 2012)
Forces on architecture decisions (WICSA 2012)Forces on architecture decisions (WICSA 2012)
Forces on architecture decisions (WICSA 2012)
 
All about-ieee-1471
All about-ieee-1471All about-ieee-1471
All about-ieee-1471
 

Recently uploaded

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 

Recently uploaded (20)

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 

In search of the Higgs or What's wrong with SEMAT?

  • 1. work in progress comments appreciated! In search of the Higgs or What's wrong with SEMAT? Rich Hilliard richh@mit.edu
  • 2. Note to the Reader This presentation sketches an argument which is to be more fully elaborated (with references) as a full paper I am circulating it in this preliminary form to encourage feedback which I will take into consideration in completing that paper
  • 3. Software Engineering and Physics: an analogy I won't argue for the analogy here -- you'll have to see the full paper for the details
  • 4. The Higgs Physicists have been searching for evidence of the Higgs since it was hypothesized (1964) The Higgs plays two important roles: ● as unifier: explaining physical phenomena (electricity, magnetism and light as the electroweak force) ● as evidence: that the Standard Model is valid
  • 5. In Software Engineering ... What are our standard models? Is there a Software Engineering "Theory of Everything"?
  • 6. Software Engineering "theories of everything"? ● Software & Systems Process Engineering Metamodel (SPEM) ● ISO 24744, Software Engineering Metamodel for Development Methodologies (SEMDM) ● ISO/IEC TR 24774, Software and systems engineering -- Lifecycle management -- Guidelines for process description ● Software Engineering Method and Theory (SEMAT)
  • 7. Software Engineering: "theories of everything"? ● Each offers a theory of what Software Engineering is ● Are the process models our "Standard Models"? (I hope not)
  • 8. Why SEMAT? ● I focus on SEMAT because it is the most recent, it should have learned from its predecessors, and it is still under development ... ● My goal is to point out a missing dimension which is not prominent -- actually altogether missing! -- from the current models
  • 9. About SEMAT ● The goal of SEMAT is to "refound software engineering based on a solid theory, proven principles and best practices" [Vision] ● Following its predecessors (listed above), SEMAT outlines an ontology of software engineering process, method and product
  • 10. SEMAT is built upon... "a Kernel and a Language for software engineering method specification. They are scalable, extensible, and easy to use, and allow people to describe the essentials of their existing and future methods and practices so that they can be compared, evaluated, tailored, used, adapted, simulated and measured by practitioners as well as taught and researched by academics and researchers." [Essence]
  • 11. The SEMAT Kernel... "... must include a concrete representation of the acts and artifacts of software development, applicable to a wide range of software projects. It must also provide an extension language for adaptation to specific methods, practices and patterns." [Vision] "... includes the essential elements that are always prevalent in every software engineering endeavor, such as Requirements, Software System, Team and Work." [Essence]
  • 12. All very nice, but ... Is SEMAT an adequate basis for a Software Engineering Theory of Everything? (I think not) There are questions that cannot be formulated -- nor answered -- within the SEMAT ontology
  • 13. (Sample) Questions SEMAT cannot answer ● What Work Items should I look at to assess progress in developing this System? ● What links a Requirement on this System with a Work Item with a Team? ● Does this Team have the right skills to successfully deliver this Work Item? ● Is this Work Item affected (e.g., will it need reworking) by a change to this Requirement? ● What risks might befall this System? Are they being mitigated, managed and solved?
  • 14. Process models are missing the Why of Software Engineering If the SEMAT Alphas are the 'fundamental particles' of Software Engineering, what is the 'Higgs field' that holds them together and gives them meaning?
  • 15. Concerns! "Concerns are what we care about in software." [COSMOS] concern: interest in a system relevant to one or more of its stakeholders ... A concern pertains to any influence on a system in its environment; including developmental, technological, business, operational, organizational, political, economic, legal, regulatory, ecological and social influences [42010] Concerns, as in Dijkstra's phrase, "separation of concerns": ...
  • 16. Dijkstra's "separation of concerns" Let me try to explain to you, what to my taste is characteristic for all intelligent thinking. It is, that one is willing to study in depth an aspect of one's subject matter in isolation for the sake of its own consistency, all the time knowing that one is occupying oneself only with one of the aspects. We know that a program must be correct and we can study it from that viewpoint only; we also know that it should be efficient and we can study its efficiency on another day, so to speak. In another mood we may ask ourselves whether, and if so: why, the program is desirable. But nothing is gained--on the contrary!--by tackling these various aspects simultaneously. It is what I sometimes have called ``the separation of concerns'', which, even if not perfectly possible, is yet the only available technique for effective ordering of one's thoughts, that I know of. This is what I mean by ``focussing one's attention upon some aspect'': it does not mean ignoring the other aspects, it is just doing justice to the fact that from this aspect's point of view, the other is irrelevant. It is being one- and multiple-track minded simultaneously. [Dijkstra]
  • 17. Concerns bind the other elements Concerns underwrite the reasons for work (processes and tasks): ● e.g., We perform this work item because it yields an understanding of system deployment Concerns give work products their meanings: ● e.g., This work product explains how reliability is managed during system development Concerns are the things we are interested in; they bind together processes, artifacts, people, in terms of their relevance
  • 18. Therefore ... Concerns must be modeled and managed as first-class entities of any software engineering ontology to be useful to practical method definition and execution This is completely missing from SEMAT and other process model approaches
  • 19. Existing work on concerns Concerns are not a new idea... ● Concern spaces ● Concern-oriented software engineering ● Viewpoints ● ISO/IEC/IEEE 42010 (originally IEEE 1471: 2000): concerns to select and organize architecture viewpoints
  • 20. Aside There are other issues with the SEMAT, i.e., with its ontology -- but these are topics for another time (Call me)
  • 21. References [42010] ISO/IEC/IEEE 42010:2011, System and software engineering -- Architecture description. [COSMOS] S.M. Sutton Jr. and I. Rouvellou, "Concern Space Modeling in COSMOS", OOPSLA 2001. [Dijkstra] E.W. Dijkstra, On the role of scientific thought. 1974. http: //www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD447. html [Essence] Essence – Kernel and Language for Software Engineering Methods, OMG, ad/2012-08-15 [FSC] "Framing Stakeholders' Concerns", special issue of IEEE Software, Nov/Dec 2010. [Vision] Software Engineering Method and Theory -- A Vision Statement
  • 22. Sidebar: Concerns in SEMAT "In everything we do we apply the principle of 'separation of concerns''. For instance, we separate what the practitioner wants to work with from what a process engineer needs, in such a way that the practitioner doesn't need to 'see' more than what is of interest to her/him. We also separate practitioners from one another; all developers do not have the same level of interest." [Vision]
  • 23. Sidebar: Concerns in SEMAT SEMAT uses the phrase, "separation of concerns" -- but does not follow through on taking concerns seriously as first-class entities Rather than allowing first-class concerns, SEMAT fixes three areas of concern: ● Customer, Solution and Endeavor This is too coarse (and static) to be of use in actual projects