Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll
Trivadis TechEvent 2016 DevOps: the timely approach for Mobile Development by Remco Emile Marius...
-
Upload
trivadis -
Category
Technology
-
view
73 -
download
0
Transcript of Trivadis TechEvent 2016 DevOps: the timely approach for Mobile Development by Remco Emile Marius...
BASLE BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA
HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH
DevOps Mobile DeploymentDesktop to Mobile Development
Remco Bonse & Mattia Baldinger
Agenda
2 9/29/2016
1. What is DevOps
2. Development of Mobile vs Desktop applications
3. DevOps Best Practices
4. Conclusion
DevOps Mobile Deployment3 9/29/2016
What is DevOps
Definition
DevOps Mobile Deployment4 9/29/2016
«DevOps is not a technique or a process, but an approach to enabling seamless
application delivery from inception to production.»
«Devops can be defined as the enterprise capability for continuous software
delivery that enables the enterprise to seize market opportunities and reduce time
to market and improve customer experience.»
«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.»
Definition through CAMS
5 9/29/2016
Culture
DevOps is about breaking down barriers between teams. A key factor for success
is to foster a safe environment for innovation and productivity.
Automation
Automation is not only used to save time and improve productivity, but also to
improve quality by preventing defects and create consistency.
Measurement
DevOps also based on continous improvement which requires data to be
measured and compared. Data should be transparent and accessible to all.
Sharing
Key of success is sharing tools, discoveries and lessons. Try to eliminate duplicate
work and finding people with similar needs.
DevOps Mobile Deployment
Key Factors: Automation
6 9/29/2016
Automated build and deploy processes with scripts
High grade of test automation
End-to-end Traceability across all assets
DevOps Mobile Deployment
Key Factors: Monitoring
DevOps: Mobile Deployment7 9/29/2016
Monitor performance of the application and the backend services
Monitor end user experience
Measure key figures to check for continuous improvement
Key Factors: Culture
DevOps: Mobile Deployment8 9/29/2016
Agile project management approach (incremental, iterative)
Support strong interdepartmental communication
Key Business Goals
9 9/29/2016
Reduce time to market
Deliver unique features faster than you competitors
Improve customer experience
Faster delivery of bugfixes
Faster delivery of customer requirements
Improve productivity
Reuse work over team boundaries
High grade of automation
DevOps Mobile Deployment
DevOps: Mobile Deployment10 9/29/2016
Mobile vs Desktop
Application Development
Mobile vs Desktop Development
DevOps: Mobile Deployment11 9/29/2016
Definition Mobile Development:
Development of Software (ie. Apps ) targeting mobile devices like mobile phones,
tablets etc.
New Challenges
– Explosion of Run Environments
– More Application as Business Card
– Data Security on Mobile Devices
– Extended Dependencies to third party
– Mobile App Deployment
Explosion of Run Environments
DevOps: Mobile Deployment12 9/29/2016
Cause:
– Platform Fragmentation
http://www.netmarketshare.com/ http://www.businessinsider.de/chart-android-vs-ios-fragmentation-2016-6
Explosion of Run and Development Environments
DevOps: Mobile Deployment13 9/29/2016
Cause: Higher release pace of OS Versions
http://www.netmarketshare.com/ http://opensignal.com/reports/2015/08/android-fragmentation/
Explosion of Run and Development Environments
DevOps: Mobile Deployment14 9/29/2016
Device (hardware, resolution etc.)
http://opensignal.com/reports/2015/08/android-fragmentation/
Explosion of Run and Development Environments
DevOps: Mobile Deployment15 9/29/2016
Explosion of Run and Development Environments
– Application Version: The backend needs to support several versions of the app
Application as Business Card
DevOps: Mobile Deployment16 9/29/2016
Third party app stores
App Portal rating
Failure is not an Option in a B2C scenario
Business to
– Business (B2B)
– Employee (B2E)
– Customer (B2C)
Extended Dependencies to third parties
DevOps: Mobile Deployment17 9/29/2016
Apps need to be build for native platforms
Deployment via Dedicated app stores
External Resource (e.g. External storage or data portals)
Data security in Mobile Apps
DevOps: Mobile Deployment18 9/29/2016
In B2B or B2E environment
BYOD : Confidential data in private Devices
Device Locking versus App Locking
Mobile App Deployment
DevOps: Mobile Deployment19 9/29/2016
Deployment and access to the back ends require different certificates
Many manual steps to create a testable or shippable build
DevOps: Mobile Deployment20 9/29/2016
Mobile DevOps:
Best Practises
Team Profile
DevOps: Mobile Deployment21 9/29/2016
Include both Operating and Development Skills in your team
Promote the DevOps CAMS values by facilitating and example
Continous Integration
DevOps: Mobile Deployment22 9/29/2016
Treat the deployment process as code
– Use automated build and deploy scripts
Separate build and integration areas for each OS
Testing and Monitoring
DevOps: Mobile Deployment23 9/29/2016
Test each Build on simulated and physical devices
Virtualize backend services
Monitor performance
Share the monitoring information to identify bottlenecks
User Feedback to new Features
DevOps: Mobile Deployment24 9/29/2016
Convert user feedback into enhancement requests and user stories
Convert Monitoring Information in Improvement and maintenance Items
Link User Feedback, Monitoring Data and Product Backlog.
Centralized governance of Certificates
DevOps: Mobile Deployment25 9/29/2016
Employ centralized governance for mobile provisioning profiles, certificates, and API keys etc.
DevOps: Mobile Deployment26 9/29/2016
Build Server
IDE
.ipa
IDE
Test Server
.apk
App Stores
.apk
Mac DevelopmentWindows Development
Code Repository
Clo
ud
Emulator Emulator
Common Tool Stack
DevOps: Mobile Deployment27 9/29/2016
Team Foundation Server
Visual Studio
.ipa
Xamarin Studio
Xamarin
Build Host
Xamarin
Test Cloud
.apk
Apple App
Store
Play StoreMDM
Emulator
IOS
Mac DevelopmentWindows Development
Emulator AndroidC
lou
d
Microsoft Tool Stack
DevOps: Mobile Deployment28 9/29/2016
Mobile DevOps:
Conclusion
Summary
DevOps: Mobile Deployment29 9/29/2016
Mobile Development Key Factors
– Explosion of Run and Build environments and applications versions
– Improve User Experience proactively and reactively
– And Make use of third Party Interface, services and portals
With Mobile DevOps Best Practices
– Shared Testing and Monitoring
– Extended continuous integration
– Centralized governance of Certificates