SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
1
Quality in Industrial Software
Schneider Electric
Automation
Speaker : Jerôme Firmin
General Manager for PLC Software
Division - Name - Date - Language 2
Table of Content
 “Automation World” : what are we doing in Software & Firmware ?
 “Customer Attitude” : how do we manage Quality issues ?
 “Quality Focus” : what are our priorities for implementing Quality in
our development ?
 Highlights
Division - Name - Date - Language 3
From Enterprise to Plant floor
 Information
 Control
(PLC: Programming
Logical Controller)
 Device
Division - Name - Date - Language 4
Software on PC & Embedded Firmware in PLC
IT integration
Maintenance
User Interface
Standardization
Connectivity
User
Configuration &
Programming
SAFETY
Division - Name - Date - Language 5
Some numbers for our Software & Firmware
A single Software on PC
2,7 Millions of C++ lines of code
65 000 files under source control
350 software components
5100 classes
70.000 methods
11 OS Firmware in PLC
325 000 C and C++ lines of code
1 400 files under source control
30 software components
Division - Name - Date - Language 6
Our Software locations
North Andover
(BOSTON)
Seligenstadt
(Frankfurt)
Sophia-Antipolis
(Nice)
Bangalore
(India)
Shanghaï
(China)
Division - Name - Date - Language 7
Table of Content
 “Automation World” : what are we doing in Software & Firmware ?
 “Customer Attitude” : how do we manage Quality issues ?
 “Quality Focus” : what are our priorities for implementing Quality in
our development ?
 Highlights
Division - Name - Date - Language 8
Software Quality cases escalation
 Escalation from Country to Centralized Support – Daily Basis
 Raised when a technical question or issue cannot be answered locally
Daily basis
Processes managed under Rational ClearQuest Rational
http://www.ibm.com/developerworks/rational
 Critical Issue : raised due to risk of losing a Customer when the
normal process has failed – Interruption process
 Managed by a sponsor with priority n°1 for all contributors
 Customer regularly updated on the status until case is closed
 Product Safety Alert : raised when bodily injury and/or property
damage has occurred/can occur
 Any employee can raise a PSA
 Early containment and communication made to users
Division - Name - Date - Language 9
How do we deliver Quality to our customers ?
 New version of the software & firmware – Unity Pro V3.0, V3.1 …
 Added features
 A set of bug fixing
 Service Pack between versions – Unity Pro V3.0 SP1
 A set of bug fixing
 Delivered on public web site
 Hot fix
 A targeted fix for a dedicated customer – No public distribution
With strong rules for Traceability and Compatibility
Managed by intensive use of Rational ClearCase & ClearQuest
http://www.ibm.com/developerworks/rational
Division - Name - Date - Language 10
Table of Content
 “Automation World” : what are we doing in Software & Firmware ?
 “Customer Attitude” : how do we manage Quality issues ?
 “Quality Focus” : what are our priorities for implementing Quality in
our development ?
 Highlights
Division - Name - Date - Language 11
From market needs to validated solutions
Customer requirement
(More & More System view)
Customer usability
(System, Interoperability)
Schneider product &
system requirement
(Technical invariants...)
System Validation
(Limits , Robustness,
Performances Compatibilities)
Product specification Product verification &
certification
Incremental design
Customer Customer
Incremental verification
Unit Test
Use of Rational Robot
Division - Name - Date - Language 12
What Quality factors did we choose as priorities ?
 Reliability
 Increase quality of code “at the source”
 Extend / Automate Unit Tests coverage and smart non regression
 Improve customer orientation for Verification & Validation scenarios
 Architecture
 Use UML models for use case description and evolution
 Always updated Hands book for developers / architects
 Maintainability
 Check and reduce complexity
 Push for code documentation and do & “just enough” in specification
 Define and check coding rules
 Evolutivity
 Ensure / solidify modularity of components
 Enable maximum openness (API, XML source format)
Division - Name - Date - Language 13
 Easy to setup
 Easy to use for developers
 Personalized pages
 Reports are clear
 Good customization
 Web based architecture
 Support for COM
 Very little false positive rate
 Deep analysis
 Excellent support
Coverity Prevent for Software static code analysis
http://www.coverity.com/
Division - Name - Date - Language 14
 Widely used for embedded systems
 Full data ranges of variables are
analyzed
 Clear testimonial : Analyzed software
is free of bugs
 MISRA checks embedded
Polyspace for Firmware static code analysis
http://www.polyspace.com/
(now MathWorks)
Division - Name - Date - Language 15
Unit Tests managed in a home-made repository
 Unit Tests database for tracking scenarios plans & reports
Division - Name - Date - Language 16
Unit Tests based on CppUnit and internal GUIs
 Strong push for automating Unit tests at development time, specially
for the very sensitive area of code generation for PLC
http://sourceforge.net/projects/cppunit
Division - Name - Date - Language 17
What Quality factors did we choose as priorities ?
 Reliability
 Increase quality of code “at the source”
 Extend / Automate Unit Tests coverage and smart non regression
 Improve customer orientation for Verification & Validation scenarios
 Architecture
 Use UML models for use case description and evolution
 Always updated Hands book for developers / architects
 Maintainability
 Check and reduce complexity
 Push for code documentation and do & “just enough” in specification
 Define and check coding rules
 Evolutivity
 Ensure / solidify modularity of components
 Enable maximum openness (API, XML source format)
Division - Name - Date - Language 18
 Code execution coverage
 Good results achieved with PureCoverage
 Cantata++ under evaluation
 TrueCoverage (DevPartnerStudio) under evaluation
Code coverage
http://www-306.ibm.com/software/awdtools/purecoverage/support/index.html
http://www.ipl.com/products/tools/pt400.uk.php
http://www.compuware.com/products/devpartner/default.htm
Division - Name - Date - Language 19
What Quality factors did we choose as priorities ?
 Reliability
 Increase quality of code “at the source”
 Extend / Automate Unit Tests coverage and smart non regression
 Improve customer orientation for Verification & Validation scenarios
 Architecture
 Use UML models for use case description and evolution
 Always updated Hands book for developers / architects
 Maintainability
 Check and reduce complexity
 Push for code documentation and do & “just enough” in specification
 Define and check coding rules
 Evolutivity
 Ensure / solidify modularity of components
 Enable maximum openness (API, XML source format)
Division - Name - Date - Language 20
 Internal Metrics platform
 We have a historical base from V1 to current version
– Base indicators & derived Maintainability Index
(using standard formula from SEI)
– Our Unity software has a good maintainability in average
 External Metrics platform on going evaluation
 CAST
http://www.castsoftware.com/
 SQUALE- open source
http://www.qualixo.com/
 Coding rules checking
 Good results achieved with C++Test – For use on new projects
Complexity metrics, Coding Rules

http://www.parasoft.com/jsp/products/home.jsp?product=CppTest
Division - Name - Date - Language 21
Typical process for Firmware
INTEGRATION phase
Investigation and
CODING
UNIT TESTS
CODE REVIEW
Automated tests
(Rational Tests)
Coding rules review
(RSM)
Fault insertion tests
Code instrumentation
Source code
Test report
(Instrumentation + Fault insertion)
Code Review report
Automatic Test report
Qualimetry report
IS3 Developpement process [CODING]
Test SCRIPT (RTRT)
Reworking
if error
ClearCase Versionned files
Excel sheet per activity
Html RTRT report
RSM excel report
Peer review by other
developper
Report review
Report review
Report review
Report review
Functional tests and Automatic tests
are launched again during integration
Notations
Reworking loop
Added for IS3 (In Red)
Process phase
Standard Dev. process
Division - Name - Date - Language 22
Quality : No conclusion but a permanent improvement
 Our customers expect us to deal professionally with issues
 A problem permanently solved is a loyalty booster

Más contenido relacionado

La actualidad más candente (19)

Praveen Kumar Vemuri
Praveen Kumar VemuriPraveen Kumar Vemuri
Praveen Kumar Vemuri
 
[EN] PLC programs development guidelines
[EN] PLC programs development guidelines[EN] PLC programs development guidelines
[EN] PLC programs development guidelines
 
Richa Rani-QA Consultant
Richa Rani-QA ConsultantRicha Rani-QA Consultant
Richa Rani-QA Consultant
 
kirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experincekirusanthan_Automotive_validation_engineer_4Year_experince
kirusanthan_Automotive_validation_engineer_4Year_experince
 
CV Nagaraju Sreeram
CV Nagaraju SreeramCV Nagaraju Sreeram
CV Nagaraju Sreeram
 
Ahmed Faraz
Ahmed FarazAhmed Faraz
Ahmed Faraz
 
Felix Ramos_Automation Programmer Analyst_QA
Felix Ramos_Automation Programmer Analyst_QAFelix Ramos_Automation Programmer Analyst_QA
Felix Ramos_Automation Programmer Analyst_QA
 
Kabir_QA1
Kabir_QA1Kabir_QA1
Kabir_QA1
 
Raji_QA
Raji_QARaji_QA
Raji_QA
 
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FISDeepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
 
Resumeupdated
ResumeupdatedResumeupdated
Resumeupdated
 
Manoj resume
Manoj resumeManoj resume
Manoj resume
 
RajeswaraRao_Resume_3years
RajeswaraRao_Resume_3yearsRajeswaraRao_Resume_3years
RajeswaraRao_Resume_3years
 
Nishar_Resume
Nishar_ResumeNishar_Resume
Nishar_Resume
 
Gajanan Bhat
Gajanan BhatGajanan Bhat
Gajanan Bhat
 
Resume_Archana_Rao
Resume_Archana_RaoResume_Archana_Rao
Resume_Archana_Rao
 
11+YrsQAProfile_ ValidH1BAug2018
11+YrsQAProfile_ ValidH1BAug201811+YrsQAProfile_ ValidH1BAug2018
11+YrsQAProfile_ ValidH1BAug2018
 
RFT - Ashish Mathur
RFT - Ashish MathurRFT - Ashish Mathur
RFT - Ashish Mathur
 
Resume-Ramchandra Gupta
Resume-Ramchandra GuptaResume-Ramchandra Gupta
Resume-Ramchandra Gupta
 

Similar a 20070925 03 - La qualimétrie en environnement industriel (Schneider automation)

Rhapsody Software
Rhapsody SoftwareRhapsody Software
Rhapsody Software
Bill Duncan
 
Orcanos medical-common-validation-errors
Orcanos medical-common-validation-errorsOrcanos medical-common-validation-errors
Orcanos medical-common-validation-errors
Ecommmax
 
Case Study - AMR Test Automation
Case Study - AMR Test AutomationCase Study - AMR Test Automation
Case Study - AMR Test Automation
iFocusSystec
 

Similar a 20070925 03 - La qualimétrie en environnement industriel (Schneider automation) (20)

Enhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdfEnhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
 
Sumanth
SumanthSumanth
Sumanth
 
Rhapsody Software
Rhapsody SoftwareRhapsody Software
Rhapsody Software
 
Training for New Users
Training for New UsersTraining for New Users
Training for New Users
 
Oak Systems - When you build Software, we build Quality in it
Oak Systems - When you build Software, we build Quality in it Oak Systems - When you build Software, we build Quality in it
Oak Systems - When you build Software, we build Quality in it
 
Embedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQMEmbedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQM
 
Bangalore based Test automation and Testing service Company - Oak Systems Pvt...
Bangalore based Test automation and Testing service Company - Oak Systems Pvt...Bangalore based Test automation and Testing service Company - Oak Systems Pvt...
Bangalore based Test automation and Testing service Company - Oak Systems Pvt...
 
Impetus qLabs Solutions
Impetus qLabs SolutionsImpetus qLabs Solutions
Impetus qLabs Solutions
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
 
Resume_Sep_16
Resume_Sep_16Resume_Sep_16
Resume_Sep_16
 
Automated Requirements-Based Testing for Medical Device Software
Automated Requirements-Based Testing for Medical Device SoftwareAutomated Requirements-Based Testing for Medical Device Software
Automated Requirements-Based Testing for Medical Device Software
 
Orcanos medical-common-validation-errors
Orcanos medical-common-validation-errorsOrcanos medical-common-validation-errors
Orcanos medical-common-validation-errors
 
Automated requirements based testing for ISO 26262
Automated requirements based testing for ISO 26262 Automated requirements based testing for ISO 26262
Automated requirements based testing for ISO 26262
 
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
(Technologies) AI, Machine Learning, Predictive Analytics, IIOT, Cloud,Web-fr...
 
Nishar resume
Nishar resumeNishar resume
Nishar resume
 
Ramesh gupta cv
Ramesh gupta cvRamesh gupta cv
Ramesh gupta cv
 
Automated Requirements-Based Testing for Medical Device Software.ppsx
Automated Requirements-Based Testing for Medical Device Software.ppsxAutomated Requirements-Based Testing for Medical Device Software.ppsx
Automated Requirements-Based Testing for Medical Device Software.ppsx
 
Case Study - AMR Test Automation
Case Study - AMR Test AutomationCase Study - AMR Test Automation
Case Study - AMR Test Automation
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
 
Automated Low Level Requirements Testing for DO-178C
Automated Low Level Requirements Testing for DO-178CAutomated Low Level Requirements Testing for DO-178C
Automated Low Level Requirements Testing for DO-178C
 

Más de LeClubQualiteLogicielle

20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
LeClubQualiteLogicielle
 

Más de LeClubQualiteLogicielle (20)

20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle
 
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
 
20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?
 
20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle 20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue
 
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact
 
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
 
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test
 
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
 
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
 
20130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 201320130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 2013
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM
 
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
 
20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity
 

Último

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Último (20)

%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 

20070925 03 - La qualimétrie en environnement industriel (Schneider automation)

  • 1. 1 Quality in Industrial Software Schneider Electric Automation Speaker : Jerôme Firmin General Manager for PLC Software
  • 2. Division - Name - Date - Language 2 Table of Content  “Automation World” : what are we doing in Software & Firmware ?  “Customer Attitude” : how do we manage Quality issues ?  “Quality Focus” : what are our priorities for implementing Quality in our development ?  Highlights
  • 3. Division - Name - Date - Language 3 From Enterprise to Plant floor  Information  Control (PLC: Programming Logical Controller)  Device
  • 4. Division - Name - Date - Language 4 Software on PC & Embedded Firmware in PLC IT integration Maintenance User Interface Standardization Connectivity User Configuration & Programming SAFETY
  • 5. Division - Name - Date - Language 5 Some numbers for our Software & Firmware A single Software on PC 2,7 Millions of C++ lines of code 65 000 files under source control 350 software components 5100 classes 70.000 methods 11 OS Firmware in PLC 325 000 C and C++ lines of code 1 400 files under source control 30 software components
  • 6. Division - Name - Date - Language 6 Our Software locations North Andover (BOSTON) Seligenstadt (Frankfurt) Sophia-Antipolis (Nice) Bangalore (India) Shanghaï (China)
  • 7. Division - Name - Date - Language 7 Table of Content  “Automation World” : what are we doing in Software & Firmware ?  “Customer Attitude” : how do we manage Quality issues ?  “Quality Focus” : what are our priorities for implementing Quality in our development ?  Highlights
  • 8. Division - Name - Date - Language 8 Software Quality cases escalation  Escalation from Country to Centralized Support – Daily Basis  Raised when a technical question or issue cannot be answered locally Daily basis Processes managed under Rational ClearQuest Rational http://www.ibm.com/developerworks/rational  Critical Issue : raised due to risk of losing a Customer when the normal process has failed – Interruption process  Managed by a sponsor with priority n°1 for all contributors  Customer regularly updated on the status until case is closed  Product Safety Alert : raised when bodily injury and/or property damage has occurred/can occur  Any employee can raise a PSA  Early containment and communication made to users
  • 9. Division - Name - Date - Language 9 How do we deliver Quality to our customers ?  New version of the software & firmware – Unity Pro V3.0, V3.1 …  Added features  A set of bug fixing  Service Pack between versions – Unity Pro V3.0 SP1  A set of bug fixing  Delivered on public web site  Hot fix  A targeted fix for a dedicated customer – No public distribution With strong rules for Traceability and Compatibility Managed by intensive use of Rational ClearCase & ClearQuest http://www.ibm.com/developerworks/rational
  • 10. Division - Name - Date - Language 10 Table of Content  “Automation World” : what are we doing in Software & Firmware ?  “Customer Attitude” : how do we manage Quality issues ?  “Quality Focus” : what are our priorities for implementing Quality in our development ?  Highlights
  • 11. Division - Name - Date - Language 11 From market needs to validated solutions Customer requirement (More & More System view) Customer usability (System, Interoperability) Schneider product & system requirement (Technical invariants...) System Validation (Limits , Robustness, Performances Compatibilities) Product specification Product verification & certification Incremental design Customer Customer Incremental verification Unit Test Use of Rational Robot
  • 12. Division - Name - Date - Language 12 What Quality factors did we choose as priorities ?  Reliability  Increase quality of code “at the source”  Extend / Automate Unit Tests coverage and smart non regression  Improve customer orientation for Verification & Validation scenarios  Architecture  Use UML models for use case description and evolution  Always updated Hands book for developers / architects  Maintainability  Check and reduce complexity  Push for code documentation and do & “just enough” in specification  Define and check coding rules  Evolutivity  Ensure / solidify modularity of components  Enable maximum openness (API, XML source format)
  • 13. Division - Name - Date - Language 13  Easy to setup  Easy to use for developers  Personalized pages  Reports are clear  Good customization  Web based architecture  Support for COM  Very little false positive rate  Deep analysis  Excellent support Coverity Prevent for Software static code analysis http://www.coverity.com/
  • 14. Division - Name - Date - Language 14  Widely used for embedded systems  Full data ranges of variables are analyzed  Clear testimonial : Analyzed software is free of bugs  MISRA checks embedded Polyspace for Firmware static code analysis http://www.polyspace.com/ (now MathWorks)
  • 15. Division - Name - Date - Language 15 Unit Tests managed in a home-made repository  Unit Tests database for tracking scenarios plans & reports
  • 16. Division - Name - Date - Language 16 Unit Tests based on CppUnit and internal GUIs  Strong push for automating Unit tests at development time, specially for the very sensitive area of code generation for PLC http://sourceforge.net/projects/cppunit
  • 17. Division - Name - Date - Language 17 What Quality factors did we choose as priorities ?  Reliability  Increase quality of code “at the source”  Extend / Automate Unit Tests coverage and smart non regression  Improve customer orientation for Verification & Validation scenarios  Architecture  Use UML models for use case description and evolution  Always updated Hands book for developers / architects  Maintainability  Check and reduce complexity  Push for code documentation and do & “just enough” in specification  Define and check coding rules  Evolutivity  Ensure / solidify modularity of components  Enable maximum openness (API, XML source format)
  • 18. Division - Name - Date - Language 18  Code execution coverage  Good results achieved with PureCoverage  Cantata++ under evaluation  TrueCoverage (DevPartnerStudio) under evaluation Code coverage http://www-306.ibm.com/software/awdtools/purecoverage/support/index.html http://www.ipl.com/products/tools/pt400.uk.php http://www.compuware.com/products/devpartner/default.htm
  • 19. Division - Name - Date - Language 19 What Quality factors did we choose as priorities ?  Reliability  Increase quality of code “at the source”  Extend / Automate Unit Tests coverage and smart non regression  Improve customer orientation for Verification & Validation scenarios  Architecture  Use UML models for use case description and evolution  Always updated Hands book for developers / architects  Maintainability  Check and reduce complexity  Push for code documentation and do & “just enough” in specification  Define and check coding rules  Evolutivity  Ensure / solidify modularity of components  Enable maximum openness (API, XML source format)
  • 20. Division - Name - Date - Language 20  Internal Metrics platform  We have a historical base from V1 to current version – Base indicators & derived Maintainability Index (using standard formula from SEI) – Our Unity software has a good maintainability in average  External Metrics platform on going evaluation  CAST http://www.castsoftware.com/  SQUALE- open source http://www.qualixo.com/  Coding rules checking  Good results achieved with C++Test – For use on new projects Complexity metrics, Coding Rules  http://www.parasoft.com/jsp/products/home.jsp?product=CppTest
  • 21. Division - Name - Date - Language 21 Typical process for Firmware INTEGRATION phase Investigation and CODING UNIT TESTS CODE REVIEW Automated tests (Rational Tests) Coding rules review (RSM) Fault insertion tests Code instrumentation Source code Test report (Instrumentation + Fault insertion) Code Review report Automatic Test report Qualimetry report IS3 Developpement process [CODING] Test SCRIPT (RTRT) Reworking if error ClearCase Versionned files Excel sheet per activity Html RTRT report RSM excel report Peer review by other developper Report review Report review Report review Report review Functional tests and Automatic tests are launched again during integration Notations Reworking loop Added for IS3 (In Red) Process phase Standard Dev. process
  • 22. Division - Name - Date - Language 22 Quality : No conclusion but a permanent improvement  Our customers expect us to deal professionally with issues  A problem permanently solved is a loyalty booster