Micro Focus Software Delivery and Testing Jan De Coster Presentation on the Journey to DevOps in the recent Micro Focus #DevDay Copenhagen.
Micro Focus enables enterprise software organizations to build innovative software and accelerate application delivery to meet the needs of the business. Whatever the challenges and infrastructures, our core principle—of reusing what already works to minimize business risk while supporting modern software practices—has positioned our customers to be better prepared to support the digital transformation of the business.
Build, test and deliver innovative software faster with less risk.
April 2017.
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
The DevOps Journey
1. The DevOps Journey
Jan De Coster
Software Delivery and Testing
International Solution Architect
2. What’s DevOps
“DevOps (a clipped compound of "development" and
"operations") is a culture, movement or practice that
emphasizes the collaboration and communication of both
software developers and other information-technology (IT)
professionals while automating the process of software
delivery and infrastructure changes. It aims at establishing
a culture and environment where building, testing, and
releasing software, can happen rapidly, frequently, and
more reliably.”
https://en.wikipedia.org/wiki/DevOps
3. What’s DevOps
“DevOps (a clipped compound of "development" and
"operations") is a culture, movement or practice that
emphasizes the collaboration and communication of both
software developers and other information-technology (IT)
professionals while automating the process of software
delivery and infrastructure changes. It aims at establishing
a culture and environment where building, testing, and
releasing software, can happen rapidly, frequently, and
more reliably.”
https://en.wikipedia.org/wiki/DevOps
5. The Journey to DevOps
Agile Practices
Continuous Integration
Continuous Delivery
Build TestPlan Release
6. The Journey to DevOps
Agile Practices
Build TestPlan Release
7. How does agile planning work?
Program
Backlog
Submit for
Delivery
2
Iteration
Planning3
Strategy
Gather/Prioritize
Business/Market Needs1
Customers
Team
Backlog
Iteration
Backlog
Iteration
Daily Work
Developers pull work
to be done4
8. Micro Focus Business Agility (Complimentary)
Program
Backlog
Submit for
Delivery
2
Iteration
Planning3
Strategy
Gather/Prioritize
Business/Market Needs1
Customers
Team
Backlog
Iteration
Backlog
Atlas Atlas
Atlas
Iteration
Daily Work
Developers pull work
to be done4
Rally
Version One
Jira
TFS
Rally
Version One
Jira
TFS
Visual
Cobol
9. Micro Focus Business Agility (Full Solution)
Program
Backlog
Submit for
Delivery
2
Iteration
Planning3
Strategy
Gather/Prioritize
Business/Market Needs1
Customers
Team
Backlog
Iteration
Backlog
Atlas Atlas
Atlas
Rhythm Rhythm
Iteration
Daily Work
Developers pull work
to be done4
Visual
Cobol
10. The Journey to DevOps
Agile Practices
Continuous Integration
Build TestPlan Release
11. How does CI work?
Developer
Source Control
Testing
Build
Checkout code1
Commit changes2
Initiate CI Process3
Unit/Integration Tests4Feedback5
12. Micro Focus CI Capabilities
Developer
Source Control
Testing
Build
Checkout code1
Commit changes2
Initiate CI Process3
Unit/Integration Tests4Feedback5
Accurev
Dimensions
Silk
JenkinsVisual
Cobol
13. The Journey to DevOps
Agile Practices
Continuous Integration
Continuous Delivery
Build TestPlan Release
14. How does CD work?
Developer
Source Control
Checkout
code
1
Commit
changes
2
Initiate CI
Process
3
Unit/Integration
Tests
4
Build Testing
Testing
Acceptance
Driven Tests5
Validation
Manual
Validation6
Release
Release
to Production7
15. Micro Focus Continuous Delivery
Developer
Source Control
Checkout
code
1
Commit
changes
2
Initiate CI
Process
3
Unit/Integration
Tests
4
Build Testing
Testing
Acceptance
Driven Tests5
Validation
Manual
Validation6
Release
Release
to Production7
Visual
Cobol
Accurev
Dimensions Silk
Silk
Silk &
Release
Control
Jenkins
Deployment
Automation
31. Keyword-driven testing: concept
Test design
Enter „j.smith@gmail.com“ into Email-Textfield
Enter „john“ into Password-Textfield
Click on „LOG IN“ Button
Select „Agent Lookup“ from Choose One-ComboBox
Click on „SEARCH“ in the Show all agents Group
Test implementationAUT
32. KDT as an end-to-end test engine
Insert
an item
Modify
the item
Verify
the item
34. SilkTest - Technology Support and Editions
Premium Edition
ERP/CRM
SAP
(SAPGUI)
and
eCATT Integration
Standard Edition
Mobile Browsers
Chrome, Stock Browser
on Android
Safari on iOS
Green screen
Rumba
Native GUIs (32 and 64 bit)
Win32
.Net GUIs (.Net)
(32 and 64 bit)
WinForms
WPF
Java GUIs (32 and 64 bit)
SWT & RCP
AWT/Swing
Web Browsers
Microsoft Internet Explorer, Edge
Mozilla Firefox
Google Chrome
Safari on Mac
Browser technologies
Web 2.0
AJAX and JavaScript
HTML5, DHTML
Rich internet applications
Adobe Flex
Adobe Air
Silverlight
Applets
Oracle Forms (IE only)
Mobile Edition
Mobile
iOS
Android
Mobile Browsers
Chrome, Stock Browser
on Android
Safari on iOS
Mobile Add-On
Developers check out code into their private workspaces.
Developers make their changes and test then locally.
When done, commit the changes to the repository.
The CI server monitors the repository and checks out changes when they occur.
The CI server builds the system and runs unit and integration tests.
The CI server releases deployable artefacts for testing.
The CI server assigns a build label to the version of the code it just built.
The CI server informs the team of the successful build.
If the build or tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity.
Continue to continually integrate and test throughout the project.
Developers check out code into their private workspaces.
Developers make their changes and test then locally.
When done, commit the changes to the repository.
The CI server monitors the repository and checks out changes when they occur.
The CI server builds the system and runs unit and integration tests.
The CI server releases deployable artefacts for testing.
The CI server assigns a build label to the version of the code it just built.
The CI server informs the team of the successful build.
If the build or tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity.
Continue to continually integrate and test throughout the project.
1) Developers check out code into their private workspaces.
Developers make their changes and test then locally.
2) When done, commit the changes to the repository.
3) The CI server monitors the repository and checks out changes when they occur.
Starting on step 4, the development team will have continuously feedback from every step, so if the step is executed successfully the process continues to the next step, otherwise the team is notified and addresses the issue right away.
4)The CI server builds the system and runs unit and integration tests.
The CI server assigns a build label to the version of the code it just built.
The CI server informs the team of the successful build.
The CI server releases deployable artefacts for testing.
If the build or tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity and start the cycle on step 2
5) Packages that pass the CI tests have more comprehensive automated acceptance tests run against them
If ADT Tests pass, the package is made available for manual validation/verification
If the tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity and start the cycle on step 2
6) Once packages pass all the automated tests, they are available for self-service deployment to other environments for activities such as exploratory testing, usability testing
If the tests fail, the development team will be notified of the issues.
The team fix the issue at the earliest opportunity and start the cycle on step 2.
7) Once all the testing is satisfied the Package can be made available for release.
1) Developers check out code into their private workspaces.
Developers make their changes and test then locally.
2) When done, commit the changes to the repository.
3) The CI server monitors the repository and checks out changes when they occur.
Starting on step 4, the development team will have continuously feedback from every step, so if the step is executed successfully the process continues to the next step, otherwise the team is notified and addresses the issue right away.
4)The CI server builds the system and runs unit and integration tests.
The CI server assigns a build label to the version of the code it just built.
The CI server informs the team of the successful build.
The CI server releases deployable artefacts for testing.
If the build or tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity and start the cycle on step 2
5) Packages that pass the CI tests have more comprehensive automated acceptance tests run against them
If ADT Tests pass, the package is made available for manual validation/verification
If the tests fail, the CI server alerts the team.
The team fix the issue at the earliest opportunity and start the cycle on step 2
6) Once packages pass all the automated tests, they are available for self-service deployment to other environments for activities such as exploratory testing, usability testing
If the tests fail, the development team will be notified of the issues.
The team fix the issue at the earliest opportunity and start the cycle on step 2.
7) Once all the testing is satisfied the Package can be made available for release.
After successful testing your next step is RELEASE and DEPLOYment
After successful testing your next step is RELEASE and DEPLOYment
As a important part of requirement management is analysis
Code analysis will allow you to understand
What needs to be done
CLICK
- Where
CLICK
How
CLICK
How complex
CLICK
What impact
COBOL Analyzer allows you to create exact lists of what statements need to modified,
Estimate the effort to allow you to plan your sprints
And risks and impact is highlighted.
After successful testing your next step is RELEASE and DEPLOYment
The Visual COBOL development is a full functional modern development tool for COBOL based on Eclipse and Visual Studio
“POI”
VC also includes:
Navigation via tree map, bread crumps and references
Intellisense helps you write the some times cryptic variable names or shows the syntax of the statement you are using
Background parsing
Debug support stepping forward and backwards, code watch and modification of constraints during runtime
All of this making you
more productive
Higher quality
Integrate with existing tool stack
After successful testing your next step is RELEASE and DEPLOYment
Dimensions is a Visual version control
Easy to understand
To branch out and merge back changes
Enabling peer review with check lists
Code review high lighting what code has changed.
The result is full version control with detailed audit track
Ensuring security and quality.
After successful testing your next step is RELEASE and DEPLOYment
To bind it all together you can use SILK CENTRAL
Silk Central
Is a platform to design, plan, execute and track all your functional and performance testing practices across devices and platforms
You can create and store your test cases.
Plan you tests
Start the execution and collect the results
Report on current QA status with predefined or customized reports
With Silk Test you can automate your tests
You simply record your test once and use this for all regression tests to come
Silk test can then automatic run and compare you tests
Silk has a very easy visual interface to maintain your test steps or
You can use the detailed test scripts and run mass updates to your test cases
We have customers who runs continuous integration test fully automatically daily only spending time to review the result is something is not passed
This saves extremely much effort
And results in more testing -> higher quality
From a packaging this means, that there is actually no change in the Standard and Premium Edition, as we have the separate Mobile Add-On and the standalone mobile Edition. The only thing which is worth to mention is the fact that support for mobile browsers is available in both the Standard and the Mobile Edition, but Desktop browser support is only available in the Standard Edition.
Performance is another end-user killer
Google 100-400MS Slowdown=$45-$135M Loss in AdWords revenue
Amazon 100MS delay=$6.79M Sales decrease
Silk Performer
Test, monitor and diagnostic performance
It can be executed inside and outside your firewalls or remotely form around the world
Do you need to emulate 100.000 or millions of simultaneous users
you can fire off your load test from Amazon cloud
(Source: How Performance Affects User Experience and Your Bottom Line, and What to Do About It. (2014). Gartner)
After successful testing your next step is RELEASE and DEPLOYment
With Realease Crontol you can aggregate and plan realease from many teams thoughout the organisation
Dependencies and timing can be scheduled
Making sure nothing is release until all is complete and ready
Very visual with clear indication of packages included in each release train
Tool support segregation of duties and keeps an audit track of any activity
The deployment process is automated and executed across all environments
With feedback on success or roll back on failure.
Tracking every step and detailed event
Do you already have different deployment tools, this tool can combine them all