Re: [ELISA Safety Architecture WG] What’s in a name?


John MacGregor
 

Hi,

I decided to take a shot at defining Linux' architecture. You'll find it at [1].

It's still very much a work in progress and I intend to flesh things out and fix a couple of boiler-plate explanations. Feel free nonetheless to put issues in the GitHub site or issue pull requests if you're particularly ambitious. Otherwise you can always send me an e-mail.

Cheers

John

[1] https://openjohnmacgregor.github.io/ElisaPages/LinuxArchitecture.html

On 04/05/2021 23:11, Christopher Temple wrote:
It could be a long discussion.
Couldn't we work with ISO/IEC/IEEE 42010 http://www.iso-architecture.org/ieee-1471/defining-architecture.html ?
It's quite close to the understandings shared below.
Best regards
Chris
-----Original Message-----
From: devel@... <devel@...> On Behalf Of Gurvitz, Eli (Mobileye) via lists.elisa.tech
Sent: Dienstag, 4. Mai 2021 23:01
To: Peter.Brink@...; open.john.macgregor@...; Paul Albertella <paul.albertella@...>; devel@...; safety-architecture@...
Subject: Re: [ELISA Technical Community] [ELISA Safety Architecture WG] What’s in a name?
And I'd like to add that the first 3 types of "architecture"s that Paul lists below are one and the same, phrased in different forms of technical English. So I'd like to suggest that we think of "architecture" as a set of components, their properties and the interfaces between them. Together they comprise a "system" whose purpose is to implement some specific requirements.
Thanks,
Eli
-----Original Message-----
From: devel@... <devel@...> On Behalf Of Brink, Peter via lists.elisa.tech
Sent: Tuesday, May 04, 2021 20:16
To: open.john.macgregor@...; Paul Albertella <paul.albertella@...>; devel@...; safety-architecture@...
Subject: Re: [ELISA Technical Community] [ELISA Safety Architecture WG] What’s in a name?
Which is kind of the point of an architecture 😊
-----Original Message-----
From: devel@... <devel@...> On Behalf Of John MacGregor via lists.elisa.tech
Sent: Tuesday, May 4, 2021 10:14 AM
To: Brink, Peter <Peter.Brink@...>; Paul Albertella <paul.albertella@...>; devel@...; safety-architecture@...
Subject: Re: [ELISA Technical Community] [ELISA Safety Architecture WG] What’s in a name?
Mea Culpa,
I've always been guilty of seeing the forest and forgetting a couple of trees...
On 04/05/2021 19:12, Brink, Peter wrote:
Not a botanist indeed, John. You left off the calyx and the corolla in your flower description.

-----Original Message-----
From: devel@... <devel@...> On Behalf Of
John MacGregor via lists.elisa.tech
Sent: Tuesday, May 4, 2021 9:54 AM
To: Paul Albertella <paul.albertella@...>;
devel@...; safety-architecture@...
Subject: Re: [ELISA Technical Community] [ELISA Safety Architecture WG] What’s in a name?

Hi Paul

Great start. I'd have started with Shakespeare too!

The point for me, as I said in the last Sync Telco, was the issue is not just the nomenclature. It's understanding what comprises each of the concepts and what role in the development process they serve. An architecture differs from a design which differs from an implementation at least in the level of abstraction and granularity.

I'll probably have to expand on the idea in the future (and I don't have time now). But for now, I'll give a small example:

The architecture of a rose is probably aligned with the attributes that make it recognisable:
- a stem with thorns, branches and leaves
- a flower with a certain distinctive petal form
- a distinctive smell that may or may not repel enemies

The design of a rose could
- refine the shape and effects of the thorns, branches, leaves, petals,
to support structural stability, environmental robustness, etc.
- address nourishment and reproduction issues, adding roots, pistils
and stamen

The implementation of a rose might detail the different breeds of
roses.... Hey, even botanists get it :-) [1]

I'm not a botanist, and off the top of my head, I'm not sure whether the non-functional aspects (nourishment and reproduction) aren't architectural concerns, but I'm using the example as a light-hearted example of the differences in abstraction and granularity.

Cheers

John

BTW, the _Name_ of the Rose is a vaastly different kettle of fish.

[1]
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fjour
nals.ashs.org%2Fhortsci%2Fview%2Fjournals%2Fhortsci%2F54%2F2%2Farticle
-p236.xml&amp;data=04%7C01%7CPeter.Brink%40ul.com%7C1343db7da51b493608
0208d90f201ff9%7C701159540ccd45f087bd03b2a3587569%7C0%7C0%7C6375574529
14338884%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiL
CJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=twe4Zl9o6LJSxw5rMdDA3wv
ionay%2BhN%2Fs7zGnrSK0dc%3D&amp;reserved=0


On 04/05/2021 18:19, Paul Albertella wrote:
Hi,

What’s in a name? that which we call a rose By any other name would
smell as sweet
--- W Shakespeare "Romeo and Juliet"

As John MacGregor commented on today's Safety Architecture call, our
discussions are occasionally marred by misunderstandings arising from
the use of terminology that *seems* to be unambiguous, but actually
means different things to different people, or in different contexts.

I believe that we can help to address this by compiling a common
'lexicon' of terms and definitions that we can use in ELISA
discussions and publications, relating these to specific domains or
contexts where necessary.

The term 'architecture', which John picked on today, for example, has
at least four distinct meanings in the context of ELISA. Here are are
some definitions that may be helpful:

1) Software architecture

The Software Engineering Body of Knowledge [1] includes architecture
under the general heading of design, noting that "Architectural
design describes how software is organized into components", while
"Detailed design describes the desired behavior of these components."

It adds that a software architecture can be strictly defined as "the
set of structures needed to reason about the system, which comprise
software elements, relations among them, and properties of both”, but
notes that it can be further subdivided into 'views' (physical,
logical, process, development), focusing on different aspects of the
system (distribution, functionality, concurrency, implementation).

2) System architecture

This has a very similar meaning to the term in the software context,
but extends the scope to include the hardware components of a system.

IEC 61508 defines architecture as a "specific configuration of
hardware and software elements in a system". ISO 26262 [3] applies
the term to both hardware/software combinations and pure software
elements, defining it as a "representation of the structure of the
item or element that allows identification of building blocks, their
boundaries and interfaces, and includes the allocation of
requirements to these building blocks".

3) Safety architecture

This is more or less the same as a system architecture, but focussing
only on safety.

ISO 26262 [3] defines it as the "set of elements and their
interaction to fulfil the safety requirements", where an element may
be a system, component (hardware or software), hardware part, or software unit.

4) CPU architecture

The term 'architecture' in discussions about the Linux kernel
frequently has a different meaning again, referring to the underlying
architecture of the processor (x86, ARM, MIPs, etc) in a target
system, and the associated 'architecture-specific' components of the kernel.

Regards,

Paul


[1]
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
.computer.org%2Feducation%2Fbodies-of-knowledge%2Fsoftware-engineerin
g&amp;data=04%7C01%7CPeter.Brink%40ul.com%7C1343db7da51b4936080208d90
f201ff9%7C701159540ccd45f087bd03b2a3587569%7C0%7C0%7C6375574529143488
79%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTi
I6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=NpmQyjx9wYhQDEzy8z5s98f4p7i
nt%2Fr5DqGlDlkTWAQ%3D&amp;reserved=0
[2]
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Farc
hive.org%2Fdetails%2Fgov.in.is.iec.61508.4.1998&amp;data=04%7C01%7CPe
ter.Brink%40ul.com%7C1343db7da51b4936080208d90f201ff9%7C701159540ccd4
5f087bd03b2a3587569%7C0%7C0%7C637557452914348879%7CUnknown%7CTWFpbGZs
b3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3
D%7C1000&amp;sdata=3RMrJan1IqiCJ0Wv4kgXQqTAtpThyJjNhUcZckGJ180%3D&amp
;reserved=0 [3]
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
.iso.org%2Fobp%2Fui%2F%23iso%3Astd%3Aiso%3A26262%3A-1%3Aed-2%3Av1%3Ae
n&amp;data=04%7C01%7CPeter.Brink%40ul.com%7C1343db7da51b4936080208d90
f201ff9%7C701159540ccd45f087bd03b2a3587569%7C0%7C0%7C6375574529143488
79%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTi
I6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=4XCPMIOfGI1ZLwmLRUwVf4fjET7
FtlQZYxGd%2FESASoU%3D&amp;reserved=0














This e-mail may contain privileged or confidential information. If you are not the intended recipient: (1) you may not disclose, use, distribute, copy or rely upon this message or attachment(s); and (2) please notify the sender by reply e-mail, and then delete this message and its attachment(s). Underwriters Laboratories Inc. and its affiliates disclaim all liability for any errors, omissions, corruption or virus in this message or any attachments.
This e-mail may contain privileged or confidential information. If you are not the intended recipient: (1) you may not disclose, use, distribute, copy or rely upon this message or attachment(s); and (2) please notify the sender by reply e-mail, and then delete this message and its attachment(s). Underwriters Laboratories Inc. and its affiliates disclaim all liability for any errors, omissions, corruption or virus in this message or any attachments.
---------------------------------------------------------------------
Intel Israel (74) Limited
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

Join devel@lists.elisa.tech to automatically receive all group messages.