3. AS-IS Development
Implement requirements for all target platform (Android, iOS, …[, supporting different version of SDKs
Using different languages, framework, design patterns, tools, …
4. AS-IS Deployment
Using different API/applications to deploy an application
Different graphical materials
5. AS-IS Support
Create fixes and updates for all supported platforms in the same period of time
Discrepancies between applications on different platforms are growing while the app lifecycle
6. AS-IS Solutions
Hybrid app
Cross-platform frameworks
Generation Tools
Rho
Qt
No business-logic support
PhoneGap
J2ME
7. TO-BE
Abstract Language to create applications in a Declarative way
Separation of L&F from business-logic
Componentization and Graphical Design
Open API for Components creation
Automate deployment to different app stores
Virtual App Repository to improve UX
Social networking
8. TO-BE Abstract Language
Business Rules
Implementation
Platform Functionality
Abstract Declaration
Business Logic
Click Me
If A < B then…
L&F
Fonts, Styles, Layouts, …
10. TO-BE Graphical Design
UML-like Graphic representaion
Scala representation
val address = new GuiContainer {
val street = new EditText
val city = new EditText
val country = new EditText
}
address: GuiContainer
street: EditText
city: EditTExt
country: EditText