Scratch. Romero. Intergenerational game creation with Scratch
Going Mobile at a Glance - Do you need to build from scratch?
-
Upload
cronos-mobile -
Category
Technology
-
view
74 -
download
0
description
Transcript of Going Mobile at a Glance - Do you need to build from scratch?
![Page 1: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/1.jpg)
MOBILE ARCHITECTUREMichael Seghers
![Page 2: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/2.jpg)
How to build rock solid apps?
How to reduce risk & increase probability of success?
How to make something not a PITA to maintain...
![Page 3: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/3.jpg)
![Page 4: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/4.jpg)
The plan!
![Page 5: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/5.jpg)
![Page 6: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/6.jpg)
Interface Internals
![Page 7: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/7.jpg)
Calling web services
Data validation
Storage, Caching, Syncing,
…
Data
Interface Internals
![Page 8: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/8.jpg)
Fast, Efficient, Smooth…
Calling web services
Data validation
Storage, Caching, Syncing,
…
Data
Interface Internals
UX
![Page 9: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/9.jpg)
Fast, Efficient, Smooth…
UXCalling web services
Data validation
Storage, Caching, Syncing,
…
Data
Interface Internals
![Page 10: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/10.jpg)
How to handle data and maintain good
performance whilst keeping the UI
working smooth as butter?
![Page 11: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/11.jpg)
The Backend
![Page 12: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/12.jpg)
Architecture!
![Page 13: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/13.jpg)
A good foundation gives confidence –
it is going to be great success!
![Page 14: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/14.jpg)
The Backend
![Page 15: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/15.jpg)
ENTERPRISE ARCHITECTURE FOR MOBILE APPLICATIONS
The mobile app is the visual gateway to the server software. To enable mobile apps for the enterprise, the server-side must be carefully architected and designed, with some new IT challenges.
![Page 16: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/16.jpg)
Old-style Applications
User Interface
Business Logic
Database
Single monolithic block
![Page 17: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/17.jpg)
Old-style Applications
Integration through database
Application 1 Application 2 Application 3
User Interface
Business Logic
Database
User Interface
Business Logic
Database
User Interface
Business Logic
Database
![Page 18: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/18.jpg)
Web Applications
User Interface
Business Logic
Database
Thin client: web browser
![Page 19: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/19.jpg)
Web Applications
Reuse business logic
Application 1 Application 2 Application 3
User Interface
Business Logic
Database
User Interface
Business Logic
Database
User Interface
Business Logic
Database
![Page 20: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/20.jpg)
Web Services
Interface
Service Logic
Interface
Rich client in web browser
Database
User Interface
Business Layer
Data Layer
![Page 21: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/21.jpg)
Web Services
Interface
Service Logic
Interface
Database
User Interface Client Application
Interface
Service Logic
Interface
Database
Service Orientation
Interface
Service Logic
![Page 22: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/22.jpg)
Service Orientation Benefits
Business alignment
Reuse of business logic
Flexibility
Agility
Cloud-ready!
Mobile-ready!
Mobile App
Interface
Service Logic
Interface
Service Logic
Interface
Database
![Page 23: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/23.jpg)
Mobilize Legacy Applications
User Interface
Business Logic
Database
Interface
Mobile App
Service Logic
Service Enablement
![Page 24: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/24.jpg)
Architectural Considerations
Interface
Mobile App
Service Logic
API
Data exchange
•
SOAP web service• XML, attachments
• RESTful service• JSON, XML, binaries
• Protocol: HTTP, FTP, Proprietary• Message Exchange Pattern: Synchronous, Asynchronous• Security: Transport-Layer, Message-Layer, Authentication, Authorization• Reliability: QoS(HTTP) = “at least once” idempotency required• Disconnection Policy: off-line work, Data Integrity
![Page 25: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/25.jpg)
Architecture summary
• Enabling the enterprise for mobile apps requires careful design of the server software
• Ideally use a service-oriented approach
• Distributed services require governance
• New opportunities emerge with cloud and Big Data services
• The world is your customer
![Page 26: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/26.jpg)
The Mobile App (The Front-end)
![Page 27: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/27.jpg)
![Page 28: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/28.jpg)
![Page 29: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/29.jpg)
Software Factory
![Page 30: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/30.jpg)
QA!
![Page 31: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/31.jpg)
![Page 32: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/32.jpg)
Another cunning plan!
![Page 33: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/33.jpg)
Verification & Validation
![Page 34: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/34.jpg)
![Page 35: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/35.jpg)
Validation
Are we building the right product?Barry W. Boehm
![Page 36: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/36.jpg)
Verification
Are we building the product right?Barry W. Boehm
![Page 37: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/37.jpg)
This is why architecture is also so important... structuring the app in such a way that it is layered
and that there is a clear separation of concerns - this makes the parts easier to test!
![Page 38: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/38.jpg)
A few examples… not all necessarily necessary… euhm…
They are tools – depends on the project if you need them!
![Page 39: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/39.jpg)
Quality Metrics
Source Code AnalysisHow much code is there and does it follow the rules?
![Page 40: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/40.jpg)
![Page 41: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/41.jpg)
![Page 42: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/42.jpg)
Test Driven Development
Unit TestingDoes a piece of code work correctly?
![Page 43: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/43.jpg)
![Page 44: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/44.jpg)
Test Driven Development
Code CoverageHow many pieces of code did we test?
![Page 45: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/45.jpg)
Behavior Driven Development
Acceptance TestingDoes the app behave correctly?
![Page 46: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/46.jpg)
Repeatedly executing tests scenarios manually in several environments
under different conditions demands monkeys perseverance...
![Page 47: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/47.jpg)
Savior!
AutomationRecording and/or Simulating User Interface actions.
![Page 48: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/48.jpg)
![Page 49: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/49.jpg)
Debugging requires Tracking
It didn’t work... what happened?
![Page 50: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/50.jpg)
Software Quality
Profiling & Performance MonitoringIt works but... how good?
GOOD = FAST but also... EFFICIENT
![Page 51: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/51.jpg)
Wrapping it up…
![Page 52: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/52.jpg)
PlanU got to have 1.
![Page 53: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/53.jpg)
How to write & structure the code…
ArchitectureHaving a “blueprint” plan how to build mobile apps.
![Page 54: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/54.jpg)
How to assure quality…
VerificationHaving a plan for testing mobile apps.
![Page 55: Going Mobile at a Glance - Do you need to build from scratch?](https://reader033.fdocuments.net/reader033/viewer/2022052900/5562d7f5d8b42a63498b50d4/html5/thumbnails/55.jpg)
www.cronos.be