SlideShare a Scribd company logo
1 of 25
Emerging Trends, Tools and Techniques in Mobile Software Applications Development Seamus Mc Gurgan
Background Enormous demand for applications. Made with complex SDK’s which required a considerable time investment.  Emergence of Rapid Application Development (RAD) Tools which claim no programming experience is necessary. This study aimed to assess the effectiveness of RAD from the non-programmers perspective.
Problem Statement “Using both Google App Inventor for Android and Adobe Integrated Runtime as examples of emerging Rapid Application Development Tools, to what extent can a person with no programming experience be realistically expected to become successful in app construction and at what point will they face complexity so great they cannot continue without seeking the aid of an expert programmer?”
Objectives Identify what these emerging tools offer to a person without a background in programming. Determine how successful this type of user can be at constructing apps with RAD tools. Assess the design on the tools and how they cater to their audience.
Objectives Investigate the methodology of RAD – marketing buzzword or genuine method of producing quality results quickly? Record how the tools influence the non-programmers’ thought process while building apps. Discover limitations of tools and their scope for providing key application features.
Methodology To measure the effectiveness of RAD, two emerging tools were chosen and two popular mobile apps were recreated in these environments. Google App Inventor Adobe Integrated Runtime (AIR) Doodle Jump FourSquare
Analysis of the Tools
Features of the Tools– App Inventor
Features of the Tools – AIR
App Selection
Challenges  App Inventor – Doodle Jump Jumping mechanic  implemented by pixel displacement, counter or timer? Blocks showed options. Bouncing platform – discovery of if else. Spring and Doodler navigation – success by experimentation of numbers. Saving score to TinyWebDB – purpose of lists unknown to the non-programmer. HCI – screen arrangers, no customisable components and workaround for multiple screens.
Challenges AIR – Doodle Jump Installing AIR on phone required command line argument entry. Publish settings were unreliable. Discovering the structure of the language with little feedback – how to define variables, name controllers, order of commands, syntax.  Disabled property – confusing syntax highlighting. Co-ordinates VS stage width – mixture of both had to be applied. Score – glyph embedding. Unsolvable – shooting sprite overlap, establishing connection to database.
Challenges App Inventor - FourSquare Tag–value system unpractical for intricate database – complete dependence on position in list. Limit to number of friends – unable to dynamically create components via code. Inability to search values of TinyWebDB – location co-ordinates had to be stored within code. Adding friends– had to be manually selected from device contacts while also being unable to import Twitter friends.
Challenges  AIR – FourSquare Connecting to the database – Microsoft Access database was made, but a full connection could not be established. The barrier of SQLite proved too challenging and without its implementation, much of the functionality of FourSquare could not be recreated. Translating the equation to calculate distance into Actionscript – puzzle structure of App Inventor replaced by brackets. External API had to be manually installed – maps function not available by default and contacts API was not compatible.
Development of the Non-Programmer The development process of each app educated the author on the basics of programming. Use of variables to make large quantities of code manageable. Application of if else statements and lists. App Inventor’s conceptual metaphor of puzzle pieces aided trial and error construction. On the whole, much more was learnt about the fundamentals of coding through experimentation with App Inventor than was gleaned by reading the comments provided by AIR’s code snippets – this was an unexpected finding.
Key Advantages Found App Inventor: This study proved that the Blocks Editor helped a beginner programmer to learn the structure of code. The sensible categorisation of components and blocks made finding objects intuitive.  The TinyWebDB’s method of storing data as a tag and a value was seen to be an easy concept for the user to understand.  AIR: Code Snippets provided rapid design of complex methods and their comments acted as a translation into common English.  Timeline frames allowed for the easy development of multi-screen apps. Invisible buttons promoted good design capabilities.
Key Limitations Found App Inventor: Not able to freely position components. Limiting to one screen apps meant good design was sacrificed to find a workaround for multiple screens. Poor emulator performance. Inefficient database system that does not permit searching, ordering, saving of images or multiple simultaneous calls. Orientation sensor demanded powerful phone to achieve realistic results. Sprite collisions were not able to be accurately defined. GPS functionality not able to be replicated on connected device. Zoom and Undo features are rendered unusable.
Key Limitations Found AIR: At times functionality was heavily dependent on the overall structure of the code.  No search function provided for the library of methods and calls.  Installation of Adobe AIR on the phone was frustratingly difficult. SQLite was not accessible to a new user. Feedback from failed publish attempts was often indecipherable to a person who does not understand the jargon of programming. Emulator was visually inaccurate.
Comparing the Tools Scope for design - App Inventor’s methodology of screen arrangers pales in comparison to the freedom offered by the stage in AIR. App Inventor outshined AIR in terms of code construction and ease of learnability.  App Inventor simplified data storage to a paired tag and value system – this was found to sacrifice functionality and data integrity in its efforts to make the tool more accessible. Poor emulators meant a real device was required to produce applications that depend on mobile functionality for both tools.
Comparing the Tools The overall order of the code had no bearing in App Inventor but had great influence in AIR. AIR’s comments can be used as a notepad and unused code can be placed within them, while App Inventor only allows the deactivation of blocks. SQLite allows expansive controller over data, but at the cost of the excommunication of new users.
Objectives Met This study concluded that App Inventor was the easier tool to learn via trial and error for a beginner. It was shown that a both tools allowed an inexperienced user to create functional applications within a short amount of time. While most of the functionality for both apps could be recreated with Google App Inventor, AIR struggled to provide the tools necessary for a beginner to create these applications.  AIR makes no effort to abstract its complexity, and this repelled the user.
Objectives Met Neither tool can be considered ‘rapid’ – App Inventor required time spent finding workarounds to absent features and AIR demanded the learning of additional languages. Confirms RAD is a marketing buzzword, but still has a place in rapid development of smaller projects. List of recommendations to be made to tools was made – App Inventor updated with two of these changes.
Future Work and Implications To assess the effectiveness of RAD tools as a whole more tools would need to be examined, such as AppCat and Visual Basic. Another worthwhile expansion on this research would be to have an expert carry out the same tasks with the RAD tools and comparing findings – allowing for a more accurate identification of strengths and weaknesses. Using these tools in academic studies at both secondary and higher level education could provide an excellent source of learning - allow for the teaching of more complex concepts earlier in the course.  RAD tools are limited by subjectivity - if a project specification is within the confines of the limitations presented within this study, the tools can be more cost effective than more conventional environments.
Conclusion Both beginners and experts alike can gain much from RAD tools, but new users will be misled by the tools’ claims to be rapid. The author learnt how to program mobile applications to a good degree without receiving teaching. Validates the ‘no experience required’ claims of the tools and shows how they  successfully removed the intimidating barrier of learning code.  RAD tools have much potential for both educating beginners and quickly developing smaller projects.

More Related Content

What's hot

Abhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek Pathak
 
AvneetSingh_Resume
AvneetSingh_ResumeAvneetSingh_Resume
AvneetSingh_ResumeAvneet Singh
 
Classification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextClassification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextPerfecto by Perforce
 
From mobile browser to mobile app
From mobile browser to mobile appFrom mobile browser to mobile app
From mobile browser to mobile appRyan Stewart
 
Developing with Phonegap - Adobe Refresh 2012
Developing with Phonegap - Adobe Refresh 2012Developing with Phonegap - Adobe Refresh 2012
Developing with Phonegap - Adobe Refresh 2012Ryan Stewart
 
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextMoving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextPerfecto by Perforce
 
Debugging and deploying with phone gap
Debugging and deploying with phone gapDebugging and deploying with phone gap
Debugging and deploying with phone gapRyan Stewart
 
Hybrid Application Development documentation report (MCA Project)
Hybrid Application Development documentation report (MCA Project)Hybrid Application Development documentation report (MCA Project)
Hybrid Application Development documentation report (MCA Project)vetri pandi
 
Digital Training Case Study: Powering up with API's
Digital Training Case Study: Powering up with API'sDigital Training Case Study: Powering up with API's
Digital Training Case Study: Powering up with API'sCourtney Daryanani
 

What's hot (19)

Vipin_Pandey
Vipin_PandeyVipin_Pandey
Vipin_Pandey
 
Abhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 years
 
Yauheni_Semchanka_CV
Yauheni_Semchanka_CVYauheni_Semchanka_CV
Yauheni_Semchanka_CV
 
CV_AmalMandal
CV_AmalMandalCV_AmalMandal
CV_AmalMandal
 
SivaramV_Resume
SivaramV_ResumeSivaramV_Resume
SivaramV_Resume
 
AvneetSingh_Resume
AvneetSingh_ResumeAvneetSingh_Resume
AvneetSingh_Resume
 
Classification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps NextClassification of Advanced AI and ML Testing Tools - DevOps Next
Classification of Advanced AI and ML Testing Tools - DevOps Next
 
SURYA_3.6
SURYA_3.6SURYA_3.6
SURYA_3.6
 
Wecreate3
Wecreate3Wecreate3
Wecreate3
 
From mobile browser to mobile app
From mobile browser to mobile appFrom mobile browser to mobile app
From mobile browser to mobile app
 
[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh
 
expBSIT (1) (1)
expBSIT (1) (1)expBSIT (1) (1)
expBSIT (1) (1)
 
Developing with Phonegap - Adobe Refresh 2012
Developing with Phonegap - Adobe Refresh 2012Developing with Phonegap - Adobe Refresh 2012
Developing with Phonegap - Adobe Refresh 2012
 
Gowrisankar_Resume
Gowrisankar_ResumeGowrisankar_Resume
Gowrisankar_Resume
 
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps NextMoving to Modern DevOps with Fuzzing and ML - DevOps Next
Moving to Modern DevOps with Fuzzing and ML - DevOps Next
 
SatishKumar_Prolifics
SatishKumar_ProlificsSatishKumar_Prolifics
SatishKumar_Prolifics
 
Debugging and deploying with phone gap
Debugging and deploying with phone gapDebugging and deploying with phone gap
Debugging and deploying with phone gap
 
Hybrid Application Development documentation report (MCA Project)
Hybrid Application Development documentation report (MCA Project)Hybrid Application Development documentation report (MCA Project)
Hybrid Application Development documentation report (MCA Project)
 
Digital Training Case Study: Powering up with API's
Digital Training Case Study: Powering up with API'sDigital Training Case Study: Powering up with API's
Digital Training Case Study: Powering up with API's
 

Viewers also liked

Current and future challenges of software engineering for services and applic...
Current and future challenges of software engineering for services and applic...Current and future challenges of software engineering for services and applic...
Current and future challenges of software engineering for services and applic...Sotiris Koussouris
 
Making our mark: the important role of social scientists in the ‘era of big d...
Making our mark: the important role of social scientists in the ‘era of big d...Making our mark: the important role of social scientists in the ‘era of big d...
Making our mark: the important role of social scientists in the ‘era of big d...The Higher Education Academy
 
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
 Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York) Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)Jean Bézivin
 
Mobile Learning Definitions
Mobile Learning DefinitionsMobile Learning Definitions
Mobile Learning DefinitionsBrad H
 
Mobile learning: current status, examples, challenges
Mobile learning: current status, examples, challengesMobile learning: current status, examples, challenges
Mobile learning: current status, examples, challengesscil CH
 
The Future of Software Development Based on Cloud & Mobile Computing
The Future of Software Development Based on Cloud & Mobile ComputingThe Future of Software Development Based on Cloud & Mobile Computing
The Future of Software Development Based on Cloud & Mobile ComputingSoftware Park Thailand
 
Mobile learning powerpoint
Mobile learning powerpointMobile learning powerpoint
Mobile learning powerpointSylvia Suh
 
Introduction To Mobile Application Development
Introduction To Mobile Application DevelopmentIntroduction To Mobile Application Development
Introduction To Mobile Application DevelopmentSyed Absar
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 
Mobile Application Design & Development
Mobile Application Design & DevelopmentMobile Application Design & Development
Mobile Application Design & DevelopmentRonnie Liew
 
Mobile Application Development With Android
Mobile Application Development With AndroidMobile Application Development With Android
Mobile Application Development With Androidguest213e237
 
Mobile Learning - Done Right
Mobile Learning - Done RightMobile Learning - Done Right
Mobile Learning - Done RightVolker Hirsch
 
Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application Developmentjini james
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging ChallengesAaron Irizarry
 

Viewers also liked (16)

Current and future challenges of software engineering for services and applic...
Current and future challenges of software engineering for services and applic...Current and future challenges of software engineering for services and applic...
Current and future challenges of software engineering for services and applic...
 
Freelance jobs
Freelance  jobsFreelance  jobs
Freelance jobs
 
Making our mark: the important role of social scientists in the ‘era of big d...
Making our mark: the important role of social scientists in the ‘era of big d...Making our mark: the important role of social scientists in the ‘era of big d...
Making our mark: the important role of social scientists in the ‘era of big d...
 
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
 Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York) Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
 
Mobile Learning Definitions
Mobile Learning DefinitionsMobile Learning Definitions
Mobile Learning Definitions
 
Mobile learning: current status, examples, challenges
Mobile learning: current status, examples, challengesMobile learning: current status, examples, challenges
Mobile learning: current status, examples, challenges
 
The Future of Software Development Based on Cloud & Mobile Computing
The Future of Software Development Based on Cloud & Mobile ComputingThe Future of Software Development Based on Cloud & Mobile Computing
The Future of Software Development Based on Cloud & Mobile Computing
 
9 Ways People Are Using Mobile Learning
9 Ways People Are Using Mobile Learning9 Ways People Are Using Mobile Learning
9 Ways People Are Using Mobile Learning
 
Mobile learning powerpoint
Mobile learning powerpointMobile learning powerpoint
Mobile learning powerpoint
 
Introduction To Mobile Application Development
Introduction To Mobile Application DevelopmentIntroduction To Mobile Application Development
Introduction To Mobile Application Development
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Mobile Application Design & Development
Mobile Application Design & DevelopmentMobile Application Design & Development
Mobile Application Design & Development
 
Mobile Application Development With Android
Mobile Application Development With AndroidMobile Application Development With Android
Mobile Application Development With Android
 
Mobile Learning - Done Right
Mobile Learning - Done RightMobile Learning - Done Right
Mobile Learning - Done Right
 
Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application Development
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
 

Similar to Emerging trends, tools and techniques in mobile

React Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfReact Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfTechugo
 
Programmer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language InputProgrammer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language Inputijseajournal
 
Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits
 Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits
Why React Native Apps Outperform Hybrid Apps: Advantages and BenefitsTechugo
 
React Native Market Overview for Cross-Platform App Development.pdf
React Native Market Overview for Cross-Platform App Development.pdfReact Native Market Overview for Cross-Platform App Development.pdf
React Native Market Overview for Cross-Platform App Development.pdfTechugo
 
React Native Guide A Hybrid Framework for Mobile Apps
React Native Guide A Hybrid Framework for Mobile AppsReact Native Guide A Hybrid Framework for Mobile Apps
React Native Guide A Hybrid Framework for Mobile AppsInexture Solutions
 
Why is React Native the Best Choice for Mobile App Development.pdf
Why is React Native the Best Choice for Mobile App Development.pdfWhy is React Native the Best Choice for Mobile App Development.pdf
Why is React Native the Best Choice for Mobile App Development.pdfTechugo
 
Do You Want to Achieve Mobile App Mastery? A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery? A Step-by-Step GuidebookDo You Want to Achieve Mobile App Mastery? A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery? A Step-by-Step GuidebookDistanceCodingAgency
 
Do You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery: A Step-by-Step GuidebookDo You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebookbill886381
 
React native app development reasons to adopt and key aspects to consider
React native app development reasons to adopt and key aspects to considerReact native app development reasons to adopt and key aspects to consider
React native app development reasons to adopt and key aspects to considerShelly Megan
 
React Native App Development.
React Native App Development.React Native App Development.
React Native App Development.Techugo
 
Why react native is recommended over other frameworks for mobile app development
Why react native is recommended over other frameworks for mobile app developmentWhy react native is recommended over other frameworks for mobile app development
Why react native is recommended over other frameworks for mobile app developmentFullestop
 
Guide to Create React Native App for Android & iOS Platforms
Guide to Create React Native App for Android & iOS Platforms Guide to Create React Native App for Android & iOS Platforms
Guide to Create React Native App for Android & iOS Platforms RajasreePothula3
 
What is React Native and When to Choose It For Your Project.pdf
What is React Native and When to Choose It For Your Project.pdfWhat is React Native and When to Choose It For Your Project.pdf
What is React Native and When to Choose It For Your Project.pdfNarola Infotech
 
Is React Native the Perfect choice for Cross-platform app development.pdf
Is React Native the Perfect choice for Cross-platform app development.pdfIs React Native the Perfect choice for Cross-platform app development.pdf
Is React Native the Perfect choice for Cross-platform app development.pdfMoon Technolabs Pvt. Ltd.
 
A Complete Guide On React Native App Development.pdf
A Complete Guide On React Native App Development.pdfA Complete Guide On React Native App Development.pdf
A Complete Guide On React Native App Development.pdfWDP Technologies
 
Choose between flutter and react native
Choose between flutter and react nativeChoose between flutter and react native
Choose between flutter and react nativeSmith Daniel
 

Similar to Emerging trends, tools and techniques in mobile (20)

Wecreate3
Wecreate3Wecreate3
Wecreate3
 
React Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfReact Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdf
 
Programmer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language InputProgrammer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language Input
 
Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits
 Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits
Why React Native Apps Outperform Hybrid Apps: Advantages and Benefits
 
React Native Market Overview for Cross-Platform App Development.pdf
React Native Market Overview for Cross-Platform App Development.pdfReact Native Market Overview for Cross-Platform App Development.pdf
React Native Market Overview for Cross-Platform App Development.pdf
 
React Native Guide A Hybrid Framework for Mobile Apps
React Native Guide A Hybrid Framework for Mobile AppsReact Native Guide A Hybrid Framework for Mobile Apps
React Native Guide A Hybrid Framework for Mobile Apps
 
Why is React Native the Best Choice for Mobile App Development.pdf
Why is React Native the Best Choice for Mobile App Development.pdfWhy is React Native the Best Choice for Mobile App Development.pdf
Why is React Native the Best Choice for Mobile App Development.pdf
 
How to Build a Hybrid App: A Detailed Outline
How to Build a Hybrid App: A Detailed Outline How to Build a Hybrid App: A Detailed Outline
How to Build a Hybrid App: A Detailed Outline
 
Wecreate
WecreateWecreate
Wecreate
 
Do You Want to Achieve Mobile App Mastery? A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery? A Step-by-Step GuidebookDo You Want to Achieve Mobile App Mastery? A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery? A Step-by-Step Guidebook
 
Do You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery: A Step-by-Step GuidebookDo You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebook
Do You Want to Achieve Mobile App Mastery: A Step-by-Step Guidebook
 
React native app development reasons to adopt and key aspects to consider
React native app development reasons to adopt and key aspects to considerReact native app development reasons to adopt and key aspects to consider
React native app development reasons to adopt and key aspects to consider
 
React Native App Development.
React Native App Development.React Native App Development.
React Native App Development.
 
Why react native is recommended over other frameworks for mobile app development
Why react native is recommended over other frameworks for mobile app developmentWhy react native is recommended over other frameworks for mobile app development
Why react native is recommended over other frameworks for mobile app development
 
Flutter.pdf
 Flutter.pdf Flutter.pdf
Flutter.pdf
 
Guide to Create React Native App for Android & iOS Platforms
Guide to Create React Native App for Android & iOS Platforms Guide to Create React Native App for Android & iOS Platforms
Guide to Create React Native App for Android & iOS Platforms
 
What is React Native and When to Choose It For Your Project.pdf
What is React Native and When to Choose It For Your Project.pdfWhat is React Native and When to Choose It For Your Project.pdf
What is React Native and When to Choose It For Your Project.pdf
 
Is React Native the Perfect choice for Cross-platform app development.pdf
Is React Native the Perfect choice for Cross-platform app development.pdfIs React Native the Perfect choice for Cross-platform app development.pdf
Is React Native the Perfect choice for Cross-platform app development.pdf
 
A Complete Guide On React Native App Development.pdf
A Complete Guide On React Native App Development.pdfA Complete Guide On React Native App Development.pdf
A Complete Guide On React Native App Development.pdf
 
Choose between flutter and react native
Choose between flutter and react nativeChoose between flutter and react native
Choose between flutter and react native
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

Emerging trends, tools and techniques in mobile

  • 1. Emerging Trends, Tools and Techniques in Mobile Software Applications Development Seamus Mc Gurgan
  • 2. Background Enormous demand for applications. Made with complex SDK’s which required a considerable time investment. Emergence of Rapid Application Development (RAD) Tools which claim no programming experience is necessary. This study aimed to assess the effectiveness of RAD from the non-programmers perspective.
  • 3. Problem Statement “Using both Google App Inventor for Android and Adobe Integrated Runtime as examples of emerging Rapid Application Development Tools, to what extent can a person with no programming experience be realistically expected to become successful in app construction and at what point will they face complexity so great they cannot continue without seeking the aid of an expert programmer?”
  • 4. Objectives Identify what these emerging tools offer to a person without a background in programming. Determine how successful this type of user can be at constructing apps with RAD tools. Assess the design on the tools and how they cater to their audience.
  • 5. Objectives Investigate the methodology of RAD – marketing buzzword or genuine method of producing quality results quickly? Record how the tools influence the non-programmers’ thought process while building apps. Discover limitations of tools and their scope for providing key application features.
  • 6. Methodology To measure the effectiveness of RAD, two emerging tools were chosen and two popular mobile apps were recreated in these environments. Google App Inventor Adobe Integrated Runtime (AIR) Doodle Jump FourSquare
  • 8. Features of the Tools– App Inventor
  • 9. Features of the Tools – AIR
  • 11. Challenges App Inventor – Doodle Jump Jumping mechanic implemented by pixel displacement, counter or timer? Blocks showed options. Bouncing platform – discovery of if else. Spring and Doodler navigation – success by experimentation of numbers. Saving score to TinyWebDB – purpose of lists unknown to the non-programmer. HCI – screen arrangers, no customisable components and workaround for multiple screens.
  • 12. Challenges AIR – Doodle Jump Installing AIR on phone required command line argument entry. Publish settings were unreliable. Discovering the structure of the language with little feedback – how to define variables, name controllers, order of commands, syntax. Disabled property – confusing syntax highlighting. Co-ordinates VS stage width – mixture of both had to be applied. Score – glyph embedding. Unsolvable – shooting sprite overlap, establishing connection to database.
  • 13. Challenges App Inventor - FourSquare Tag–value system unpractical for intricate database – complete dependence on position in list. Limit to number of friends – unable to dynamically create components via code. Inability to search values of TinyWebDB – location co-ordinates had to be stored within code. Adding friends– had to be manually selected from device contacts while also being unable to import Twitter friends.
  • 14. Challenges AIR – FourSquare Connecting to the database – Microsoft Access database was made, but a full connection could not be established. The barrier of SQLite proved too challenging and without its implementation, much of the functionality of FourSquare could not be recreated. Translating the equation to calculate distance into Actionscript – puzzle structure of App Inventor replaced by brackets. External API had to be manually installed – maps function not available by default and contacts API was not compatible.
  • 15. Development of the Non-Programmer The development process of each app educated the author on the basics of programming. Use of variables to make large quantities of code manageable. Application of if else statements and lists. App Inventor’s conceptual metaphor of puzzle pieces aided trial and error construction. On the whole, much more was learnt about the fundamentals of coding through experimentation with App Inventor than was gleaned by reading the comments provided by AIR’s code snippets – this was an unexpected finding.
  • 16. Key Advantages Found App Inventor: This study proved that the Blocks Editor helped a beginner programmer to learn the structure of code. The sensible categorisation of components and blocks made finding objects intuitive. The TinyWebDB’s method of storing data as a tag and a value was seen to be an easy concept for the user to understand. AIR: Code Snippets provided rapid design of complex methods and their comments acted as a translation into common English. Timeline frames allowed for the easy development of multi-screen apps. Invisible buttons promoted good design capabilities.
  • 17. Key Limitations Found App Inventor: Not able to freely position components. Limiting to one screen apps meant good design was sacrificed to find a workaround for multiple screens. Poor emulator performance. Inefficient database system that does not permit searching, ordering, saving of images or multiple simultaneous calls. Orientation sensor demanded powerful phone to achieve realistic results. Sprite collisions were not able to be accurately defined. GPS functionality not able to be replicated on connected device. Zoom and Undo features are rendered unusable.
  • 18. Key Limitations Found AIR: At times functionality was heavily dependent on the overall structure of the code. No search function provided for the library of methods and calls. Installation of Adobe AIR on the phone was frustratingly difficult. SQLite was not accessible to a new user. Feedback from failed publish attempts was often indecipherable to a person who does not understand the jargon of programming. Emulator was visually inaccurate.
  • 19. Comparing the Tools Scope for design - App Inventor’s methodology of screen arrangers pales in comparison to the freedom offered by the stage in AIR. App Inventor outshined AIR in terms of code construction and ease of learnability. App Inventor simplified data storage to a paired tag and value system – this was found to sacrifice functionality and data integrity in its efforts to make the tool more accessible. Poor emulators meant a real device was required to produce applications that depend on mobile functionality for both tools.
  • 20. Comparing the Tools The overall order of the code had no bearing in App Inventor but had great influence in AIR. AIR’s comments can be used as a notepad and unused code can be placed within them, while App Inventor only allows the deactivation of blocks. SQLite allows expansive controller over data, but at the cost of the excommunication of new users.
  • 21.
  • 22. Objectives Met This study concluded that App Inventor was the easier tool to learn via trial and error for a beginner. It was shown that a both tools allowed an inexperienced user to create functional applications within a short amount of time. While most of the functionality for both apps could be recreated with Google App Inventor, AIR struggled to provide the tools necessary for a beginner to create these applications. AIR makes no effort to abstract its complexity, and this repelled the user.
  • 23. Objectives Met Neither tool can be considered ‘rapid’ – App Inventor required time spent finding workarounds to absent features and AIR demanded the learning of additional languages. Confirms RAD is a marketing buzzword, but still has a place in rapid development of smaller projects. List of recommendations to be made to tools was made – App Inventor updated with two of these changes.
  • 24. Future Work and Implications To assess the effectiveness of RAD tools as a whole more tools would need to be examined, such as AppCat and Visual Basic. Another worthwhile expansion on this research would be to have an expert carry out the same tasks with the RAD tools and comparing findings – allowing for a more accurate identification of strengths and weaknesses. Using these tools in academic studies at both secondary and higher level education could provide an excellent source of learning - allow for the teaching of more complex concepts earlier in the course. RAD tools are limited by subjectivity - if a project specification is within the confines of the limitations presented within this study, the tools can be more cost effective than more conventional environments.
  • 25. Conclusion Both beginners and experts alike can gain much from RAD tools, but new users will be misled by the tools’ claims to be rapid. The author learnt how to program mobile applications to a good degree without receiving teaching. Validates the ‘no experience required’ claims of the tools and shows how they successfully removed the intimidating barrier of learning code. RAD tools have much potential for both educating beginners and quickly developing smaller projects.

Editor's Notes

  1. Design background – lends to all points here.
  2. Initial objectives – these evolved as the project grew. In the end, an important objective was realised in creating a list of strengths and limitations for the purpose of determining the RAD tools suitability to a project on a case-by-case scenario.
  3. The vehicle for assessing these objectives will be the reproduction of two successful apps with the tools.
  4. Initial observations – App Inventor seems quite limited. Misleading – API’s and implimented within code. This is the only sort of information that is avaialble to people looking to see if RAD suits their needs.
  5. Mention Blocks editor. Use example of VARIABLE and IF
  6. Educate the user. One click publish. Also mention code hinting and syntax highlighting.
  7. Explain process and briefly describe Doodle Jump and FourSquare.
  8. The development of each app brought its own set of challenges.
  9. Expand upon ‘abstract complexity’.