120 likes | 256 Views
Softeam’s testing process: a story. Cyril Ballagny, SOFTEAM | ModelioSoft The 13th CREST Open Workshop London, England 13th of May 2011. Introduction to Softeam. A French SME (about 230 people) More than 20 years of expertise in OO development and Modeling
E N D
Softeam’s testing process: a story Cyril Ballagny, SOFTEAM | ModelioSoft The 13th CREST Open Workshop London, England 13th of May 2011 www.modeliosoft.com
Introduction to Softeam A French SME (about 230 people) More than 20 years of expertise in OO development and Modeling Consulting, Training, Engineering activities Software Publishing: Modelio and Objecteering Strong R&D efforts since its creation Innovator since 1989 (Modeling, MDA, UML) Heavily involved in R&D cooperative projects (FITTEST, MADES, ENOSYS…) Participates in the OMG standardization efforts since 1996 (UML profiles, SOAML, SysML…) 2 www.modeliosoft.com
Introduction to Modelio A CASE tool For UML modeling For MDA application For Code generation (Java, C#, C++…) For documentation generation (HTML, word…) For team work and project sharing And much more (BPMN, SysML, SOAML…)! 3 www.modeliosoft.com
Modelio development process Agile development with bootstrapping and continuous integration 20 people involved 1 million LOC (C++/Java) A new release every 6 months 4 www.modeliosoft.com
Modelio testing process (1) Code quality management with Sonar: about 500 coding rules Continuous integration with Hudson: report broken build (inconsistent API, missing source in the repository…) Bug tracking with Mantis: everyone from the team can report bugs Specification of test plans with Test Link (natural language): about 2000 procedures Bootstrapping: Modelio is validated by developers 5 www.modeliosoft.com
Modelio testing process (2) A test case is either A Mantis bug (bug 2123, bug 9478…) A menu item (create, delete, mask…) A diagram artifact (state, region, activity…) Most test cases are UI-based and derived from general scenarios (e.g. apply command “xxx” to element in {a,b,c…} ) Test case execution is externalized to Eastern Europe 6 www.modeliosoft.com
Our issues Specification often changes Writing operational test specification is too time consuming compared with natural language specification Test code must be tested too Mix of languages (C++/Java/Jython) No tools for testing HMI combining Java and C++ 7 www.modeliosoft.com
Our expectations (1) Reduce over-testing Detect overlapping sections of test cases Recombine sections to constitute smaller test cases with greater coverage Apply regression tests only on parts of the system that have changed Reduce under-testing Detect system parts that are not covered by the test cases Detect sequences of interactions allowed by the GUI that have not been tested 8 www.modeliosoft.com
Our expectations (2) Reduce Time-To-Market Generate test cases instead of specifying them Prioritize: Identify the most used features Identify the most frequent bugs 9 www.modeliosoft.com
To sum up We would like a scalable and pragmatic approach whose ROI has been demonstrated 10 www.modeliosoft.com
Thank you for your attention! 11 Andrey Sadovykh SOFTEAM | ModelioSoft andrey.sadovykh@softeam.fr SOFTEAM R&D Web Site: http://rd.softeam.com ModelioSoft Web Site: http://www.modeliosoft.com www.modeliosoft.com