Suche senden
Hochladen
10 modeling and_notations
•
Als PPT, PDF herunterladen
•
0 gefällt mir
•
1,065 views
Majong DevJfu
Folgen
Technologie
Bildung
Melden
Teilen
Melden
Teilen
1 von 49
Jetzt herunterladen
Empfohlen
[2015/2016] AADL (Architecture Analysis and Design Language)
[2015/2016] AADL (Architecture Analysis and Design Language)
Ivano Malavolta
Ch11lect1 ud
Ch11lect1 ud
Ahmet Balkan
Ch10lect1 ud
Ch10lect1 ud
Ahmet Balkan
Software Architecture: Architecture Description Languages
Software Architecture: Architecture Description Languages
Henry Muccini
Ch08lect2 ud
Ch08lect2 ud
Ahmet Balkan
Framework Engineering
Framework Engineering
YoungSu Son
[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)
Ivano Malavolta
Ch04lect1 ud
Ch04lect1 ud
Ahmet Balkan
Empfohlen
[2015/2016] AADL (Architecture Analysis and Design Language)
[2015/2016] AADL (Architecture Analysis and Design Language)
Ivano Malavolta
Ch11lect1 ud
Ch11lect1 ud
Ahmet Balkan
Ch10lect1 ud
Ch10lect1 ud
Ahmet Balkan
Software Architecture: Architecture Description Languages
Software Architecture: Architecture Description Languages
Henry Muccini
Ch08lect2 ud
Ch08lect2 ud
Ahmet Balkan
Framework Engineering
Framework Engineering
YoungSu Son
[2016/2017] AADL (Architecture Analysis and Design Language)
[2016/2017] AADL (Architecture Analysis and Design Language)
Ivano Malavolta
Ch04lect1 ud
Ch04lect1 ud
Ahmet Balkan
Ch08lect3 ud
Ch08lect3 ud
Ahmet Balkan
[2016/2017] Architectural languages
[2016/2017] Architectural languages
Ivano Malavolta
Spring AOP
Spring AOP
AnushaNaidu
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language
Ivano Malavolta
Aspect Oriented Programming Through C#.NET
Aspect Oriented Programming Through C#.NET
Waqas Tariq
Ch09lect2 ud
Ch09lect2 ud
Ahmet Balkan
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...
Marco Brambilla
DeepaShetty
DeepaShetty
Deepa Shetty
Architecture: where do you start?
Architecture: where do you start?
Skills Matter
12 visualizing software_architectures_part_2
12 visualizing software_architectures_part_2
Majong DevJfu
Crafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
JAXLondon2014
Android classes-in-pune-syllabus
Android classes-in-pune-syllabus
cncandrwebworld
Android training in Nagpur
Android training in Nagpur
letsleadsand
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
David Solivan
22 deployment and_mobility
22 deployment and_mobility
Majong DevJfu
Whidbey old
Whidbey old
grenaud
Framework engineering JCO 2011
Framework engineering JCO 2011
YoungSu Son
Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1
willmation
Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014
Sandro Mancuso
AGADOS function & feature Chapter-02 biz logic define
AGADOS function & feature Chapter-02 biz logic define
Yongkyoo Park
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
Ivano Malavolta
Implementing DDD with C#
Implementing DDD with C#
Pascal Laurin
Weitere ähnliche Inhalte
Was ist angesagt?
Ch08lect3 ud
Ch08lect3 ud
Ahmet Balkan
[2016/2017] Architectural languages
[2016/2017] Architectural languages
Ivano Malavolta
Spring AOP
Spring AOP
AnushaNaidu
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language
Ivano Malavolta
Aspect Oriented Programming Through C#.NET
Aspect Oriented Programming Through C#.NET
Waqas Tariq
Ch09lect2 ud
Ch09lect2 ud
Ahmet Balkan
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...
Marco Brambilla
DeepaShetty
DeepaShetty
Deepa Shetty
Architecture: where do you start?
Architecture: where do you start?
Skills Matter
Was ist angesagt?
(9)
Ch08lect3 ud
Ch08lect3 ud
[2016/2017] Architectural languages
[2016/2017] Architectural languages
Spring AOP
Spring AOP
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language
Aspect Oriented Programming Through C#.NET
Aspect Oriented Programming Through C#.NET
Ch09lect2 ud
Ch09lect2 ud
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...
DeepaShetty
DeepaShetty
Architecture: where do you start?
Architecture: where do you start?
Ähnlich wie 10 modeling and_notations
12 visualizing software_architectures_part_2
12 visualizing software_architectures_part_2
Majong DevJfu
Crafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
JAXLondon2014
Android classes-in-pune-syllabus
Android classes-in-pune-syllabus
cncandrwebworld
Android training in Nagpur
Android training in Nagpur
letsleadsand
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
David Solivan
22 deployment and_mobility
22 deployment and_mobility
Majong DevJfu
Whidbey old
Whidbey old
grenaud
Framework engineering JCO 2011
Framework engineering JCO 2011
YoungSu Son
Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1
willmation
Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014
Sandro Mancuso
AGADOS function & feature Chapter-02 biz logic define
AGADOS function & feature Chapter-02 biz logic define
Yongkyoo Park
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
Ivano Malavolta
Implementing DDD with C#
Implementing DDD with C#
Pascal Laurin
Sw Software Design
Sw Software Design
jonathan077070
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
Sandro Mancuso
Webinar Oracle adf12c EN
Webinar Oracle adf12c EN
atSistemas
Cs 1023 lec 6 architecture (week 1)
Cs 1023 lec 6 architecture (week 1)
stanbridge
Verilog presentation final
Verilog presentation final
Ankur Gupta
13 analysis of_software_architectures
13 analysis of_software_architectures
Majong DevJfu
Ähnlich wie 10 modeling and_notations
(20)
12 visualizing software_architectures_part_2
12 visualizing software_architectures_part_2
Crafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
Android classes-in-pune-syllabus
Android classes-in-pune-syllabus
Android training in Nagpur
Android training in Nagpur
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
22 deployment and_mobility
22 deployment and_mobility
Whidbey old
Whidbey old
Framework engineering JCO 2011
Framework engineering JCO 2011
Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1
Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014
AGADOS function & feature Chapter-02 biz logic define
AGADOS function & feature Chapter-02 biz logic define
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
Implementing DDD with C#
Implementing DDD with C#
Sw Software Design
Sw Software Design
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
Webinar Oracle adf12c EN
Webinar Oracle adf12c EN
Cs 1023 lec 6 architecture (week 1)
Cs 1023 lec 6 architecture (week 1)
Verilog presentation final
Verilog presentation final
13 analysis of_software_architectures
13 analysis of_software_architectures
Mehr von Majong DevJfu
9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud
Majong DevJfu
8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes
Majong DevJfu
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line
Majong DevJfu
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
Majong DevJfu
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture
Majong DevJfu
4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio
Majong DevJfu
3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles
Majong DevJfu
2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture
Majong DevJfu
1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product
Majong DevJfu
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
Majong DevJfu
Uml3
Uml3
Majong DevJfu
Uml2
Uml2
Majong DevJfu
6
6
Majong DevJfu
5
5
Majong DevJfu
4 (uml basic)
4 (uml basic)
Majong DevJfu
3
3
Majong DevJfu
2
2
Majong DevJfu
1
1
Majong DevJfu
Tmd template-sand
Tmd template-sand
Majong DevJfu
26 standards
26 standards
Majong DevJfu
Mehr von Majong DevJfu
(20)
9 - Architetture Software - SOA Cloud
9 - Architetture Software - SOA Cloud
8 - Architetture Software - Architecture centric processes
8 - Architetture Software - Architecture centric processes
7 - Architetture Software - Software product line
7 - Architetture Software - Software product line
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
5 - Architetture Software - Metamodelling and the Model Driven Architecture
5 - Architetture Software - Metamodelling and the Model Driven Architecture
4 - Architetture Software - Architecture Portfolio
4 - Architetture Software - Architecture Portfolio
3 - Architetture Software - Architectural styles
3 - Architetture Software - Architectural styles
2 - Architetture Software - Software architecture
2 - Architetture Software - Software architecture
1 - Architetture Software - Software as a product
1 - Architetture Software - Software as a product
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
Uml3
Uml3
Uml2
Uml2
6
6
5
5
4 (uml basic)
4 (uml basic)
3
3
2
2
1
1
Tmd template-sand
Tmd template-sand
26 standards
26 standards
Kürzlich hochgeladen
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
wesley chun
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Igalia
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
Pixlogix Infotech
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
The Digital Insurer
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
sudhanshuwaghmare1
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Delhi Call girls
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Antenna Manufacturer Coco
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
Radu Cotescu
Kürzlich hochgeladen
(20)
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
10 modeling and_notations
1.
Modeling and Notations
Software Architecture Lecture 10
2.
3.
4.
5.
6.
Darwin Example component
DataStore{ provide landerValues; } component Calculation{ require landerValues; provide calculationService; } component UserInterface{ require calculationService; require landerValues; } component LunarLander{ inst U: UserInterface; C: Calculation; D: DataStore; bind C.landerValues -- D.landerValues; U.landerValues -- D.landerValues; U.calculationService -- C.calculationService; } Canonical Textual Visualization Graphical Visualization Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
7.
Programmatic Darwin Constructs
component WebServer{ provide httpService; } component WebClient{ require httpService; } component WebApplication(int numClients){ inst S: WebServer; array C[numClients]: WebClient; forall k:0..numClients-1{ inst C[k] @ k; bind C[k].httpService -- S.httpService; } } Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
8.
9.
10.
Rapide Example type
DataStore is interface action in SetValues(); out NotifyNewValues(); behavior begin SetValues => NotifyNewValues();; end DataStore; type Calculation is interface action in SetBurnRate(); out DoSetValues(); behavior action CalcNewState(); begin SetBurnRate => CalcNewState(); DoSetValues();; end Calculation; type Player is interface action out DoSetBurnRate(); in NotifyNewValues(); behavior TurnsRemaining : var integer := 1; action UpdateStatusDisplay(); action Done(); Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
11.
Rapide Example (cont’d)
type DataStore is interface action in SetValues(); out NotifyNewValues(); behavior begin SetValues => NotifyNewValues();; end DataStore; type Calculation is interface action in SetBurnRate(); out DoSetValues(); behavior action CalcNewState(); begin SetBurnRate => CalcNewState(); DoSetValues();; end Calculation; type Player is interface action out DoSetBurnRate(); in NotifyNewValues(); behavior TurnsRemaining : var integer := 1; action UpdateStatusDisplay(); action Done(); begin (start or UpdateStatusDisplay) where ($TurnsRemaining > 0) => if ( $TurnsRemaining > 0 ) then TurnsRemaining := $TurnsRemaining - 1; DoSetBurnRate(); end if;; NotifyNewValues => UpdateStatusDisplay();; UpdateStatusDisplay where $TurnsRemaining == 0 => Done();; end UserInterface; architecture lander() is P1, P2 : Player; C : Calculation; D : DataStore; connect P1.DoSetBurnRate to C.SetBurnRate; P2.DoSetBurnRate to C.SetBurnRate; C.DoSetValues to D.SetValues; D.NotifyNewValues to P1.NotifyNewValues(); D.NotifyNewValues to P2.NotifyNewValues(); end LunarLander; Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
12.
Simulation Output 1-player
2-player Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
13.
14.
15.
Wright Example Component
DataStore Port getValues (behavior specification) Port storeValues (behavior specification) Computation (behavior specification) Component Calculation Port getValues (behavior specification) Port storeValues (behavior specification) Port calculate (behavior specification) Computation (behavior specification) Component UserInterface Port getValues (behavior specification) Port calculate (behavior specification) Computation (behavior specification) Connector Call Role Caller = Role Callee = Glue = Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
16.
Wright Example Component
DataStore Port getValues (behavior specification) Port storeValues (behavior specification) Computation (behavior specification) Component Calculation Port getValues (behavior specification) Port storeValues (behavior specification) Port calculate (behavior specification) Computation (behavior specification) Component UserInterface Port getValues (behavior specification) Port calculate (behavior specification) Computation (behavior specification) Connector Call Role Caller = Role Callee = Glue = Configuration LunarLander Instances DS : DataStore C : Calculation UI : UserInterface CtoUIgetValues, CtoUIstoreValues, UItoC, UItoDS : Call Attachments C.getValues as CtoUIgetValues.Caller DS.getValues as CtoUIgetValues.Callee C.storeValues as CtoUIstoreValues.Caller DS.storeValues as CtoUIstoreValues.Callee UI.calculate as UItoC.Caller C.calulate as UItoC.Callee UI.getValues as UItoDS.Caller DS.getValues as UItoDS.Callee End LunarLander. Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
17.
18.
19.
20.
Koala Example Single
system Product line of two systems Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission. interface IDataStore{ void setAltitude(int altitudeInMeters); int getAltitude(); void setBurnRate(int newBurnRate); int getBurnRate(); ... }
21.
22.
23.
Weaves Example Generic
Weaves System Lunar Lander in Weaves Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
24.
25.
26.
27.
AADL (Partial) Example
data lander_state_data end lander_state_data; bus lan_bus_type end lan_bus_type; bus implementation lan_bus_type.ethernet properties Transmission_Time => 1 ms .. 5 ms; Allowed_Message_Size => 1 b .. 1 kb; end lan_bus_type.ethernet; system calculation_type features network : requires bus access lan_bus.calculation_to_datastore; request_get : out event port; response_get : in event data port lander_state_data; request_store : out event port lander_state_data; response_store : in event port; end calculation_type; system implementation calculation_type.calculation subcomponents the_calculation_processor : processor calculation_processor_type; the_calculation_process : process calculation_process_type.one_thread; Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
28.
AADL (Partial) Example
data lander_state_data end lander_state_data; bus lan_bus_type end lan_bus_type; bus implementation lan_bus_type.ethernet properties Transmission_Time => 1 ms .. 5 ms; Allowed_Message_Size => 1 b .. 1 kb; end lan_bus_type.ethernet; system calculation_type features network : requires bus access lan_bus.calculation_to_datastore; request_get : out event port; response_get : in event data port lander_state_data; request_store : out event port lander_state_data; response_store : in event port; end calculation_type; system implementation calculation_type.calculation subcomponents the_calculation_processor : processor calculation_processor_type; the_calculation_process : process calculation_process_type.one_thread; connections bus access network -> the_calculation_processor.network; event data port response_get -> the_calculation_process.response_get; event port the_calculation_process.request_get -> request_get; event data port response_store -> the_calculation_process.response_store; properties Actual_Processor_Binding => reference the_calculation_processor applies to the_calculation_process; end calculation_type.calculation; processor calculation_processor_type features network : requires bus access lan_bus.calculation_to_datastore; end calculation_processor_type; process calculation_process_type features request_get : out event port; response_get : in event data port lander_state_data; request_store : out event data port lander_state_data; response_store : in event port; end calculation_process_type; Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
29.
AADL (Partial) Example
data lander_state_data end lander_state_data; bus lan_bus_type end lan_bus_type; bus implementation lan_bus_type.ethernet properties Transmission_Time => 1 ms .. 5 ms; Allowed_Message_Size => 1 b .. 1 kb; end lan_bus_type.ethernet; system calculation_type features network : requires bus access lan_bus.calculation_to_datastore; request_get : out event port; response_get : in event data port lander_state_data; request_store : out event port lander_state_data; response_store : in event port; end calculation_type; system implementation calculation_type.calculation subcomponents the_calculation_processor : processor calculation_processor_type; the_calculation_process : process calculation_process_type.one_thread; connections bus access network -> the_calculation_processor.network; event data port response_get -> the_calculation_process.response_get; event port the_calculation_process.request_get -> request_get; event data port response_store -> the_calculation_process.response_store; properties Actual_Processor_Binding => reference the_calculation_processor applies to the_calculation_process; end calculation_type.calculation; processor calculation_processor_type features network : requires bus access lan_bus.calculation_to_datastore; end calculation_processor_type; process calculation_process_type features request_get : out event port; response_get : in event data port lander_state_data; request_store : out event data port lander_state_data; response_store : in event port; end calculation_process_type; thread calculation_thread_type features request_get : out event port; response_get : in event data port lander_state_data; request_store : out event data port lander_state_data; response_store : in event port; properties Dispatch_Protocol => periodic; end calculation_thread_type; process implementation calculation_process_type.one_thread subcomponents calculation_thread : thread client_thread_type; connections event data port response_get -> calculation_thread.response_get; event port calculation_thread.request_get -> request_get; event port response_store -> calculation_thread.response_store; event data port request_store -> request_store; properties Dispatch_Protocol => Periodic; Period => 20 ms; end calculation_process_type.one_thread; Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
30.
31.
32.
33.
34.
Acme Example //Global
Types Property Type returnsValueType = bool; Connector Type CallType = { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType; }; System LunarLander = { //Components Component DataStore = { Ports { getValues; storeValues; } }; Component Calculation = { Ports { calculate; getValues; storeValues; } }; Component UserInterface = { Ports { getValues; calculate; } }; // Connectors Connector UserInterfaceToCalculation : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Connector UserInterfaceToDataStore : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
35.
Acme Example //Global
Types Property Type returnsValueType = bool; Connector Type CallType = { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType; }; System LunarLander = { //Components Component DataStore = { Ports { getValues; storeValues; } }; Component Calculation = { Ports { calculate; getValues; storeValues; } }; Component UserInterface = { Ports { getValues; calculate; } }; // Connectors Connector UserInterfaceToCalculation : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Connector UserInterfaceToDataStore : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Connector CalculationToDataStoreS : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = false; } Connector CalculationToDataStoreG : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Attachments { UserInterface.getValues to UserInterfaceToDataStore.callerRole; UserInterfaceToDataStore.calleeRole to DataStore.getValues; UserInterface.getValues to UserInterfaceToDataStore.callerRole; UserInterfaceToDataStore.calleeRole to DataStore.getValues; UserInterface.calculate to UserInterfaceToCalculation.callerRole; UserInterfaceToCalculation.calleeRole to Calculation.calculate; Calculation.storeValues to CalculationToDataStoreS.callerRole; CalculationToDataStoreS.calleeRole to DataStore.storeValues; Calculation.getValues to CalculationToDataStoreG.callerRole; CalculationToDataStoreG.calleeRole to DataStore.getValues; }; } Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
36.
Acme Extensions //Global
Types Property Type returnsValueType = bool; Connector Type CallType = { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType; }; System LunarLander = { //Components Component DataStore = { Ports { getValues; storeValues; } }; Component Calculation = { Ports { calculate; getValues; storeValues; } }; Component UserInterface = { Ports { getValues; calculate; } }; // Connectors Connector UserInterfaceToCalculation : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Connector UserInterfaceToDataStore : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Connector CalculationToDataStoreS : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = false; } Connector CalculationToDataStoreG : CallType { Roles { callerRole; calleeRole; }; Property returnsValue : returnsValueType = true; } Attachments { UserInterface.getValues to UserInterfaceToDataStore.callerRole; UserInterfaceToDataStore.calleeRole to DataStore.getValues; UserInterface.getValues to UserInterfaceToDataStore.callerRole; UserInterfaceToDataStore.calleeRole to DataStore.getValues; UserInterface.calculate to UserInterfaceToCalculation.callerRole; UserInterfaceToCalculation.calleeRole to Calculation.calculate; Calculation.storeValues to CalculationToDataStoreS.callerRole; CalculationToDataStoreS.calleeRole to DataStore.storeValues; Calculation.getValues to CalculationToDataStoreG.callerRole; CalculationToDataStoreG.calleeRole to DataStore.getValues; }; } Property Type StoreType = enum { file, relationalDatabase, objectDatabase }; Component DataStore = { Ports { getValues; storeValues; } Property storeType : StoreType = relationalDatabase; Property tableName : String = “LanderTable”; Property numReplicas: int = 0; }; Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
37.
38.
39.
40.
41.
xADL Example <types:component
xsi:type="types:Component" types:id="myComp"> <types:description xsi:type="instance:Description"> MyComponent </types:description> <types:interface xsi:type="types:Interface" types:id="iface1"> <types:description xsi:type="instance:Description"> Interface1 </types:description> <types:direction xsi:type="instance:Direction"> inout </types:direction> </types:interface> </types:component> Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
42.
xADL Example <types:component
xsi:type="types:Component" types:id="myComp"> <types:description xsi:type="instance:Description"> MyComponent </types:description> <types:interface xsi:type="types:Interface" types:id="iface1"> <types:description xsi:type="instance:Description"> Interface1 </types:description> <types:direction xsi:type="instance:Direction"> inout </types:direction> </types:interface> </types:component> component{ id = "myComp"; description = "MyComponent"; interface{ id = "iface1"; description = "Interface1"; direction = "inout"; } } Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
43.
xADL Example <types:component
xsi:type="types:Component" types:id="myComp"> <types:description xsi:type="instance:Description"> MyComponent </types:description> <types:interface xsi:type="types:Interface" types:id="iface1"> <types:description xsi:type="instance:Description"> Interface1 </types:description> <types:direction xsi:type="instance:Direction"> inout </types:direction> </types:interface> </types:component> component{ id = "myComp"; description = "MyComponent"; interface{ id = "iface1"; description = "Interface1"; direction = "inout"; } } Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
44.
xADL Tools Software
Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
45.
ArchStudio Environment Software
Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
46.
xADL Schemas (Modules)
Software Architecture: Foundations, Theory, and Practice ; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; © 2008 John Wiley & Sons, Inc. Reprinted with permission.
47.
48.
49.
Jetzt herunterladen