SlideShare una empresa de Scribd logo
1 de 15
© ABB Group  February 21, 2011 | Slide 1 TowardsSoftware Sustainability Guidelines for Long-living Industrial Systems Heiko Koziolek, Roland Weiss, Zoya Durdik, Johannes Stammel, Klaus Krogmann
Context: Industrial Automation DomainLong-living Software-Intensive Systems © ABB Group  February 21, 2011 | Slide 2
Context: Software EvolutionExample Release History of a Process Control System © ABB Group  February 21, 2011 | Slide 3 Version A  First version release with complete system concept  Single environment from independent solutions  Outstanding Operations Offering  Function based Engineering  Redundant Controllers and I/O capabilities  Connectivity for Harmony and Melody Foundation  Fieldbus, Redundant Profibus, HART Version C3  Windows 7 support Alarm Analysis and Alarm Shelving WirelessHART Integration Profinet, Ethernet IP, DeviceNet Engineering efficiency improvements Detailed difference reporting Foundation Fieldbus improvements 2004	2005	2006	2007	2008	2009	2010 Version C1  Multi-system Integration SPI Integration (PETI)  MODBUS TCP Version B Increased system size SIL 2 Integrated Safety Connectivity for DCI and MOD 300  Alarm and Event Improvements Remote Clients via MS Terminal Services Version C2 Virtualization support MS WPF Graphics SIL3 Safety IEC 61850 (Intel Elect Devices) New PM866 controller (2x PM864) New S800 I/O (non-red HART) New Power Supplies, smaller footprint Evolution Libraries MOD300 and Infi90 Version C Online Upgrade Capability Multi-User / Distributed Engineering Large screen / Multi-screen enhancements Digital Security Improvements
ChallengesSustainable Software Development © ABB Group  February 21, 2011 | Slide 4 Limited education of architects and developers for sustainable development Significant costs for software maintenance and evolution Repeating evolution problems and solutions
Our approach © ABB Group  February 21, 2011 | Slide 5 1. Document re-occuring evolution scenarios in the industrial domain 2. Create guidelines for sustainable software development Scenario XYZ  Overview: Data volume exceeds, ...  System environment:  Normal volume: 1.5 GB, ...  Environment changes: Volume changed to 4 GB, ...  Required system behaviour: Processing takes less than 4 hours, ... Scenario XYZ  Overview: Data volume exceeds, ...  System environment:  Normal volume: 1.5 GB, ...  Environment changes: Volume changed to 4 GB, ...  Required system behaviour: Processing takes less than 4 hours, ... Scenario XYZ  Overview: Data volume exceeds, ...  System environment:  Normal data volume: 1.5 GB, ... Environment changes: Datavolume changes to 4 GB, ... Required system behaviour: Processing takes less than 4 hours, ... Method ABC Name:  ...  Relevance: ...   Application effort: ...  Short Description: ...  Tools: ...  Risks: ...  Checklist: ... Method ABC Name:  ...  Relevance: ...   Application effort: ...  Short Description: ...  Tools: ...  Risks: ...  Checklist: ... Method ABC  Name:  ...  Relevance: ...   Application effort: ... Short Description: ...  Tools: ... Risks: ... Checklist: ... 3. Validation  C1 C2 C3
Re-occurring evolution scenariosIndustrial software systems Perfective new services and features integration of third party components integration of third party applications safety certification (IEC61508) performance improvements (I/Os) usability improvements (workplace) security improvements (Stuxnet) ... © ABB Group  February 21, 2011 | Slide 6 Adaptive new industry standards migration to new GUI framework migration to new middleware / OS support for virtualization support for multi-core processors updated controller and field devices new network standards ...
Sustainability GuidelinesDevelopment Process © ABB Group  February 21, 2011 | Slide 7
Sources Journals: IEEE TSE, JSME, JSS, EMSE, LNCS, IST, ... Conferences: ICSE, ICSM, IWPSE, CSMR, WICSA, ... Interviews, > 30 Books, Internal ABB documents, ... Keywords agility and architecture, software evolution, strategies, strategy, tactic(s), method(s), approach software maintenance,maintainability, evolvability, longevity, modifiability, flexibility, sustainability, COTS, (data) mining, virtualization, software quality, architecture compliance checking, architecture analysis, code and architecture consistency, architecture(al) enforcements, survey, evaluation Data Collection development phase, relevance automation, relevance sustainability, applicability, tool, preventive/reactive, formalization, perspective, abstraction level, benefits for sustainable software development Sustainability GuidelinesLiterature Review Reviewed Topics (Selection) Software Comprehension using Historical Data Quality Indicators Software Architecture (Analysis) Variability Strategies Automation of Software Development Knowledge Management and Documentation Software Infrastructure Conclusions Wide solutions overview (136 pages) Reference list in each chapter Baseline for sustainability guidelines Not all approaches investigated in detail © ABB Group  February 21, 2011 | Slide 8
Initial Sustainability GuidelinesOverview © ABB Group  February 21, 2011 | Slide 9 Phase IndependentSustainable Documentation, Knowledge Management, Process Improvement, Organizational Structures, ...
Sustainability Guidelines ExampleALMA (Architecture-Level Modifiability Analysis) Short Description: Architecture-level modifiability analysis (ALMA) is an analysis approach that focuses on modifiability. For the description of the architecture, an architectural model, i.e., views from several architectural viewpoints have to be created. Change scenario elicitation is done by interviewing stakeholders.  … Tool Support: no tool support Why useful? (selection) Helps to estimate long-term impact of design decisions. Quantifies the expected costs of changes to a system pro-actively to support decisions during system evolution. Improves the initial design upfront to avoid maintenance and evolution problems. Risks (selection) Missing critical change scenarios can lead to missing modifiability Selection of non-relevant change scenario might lead to modifiability overhead High overall effort for involving too many stakeholders or due to inefficient execution of the ALMA process Application effort: (medium, manual) Relevance for evolution: The approach can help identifying evolution risks, i.e. changes that can only be performed at high costs. Learning effort: Medium (requires architecture modelling skills and knowledge about modifiability) Addressed problem: The architecture has influence on architecture level. Ensures that critical change scenarios are well-supported by an architecture. General validation: 7 industrial case studies ABB internal validation: n/a © ABB Group  February 21, 2011 | Slide 10
Validation (1/3)Goals Validate the usability of the guidelines interview developers apply in three post-mortem case studies apply initially in regular projects Validate the applicability of the recommended methods only possible for selected methods conduct case study research, collect best practices reuse empirical studies from literature © ABB Group  February 21, 2011 | Slide 11
Validation (2/3)Mapping the Guidelines to a Sample Scenario © ABB Group  February 21, 2011 | Slide 12
Validation (3/3)Planned Case Studies 1. Apply ALMA to compare two software architectures 2. Apply code analysis 	3. Recover design rationale on third party component	from architectural document. © ABB Group  February 21, 2011 | Slide 13
ConclusionsSustainability Guidelines for Long-living Systems Maintenance and evolution of industrial software systems are significant cost drivers. Software sustainability guidelines help architects and developers in avoiding and mitigating evolution problems. Further validation is needed in interviews and case studies. © ABB Group  February 21, 2011 | Slide 14
© ABB Group  February 21, 2011 | Slide 15

Más contenido relacionado

La actualidad más candente

Defect Testing in Software Engineering SE20
Defect Testing in Software Engineering SE20Defect Testing in Software Engineering SE20
Defect Testing in Software Engineering SE20
koolkampus
 
Software engineering
Software engineeringSoftware engineering
Software engineering
nidhi5388
 
Principles of effort estimation
Principles of effort estimationPrinciples of effort estimation
Principles of effort estimation
CS, NcState
 
Unified process,agile process,process assesment ppt
Unified process,agile process,process assesment pptUnified process,agile process,process assesment ppt
Unified process,agile process,process assesment ppt
Shweta Ghate
 

La actualidad más candente (19)

Defect Testing in Software Engineering SE20
Defect Testing in Software Engineering SE20Defect Testing in Software Engineering SE20
Defect Testing in Software Engineering SE20
 
An Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesAn Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming Practices
 
Complexity metrics and models
Complexity metrics and modelsComplexity metrics and models
Complexity metrics and models
 
SyMAR - A Systematic Method for software Architecture Recovery
SyMAR - A Systematic Method for software Architecture RecoverySyMAR - A Systematic Method for software Architecture Recovery
SyMAR - A Systematic Method for software Architecture Recovery
 
Software engineering 21 integration testing
Software engineering  21 integration testingSoftware engineering  21 integration testing
Software engineering 21 integration testing
 
Sa03 tactics
Sa03 tacticsSa03 tactics
Sa03 tactics
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect Prediction
 
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
11 system development models
11 system development models11 system development models
11 system development models
 
Software metrics by Dr. B. J. Mohite
Software metrics by Dr. B. J. MohiteSoftware metrics by Dr. B. J. Mohite
Software metrics by Dr. B. J. Mohite
 
Software Reuse: Challenges and Business Success
Software Reuse: Challenges and Business SuccessSoftware Reuse: Challenges and Business Success
Software Reuse: Challenges and Business Success
 
Software engineering
Software  engineeringSoftware  engineering
Software engineering
 
MexADL
MexADLMexADL
MexADL
 
Reverse engineering in software engineering vaibhav
Reverse engineering in software engineering vaibhavReverse engineering in software engineering vaibhav
Reverse engineering in software engineering vaibhav
 
Availability tactics
Availability tacticsAvailability tactics
Availability tactics
 
Principles of effort estimation
Principles of effort estimationPrinciples of effort estimation
Principles of effort estimation
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Unified process,agile process,process assesment ppt
Unified process,agile process,process assesment pptUnified process,agile process,process assesment ppt
Unified process,agile process,process assesment ppt
 

Destacado

A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...
Heiko Koziolek
 
Sustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic ReviewSustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic Review
Heiko Koziolek
 
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
Heiko Koziolek
 
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Heiko Koziolek
 

Destacado (7)

A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...
 
Q-ImPrESS
Q-ImPrESSQ-ImPrESS
Q-ImPrESS
 
Comparing and Considering: Exhibit vs Palladio
Comparing and Considering: Exhibit vs PalladioComparing and Considering: Exhibit vs Palladio
Comparing and Considering: Exhibit vs Palladio
 
Sustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic ReviewSustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic Review
 
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
ICSE 2011: Q-ImPrESS - An Industrial Case Study on Quality Impact Prediction
 
Parameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability SpecificationsParameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability Specifications
 
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
 

Similar a Towards Software Sustainability Guides for Industrial Software Systems

15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
randhirlpu
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
Steve Feldman
 
B2 2006 sizing_benchmarking
B2 2006 sizing_benchmarkingB2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking
Steve Feldman
 
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
SAIL_QU
 
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDpptunit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
WrushabhShirsat3
 
Track g semiconductor test program - testinsight
Track g  semiconductor test program - testinsightTrack g  semiconductor test program - testinsight
Track g semiconductor test program - testinsight
chiportal
 
Design & Implementation.pptx
Design & Implementation.pptxDesign & Implementation.pptx
Design & Implementation.pptx
SalmaItagi2
 
Muves3 Elastic Grid Java One2009 Final
Muves3 Elastic Grid Java One2009 FinalMuves3 Elastic Grid Java One2009 Final
Muves3 Elastic Grid Java One2009 Final
Elastic Grid, LLC.
 

Similar a Towards Software Sustainability Guides for Industrial Software Systems (20)

Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
 
B2 2006 sizing_benchmarking
B2 2006 sizing_benchmarkingB2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking
 
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...Log Engineering: Towards Systematic Log Mining to Support the Development of ...
Log Engineering: Towards Systematic Log Mining to Support the Development of ...
 
Eclipse Meets Systems Biology
Eclipse Meets Systems BiologyEclipse Meets Systems Biology
Eclipse Meets Systems Biology
 
Workshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank EnglishWorkshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank English
 
Sdlc cource in_mumbai
Sdlc cource in_mumbaiSdlc cource in_mumbai
Sdlc cource in_mumbai
 
Feasible
FeasibleFeasible
Feasible
 
SE notes 2.pdf
SE notes 2.pdfSE notes 2.pdf
SE notes 2.pdf
 
Peter Zimmerer - Evolve Design For Testability To The Next Level - EuroSTAR 2012
Peter Zimmerer - Evolve Design For Testability To The Next Level - EuroSTAR 2012Peter Zimmerer - Evolve Design For Testability To The Next Level - EuroSTAR 2012
Peter Zimmerer - Evolve Design For Testability To The Next Level - EuroSTAR 2012
 
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDpptunit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
unit-iipart-1.WDQWDQWDQWDQWDQWDQWDQWDQWDQWDppt
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
SYSTEMS PRESENTATION to help you in design
SYSTEMS PRESENTATION to help you  in designSYSTEMS PRESENTATION to help you  in design
SYSTEMS PRESENTATION to help you in design
 
Track g semiconductor test program - testinsight
Track g  semiconductor test program - testinsightTrack g  semiconductor test program - testinsight
Track g semiconductor test program - testinsight
 
Design & Implementation.pptx
Design & Implementation.pptxDesign & Implementation.pptx
Design & Implementation.pptx
 
Msr2021 tutorial-di penta
Msr2021 tutorial-di pentaMsr2021 tutorial-di penta
Msr2021 tutorial-di penta
 
Test automation wipro
Test automation   wiproTest automation   wipro
Test automation wipro
 
Muves3 Elastic Grid Java One2009 Final
Muves3 Elastic Grid Java One2009 FinalMuves3 Elastic Grid Java One2009 Final
Muves3 Elastic Grid Java One2009 Final
 
01lifecycles
01lifecycles01lifecycles
01lifecycles
 

Más de Heiko Koziolek

The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software Applications
Heiko Koziolek
 
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
Heiko Koziolek
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Heiko Koziolek
 

Más de Heiko Koziolek (16)

Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
 
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
 
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of ThingsOpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
 
Self-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT SystemsSelf-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT Systems
 
IoT challenges for Smart Manufacturing
IoT challenges for Smart ManufacturingIoT challenges for Smart Manufacturing
IoT challenges for Smart Manufacturing
 
Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"
 
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin ShellsPlug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
 
6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABB6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABB
 
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
 
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability AnalysisMORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
 
The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software Applications
 
2011 05-27-icse
2011 05-27-icse2011 05-27-icse
2011 05-27-icse
 
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
A Large-Scale Industrial Case Study on Architecture-based Software Reliabilit...
 
Towards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software ApplicationsTowards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software Applications
 
PerOpteryx
PerOpteryxPerOpteryx
PerOpteryx
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
 

Último

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
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
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 2024The 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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

Towards Software Sustainability Guides for Industrial Software Systems

  • 1. © ABB Group February 21, 2011 | Slide 1 TowardsSoftware Sustainability Guidelines for Long-living Industrial Systems Heiko Koziolek, Roland Weiss, Zoya Durdik, Johannes Stammel, Klaus Krogmann
  • 2. Context: Industrial Automation DomainLong-living Software-Intensive Systems © ABB Group February 21, 2011 | Slide 2
  • 3. Context: Software EvolutionExample Release History of a Process Control System © ABB Group February 21, 2011 | Slide 3 Version A First version release with complete system concept Single environment from independent solutions Outstanding Operations Offering Function based Engineering Redundant Controllers and I/O capabilities Connectivity for Harmony and Melody Foundation Fieldbus, Redundant Profibus, HART Version C3 Windows 7 support Alarm Analysis and Alarm Shelving WirelessHART Integration Profinet, Ethernet IP, DeviceNet Engineering efficiency improvements Detailed difference reporting Foundation Fieldbus improvements 2004 2005 2006 2007 2008 2009 2010 Version C1 Multi-system Integration SPI Integration (PETI) MODBUS TCP Version B Increased system size SIL 2 Integrated Safety Connectivity for DCI and MOD 300 Alarm and Event Improvements Remote Clients via MS Terminal Services Version C2 Virtualization support MS WPF Graphics SIL3 Safety IEC 61850 (Intel Elect Devices) New PM866 controller (2x PM864) New S800 I/O (non-red HART) New Power Supplies, smaller footprint Evolution Libraries MOD300 and Infi90 Version C Online Upgrade Capability Multi-User / Distributed Engineering Large screen / Multi-screen enhancements Digital Security Improvements
  • 4. ChallengesSustainable Software Development © ABB Group February 21, 2011 | Slide 4 Limited education of architects and developers for sustainable development Significant costs for software maintenance and evolution Repeating evolution problems and solutions
  • 5. Our approach © ABB Group February 21, 2011 | Slide 5 1. Document re-occuring evolution scenarios in the industrial domain 2. Create guidelines for sustainable software development Scenario XYZ Overview: Data volume exceeds, ... System environment: Normal volume: 1.5 GB, ... Environment changes: Volume changed to 4 GB, ... Required system behaviour: Processing takes less than 4 hours, ... Scenario XYZ Overview: Data volume exceeds, ... System environment: Normal volume: 1.5 GB, ... Environment changes: Volume changed to 4 GB, ... Required system behaviour: Processing takes less than 4 hours, ... Scenario XYZ Overview: Data volume exceeds, ... System environment: Normal data volume: 1.5 GB, ... Environment changes: Datavolume changes to 4 GB, ... Required system behaviour: Processing takes less than 4 hours, ... Method ABC Name: ... Relevance: ... Application effort: ... Short Description: ... Tools: ... Risks: ... Checklist: ... Method ABC Name: ... Relevance: ... Application effort: ... Short Description: ... Tools: ... Risks: ... Checklist: ... Method ABC Name: ... Relevance: ... Application effort: ... Short Description: ... Tools: ... Risks: ... Checklist: ... 3. Validation C1 C2 C3
  • 6. Re-occurring evolution scenariosIndustrial software systems Perfective new services and features integration of third party components integration of third party applications safety certification (IEC61508) performance improvements (I/Os) usability improvements (workplace) security improvements (Stuxnet) ... © ABB Group February 21, 2011 | Slide 6 Adaptive new industry standards migration to new GUI framework migration to new middleware / OS support for virtualization support for multi-core processors updated controller and field devices new network standards ...
  • 7. Sustainability GuidelinesDevelopment Process © ABB Group February 21, 2011 | Slide 7
  • 8. Sources Journals: IEEE TSE, JSME, JSS, EMSE, LNCS, IST, ... Conferences: ICSE, ICSM, IWPSE, CSMR, WICSA, ... Interviews, > 30 Books, Internal ABB documents, ... Keywords agility and architecture, software evolution, strategies, strategy, tactic(s), method(s), approach software maintenance,maintainability, evolvability, longevity, modifiability, flexibility, sustainability, COTS, (data) mining, virtualization, software quality, architecture compliance checking, architecture analysis, code and architecture consistency, architecture(al) enforcements, survey, evaluation Data Collection development phase, relevance automation, relevance sustainability, applicability, tool, preventive/reactive, formalization, perspective, abstraction level, benefits for sustainable software development Sustainability GuidelinesLiterature Review Reviewed Topics (Selection) Software Comprehension using Historical Data Quality Indicators Software Architecture (Analysis) Variability Strategies Automation of Software Development Knowledge Management and Documentation Software Infrastructure Conclusions Wide solutions overview (136 pages) Reference list in each chapter Baseline for sustainability guidelines Not all approaches investigated in detail © ABB Group February 21, 2011 | Slide 8
  • 9. Initial Sustainability GuidelinesOverview © ABB Group February 21, 2011 | Slide 9 Phase IndependentSustainable Documentation, Knowledge Management, Process Improvement, Organizational Structures, ...
  • 10. Sustainability Guidelines ExampleALMA (Architecture-Level Modifiability Analysis) Short Description: Architecture-level modifiability analysis (ALMA) is an analysis approach that focuses on modifiability. For the description of the architecture, an architectural model, i.e., views from several architectural viewpoints have to be created. Change scenario elicitation is done by interviewing stakeholders. … Tool Support: no tool support Why useful? (selection) Helps to estimate long-term impact of design decisions. Quantifies the expected costs of changes to a system pro-actively to support decisions during system evolution. Improves the initial design upfront to avoid maintenance and evolution problems. Risks (selection) Missing critical change scenarios can lead to missing modifiability Selection of non-relevant change scenario might lead to modifiability overhead High overall effort for involving too many stakeholders or due to inefficient execution of the ALMA process Application effort: (medium, manual) Relevance for evolution: The approach can help identifying evolution risks, i.e. changes that can only be performed at high costs. Learning effort: Medium (requires architecture modelling skills and knowledge about modifiability) Addressed problem: The architecture has influence on architecture level. Ensures that critical change scenarios are well-supported by an architecture. General validation: 7 industrial case studies ABB internal validation: n/a © ABB Group February 21, 2011 | Slide 10
  • 11. Validation (1/3)Goals Validate the usability of the guidelines interview developers apply in three post-mortem case studies apply initially in regular projects Validate the applicability of the recommended methods only possible for selected methods conduct case study research, collect best practices reuse empirical studies from literature © ABB Group February 21, 2011 | Slide 11
  • 12. Validation (2/3)Mapping the Guidelines to a Sample Scenario © ABB Group February 21, 2011 | Slide 12
  • 13. Validation (3/3)Planned Case Studies 1. Apply ALMA to compare two software architectures 2. Apply code analysis 3. Recover design rationale on third party component from architectural document. © ABB Group February 21, 2011 | Slide 13
  • 14. ConclusionsSustainability Guidelines for Long-living Systems Maintenance and evolution of industrial software systems are significant cost drivers. Software sustainability guidelines help architects and developers in avoiding and mitigating evolution problems. Further validation is needed in interviews and case studies. © ABB Group February 21, 2011 | Slide 14
  • 15. © ABB Group February 21, 2011 | Slide 15

Notas del editor

  1. industrial automation domainprocess control systemssoftware-intensive systemslong life cycles, more than 15 years, up to 40 years
  2. many changes to a software product after releaseperfective: new features, new devices, ...adaptive: technologies become obsolete must be replacedcorrective: bug reportssoftware development mainly focussed on the phases after release
  3. high percentage of overall development costs = maintenance costssame evolution problems for different products, patterns and tactics as solutionsustainable development not taught at universities, also sometimes sacrifies due to timing constraints, time-to-market pressure
  4. Validation:map methods to scenarios3 case studiesdeveloper feedback
  5. just as overview, need to be documented in detail using templatescorrective and preventive scenario are omitted here for brevity
  6. - this slide is not to be read in detail, just to provide some information about the literature search
  7. structure of the guidelines aligned with ABB software development guidelines structuredoes not imply waterfall process, merely an orientation to the reader
  8. - one short example for a detailled guide line, should give general idea of the content of the document