SlideShare a Scribd company logo
1 of 39
Software Engineering Challenges in
building AI-based complex systems
NTNU
Seminar: Software Engineering, AI, Ethics
2019-03-15
Ivica Crnkovic, ivica.crnkovic@chalmers.se
Ivica Crnkovic
Chalmers University of Technology | Gothenburg University
Professor in Software Engineering
Director of ICT Area of Advance@Chalmers
Director of Chalmers AI Research Centre (CHAIR)
(Mats Nordlund ©)
Chalmers AI Research Centre (CHAIR)
Ethics
Sustainability
Equality
Innovation
3
COLLABORATION PROJECTS
- with industrial partners
CHALMERS PROJECTS
Advancing CHAIR activities
A new initiative from Chalmers 370 MSEK 2019-2028
2019-03-18 Chalmers University of Technology
3
AI FOUNDATION
AI Theories and Algorithms
AI ENABLERS
AI-based Systems and Software
APPLIED AI
Transport Automation and IoT Life science and Health E.
Software Engineering forAI
Ethics
Sustainability
Equality
Innovation
4
COLLABORATION PROJECTS
- with partners
CHALMERS PROJECTS
Advancing CHAIR activities
2019-03-18 Chalmers University of Technology
4
AI FOUNDATION
AI ENABLERS
APPLIED AI
Software
Engineering
for AI
Systems are getting AI - Example: autonomous driving architecture
(Mats Nordlund ©)
Challenge:AI complexity iceberg
AI
Machine Learning
Data Science
Statistics, analysis, visualisation
System Characteristics
Performance, Real-time
System constraints
Storage capacity, memory, computation
Data engineering
Storage, finding, processing
accuracy, availability
Computational Science
Algorithms, simulation
System Requirements
Reliability, Security, Safety
Software Engineering
AI-based development, lifecycle, variations
trustworthiness, ethical values
Data Value
Domain knowledge
3/18/2019 Chalmers 7
• Trend – Overall use of AI in software applications and Software-intensive systems
• Many promising results on the functional/feature level
• Enormous expectations to build system that use AI in obtaining features
• New questions – of non technical character appear
• Which real problems can be solved using data-driven and AI-based approaches?
• How to interpret data?
• Who is owner of data?
• What are the ethical aspects of using data, and allowing machine to decide?
• New questions of technical nature
• How to efficiently collect, store, process, analyse, and present data?
• How to efficiently build the AI-based systems?
• How to ensure dependability/trustworthy of such systems?
• WHAT KIND OF SOFTWARE ENGINEERING SUPPORT IS NEEDED?
Expectations – overall use of AI
3/18/2019 Chalmers 8
Presentation based on
1 (literature)
• Machine Learning: The High-Interest Credit Card of Technical Debt, D. Sculley, G. Holt, D.
Golovin, E. Davydov, T. Phillips, D. Ebner, V. Chaudhary, M. Young
• Software Engineering Challenges of Deep Learning, Euromicro SEAA 2018, A. Arpteg, B.
Brinne, l. Crnkovic-Friis, J. Bosch
2 (empirical research at Swedish companies)
• A taxonomy of software engineering challenges for machine learning systems: An
empirical investigation, XP2019, L. Lwakatare, A. Raj, J. Bosch, H. Holmström, I.Crnkovic
• Ongoing work in “Holistic DevOps Approach” project
Software Engineering Challenges in development of AI-
based systems
3/18/2019
Chalmers 9
System architecture of non-AI systems (example )
Platform
Middleware
Subsystem A
HW
Subsystem B Subsystem C
C1
C2
C3
C4
C3
Subsystem and components
Component-based and service-based approach
- Components
- Encapsulation of data
- Encapsulation of functionality
- Dependency between components defined and controlled
3/18/2019
Chalmers 10
AI-System - system architecture (example)
Platform
Middleware
Subsystem A
HW
Subsystem B Subsystem C
C1
C2
C3
C4
C3
Subsystem and components
Components – black boxes
- Components
- Encapsulation of AI-based functionality
- Dependency between components defined and controlled
- What about data?
3/18/2019 11
AI- based components
C1
Data – used for ML
controlled
Controlled?
• The results depend not only
on the algorithms and controlled data
but also on uncontrolled/unknown data
• The AI-based functions are not continuous:
small change of data can cause big changes
2019-03-18 Chalmers University of Technology 12
Data-related challenges
1. Entanglement (Data fusion)
2. Data dependencies
• Unstable data dependencies
• Underutilized Data Dependencies
3. Hidden Feedback Loops
4. Undeclared Consumers
5. Correction Cascades
3/18/2019 Chalmers 13
• M= {f1, f2, …, fn} - system – a set of features f1…fn in an AI model
Data-related challenges: 1. Entanglement (Data fusion)
The first version of AI system is easy to obtain, but making subsequent
improvements is unexpectedly difficult.
3/18/2019 Chalmers 14
• M= {f1, f2, …, fn} - system – a set of features f1…fn in an AI model
• Changing input data for fx, requires changes in values of fi –
weights, importance, to get optimal result
• Adding a new feature may require the same change that can cause
unpredictable changes in the model
Data-related challenges: 1. Entanglement (Data fusion)
CACE principle: Changing Anything Changes Everything
3/18/2019 Chalmers 15
• Code dependency – known as a technical debt (built-in problems)
• Data dependencies – more complex
Data-related challenges – 2. Data dependencies
DATA
DATA
DATA
AI-component
AI-component
3/18/2019 Chalmers 16
• Unstable data dependencies
• Some data change over time (value, accuracy, precision)
• A common mitigation strategy
• Introduce versions of data sets
• Implication
• Version and configuration management challenges
• Not only version and configuration management of functions (code) but
also data
• how to manage data dependency? No developed tools
• Static analysis of systems with data dependencies - no tools
Data-related challenges – 2. Data dependencies
DATA
DATA
DATA
AI-component
AI-component
3/18/2019 Chalmers 19
• The system can optimise for the feedback
Data-related challenges – 3. Hidden Feedback Loops
DATA
DATA
AI-component
3/18/2019 Chalmers 20
• Changes of data can have unexpected consequences
Data-related challenges – 4. Undeclared Consumers
DATA
DATA
AI-component
C1
AI-component
C2
Problem if C1 changes
and Change data
DATA
3/18/2019 Chalmers 21
• Model m for problem P
• Model m’ for problem P’ (P´- P = DP)
• Often used solution
• m’(P’) = m(P) + Dm - by changes of data used for P break the relation
between m’ and m
Data-related challenges: 5. Correction Cascades
DATA
DATA
AI-component
AI-component
DATA
DATA
AI-component
AI-component
Dependency of data should be controlled
3/18/2019 Chalmers 22
• Heterogeneity of data (different formats, accuracy, semantics) and use of
standard ML functions require a lot Glue code
• 95% of code in AI-based systems is a glue-code (empirical data)
• Requires
• Frequent refactoring of code
• Re-implementing AI models
• Pipeline Jungles
• ML-friendly format data become a jungle of scrapes, joins, and sampling steps,
intermediate files
• Requires – a close team work of data and domain engineers
System-design anti-patterns (1)
3/18/2019 Chalmers 23
Dead Experimental Code paths
• AI solution requires a lot of experimentation
• A lot of code that will not be used later
• Problems
• Dead code
• Version management – how to preserve useful configuration
branches, and remove unnecessary
System-design anti-patterns (2)
3/18/2019 Chalmers 24
Managing Changes in the External World
System
Cloud Data
Local Data
Local Data
Local Data
Historical data
Used in ML
Continuous change of data
Challenge:
models and system behaviour
dependent of data
Examples:
- Threshold changes
- Correlation between data
Requirements: Continuous monitoring of data and system. Continuous test.
3/18/2019 Chalmers 25
Life cycle challenges
ML Code
3/18/2019 Chalmers 26
The efforts in development cycle
Amount of effort Amount of attention
2019-03-18 Chalmers University of Technology 27
Software Engineering Challenges to develop AI-base
systems
• empirical studies at Swedish industry
Requirements driven
development
- Regulatory features
- Competitor parity features
- Commodity features
Outcome/data driven
development
- Value hypothesis
- New ”flow” features
- Innovation
AI driven development
- Minimize prediction errors
- Many points in data set
- Combinatorial explosion of
alternatives
continuous
deployment
behavior
data
System in operation
AI component
SW component
continuous deployment
behavior data
Holistic DevOps Framework
Holistic DevOps Framework
Investigate the
state of art and
of practice
2019-03-18 Chalmers University of Technology 29
Study 1: Overview of studied industrial DL systems
A. Project EST: Real Estate Valuation
B. Project OIL: Predicting Oil and Gas Recovery Potential
C. Project RET: Predicting User Retention
D. Project WEA: Weather Forecasting
E. Project CCF: Credit Card Fraud Detection
F. Project BOT: Poker Bot Identification
G. Project REC: Media Recommendations
2019-03-18 Chalmers University of Technology 30
Study 1: Challenges
1. Development challenges
2. Production challenges
3. Organizational & project challenges
3/18/2019 Chalmers 31
• Experiment Management: how to keep track of all the contextual factors when running
many experiments
• Hardware, Platform, Source code, Configuration, Data sources, Training state
• Difficult to predict behaviour of ML
• Limited Transparency: neural networks give little insight into how and why they work
• Troubleshooting and Testing: large libraries, lazy execution and lack of
tooling complicate solving defects enormously.
• Glue Code and Supporting Systems
• Resource Limitations
• Memory, CPU power, Storage
Study 1: Development challenges
3/18/2019 Chalmers 32
• Dependency Management.
• Requirements on powerful computational resources that are
continuously changing
• Monitoring and Logging
• Unintended Feedback Loops
• Safety, security, and privacy
Study 1: Production challenges
3/18/2019 Chalmers 33
• Effort Estimation
• Difficult to know when the models will be sufficiently good
• Cultural Differences
• Software developers, data scientists
• Development process
• Continuous changes
• Issues with the compatibilities in changes
Study 1: Organizational & project challenges
2019-03-18 Chalmers University of Technology 34
Study 1: Engineering challenges of DL
■Dependency Management
■Glue code and supporting systems
■Unintentional feedback loops
■Monitoring and logging
●Troubleshooting
●Testing ●Limited transparency
●Experimental management
■ Organisational challenges
● Development challenges
◆ Development challenges
◆Effort estimation
◆Cultural differences
Hard to solve
Easier to solveLower business impact High business impact
●Resource Limitations
◆Privacy and Safety/security
2019-03-18 Chalmers University of Technology 35
Study 2: Overview of studied industrial ML systems
System Use case of ML components
Software for automated
driving
Interpreting sensor data to understand the contained information at a high level
AI web platform Predicting quality of end product based on different measurements from machines, IoT devices
Automating tagging of sentiments in online music library
Annotation web platform Collaborative annotation of training data and predicting quality of annotations
Mobile network operations Predicting failures at site to give insights into mobile network operations e.g., predicting
degradation of key performance indicators (latency, throughput) and predicting site’s sustenance
to power outage
Sales engagement web
platform
Automating information extraction from out-of-office reply to optimize communication between
sales reps and prospects
Experimentation web
platform
Models of ML components of e.g., web search engine, are compared using important metrics
through A/B tests
2019-03-18 Chalmers University of Technology 36
Study 2: A taxonomy of evolution of use of ML in industry
Experimentation
and prototyping
Non-critical
deployment
Critical
deployment
Cascading
deployment
Autonomous
ML
components
2019-03-18 Chalmers University of Technology 37
Study 2: Challenges summary
Difficulty in ML/DL pipeline implementation e.g., toolchain for scheduling training jobs, diagnosis and monitoring of ML models
Difficulty in debugging models and subsequently testing DL systems e.g., due to unexplainable/limited transparency of NN
Unestablished KPIs for monitoring the quality of deployed models
Partial trust in the results of ML/DL systems e.g., unreliable results make it unsuitable/require other techniques for regulated products
Extreme overconfidence in technology and Limited number of persons with overlap skills between SE and ML
Difficulty in eliciting ML/DL use case and desired outcome (s)
Inability to take at start end-to-end ML/DL use case due to large scale and complex environment
Difficulty in getting access to training data due to e.g., regulation, ownership by client or other teams.
Limited approaches for selecting and cleaning training data from large data collection e.g., to annotate in automotive
Limited approaches for validating training data e.g., measures for accuracy and consistency of annotations, identifying missing values
Data
Devel.
Trust
2019-03-18 Chalmers University of Technology 38
Study 2: Challenges mapped to the taxonomy
A taxonomy of software engineering challenges for machine learning systems: An empirical investigation, XP2019, Lucy Ellen Lwakatare, Aiswarya Raj, Jan Bosch, Helena Holmström Olsson and Ivica Crnkovic
3/18/2019 Chalmers 39
• New lifecycle and development approach
• New technologies, new communities
• Gaps between prototypes and full lifecycle support
Example of question:
• How to manage continuous deployment in trustworthy and efficient way?
• How easily can an entirely new algorithmic approach be tested at full scale?
• How precisely can the impact of a new change to the system be measured?
• Does improving one model or signal degrade others?
• How quickly can new members of the team be brought up to speed?
A lot of new challenges in (software) development
Conclusion
3/18/2019 Chalmers 40
Software Engineering Challenges in building AI-based complex systems

More Related Content

What's hot

Machine Learning & Amazon SageMaker
Machine Learning & Amazon SageMakerMachine Learning & Amazon SageMaker
Machine Learning & Amazon SageMakerAmazon Web Services
 
MLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in ProductionMLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in ProductionProvectus
 
MODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENTMODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENTPaYal Umraliya
 
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 pptShweta Ghate
 
Observability For Modern Applications
Observability For Modern ApplicationsObservability For Modern Applications
Observability For Modern ApplicationsAmazon Web Services
 
What is Rapid Application Development
What is Rapid Application DevelopmentWhat is Rapid Application Development
What is Rapid Application DevelopmentOutSystems
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesQBurst
 
Capital One DevOps Case Study: A Bank with the Heart of Tech Company
Capital One DevOps Case Study: A Bank with the Heart of Tech CompanyCapital One DevOps Case Study: A Bank with the Heart of Tech Company
Capital One DevOps Case Study: A Bank with the Heart of Tech CompanySimform
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)Tom Kocjan
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference ArchitecturesSonatype
 
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptx
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptxNeo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptx
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptxNeo4j
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationKeith Pleas
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Gurpreet singh
 
Automated Program Repair Keynote talk
Automated Program Repair Keynote talkAutomated Program Repair Keynote talk
Automated Program Repair Keynote talkAbhik Roychoudhury
 
Unified process model
Unified process modelUnified process model
Unified process modelRyndaMaala
 
Software Quality Framework Introduction
Software Quality Framework IntroductionSoftware Quality Framework Introduction
Software Quality Framework IntroductionDon Hough
 
Apply MLOps at Scale
Apply MLOps at ScaleApply MLOps at Scale
Apply MLOps at ScaleDatabricks
 

What's hot (20)

Machine Learning & Amazon SageMaker
Machine Learning & Amazon SageMakerMachine Learning & Amazon SageMaker
Machine Learning & Amazon SageMaker
 
MLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in ProductionMLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in Production
 
MODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENTMODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENT
 
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
 
Legacy system.
Legacy system.Legacy system.
Legacy system.
 
Observability For Modern Applications
Observability For Modern ApplicationsObservability For Modern Applications
Observability For Modern Applications
 
What is Rapid Application Development
What is Rapid Application DevelopmentWhat is Rapid Application Development
What is Rapid Application Development
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best Practices
 
Capital One DevOps Case Study: A Bank with the Heart of Tech Company
Capital One DevOps Case Study: A Bank with the Heart of Tech CompanyCapital One DevOps Case Study: A Bank with the Heart of Tech Company
Capital One DevOps Case Study: A Bank with the Heart of Tech Company
 
DEVSECOPS.pptx
DEVSECOPS.pptxDEVSECOPS.pptx
DEVSECOPS.pptx
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures
 
Introducing MDSD
Introducing MDSDIntroducing MDSD
Introducing MDSD
 
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptx
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptxNeo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptx
Neo4j & AWS Bedrock workshop at GraphSummit London 14 Nov 2023.pptx
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the Automation
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3
 
Automated Program Repair Keynote talk
Automated Program Repair Keynote talkAutomated Program Repair Keynote talk
Automated Program Repair Keynote talk
 
Unified process model
Unified process modelUnified process model
Unified process model
 
Software Quality Framework Introduction
Software Quality Framework IntroductionSoftware Quality Framework Introduction
Software Quality Framework Introduction
 
Apply MLOps at Scale
Apply MLOps at ScaleApply MLOps at Scale
Apply MLOps at Scale
 

Similar to Software Engineering Challenges in building AI-based complex systems

2020 09-16-ai-engineering challanges
2020 09-16-ai-engineering challanges2020 09-16-ai-engineering challanges
2020 09-16-ai-engineering challangesIvica Crnkovic
 
Ai engineering icsoc -2019-10-30
Ai engineering icsoc -2019-10-30Ai engineering icsoc -2019-10-30
Ai engineering icsoc -2019-10-30Ivica Crnkovic
 
AI challanges - Cse day-2018.04.12
AI challanges - Cse day-2018.04.12AI challanges - Cse day-2018.04.12
AI challanges - Cse day-2018.04.12Ivica Crnkovic
 
Data Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data ScienceData Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data SciencePouria Amirian
 
Data Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data ScienceData Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data SciencePouria Amirian
 
AI4SE: Challenges and opportunities in the integration of Systems Engineering...
AI4SE: Challenges and opportunities in the integration of Systems Engineering...AI4SE: Challenges and opportunities in the integration of Systems Engineering...
AI4SE: Challenges and opportunities in the integration of Systems Engineering...CARLOS III UNIVERSITY OF MADRID
 
Challenges in the integration of Systems Engineering and the AI/ML model life...
Challenges in the integration of Systems Engineering and the AI/ML model life...Challenges in the integration of Systems Engineering and the AI/ML model life...
Challenges in the integration of Systems Engineering and the AI/ML model life...CARLOS III UNIVERSITY OF MADRID
 
Enabling the digital thread using open OSLC standards
Enabling the digital thread using open OSLC standardsEnabling the digital thread using open OSLC standards
Enabling the digital thread using open OSLC standardsAxel Reichwein
 
DutchMLSchool. ML for Energy Trading and Automotive Sector
DutchMLSchool. ML for Energy Trading and Automotive SectorDutchMLSchool. ML for Energy Trading and Automotive Sector
DutchMLSchool. ML for Energy Trading and Automotive SectorBigML, Inc
 
Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Obeo
 
Practical machine learning
Practical machine learningPractical machine learning
Practical machine learningFaizan Javed
 
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...Naoshi Uchihira
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Lionel Briand
 
Sailing the V: Engineering digitalization through task automation and reuse i...
Sailing the V: Engineering digitalization through task automation and reuse i...Sailing the V: Engineering digitalization through task automation and reuse i...
Sailing the V: Engineering digitalization through task automation and reuse i...CARLOS III UNIVERSITY OF MADRID
 
CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...Grigori Fursin
 
Test-Driven Machine Learning
Test-Driven Machine LearningTest-Driven Machine Learning
Test-Driven Machine LearningC4Media
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software EngineeringMiroslaw Staron
 

Similar to Software Engineering Challenges in building AI-based complex systems (20)

2020 09-16-ai-engineering challanges
2020 09-16-ai-engineering challanges2020 09-16-ai-engineering challanges
2020 09-16-ai-engineering challanges
 
Ai engineering icsoc -2019-10-30
Ai engineering icsoc -2019-10-30Ai engineering icsoc -2019-10-30
Ai engineering icsoc -2019-10-30
 
AI challanges - Cse day-2018.04.12
AI challanges - Cse day-2018.04.12AI challanges - Cse day-2018.04.12
AI challanges - Cse day-2018.04.12
 
INCOSE IS 2019: AI and Systems Engineering
INCOSE IS 2019: AI and Systems EngineeringINCOSE IS 2019: AI and Systems Engineering
INCOSE IS 2019: AI and Systems Engineering
 
Data Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data ScienceData Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data Science
 
Data Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data ScienceData Science as a Service: Intersection of Cloud Computing and Data Science
Data Science as a Service: Intersection of Cloud Computing and Data Science
 
AI4SE: Challenges and opportunities in the integration of Systems Engineering...
AI4SE: Challenges and opportunities in the integration of Systems Engineering...AI4SE: Challenges and opportunities in the integration of Systems Engineering...
AI4SE: Challenges and opportunities in the integration of Systems Engineering...
 
Challenges in the integration of Systems Engineering and the AI/ML model life...
Challenges in the integration of Systems Engineering and the AI/ML model life...Challenges in the integration of Systems Engineering and the AI/ML model life...
Challenges in the integration of Systems Engineering and the AI/ML model life...
 
Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...Deep learning in manufacturing predicting and preventing manufacturing defect...
Deep learning in manufacturing predicting and preventing manufacturing defect...
 
SESE 2021: Where Systems Engineering meets AI/ML
SESE 2021: Where Systems Engineering meets AI/MLSESE 2021: Where Systems Engineering meets AI/ML
SESE 2021: Where Systems Engineering meets AI/ML
 
Enabling the digital thread using open OSLC standards
Enabling the digital thread using open OSLC standardsEnabling the digital thread using open OSLC standards
Enabling the digital thread using open OSLC standards
 
DutchMLSchool. ML for Energy Trading and Automotive Sector
DutchMLSchool. ML for Energy Trading and Automotive SectorDutchMLSchool. ML for Energy Trading and Automotive Sector
DutchMLSchool. ML for Energy Trading and Automotive Sector
 
Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...Capella Days 2021 | An example of model-centric engineering environment with ...
Capella Days 2021 | An example of model-centric engineering environment with ...
 
Practical machine learning
Practical machine learningPractical machine learning
Practical machine learning
 
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...
Project FMEA for Recognizing Difficulties in Machine Learning Application Sys...
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.
 
Sailing the V: Engineering digitalization through task automation and reuse i...
Sailing the V: Engineering digitalization through task automation and reuse i...Sailing the V: Engineering digitalization through task automation and reuse i...
Sailing the V: Engineering digitalization through task automation and reuse i...
 
CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...CK: from ad hoc computer engineering to collaborative and reproducible data s...
CK: from ad hoc computer engineering to collaborative and reproducible data s...
 
Test-Driven Machine Learning
Test-Driven Machine LearningTest-Driven Machine Learning
Test-Driven Machine Learning
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software Engineering
 

More from Ivica Crnkovic

ICSE 2018 opening session
ICSE 2018 opening sessionICSE 2018 opening session
ICSE 2018 opening sessionIvica Crnkovic
 
Beyond digitalisation 2016-06-07
Beyond digitalisation  2016-06-07Beyond digitalisation  2016-06-07
Beyond digitalisation 2016-06-07Ivica Crnkovic
 
ICSE2018 presentation 2016-05-20
ICSE2018 presentation 2016-05-20ICSE2018 presentation 2016-05-20
ICSE2018 presentation 2016-05-20Ivica Crnkovic
 
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...Ivica Crnkovic
 
European Conference on Software Architecture - ECSA 2015 Announcement
European Conference on Software Architecture - ECSA 2015 AnnouncementEuropean Conference on Software Architecture - ECSA 2015 Announcement
European Conference on Software Architecture - ECSA 2015 AnnouncementIvica Crnkovic
 
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...Rapid Continuous Software Engineering - Meeting the challenges of modern sof...
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...Ivica Crnkovic
 
Software Assurance: What Should We Do next? - Software Design for Reliability
Software Assurance: What Should We Do next?  - Software Design for ReliabilitySoftware Assurance: What Should We Do next?  - Software Design for Reliability
Software Assurance: What Should We Do next? - Software Design for ReliabilityIvica Crnkovic
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component modelsIvica Crnkovic
 
Teaching in multicultural classromre
Teaching in multicultural  classromreTeaching in multicultural  classromre
Teaching in multicultural classromreIvica Crnkovic
 
The challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseThe challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseIvica Crnkovic
 
Resilient systems - predicatbility ane evolution
Resilient systems - predicatbility ane evolutionResilient systems - predicatbility ane evolution
Resilient systems - predicatbility ane evolutionIvica Crnkovic
 
Empirical se 2013-01-17
Empirical se 2013-01-17Empirical se 2013-01-17
Empirical se 2013-01-17Ivica Crnkovic
 
Crnkovic cbse-impact.pptx
Crnkovic cbse-impact.pptxCrnkovic cbse-impact.pptx
Crnkovic cbse-impact.pptxIvica Crnkovic
 
Ten Tips to Succeed in Global Software Engineering Education
Ten Tips to Succeed in Global Software Engineering EducationTen Tips to Succeed in Global Software Engineering Education
Ten Tips to Succeed in Global Software Engineering EducationIvica Crnkovic
 

More from Ivica Crnkovic (16)

ICSE 2018 opening session
ICSE 2018 opening sessionICSE 2018 opening session
ICSE 2018 opening session
 
Beyond digitalisation 2016-06-07
Beyond digitalisation  2016-06-07Beyond digitalisation  2016-06-07
Beyond digitalisation 2016-06-07
 
ICSE2018 presentation 2016-05-20
ICSE2018 presentation 2016-05-20ICSE2018 presentation 2016-05-20
ICSE2018 presentation 2016-05-20
 
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
Component-Based and Model-Driven Engineering: what is the difference? A CBSE ...
 
European Conference on Software Architecture - ECSA 2015 Announcement
European Conference on Software Architecture - ECSA 2015 AnnouncementEuropean Conference on Software Architecture - ECSA 2015 Announcement
European Conference on Software Architecture - ECSA 2015 Announcement
 
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...Rapid Continuous Software Engineering - Meeting the challenges of modern sof...
Rapid Continuous Software Engineering - Meeting the challenges of modern sof...
 
Software Assurance: What Should We Do next? - Software Design for Reliability
Software Assurance: What Should We Do next?  - Software Design for ReliabilitySoftware Assurance: What Should We Do next?  - Software Design for Reliability
Software Assurance: What Should We Do next? - Software Design for Reliability
 
Sa past-future
Sa past-futureSa past-future
Sa past-future
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component models
 
Teaching in multicultural classromre
Teaching in multicultural  classromreTeaching in multicultural  classromre
Teaching in multicultural classromre
 
The challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseThe challenges and opportunities in open source reuse
The challenges and opportunities in open source reuse
 
Resilient systems - predicatbility ane evolution
Resilient systems - predicatbility ane evolutionResilient systems - predicatbility ane evolution
Resilient systems - predicatbility ane evolution
 
Empirical se 2013-01-17
Empirical se 2013-01-17Empirical se 2013-01-17
Empirical se 2013-01-17
 
SPL in Clouds
SPL in CloudsSPL in Clouds
SPL in Clouds
 
Crnkovic cbse-impact.pptx
Crnkovic cbse-impact.pptxCrnkovic cbse-impact.pptx
Crnkovic cbse-impact.pptx
 
Ten Tips to Succeed in Global Software Engineering Education
Ten Tips to Succeed in Global Software Engineering EducationTen Tips to Succeed in Global Software Engineering Education
Ten Tips to Succeed in Global Software Engineering Education
 

Recently uploaded

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Recently uploaded (20)

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

Software Engineering Challenges in building AI-based complex systems

  • 1. Software Engineering Challenges in building AI-based complex systems NTNU Seminar: Software Engineering, AI, Ethics 2019-03-15 Ivica Crnkovic, ivica.crnkovic@chalmers.se
  • 2. Ivica Crnkovic Chalmers University of Technology | Gothenburg University Professor in Software Engineering Director of ICT Area of Advance@Chalmers Director of Chalmers AI Research Centre (CHAIR) (Mats Nordlund ©)
  • 3. Chalmers AI Research Centre (CHAIR) Ethics Sustainability Equality Innovation 3 COLLABORATION PROJECTS - with industrial partners CHALMERS PROJECTS Advancing CHAIR activities A new initiative from Chalmers 370 MSEK 2019-2028 2019-03-18 Chalmers University of Technology 3 AI FOUNDATION AI Theories and Algorithms AI ENABLERS AI-based Systems and Software APPLIED AI Transport Automation and IoT Life science and Health E.
  • 4. Software Engineering forAI Ethics Sustainability Equality Innovation 4 COLLABORATION PROJECTS - with partners CHALMERS PROJECTS Advancing CHAIR activities 2019-03-18 Chalmers University of Technology 4 AI FOUNDATION AI ENABLERS APPLIED AI Software Engineering for AI
  • 5. Systems are getting AI - Example: autonomous driving architecture (Mats Nordlund ©)
  • 6. Challenge:AI complexity iceberg AI Machine Learning Data Science Statistics, analysis, visualisation System Characteristics Performance, Real-time System constraints Storage capacity, memory, computation Data engineering Storage, finding, processing accuracy, availability Computational Science Algorithms, simulation System Requirements Reliability, Security, Safety Software Engineering AI-based development, lifecycle, variations trustworthiness, ethical values Data Value Domain knowledge
  • 7. 3/18/2019 Chalmers 7 • Trend – Overall use of AI in software applications and Software-intensive systems • Many promising results on the functional/feature level • Enormous expectations to build system that use AI in obtaining features • New questions – of non technical character appear • Which real problems can be solved using data-driven and AI-based approaches? • How to interpret data? • Who is owner of data? • What are the ethical aspects of using data, and allowing machine to decide? • New questions of technical nature • How to efficiently collect, store, process, analyse, and present data? • How to efficiently build the AI-based systems? • How to ensure dependability/trustworthy of such systems? • WHAT KIND OF SOFTWARE ENGINEERING SUPPORT IS NEEDED? Expectations – overall use of AI
  • 8. 3/18/2019 Chalmers 8 Presentation based on 1 (literature) • Machine Learning: The High-Interest Credit Card of Technical Debt, D. Sculley, G. Holt, D. Golovin, E. Davydov, T. Phillips, D. Ebner, V. Chaudhary, M. Young • Software Engineering Challenges of Deep Learning, Euromicro SEAA 2018, A. Arpteg, B. Brinne, l. Crnkovic-Friis, J. Bosch 2 (empirical research at Swedish companies) • A taxonomy of software engineering challenges for machine learning systems: An empirical investigation, XP2019, L. Lwakatare, A. Raj, J. Bosch, H. Holmström, I.Crnkovic • Ongoing work in “Holistic DevOps Approach” project Software Engineering Challenges in development of AI- based systems
  • 9. 3/18/2019 Chalmers 9 System architecture of non-AI systems (example ) Platform Middleware Subsystem A HW Subsystem B Subsystem C C1 C2 C3 C4 C3 Subsystem and components Component-based and service-based approach - Components - Encapsulation of data - Encapsulation of functionality - Dependency between components defined and controlled
  • 10. 3/18/2019 Chalmers 10 AI-System - system architecture (example) Platform Middleware Subsystem A HW Subsystem B Subsystem C C1 C2 C3 C4 C3 Subsystem and components Components – black boxes - Components - Encapsulation of AI-based functionality - Dependency between components defined and controlled - What about data?
  • 11. 3/18/2019 11 AI- based components C1 Data – used for ML controlled Controlled? • The results depend not only on the algorithms and controlled data but also on uncontrolled/unknown data • The AI-based functions are not continuous: small change of data can cause big changes
  • 12. 2019-03-18 Chalmers University of Technology 12 Data-related challenges 1. Entanglement (Data fusion) 2. Data dependencies • Unstable data dependencies • Underutilized Data Dependencies 3. Hidden Feedback Loops 4. Undeclared Consumers 5. Correction Cascades
  • 13. 3/18/2019 Chalmers 13 • M= {f1, f2, …, fn} - system – a set of features f1…fn in an AI model Data-related challenges: 1. Entanglement (Data fusion)
  • 14. The first version of AI system is easy to obtain, but making subsequent improvements is unexpectedly difficult. 3/18/2019 Chalmers 14 • M= {f1, f2, …, fn} - system – a set of features f1…fn in an AI model • Changing input data for fx, requires changes in values of fi – weights, importance, to get optimal result • Adding a new feature may require the same change that can cause unpredictable changes in the model Data-related challenges: 1. Entanglement (Data fusion) CACE principle: Changing Anything Changes Everything
  • 15. 3/18/2019 Chalmers 15 • Code dependency – known as a technical debt (built-in problems) • Data dependencies – more complex Data-related challenges – 2. Data dependencies DATA DATA DATA AI-component AI-component
  • 16. 3/18/2019 Chalmers 16 • Unstable data dependencies • Some data change over time (value, accuracy, precision) • A common mitigation strategy • Introduce versions of data sets • Implication • Version and configuration management challenges • Not only version and configuration management of functions (code) but also data • how to manage data dependency? No developed tools • Static analysis of systems with data dependencies - no tools Data-related challenges – 2. Data dependencies DATA DATA DATA AI-component AI-component
  • 17. 3/18/2019 Chalmers 19 • The system can optimise for the feedback Data-related challenges – 3. Hidden Feedback Loops DATA DATA AI-component
  • 18. 3/18/2019 Chalmers 20 • Changes of data can have unexpected consequences Data-related challenges – 4. Undeclared Consumers DATA DATA AI-component C1 AI-component C2 Problem if C1 changes and Change data DATA
  • 19. 3/18/2019 Chalmers 21 • Model m for problem P • Model m’ for problem P’ (P´- P = DP) • Often used solution • m’(P’) = m(P) + Dm - by changes of data used for P break the relation between m’ and m Data-related challenges: 5. Correction Cascades DATA DATA AI-component AI-component DATA DATA AI-component AI-component Dependency of data should be controlled
  • 20. 3/18/2019 Chalmers 22 • Heterogeneity of data (different formats, accuracy, semantics) and use of standard ML functions require a lot Glue code • 95% of code in AI-based systems is a glue-code (empirical data) • Requires • Frequent refactoring of code • Re-implementing AI models • Pipeline Jungles • ML-friendly format data become a jungle of scrapes, joins, and sampling steps, intermediate files • Requires – a close team work of data and domain engineers System-design anti-patterns (1)
  • 21. 3/18/2019 Chalmers 23 Dead Experimental Code paths • AI solution requires a lot of experimentation • A lot of code that will not be used later • Problems • Dead code • Version management – how to preserve useful configuration branches, and remove unnecessary System-design anti-patterns (2)
  • 22. 3/18/2019 Chalmers 24 Managing Changes in the External World System Cloud Data Local Data Local Data Local Data Historical data Used in ML Continuous change of data Challenge: models and system behaviour dependent of data Examples: - Threshold changes - Correlation between data Requirements: Continuous monitoring of data and system. Continuous test.
  • 23. 3/18/2019 Chalmers 25 Life cycle challenges ML Code
  • 24. 3/18/2019 Chalmers 26 The efforts in development cycle Amount of effort Amount of attention
  • 25. 2019-03-18 Chalmers University of Technology 27 Software Engineering Challenges to develop AI-base systems • empirical studies at Swedish industry
  • 26. Requirements driven development - Regulatory features - Competitor parity features - Commodity features Outcome/data driven development - Value hypothesis - New ”flow” features - Innovation AI driven development - Minimize prediction errors - Many points in data set - Combinatorial explosion of alternatives continuous deployment behavior data System in operation AI component SW component continuous deployment behavior data Holistic DevOps Framework Holistic DevOps Framework Investigate the state of art and of practice
  • 27. 2019-03-18 Chalmers University of Technology 29 Study 1: Overview of studied industrial DL systems A. Project EST: Real Estate Valuation B. Project OIL: Predicting Oil and Gas Recovery Potential C. Project RET: Predicting User Retention D. Project WEA: Weather Forecasting E. Project CCF: Credit Card Fraud Detection F. Project BOT: Poker Bot Identification G. Project REC: Media Recommendations
  • 28. 2019-03-18 Chalmers University of Technology 30 Study 1: Challenges 1. Development challenges 2. Production challenges 3. Organizational & project challenges
  • 29. 3/18/2019 Chalmers 31 • Experiment Management: how to keep track of all the contextual factors when running many experiments • Hardware, Platform, Source code, Configuration, Data sources, Training state • Difficult to predict behaviour of ML • Limited Transparency: neural networks give little insight into how and why they work • Troubleshooting and Testing: large libraries, lazy execution and lack of tooling complicate solving defects enormously. • Glue Code and Supporting Systems • Resource Limitations • Memory, CPU power, Storage Study 1: Development challenges
  • 30. 3/18/2019 Chalmers 32 • Dependency Management. • Requirements on powerful computational resources that are continuously changing • Monitoring and Logging • Unintended Feedback Loops • Safety, security, and privacy Study 1: Production challenges
  • 31. 3/18/2019 Chalmers 33 • Effort Estimation • Difficult to know when the models will be sufficiently good • Cultural Differences • Software developers, data scientists • Development process • Continuous changes • Issues with the compatibilities in changes Study 1: Organizational & project challenges
  • 32. 2019-03-18 Chalmers University of Technology 34 Study 1: Engineering challenges of DL ■Dependency Management ■Glue code and supporting systems ■Unintentional feedback loops ■Monitoring and logging ●Troubleshooting ●Testing ●Limited transparency ●Experimental management ■ Organisational challenges ● Development challenges ◆ Development challenges ◆Effort estimation ◆Cultural differences Hard to solve Easier to solveLower business impact High business impact ●Resource Limitations ◆Privacy and Safety/security
  • 33. 2019-03-18 Chalmers University of Technology 35 Study 2: Overview of studied industrial ML systems System Use case of ML components Software for automated driving Interpreting sensor data to understand the contained information at a high level AI web platform Predicting quality of end product based on different measurements from machines, IoT devices Automating tagging of sentiments in online music library Annotation web platform Collaborative annotation of training data and predicting quality of annotations Mobile network operations Predicting failures at site to give insights into mobile network operations e.g., predicting degradation of key performance indicators (latency, throughput) and predicting site’s sustenance to power outage Sales engagement web platform Automating information extraction from out-of-office reply to optimize communication between sales reps and prospects Experimentation web platform Models of ML components of e.g., web search engine, are compared using important metrics through A/B tests
  • 34. 2019-03-18 Chalmers University of Technology 36 Study 2: A taxonomy of evolution of use of ML in industry Experimentation and prototyping Non-critical deployment Critical deployment Cascading deployment Autonomous ML components
  • 35. 2019-03-18 Chalmers University of Technology 37 Study 2: Challenges summary Difficulty in ML/DL pipeline implementation e.g., toolchain for scheduling training jobs, diagnosis and monitoring of ML models Difficulty in debugging models and subsequently testing DL systems e.g., due to unexplainable/limited transparency of NN Unestablished KPIs for monitoring the quality of deployed models Partial trust in the results of ML/DL systems e.g., unreliable results make it unsuitable/require other techniques for regulated products Extreme overconfidence in technology and Limited number of persons with overlap skills between SE and ML Difficulty in eliciting ML/DL use case and desired outcome (s) Inability to take at start end-to-end ML/DL use case due to large scale and complex environment Difficulty in getting access to training data due to e.g., regulation, ownership by client or other teams. Limited approaches for selecting and cleaning training data from large data collection e.g., to annotate in automotive Limited approaches for validating training data e.g., measures for accuracy and consistency of annotations, identifying missing values Data Devel. Trust
  • 36. 2019-03-18 Chalmers University of Technology 38 Study 2: Challenges mapped to the taxonomy A taxonomy of software engineering challenges for machine learning systems: An empirical investigation, XP2019, Lucy Ellen Lwakatare, Aiswarya Raj, Jan Bosch, Helena Holmström Olsson and Ivica Crnkovic
  • 37. 3/18/2019 Chalmers 39 • New lifecycle and development approach • New technologies, new communities • Gaps between prototypes and full lifecycle support Example of question: • How to manage continuous deployment in trustworthy and efficient way? • How easily can an entirely new algorithmic approach be tested at full scale? • How precisely can the impact of a new change to the system be measured? • Does improving one model or signal degrade others? • How quickly can new members of the team be brought up to speed? A lot of new challenges in (software) development Conclusion

Editor's Notes

  1. (1) Hardware (e.g. GPU models primarily) (2) Platform (e.g. operating system and installed packages) (3) Source code (e.g. model training and pre-processing) (4) Configuration (e.g. model configuration and pre-processing settings) (5) Data sources (e.g. input signals and target values) (6) Training state (e.g. versions of trained model). Traditional management of software is usually light