SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

Developing Knowledge-Based Systems
Developing Knowledge-Based SystemsDeveloping Knowledge-Based Systems
Developing Knowledge-Based SystemsAshique Rasool
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
Decision support systems
Decision support systemsDecision support systems
Decision support systemsMR Z
 
Plan design implement
Plan design implementPlan design implement
Plan design implementMR Z
 
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 EthiopiaDebre Tabor University
 
Computational thinking
Computational thinkingComputational thinking
Computational thinkingJackson Kuo
 
Information Systems design science research
Information Systems design science  researchInformation Systems design science  research
Information Systems design science researchRaimo Halinen
 
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 systemasimnawaz54
 
Module 2 design patterns-2
Module 2   design patterns-2Module 2   design patterns-2
Module 2 design patterns-2Ankit 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-designVin Voro
 
Hevner design-science
Hevner design-scienceHevner design-science
Hevner design-scienceshmushmu
 

Tendances (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
 

En vedette

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 42010Rich Hilliard
 
Using UML for architecture description
Using UML for architecture descriptionUsing UML for architecture description
Using UML for architecture descriptionRich Hilliard
 
Introduction to semat essence
Introduction to semat essenceIntroduction to semat essence
Introduction to semat essenceuEngine 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 descriptionHongseok 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
 

En vedette (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)
 

Similaire à 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 EngineeringMajed Ayyad
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1Susan Cox
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architecturesMajong DevJfu
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software EngineeringNandhini S
 
System architecture infosheet
System architecture infosheetSystem architecture infosheet
System architecture infosheetjeanrummy
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2Thoughts On Architecting V4 2
Thoughts On Architecting V4 2bmercer
 
09 introduction to_modeling
09 introduction to_modeling09 introduction to_modeling
09 introduction to_modelingMajong DevJfu
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented AnalysisAMITJain879
 
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.pdfPradeepPandey506579
 
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
 
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).pdfAftaZani1
 
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 EnterpriseKenan Sevindik
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineeringIvano Malavolta
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering FieldMichelle Singh
 

Similaire à 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
 
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
 
Application Of Software Engineering Field
Application Of Software Engineering FieldApplication Of Software Engineering Field
Application Of Software Engineering Field
 

Plus de Rich Hilliard

3 Talks at WICSA 2008
3 Talks at WICSA 20083 Talks at WICSA 2008
3 Talks at WICSA 2008Rich Hilliard
 
Using Aspects in Architecture Description
Using Aspects in Architecture DescriptionUsing Aspects in Architecture Description
Using Aspects in Architecture DescriptionRich Hilliard
 
C4ISR architectures and software architectures
C4ISR architectures and software architecturesC4ISR architectures and software architectures
C4ISR architectures and software architecturesRich Hilliard
 
The architect's job: 1996 version
The architect's job: 1996 versionThe architect's job: 1996 version
The architect's job: 1996 versionRich 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
 

Plus de 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
 

Dernier

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Dernier (20)

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

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