Intland Software's presentation from its codeBeamer User Conference 2016, which took place on 7 Jul 2016 in Stuttgart, Germany.
http://intland.com/blog/pr/intland-softwares-codebeamer-user-conference-2016
2. 2
Agenda
1. Agile Software Development with
codeBeamer ALM in the Medical and
Automotive Industries
2. Festo: codeBeamer‘s SAP Integration
3. Lufthansa Cargo: Guidelines for Efficient
Requirements Management Processes at
Lufthansa Cargo
4. What is new in cB 7.9 + a preview of cB 8.0
5. cB Integration:
• DOORs / ReqIF
• Automated testing using Jenkins
xUnit and Selenium. Traceability and
Code Coverage Analysis
• Mathlab Simulink
• Tech Talks
3. 4
Agile + IEC 62304: Agile in Medical Device Development
Medical device recalls in recent years
4. 5
Agile + ISO 26262: Agile in Automotive Development
Increasing reliance on software in the automotive industry
http://www.businessinsider.de/connected-car-forecasts-top-manufacturers-leading-car-makers-2016-4-28?r=US&IR=T
5. 6
Agile Software Development in Medical and Automotive Industries
Adopting Agile and Continuous compliance
• Increase customer satisfaction and reputation
• Reduce risks
• Product quality improvement and increased
efficiency for reaching compliance
• Reduction of correction costs
• Gapless end-to-end traceability
• Reduce audit preparation time
6. 7
codeBeamer for Enterprise Agile development
• Enterprise agility while protecting
quality and compliance regulations
• Support for Agile & scaled Agile
development via SAFe®
• Robust yet highly flexible architecture
supports Scrum, Kanban, Lean methods
• More Agile than legacy ALM suites, and
more integrated than a mix of single-point
software tools
• DevOps support, Agile Release
Management
Intland Software
7. 9
Agile Software Development in Medical and Automotive Industries
Approval process with workflow
• E-Signature
• Approval tasks
• Automatic state transitions
• Chained workflow
http://intland.com/video/advanced-workflows/approval-processes-with-
e-signatures/
12. What is New in codeBeamer’s
Latest Release: 7.9
13. 16
Agenda
codeBeamer 7.9
1. New features
• Queries
• Gantt chart
• Test Management
• Traceability Browser Pre-Sets
2. Integration
• Bi-directional integration to
JIRA
• LDAP/ AD synchronization
3. Infrastructure
• Suspected Links
• Dashboard charts
• Hotkeys
14. 17
What is New in codeBeamer’s Latest Release: 7.9
Other News
• Ovum Decision Matrix report: http://intland.com/ovum-
decision-matrix-2016-17-intland-software-codebeamer/
codeBeamer in top 4 ALM solutions globally and
named a market leading ALM tool
• Medtronic Customer Case Study:
http://intland.com/medtronic-customer-case-study/
“codeBeamer ALM is the best in class of
such tools.”
15. 18
• Filter and search
• Built-in queries: Submitted by Me, Assigned to Me, Recently View
• cBQL
What is New in codeBeamer’s Latest Release: 7.9
Queries
16. 19
• Oversee and manage releases
• Edit releases directly from Gantt chart
What is New in codeBeamer’s Latest Release: 7.9
Interactive Gantt Chart
17. 20
• Traceability Browser for Baselines
• Save and Load pre-sets
What is New in codeBeamer’s Latest Release: 7.9
Traceability Browser Pre-Sets
18. 21
• Update work items on the fly
• All changes are mirrored from Jira to
codeBeamer and codeBeamer to
JIRA
• Synchronization can be automated
(as often as every 2 minutes)
What is New in codeBeamer’s Latest Release: 7.9
Bi-directional JIRA Integration
19. 22
• LDAP Group to cB Group synchronization
• Invite users from LDAP in cB
What is New in codeBeamer’s Latest Release: 7.9
LDAP/AD Group synchronization
20. 23
• Suspected links
• Highchart Dashboards
• cB Hotkeys
What is New in codeBeamer’s Latest Release: 7.9
Useabilty Improvements
26. 29
xUnit
• Creation of Test Cases, Test
Sets based on test package
structure, Bugs from Jenkins
• Continuous Integration:
sends Test Runs
automatically from Jenkins
cB
xUnit: Automated testing and continuous integration for e.g Selenium,
JMeter Tests. Collects Test metrics/results in .xml files
Code Coverage: Coverage how much Source Code is under test. Collects
Code Coverage results
Continuous Integration
Preview of codeBeamer 8.0
Source Code Coverage (C/C++, Java)
• Application Coverage
• Package Coverage
• Class Coverage
28. codeBeamer – Continuous Integration with Jenkins
Jenkins
JMeter
xUnit
Tests
C/C++,
Java
Coverage
Test
Execution
Selenium
Further
Plugins
Invocation
.xml
xUnit
Jenkins Test Framework
codeBeamer
codeBeamer REST API
Notas del editor
The reliance on embedded software is on the increase in all kinds of physical devices, including safety-critical products such as medical devices. Medical device development uses more and more software to enhance the functionality, operation, maintenance or user-friendliness of medical products. Therefore, eventually, software helps patients and doctors make better use of medical devices.
So relying on software is both beneficial, and inevitable for medical device developers, who had to get accustomed to and accumulate knowledge in this non-traditional development area. In order to stay ahead of the curve and leading the competition, they have to build consistently high quality software in shorter time.
And therein lies the challenge.
More software adds complexity to the engineering and manufacturing processes of these devices. In the context of medical device development, software complexity equals risk.
According to an FDA analysis of medical device recalls between 1992 and 1998, about 7,7% of recalls were carried out due to software failures. For the period between 2010 and 2012, this rate has doubled to 15%. Therefore, it's safe to say that heavier reliance on software embedded in medical devices means higher risks for the developers of these devices.
The answer, then, is not that Agile cannot be used in the development of medical devices. It is, rather, that it CAN be used, if implemented in a way that fits the requirements of this special environment. With adequate process control measures, Agile is able to support compliance as much as any Waterfall method, while also increasing the efficiency of development, cutting time to market, and yielding a variety of other advantages.
Using the right tools, managing risks, controlling processes, and ensuring complete transparency and traceability can all be ensured in an Agile environment. All these support, or can be used to verify compliance with relevant standards.
The key to complying with IEC 62304 and other medical standards when using Agile is a practice that involves complete process control, efficient process automation, and comprehensive documentation of all activities. Overall, this practice is referred to as continuous compliance.
over the following slides, explain every aspect of continuous compliance in detail:
- process control
- automation
- documentation
predefine compliant workflows, enforce those processes so that there are no deviations, and automate as much as possible
A lot of companies working in industries that are highly regulated by standards and guidelines (safety-critical industries, such as the medical, automotive and aviation sectors) still rely on the Waterfall/V-model development method when creating software for their end products. While this doesn’t allow them to take advantage of more modern Agile methods, they choose to stick with these tried and tested methods because they help these companies ensure that certain processes are always enforced, which is key to achieving compliance with relevant standards. Process control is simply easier to do in a Waterfall environment.
However, adhering to the regulations of industry standards can also be ensured in Agile development. Adequate process control measures can be implemented just the same, which is best demonstrated by FDA’s endorsement of Agile practices. If it can be used in medical software development, where rigorous standards apply to various processes, Agile is surely compatible with development in other regulated industries.
Indeed, that’s the conclusion more and more companies in various industry sectors are coming to. Agile helps teams cut risks by working on smaller chunks of the software at a time, reduce the time of development, and improve the quality of their software products. However, aligning Agile techniques with the requirements of relevant industry standards and regulations takes a bit of effort.
Therefore, if you’re looking to adopt Agile while maintaining the same control over your processes that you had using Waterfall, you will first need to map Agile practices and the stipulations of standards that apply to your industry or product. Any inconsistencies between these two will have to be addressed at an early stage of planning your Agile implementation. The end product of this analysis is hugely important: it’s going to be the set of (compliant) processes that you’ll need to enforce throughout the development lifecycle. Any deviation from these will likely result in non-compliance, and could increase the risk levels of your end product. This is a task that’s difficult enough, but there’s more to compliance than this.
Traceability down to source code will have to be ensured and proven along the lifecycle. The processes that you have set in stone in the first step should help achieve this – but proving it means that all the links between all work items will need to be recorded, documented, and shown during audits. This is where you’ll realize that adequate Application Lifecycle Management tools such as codeBeamer ALM are simply necessary when it comes to implementing Agile in safety-critical development.
The reason is simple: not only does using such solutions help enforce set processes through pre-configured workflows for each item, they can also automatically record all changes, and generate documentation to help compliance audits. Agile favours “working software over comprehensive documentation”, which is why it’s so much faster than Waterfall – but regulators in safety-critical sectors still require thorough, complete documentation, whatever development process you decide to use.
ALM tools like codeBeamer take the burden of documentation off the shoulders of your team by automatically recording a comprehensive change history on all artifacts, and letting you customize reports that can be simply exported, taking care of documentation without requiring manual effort from your team.
Nachweis ob Requirements with Unit Test and Coverage getestet
Google Test Framework (Zukunft) als open source Firma Vector
Hardware Requirements for manual testing in cB, Software Requirements for automated testing through continuous integration with Jenkins
Jenkins will create automatically an initial import for test cases and link to one requirements node (e.g. code quality requirement)
Requirements ID and node
Test Case ID and all subnodes
Test Results
Coverage Browser shows automated and manual testing results – Code Coverage from both manual and automated testing
Jenkins continuously checks on SCM, if there is a change. If on source code level (repository in Jenkins) sth. changes, new test results will be created in cB for the updates
Various plugins in Jenkins for automated testing and continuous integration such as selenium, jmeter, testing for code coverage, performance testing, application tests
All test results will be executed and collected in xml files in Jenkins
Generates items in codeBeamer via .json Import
xUnit importer runs after all the tests were executed