UNIT V NON-FUNCTIONAL CHARACTERISTICS OF APP FRAMEWORKS
Comparison of different App frameworks, Build Performance, App
Performance, Debugging capabilities, Time to Market, Maintainability, Ease
of Development, UI/UX, Reusability.
5.1: Comparison of different App frameworks
Frameworks are commonly used to create these apps.
Native app framework
Hybrid app framework
React Native vs Flutter:
Concept React Native Flutter
Develop By It is first introduced by It is first introduced by
Facebook. Google.
Release June 2015 May 2017
Programmin JavaScript Dart language
gLanguage
Architecture React Native uses Flux Flutter uses Business Logic
and Redux architecture. Component (BLoC)
Flux created by architecture.
Facebook, whereas
Redux is the preferred
choice among the
community.
User It uses native UI It uses custom widgets to
Interface controllers to create UI build the UI of the app.
of the app.
Documentat React native Flutter documentation is
ion documentation is user- good, organize, and more
friendly but informative. We can get
disorganized. everything that we want to
be written in one place.
Performance The performance of the The performance of the
React Native app is slow Flutter application is fast.
in comparison to the Flutter compiles the
Flutter app. Here, application by using the
sometimes developers arm C/C++ library that
face issues while makes it closer to machine
running the hybrid code and gives the app a
application architecture. better native performance.
Testing React Native uses third- Flutter provides a very rich
party tools that are set of testing features. This
available for testing the feature allows the developer
app. to perform unit testing,
integration testing, and
widget testing.
Community It has very strong It has less community
Support community support support as compared to
where the questions and React Native.
issues can be solved
quickly.
Hot Reload Supported Supported
Latest React Native-v0.61.0 Flutter-v1.12.13
Version
Industry Facebook,Instagram GoogleAds,Hamilton
Adoption LinkedIn,Skype Reflectly, Xianyu
React Native vs Flutter vs Xamarin:
Xamarin React Native Flutter
Developed by Microsoft Facebook Google
Year 2011 2015 2018
Language XAML,C# Java Script,JSX Dart
Supported IOS, IOS, IOS, Android
Paltform Android,UWP,WP Android,web APP
F,macos
Skills need to Very High High LOw
develope
native
popularity High High low
Cost Licenced Visual Free Free
studio
Hot Reload No Yes Yes
Architecture MVC, MVVM MVC,MVP,MVVM MVC,MVP,MVVM,
Patterns ,Redux Redux,MVI
Native vs Hybrid vs Cross-Platform
App Type Native Hybrid Cross- Platform
Code base Separate code for Write once, run code platform
each platform. anywhere. specific capabilities
Developed Developed in Developed Javascript
using platform-specific using HTML, Dart
language, CSS, and C# and native
Objective-C or JavaScript. libraries
Swift for iOS, Java HTML, CSS, and
for Android, etc. JavaScript
Speed high development More more
speed
Preferred for startups Large scale Large scale
Intuitive & More familiar. familiar. familiar.
Interactive
Scope of Bugs minimal High high
Maintenance high less less
Skills and More required required required
Talent
Debugging native tools native with web Depends
framework
Pros High Performance Customization Code reuse
Code reuse
Cons No reuse of code Performance Poor Performance
issue
Dependency Less Extensively Extensively
Performance more efficient efficient efficient
Security More
Time to Time consuming Time Savor Time Savor
Market
Cost High Less Cost Less Cost than
Native
Tools Xcode, AppCode , Iconic, Apache React Native,
Android studio Cordova, visual Flutter, Xamarin
Atom, Android studio, Django
IDE-AIDE, Intellij
IDEA
Rendering Native Browser Native
Engine
Example Artsy, Instagram Instagram,
Google Maps, OLX, Twitter Facebook Ads
Spotify Pinterest, Lite, AliExpress, Manager, storyo,
Twitter, LinkedIn, Forbes, skype, Wix, The
Telegram, Pinterest, New York times
Facebook, Evernote Insightly
WhatsApp Gmail Bloomberg
PayPal, Gmail JustWatch Reflectly
NHS Skype
Baskin Robbin, Slack
Sworkit,
Untappd.
Airbus
Helicopters
Upgrades Automatic Easily with Difficult
internet
Offline Yes No Yes
Functionality
When to use 3D games and work online Mobile app
animations, and offline.
GPS, camera,
etc
Develpment Most Difficult simple Medium
Idea-code-
design-Test-
Release
5.2 Build Performance
Performance defined as how many simultaneous users or transactions the
system is to service and its response time. The performance itself is made up
of multiple factors: the device, server, network, and how the app is
programmed. 71% of app Uninstalls are down to app crashes. 70% of
users abandon an app that takes too long to load.
Measuring your mobile app’s performance at different KPIs:
General app KPIs
General app KPIs can typically be tracked by anyone as they don‟t require a
technical understanding of mobile technology or development.
The importance of certain KPIs will differ according to the functionality and
objective of the app. For instance, a subscription-only app won‟t worry about
the number of individual downloads of the app in question. Rather, they‟d
concentrate on user engagement.
General mobile app KPIs :
Downloads
The success of a mobile app is often directly proportional to the
number of downloads it has.
A social media app‟s twenty million downloads doesn‟t stand equally
with a paid subscription service‟s one million downloads, for instance.
User growth rate
To properly measure the performance of your app, rate at which your
user base is growing to predict future growth
You simply calculate the number of daily active users over a given
time period and average them out.
Organic conversion rate
The organic conversion rate is the rate at which you‟re converting users
through non-paid channels like word-of-mouth, social media mentions, PR,
organic search.
Paid conversion rate
leverage paid ads to reach your goals faster via From paid tweets to
sponsored Instagram posts,
Uninstalls
If too many people are uninstalling, this can indicate an issue with your
mobile app‟s performance – an issue you should fix quickly.
Ratings
A high user rating means your users are finding your app useful and can
also be a sign that your user engagement is effective.
We will track negative reviews to be looking at in terms of improvements for
your functionality.
Reach vs impressions
Reach refers to the number of people who see your content while
impressions refer to the number of times your content was displayed.
UX and performance KPIs
To improve the performance of your app from a technical standpoint and
make changes that will improve the user experience.
Load speed
people expect lightning-fast loads and, for the most part, they receive them.
If your mobile app isn‟t toeing the line, you have to fix the issue fast.
Screen resolution
screen resolutions of your users is essential to ensure you‟re delivering an
app that works as designed for every user.
Crash reports
Apps will crash. Many devices, operating systems, and specifications to
comprehensively test every possible circumstance.
By keeping track of crashes, ensuring the functionality of your app going
forward.
Devices
Peoples are they using tablets or smartphones? Are there more Andriod
users than iPhone users? Was any device used the most?
Operating systems
Knowing what operating system, a device is running is crucial to fixing
known issues like crashes.
For example, if you‟re seeing more crashes from users with iPhones, this
probably means your app hasn‟t been properly optimized for iOS users.
5. 3: App Performance
Mobile app performance refers to how well an app runs on a mobile device
under various loads and circumstances. It might require measuring how
long an app takes to load, mitigating crashes during peaks in user activity,
or monitoring battery usage.
1. Use a CDN to accelerate APIs
APIs are responsible for communicating and displaying information
received from other applications.
To speeds up an API‟s content delivery networks or CDNs come in.
A CDN uses servers all around the world to accelerate API
communication.
In using an edge server that‟s close to the user in a geographical
sense, latency, round-trip time, payload, and size are all mitigated.
Essentially the distance to the user is reduced, resulting in a boost to
the API‟s speed.
2. Optimize images
The bigger the image, the slower it will load – and the slower your app will
operate while trying to display it. Properly optimizing your images ensures
this load time is kept to a minimum.
Optimization can be looked at as a three-step process:
Compression
Resizing
Caching
Compression is the process of encoding digital image information using
fewer bits to kepp load time is minimum.
Resizing images involves changing the resolution of the image in question to
save you valuable kilobytes.
Caching is the practice of downloading images from a network into the
device‟s memory to fast the load time.
3. Cut down on superfluous features
If a feature isn‟t essential to the app‟s performance, you should consider
cutting it for the betterment of your overall performance.
App to be fast and responsive,superfluous features tend to bog apps down,
increasing the load time and slowing down performance.
4. Load data as you need it
Loading all of an app‟s data at once is a quick way to slow or even crash it.
split-up assemblies to beak the data down into easily retrievable chunks.
5. Create an offline mode
An app‟s offline mode is designed to create a buffer for your information to
be safely housed in the case of a loss of network connectivity. It essentially
means reliability, security in information, and user ease of mind.
6. Optimize your code
Unoptimized code can lead to slower performance or even potential crashes
so you want to make sure your code is clean and compressed.
7. Test your app across multiple devices
To test your app across multiple devices.Device testing ensures your final
product will perform as designed no matter what device your user base is
using.
8. Monitor crashes: Monitoring your crash reports will ensure you‟re across
any issues that may spring up once your app is live.Ensure they don‟t
happen for the same reason a second time.
9. Display a loading state
If your audience is simply staring at a blank screen while your app loads,
they will perceive the load time as longer than it actually .Displaying a
loading state with a colorful animation or helpful messages is a great way to
help users tolerate the wait.
10. Go native
App develop using native apps to make faster and more intuitive for the
users. It also gives you the ability to make full use of the device features
such as GPS or images, etc.
5.4 Debugging capabilities
Enable debugging.
Start debugging. Attach the debugger to a running app.
Change the debugger type.
Use the system log. Write log messages in your code. View the system
log.
Work with breakpoints. View and configure breakpoints. Debug
window frames.
Inspect variables. Add watchpoints.
View and change resource value display format
Mobile App Debugging Tools
Xcode Ugsee, Qt RubyMotion
ChromeMobile Stetho BotKube
DevTools HttpWatch BugBattle
Instabug Flipboard Bugfender,
Genymotion FLEX Embrace
Spark Appetize.io
Inspector Apache Weinre
Debugging on Android
Requirements
Android Mobile
An App (to debug) built on Cordova
Desktop/laptop with chrome browser
Enable USB debugging in Android (one-time setup)
On your android mobile, go to Settings > Security. Enable „Unknown
sources: Allow installation of apps from unknown sources‟
Go to Settings > About Phone. In „About Phone‟ page, click on build
number for 7 times to enable developer options.
Go to Settings > Developer Options. Enable USB debugging.
Debugging mobile app
Open the app on mobile and connect mobile to a desktop with a USB
cable.
On the desktop, open a chrome browser and go to
„chrome://inspect#devices‟. All available apps for debugging are
shown on that page.
Click on inspect link that appears below to your app.Chrome
debugging tools will open and you can debug the app.
Debugging on IOS
Requirements
iPhone
Mobile app built on Cordova
MacBook (or Mac Pro or Mac Mini) with safari browser
Enable Safari Web Inspector (one-time setup)
On iPhone
Open Settings and Tap on Safari
In Safari Settings, Tap on Advanced
Turn on Web Inspector.
5.5: Time to Market
Time to market (TTM) refers to the amount of time it takes for a product or
application to be developed and released to the market. TTM is measured in
units of time. Depending on the type of product, you might perhaps measure
it in months, weeks, or days. Time to market is the period of time from product
conception to it being available for purchase or use. If you come up with an idea
for a mobile app today, the day it‟s ready to be downloaded on the Apple Store or
Google Play will mark your TTM.
Time to market is how long it takes for you to develop and launch a product.
App Type Estimated time
Simple App Development 2-4 months
Average App Development 4-6 months
Complex App Development 9+ months
Reducing time to market is a viable goal to strive for, as it brings a number of
desirable outcomes, including:
Competitive advantage
Reduced R&D costs
Improved customer satisfaction
Bigger market share
Being able to look for new investors
Reduce time to market in product development:
1.Estimate required budget
Estimated the budget properly, and this can be tricky, to a point where you can‟t
even deliver an MVP.
2.Reduce scope and build an MVP
Detailed project scope is definitely needed but on the other hand, sticking to it too
rigidly may prevent you from testing the feasibility of your idea in the real world
and collecting valuable feedback..
3.Follow agile development process
Agile product development is a widely assumed methodology allowing teams to
work efficiently, respond to any changes in requirements that may occur, and
deliver quality products on time, meeting end-user needs.
The agile framework involves the following:
Define the product vision and goal
Create a product backlog
Plan and prioritize
Plan a sprint
Develop and test
Review
Rinse and repeat
Time Taken UI/UX Alpha Test Beta test Example
Design
Small App 2-3 weeks 6-7 weeks 1 Week Business
cards
Mid Size App 5-6 weeks 14-15 Weeks 2 Week online stores,
booking
systems
Big Size App 9-10 weeks 20-22 Weeks 3 Week social media
apps
Factors That Impact the Development Timeline
The Complexity of an Idea
The Precise Requirements
The Accuracy of the Final Result
The Business Expertise
Importance of Time to Market
Lower costs
Increase potential market share
Increase revenues
Time to Market Examples
Software – TTM in this industry may be anything from half a year to up to
five years, depending on the complexity of the product. For example, the first
version of Airbnb launched in 10 months.
Cell phones – cell phones commonly have a TTM measurement of between
one and three years.
Vehicle manufacturing industry – the TTM for cars tends to be somewhere
between three and five years.
Energy products and services – in this sector, TTM can start out at the low
end at approximately seven years. It can increase to 20 years for some types
of products and services.
Pharmaceutical sector – in this area, time taken is typically from around
nine to ten years up to 19 to 20 years. Covid-19 vaccines were the exception
to this rule, due to tremendous international pressure.
Aerospace and Defense industry – in this sector the time frame can range
from anywhere between three or four years up to 22 years.
Impact of Delayed Time to Market
Loss of potential revenue
Missed opportunities for market share
Decreased customer satisfaction
Increased competition
5.6: Maintainability
Mobile app maintenance refers to the entire process that is followed to
ensure a bug-free and seamless working mobile app. The app maintenance
process includes monitoring, fixing, refining, and updating the elements that
can provide a user experience.
The progress of an app not only depends on the higher number of app
downloads. Instead, a large number of active users specifies the success of a
mobile app. According to a survey, around 56% of users uninstall mobile
applications within 7 days of the installation period.
Types of Mobile App Maintenance
1. Perfective Maintenance
Perfective maintenance is a process that considers those feedbacks. It also
involves some functional modifications in the source code to provide a
perfect user experience to the active users. When the targeted user uses the
app, specific new user requirements are discovered.
2. Preventive Maintenance
Preventive maintenance is the intervention that aims at reducing or
eliminating the occurrence of errors. It improves the maintainability and
understandability factor.
3. Adaptive Maintenance
Adaptive maintenance is concerned with updating the system to keep it
informed with the changing software or hardware environment.
4. Emergency Maintenance
Emergency maintenance takes care of unexpected errors and problems that
plague the system.
5. Corrective Maintenance
Corrective maintenance involves repairing of residual errors and faults in
the daily app functions. These errors are errors in coding, designing, and
logic.
High maintainability practices
Fix issues or add new features without introducing new bugs.
Improve performance or other attributes.
Adapt to a changing environment efficiently.
On-board new developers quickly.
Have a minimal impact on other components because of change to one
component.
Establish test criteria effectively and efficiently.
Best practices to build an easily maintainable application
App Support
Keep Updating the User Interface
Add New Features
Performance Monitoring
Bug Fixing
Check Licenses
Scheduled System Maintenance
Eliminate Dependencies To Clear Technical Debt
Adopt Test Driven Development
Balance Modularization And Re-Usability
Incorporate Automation
Create API And Method-Level Documentation
Benefits of App Maintenance
Better User Experience
Maintains Brand Image
Minimizes Uninstalls
Keeps Up the Competition
Financial Benefits
5.7: Ease of Development
Making the experience of your mobile app superior for your users, its ease of
deployment is equally important.
What to identify before developing a mobile app?
Decide on your operating system
Know your target audience
Concept proof your app idea
Know what‟s out there
Plan your app design and security
Steps to guide for start on developing a new mobile app:
1. Establish a team
2. Conduct competitive research
3. Outline core features
4. Create mockups
5. Plan app security
6. Begin coding
7. Perform multiple tests
8. Gather and implement feedback
9. Launch in the app store
1. Establish a development team
Developing an app has become easier with software programs and
online tools such as app builders.
Form a team of individuals with various backgrounds and expertise.
The app development process is best done with a group of people and
greatly benefit
Building a distributed team with top independent talent.
Instead of being limited to your knowledge or confined by geographic
lines,. To get started, look to Upwork to find the best mobile app
developers for your project.
At a minimum, your app development team should include a:
Product manager
UX/UI designer.
Mobile developer
Quality assurance analyst
Digital marketer
2. Conduct competitive research
make your product stand out to competitor features and customer
requirements
Find apps produced by your competitors.
outline competitors where fallen short.
Gauge specific insights into what customers like
What you should do differently to solve problems.
Get user feedback to find their needs.
develop features giving your app an edge.
3. Outline core features
Features of App include:
missing from the market
your target users are searching for what.
Develop key features that other development teams have neglected.
intuitive
easy to navigate
personalizable
simple to use.
good image resolution
speed
compatibility with both OS.
search option to keep users engaged
push notifications
social media linking
Incorporate new features or updates once the app is live
active and engaged users .
4. Create mockups
A mockup is a detailed outline of the appearance of the app with user
interface (UI) and UX designer. It is glimpse how about the app look and
operate for development team
Mockup includes
cohesive color scheme
typography
images,basic layout
The advantages of a mockup include:
Allows the development team to revise the app‟s appearance.
If you‟re seeking potential investors, it shows them before the
development team begins coding.
Explains the expectations for the development team.
5. Plan great app security
Preventing cybercriminals from stealing user data.
A single breach of the app causes loss of users and potentially
millions of dollars.
Ensure the mobile app and mobile platform are both secure through:
Encrypted data and Authorized APIs
Strong authentication
Tamper-detection software
Constant testing for potential breaches
6. Begin coding
Front-end development refers the code what the end-user will see.
Back-end development refers code, which dictates how the app
functions.
Using an Agile methodology of project management can be useful,
allowing for efficient, adaptable and flexible coding.
Test environment to check final app. Test environment considerations
include the database server, front-end environment, operating system
and network.
bug reporting tool used to ensure accurate and granular test data.
7. Perform multiple tests
To develop a successful app skip rigorous testing when the project is
on a tight budget, quality assurance (QA). QA helps teams ensure the
app is ready to enter the market.
To identify any bugs and quickly make improvements to the app
before going live to customers.
QA team think about when testing include:
Front-end vs. back-end functionality:
For the front end, does the mobile app look like it‟s supposed to from the
user side of things? For the back end, does the app function as it‟s supposed
to? For example, if a pop-up message is supposed to disappear when the
user clicks on it, does it? Is the little “X” to click it away properly displayed?
Device compatibility.
App integration.
Application type.
Installation and storage.
Security optimization.
8. Gather and implement user feedback
Development team should have based features on customer needs.
Feedback from who doesn‟t know the app can help provide invaluable
user feedback to ensure it is ready for many users with different
experience levels.
Testing the app with various users should give your development team
a better understanding
One way you can gain feedback after the launch of the app is by
looking at analytics.
To help your development team understand customer behavior and
identify any confusing areas for modification.
To help the team make adjustments to the application before the
market launch.
Once the app is live, it‟s a good idea to continue receiving feedback so
you can make necessary updates and adjustments as needed.
9. Launch in the app store
Developers may only focus on releasing their app to the Google Play
Store or Apple App Store.
5.8: UI/UX
User Interface(UI) design what you see when you use an application. A user
interface (Mobile UI) allows users to interact with the device‟s apps, features,
content, and functions. UIconsists of the visual representation, interface,
navigation, and processes that work behind the functional and structural
actions in the mobile app.
User experience (UX) appearance and function of the app, while UI is
all of the interaction in the application.
Types of User Interfaces
1. Splash Screen
2. Onboarding Screen
3. Home Screen
4. Login and Profile Screens
5. App Screens
Best Mobile-app Design Examples
Bumble
Starbucks
Venmo
Whatsapp and Airbnb
Ten rules of good UI design
Match between system and real world
User control and freedom
Consistency and standards
Error prevention
Recognition rather than recall
Flexibility and efficiency of use
Aesthetic and minimalist design
Recognize, diagnose, and recover from errors
Help and documentation
Visibility of system status
Eight golden rules of interface design
Strive for consistency
Enable Frequent Users to Use Shortcuts
Offer Informative Feedback
Design Dialog to Yield Closure
Offer Simple Error Handling
Permit Easy Reversal of Actions
Support Internal Locus of Control
Reduce Short-Term Memory Load
UX vs UI
UX design UI design
Human-first approach to Human-first approach to design the
product‟s design aesthetic experience of a product
Process of building products Process of transformation wireframes
that provide great user into attractive and easy to use
experience interfaces
Focused on users and their Focused on visual and interactive
journey through the product elements
Aims to improve the user
Aims to create attractive, simple to use
interaction and experience
and scalable product
of products
Example: Uber,
Example: ASOS, Evernote, Spotify,Paybal,Bigbasket
Tumblr
5. 9: Reusability
Reusability refers building a new app (mobile and web) using pre-existing
components.
Common features of all app to reuse of code:
1. Build a mobile app design repository componentizing the functions
that can be reused.
common features like:
Registration
Login / Login Help
Profile
Location Services
Search
2.Define the requirements for common mobile app functions at a parent
level.
Saving app credentials
Password changes
Managing User Sessions
Managing User Profiles
Search Behavior
Location Services
Push Notification Handling
3.Build a framework library of these common functions for integration into
the app.
Authentication and Authorization
Geo-Location Functions
Maps Functionality
Managing User Profiles
Photo and Video Capture via the device camera
4. Use the existing backend components and infrastructure to provide the
data that drives the app.
5. Build a test suite that handles common test scenarios across all your
mobile apps.
Memory Testing
App Impact on Battery Life
App Performance for Geo-Location Scenarios
Testing App on Multiple OS, Screen Sizes and Resolution
Benefits of Reusable
Quicker development/testing
Deal with less code at once
Makes bug tracing easier
Reduces size of app install
TWO MARKS QUESTIONS AND ANSWERS
PART-A
1. Who is using Flutter?
Alibaba
The Hamilton
Google Ads
Google Green Tea
AppTree
Tencent
Reflectly
Dream11
2. How to identify the suitable framework to choose our project.
Flutter: Startup business
Xamarin: Most projects
Iconic: For Beginners
React Native: MVP
3. Which mobile app development framework should I learn in
2023?
All the above-mentioned mobile applications frameworks (React
Native, Flutter, Xamarin, Swiftic, Ionic, Apache Cordova and jQuery
Mobile) are essential for any mobile app developer to learn. As of now,
changes can take place with time, but the given frameworks are
essential.
4. Which is the most used app development framework?
In the software industry, React Native is among the most popular
mobile app frameworks. The FB software is an accessible framework
that allows you to construct mobile apps for Android and iOS devices.
5. Which frameworks can be used for cross-platform app
development?
React Native, Ionic Framework, Node, Xamarin, NativeScript, Adobe
PhoneGap, and Flutter are the best mobile app development
frameworks for cross-platform app development.
6. Which frameworks are the best for native app development?
Native Script is an accessible framework that uses Angular,
Typescript, JavaScript, and CSS to develop native mobile applications.
React Native is the finest JavaScript framework for creating native
apps for any platform and operating system. Xamarin is among the
most used mobile app development frameworks. Microsoft launched
this native framework.
7. Which is the best mobile app development framework?
React Native is among the most commonly utilized mobile applications
frameworks, with 42% of programmers globally using it. It was created
by Facebook and is built on JavaScript. Using Android and ios
platforms, React Native programmers can quickly construct a
smartphone application with a native appearance and touch.
8. What technologies or frameworks can be applied to build a mobile
application?
Python, Java, Flutter, React Native, Swift, Kotlin, R Programming can
be used to develop a mobile application as they are the top mobile app
technologies.
9. Which stack is best for Android mobile app development?
Java has turned out to be the most widely utilized programming
language for creating Android apps. Because it is centered on Android
APIs and a large number of built-in Java libraries, it is among the
finest choices for developing Android apps.
10. What is a hybrid mobile app framework?
The Hybrid Managed Framework combines the advantages of both
Data-Driven as well as Keyword-Driven frameworks. The terms, and
the testing dataset, are externalized in this scenario. Test data could
be kept in a properties file or perhaps an Excel file, and keywords are
kept in a distinct Standard java file.
11. Which framework is best for mobile app development?
Flutter is the most popular Android framework out there. It has
speedily scaled the list of dominant positions after being recognized as
the second most-used framework after React Native. Onsen UI, React
Native, NativeScript, Iconic and more are best for mobile app
development.
12. Is there any framework for Android development?
Apache Cordova, formerly known as PhoneGap, is a free and open-
source Android framework that allows hybrid app development in
many basic web-development languages and technologies, like
JavaScript, HTML5, and CSS3. It authorizes for construction of multi-
platform apps with a single code base, e.g. Appcelerator Titanium.
13. What are the technologies used in iOS mobile app development?
Technologies like UIKit allows you to create a touch-based user
interface. Because all iOS apps are based on UIKit, you can‟t send an
app without this framework. Its interfaces are an integral component
and part of the Quartz Core framework.
14. Which programming is best for app development?
Java is best for app development. Java was the official language for
Android App Development and it is the most used language. Many of
the apps in the Play Store are constructed with Java, and it is also the
most reinforced language by Google.
15. How can you measure your mobile app’s performance?
General app KPIs
Downloads
User growth rate
Organic conversion rate
Paid conversion rate
Uninstalls
Ratings
16. How to improve your mobile app’s performance?
1. Use a CDN to accelerate APIs
2. Optimize images
3. Cut down on superfluous features
4. Load data as you need it
5. Create an offline mode
6. Optimize your code
7. Test your app across multiple devices
8. Monitor crashes
9. Display a loading state
10. Go native
17. How to improve Android App Performance.
Reduce the App Size.
Optimize Networking.
Optimize Images and Videos.
Optimize Screen Size.
Optimize Offline Model.
Improve Memory usage.
Scale Down the App Launch Time.
Hit a Smooth Frame Rate.
18. Why is time-to-market important?
Deadlines are an inherent part of business and there‟s a good reason for it.
A six-month delay will on average cost companies a 33% drop in revenue.
19. How do you reduce time to market in product development
Estimate required budget
Reduce scope and build an MVP
Follow agile development process
20. List the factors impact the app development timeline. Mid-project
changes.
Mid-project changes
Experience of your development team
Complexity of the app
21. Give Examples for Time to Market Examples.
Software – TTM in this industry may be anything from half a year to
up to five years, depending on the complexity of the product. For
example, the first version of Airbnb launched in 10 months.
Cell phones – cell phones commonly have a TTM measurement of
between one and three years.
22. List the Best Practices for Mobile App Maintenance.
App Support
Keep Updating the User Interface
Add New Features
Performance Monitoring
Bug Fixing
Check Licenses
Scheduled System Maintenance
23. Can you make changes to a mobile app after its launch?
Yes, you can incorporate updates to fix minor bugs in the software
and improve any app functionalities that may have become outdated
since the launch of your app.
24. Write down the steps to develop app.
Establish a team
Conduct competitive research
Outline core features
Create mockups
Plan app security
Begin coding
Perform multiple tests
Gather and implement feedback
Launch in the app store
25. What to identify before developing a mobile app?
Decide on your operating system
Know your target audience
Concept proof your app idea
Know what‟s out there
Plan your app design and security
26. Why Is Mobile App UI Design Important?
Saves time and cost in the long run
Attract and retain loyal customers
Helps build a brand
Assists with getting the app featured in app stores
27. Define churn rate?
Number of people who abandon the app after using it a few times
keeps many apps‟ owners awake.
28. What does a good UI look like?
Good UI is like a smart layout that draws the user in, encourages
them to stay, and makes it easy to find what they want – all this while
helping you convert browsers into paying users.
29. Give real time App example of Good UI design.
Uber
Paybal
BigBasket
30. What are the Benefits of Reusable?
Quicker development/testing
Deal with less code at once
Makes bug tracing easier
Reduces size of app install
PART-B
1. Differentiate Xamarin, React Native and Flutter framework.
2. Comparison of different App frameworks with Pros and cons.
3. Explain ways to improve the app performance in detail.
4. Write down the steps to debug in android.
5. Explain ways to reduce time to market in product development.
6. Describe the importance of application maintainability.
7. Explain the rules to design good UI and UX.
8. Differentiate UI and UX.
9. Explain the common features used for reusability in app development