Unit-10 Ajm
Unit-10 Ajm
10.0 Introduction 1
10.1 Objectives 1
10.2 Transition from Design to Coding of Mobile Applications
2
10.2.1 Create a transition
10.2.2 Transition of Design to Coding using Wireframes
10.2.3 Prototyping mobile UI animations – the takeaway
10.2.4 Application Wireframing Features
10.2.5 Animate layout changes using a transition
10.2.6 Apply a transition
10.2.7 How to use Android wireframe effectively?
10.2.8 Benefits of using wireframe
10.3 Elements of Mobile Applications
9
10.3.1 Product Strategy
10.3.2 Comprehending what your application needs to deliver
10.3.3 User Interface Design (Ui)
10.3.4 Screen Resolution
10.3.5 Graphics has to be appealing
10.3.6 User Experience Design (UX)
10.3.7 Good Speed
10.3.8 User-friendly Navigation
10.3.9 Application Content
10.3.10 Mobile device performance
10.3.11 Social Sharing Option
10.3.12 Security
10.3.13 Power Consumption
10.3.14 Compatibility
10.3.15 Simplicity
10.3.16 Offline function
10.3.17 Have a high performance
10.3.18 Provide a Feedback Option
10.3.19 Regular Updates
10.3.20 Marketing
10.4 Approaches to the Development of Mobile Applications 13
10.4.1 Native Application Development
10.4.2 Cross-Platform Application Development
10.4.3 Hybrid Application Development
10.4.4 Rapid Mobile Application Development: RMAD
10.4.5 Progressive Web Applications: PWAs
10.5 Summary 19
10.6 Solutions/Answers 20
10.7 Further Readings
20
10.0 INTRODUCTION
The rapid proliferation and ubiquity of mobile, smart devices in the consumer market
has forced the software engineering community to quickly adapt developmental
approaches conscious of the novel capabilities of mobile applications. The
1
Web, Mobile and CASE combination of computing power, access to novel on board sensors and ease of
tools application transfer to market has made mobile devices the new computing platform
for businesses and independent developers. However, the growth of this new
computing platform has outpaced the software engineering work tailored to mobile
application development.
These powerful development tools and frameworks greatly simplify the task of
implementing a mobile application. However, they are predominantly focused on the
individual developer who is trying to create an application as quickly as possible. For
small and medium-sized mobile applications that can be built (and easily updated) by
a single developer, they represent a vast improvement on the previous generations of
tools, and encourage developers to adhere to the important principles of abstraction
and modularity that are built into the platform architectures.
However, as mobile applications become more complex, moving beyond inexpensive
recreational applications to more business critical uses, it will be essential to apply
software engineering processes to assure the development of secure, high-quality
mobile applications. While many “classic” software engineering techniques will
transfer easily to the mobile application domain, there are other areas for new research
and development.
10.1 OBJECTIVES
Transition holds information about animations that will be run on its targets during a
scene change. Subclasses of this abstract class may choreograph several child
transitions they may perform custom animations themselves. Any Transition has two
main jobs:
(1) capture property values, and (2) play animations based on changes to captured
property values. A custom transition knows what property values on view objects are
of interest to it, and also knows how to animate changes to those values.
Once you have defined the starting scene and the ending scene you want to change
between, you need to create a Transition object that defines an animation. The
framework enables you to specify a built-in transition in a resource file and inflate it
in your code or to create an instance of a built-in transition directly in your code.
2
look like and how the components should behave in order to keep the upfront Mobile Software
development effort and cost in its lowest minimum. Engineering
Android wireframes are screen sketches of Android apps (figure 10.1). It helps you
present and explain design ideas of applications to customers, which ultimately leads
to a consensus on the ideas transition into proposed.
Animated mobile transitions can be charming, useful and user-centric. They guide
users through a mobile application experience and ensure that both user goals and
conversion goals are catered to. But mobile UI designers have to resist the temptation
to animate for mobile animation’s sake. Animations should always be relevant,
targeted and with a purpose. That way, your UI will be as effective as these inspiring
examples of animated mobile transitions.
Transitions should offer a truly exclusive experience with a sliding, flipping, turning
or popping effect and Effects any event can have a popping, fading, sliding, folding,
dropping, bouncing effect – and many more.
10.2.4 Application Wire framing Features
Speed up your wire framing process with a modern tool. Designing wireframes that
behaves like the real deal and start getting real feedback from users testing your app
wireframe. Accelerate innovation. Avoid rework. Launch the right app.
A final prototype is made with all of the features incorporated into the application
design and sent to the development team for coding. After this one iteration, an MVP
is made and send to the client and if and as there are changes required, they are made
in the final design of the application. Every mobile application is made a success
through its functionality, code and calculations, regardless of how it looks and
works”, this sounds like an absolute fluke.
After all, today when we talk about mobile applications there is an immense need for
an exceptional UI and UX as much as a perfect backend code. In fact, UI/UX and
3
Web, Mobile and CASE visuals are the reason why some mobile applications become an instant hit in the
tools market and some are never downloaded in the first place.
Animated transitions can make the difference between a great mobile app and
transitions – those little animations that make UI elements visible or invisible – often
go unnoticed, but when executed right they contribute to a seamless user experience.
UI is the User Interface and UX stands for User Experience. For the fundamentals of
it, the app UX design process steps are more concerned with user retention which is
experience based and more subjective whereas, the UI design development process is
consists of the visuals and graphics of an app. UI is a sub-part of UX, although the
UI/UX design is an art, the mobile app design process of creating the graphics of an
application is more systematic and technical.
Transition’s mobile applications support increase your business agility and taking
advantage of mobile technologies improves productivity and provides added value.
Companies who embrace today’s world as “mobile-first” find that their processes run
smoother and simpler, while their business is more scalable, with mobile applications.
Transition’s system architecture ensures our mobile apps are secure, fully functional,
and embedded into your software and business workflows.
Android's transition framework allows you to animate all kinds of motion in your UI
by simply providing the starting layout and the ending layout. You can select what
type of animation you want (such to fade the views in/out or change the view sizes)
and the transition framework figures out how to animate from the starting layout to
the ending layout.
The basic process to animate between two layouts is as follows (figure 10.2):
1. Create a Scene object for both the starting layout and the ending layout.
However, the starting layout's scene is often determined automatically from
the current layout.
2. Create a Transition object to define what type of animation you want.
3. Call TransitionManager.go() and the system runs the animation to swap the
layouts.
4. The diagram in figure 1 illustrates the relationship between your layouts, the
scenes, the transition, and the final animation.
4
Mobile Software
Engineering
Create a scene
Scenes store the state of a view hierarchy, including all its views and their property
values. The transitions framework can run animations between a starting and an
ending scene.
You can create your scenes from a layout resource file or from a group of views in
your code. However, the starting scene for your transition is often determined
automatically from the current UI.
A scene can also define its own actions that run when you make a scene change. For
example, this feature is useful for cleaning up view settings after you transition to a
scene.
You can create a Scene instance directly from a layout resource file. Use this
technique when the view hierarchy in the file is mostly static. The resulting scene
represents the state of the view hierarchy at the time you created the Scene instance. If
you change the view hierarchy, you have to recreate the scene. The framework creates
the scene from the entire view hierarchy in the file; you cannot create a scene from
part of a layout file.
To create a Scene instance from a layout resource file, retrieve the scene root from
your layout as a ViewGroup instance and then call
the Scene.getSceneForLayout() function with the scene root and the resource ID of
the layout file that contains the view hierarchy for the scene.
The code snippets in the rest of this section show you how to create two different
scenes with the same scene root element. The snippets also demonstrate that you can
load multiple unrelated Scene objects without implying that they are related to each
other.
The main layout of an activity with a text label and a child layout.
A relative layout for the first scene with two text fields.
5
Web, Mobile and CASE A relative layout for the second scene with the same two text fields in different
tools order.
The example is designed so that all of the animation occurs within the child layout of
the main layout for the activity. The text label in the main layout remains static.
This layout definition contains a text field and a child layout for the scene root. The
layout for the first scene is included in the main layout file. This allows the app to
display it as part of the initial user interface and also to load it into a scene, since the
framework can load only a whole layout file into a scene.
The layout for the second scene contains the same two text fields (with the same IDs)
placed in a different order.
After you create definitions for the two relative layouts, you can obtain a scene for
each of them. This enables you to later transition between the two UI configurations.
To obtain a scene, you need a reference to the scene root and the layout resource ID.
In the app, there are now two Scene objects based on view hierarchies. Both scenes
use the scene root defined by the Frame Layout element
in res/layout/activity_main.xml.
You can also create a Scene instance in your code from a ViewGroup object. Use this
technique when you modify the view hierarchies directly in your code or when you
generate them dynamically.
To create a scene from a view hierarchy in your code, use the Scene (sceneRoot,
viewHierarchy) constructor. Calling this constructor is equivalent to calling
the Scene.getSceneForLayout() function when you have already inflated a layout file.
The following code snippet demonstrates how to create a Scene instance from the
scene root element and the view hierarchy for the scene in your code:
The framework enables you to define custom scene actions that the system runs when
entering or exiting a scene. In many cases, defining custom scene actions is not
necessary, since the framework animates the change between scenes automatically.
Animate views that are not in the same hierarchy. You can animate views for both the
starting and ending scenes using exit and entry scene actions.
Animate views that the transitions framework cannot animate automatically, such
as ListView objects.
To provide custom scene actions, define your actions as Runnable objects and pass
them to the Scene.setExitAction() or Scene.setEnterAction() functions. The
framework calls the setExitAction () function on the starting scene before running the
transition animation and the setEnterAction () function on the ending scene after
running the transition animation.
6
10.2.6 Apply a transition Mobile Software
Engineering
The transition framework represents the style of animation between scenes with
a Transition object. You can instantiate a Transition using several built-in subclasses,
such as AutoTransition and Fade, or define your own transition. Then, you can run the
animation between scenes by passing your end Scene and
the Transition to TransitionManager.go().
The transition lifecycle is similar to the activity lifecycle, and it represents the
transition states that the framework monitors between the start and the completion of
an animation. At important lifecycle states, the framework invokes callback functions
that you can implement to make adjustments to your user interface at different phases
of the transition.
An enter transition determines how views in an activity enter the scene. For example,
in the explode enter transition, the views enter the scene from the outside and fly in
towards the center of the screen.
An exit transition determines how views in an activity exit the scene. For example, in
the explode exit transition, the views exit the scene away from the center.
A shared elements transition determines how views that are shared between two
activities transition between these activities. For example, if two activities have the
same image in different positions and sizes, the changeImageTransform shared
element transition translates and scales the image smoothly between these activities.
Any transition that extends the Visibility class is supported as an enter or exit
transition. For more information, see the API reference for the Transition class.
The use of wireframe can bring many benefits to both the development team and
clients, but this is the case only when you use it wisely and properly. A typical misuse
of wireframe is to treat it as a replacement of screen design. This makes the
production and refinement difficult and costly, reducing the usefulness of
Wireframing. In this section, we will go through some of the effective Wireframing
tips.
7
Web, Mobile and CASE In a wireframe, instead of showing any actual content, we can replace a large
tools chunk of text (the actual context) with a placeholder of text. This is to avoid
time being spent on preparing the content unnecessarily, and to prevent the
readers from being distracted by the text content. But if the displaying of text
is needed, you may consider placing some dummy text there instead. You can
easily find a dummy text generator on the internet.
The use of annotation helps you describes an element (e.g. "Company logo")
or to explain something related to its behaviour (e.g. "Hide in 5 seconds").
Use it if necessary. But again, don't attempt to document each of the
wireframe elements. You should only use annotation whenever it necessary.
Wireframes can be hand-drawn, but we usually create wireframes with software for
more efficient and easier to manage of our works. Besides, some wireframe software
provides you with features that paper-and-pencil cannot accomplish. Here are three of
them:
State - The wireframing tool of Visual Paradigm supports the concept of state,
which allows you to create a child wireframe based on an existing one. It is not
only save you time in creating a screen flow with a sequence of similar child
wireframes, it also makes refinements of the related child wireframes much easier
(as we make changes in the initial state of a wireframe, the changes will also be
reflected in all its' child states wireframes)
Managing wireframes by User story - User story is an agile tool for recording
user's concerns and requirements. To include wireframes as part of a user story's
scenario shows how user will use the feature in performing part of their job
described in that user story. Besides, when developer start implementing the user
story, they can check the wireframe to gain ideas about user's expectations.
8
Once these screens are sent off to the client, developers begin a collaborative design Mobile Software
process. They often find that clients like different parts of each concept – the button Engineering
from this one, the colours in that one – so we’ll try to pull these together and refine
them into a unified design, rather than a Frankenstein’s Monster of various designs.
This gives us a finalized visual design, which can be combined with the UX flow to
create a working prototype. This is essentially a collection of images of each screen,
with tappable hotspots that make it possible to move from screen to screen as if you’re
using the real application. It can be installed on a device, meaning it’s accessible from
an icon just like any other application, and often find that people don’t realize it’s not
a fully-functional application.
Full-blown, high-fi screen designs takes time to develop, which lead to high
development cost. Wireframing is easy to create and edit. It is an inexpensive way to
create basic screen sketches. It also makes tweaking or even overhauling sketches
simple and inexpensive.
You may not be the first person to come up with an application idea, and in most
cases, developers tend to improve on what already exists. For this reason, there are
many products in application stores that have similar purposes, and as you can
imagine, the nature of the competition you are likely to face is high.
Entrepreneurs in tech valleys all across the globe have already paid attention to this
and are trying to make the best of the available opportunities. There’s no denying the
fact, that mobile applications have become a part of our everyday lifestyle and most of
us remain dependent on them constantly for taking care of several critical operations.
As easy as it may sound using them, it is a whole different ball game when it comes to
developing each application. Few things to keep in mind while developing a mobile
application:
9
Web, Mobile and CASE 10.3.1 Product Strategy
tools
The first component of a successful mobile application is a thorough product strategy
that solves your immediate business goals and addresses long-term growth
opportunities.
There are many business cases for mobile applications and countless opportunities to
streamline processes or introduce new customer value streams with mobile solutions.
The key is choosing one that makes the most impact within the context of a broader
business strategy.
The same type of project analysis techniques used in other areas of business can apply
to mobile application development prioritization. It’s essential to start thinking about
the mobile application development project with this frame of mind, so one can
develop a product that delivers intentional and measurable business value.
Before developing an application for your business, give in some time to understand
what all aspects of your business the application needs to cover. It is important to
place the priorities of your business out there through your application because this is
how both your business and application will be able to succeed in the long run.
Work on your User Interface Design (UI) and application usability, which are the
subsets of user experience design. You will have to come up with decent and useful
features.
When building your mobile application, you should also consider the screen size and
resolution of various mobile devices that operate on the platforms you wish to launch
your application. In terms of resolution, you have to achieve the right pixels per inch
or standard screen resolution for your application. More about this information is
available on the application store technical guidelines.
Appearance is very vital to this process and in the end, the outcome has to be easy and
comfortable to the user's eyes. The graphics of your application have the tendency to
determine its failure and success, so it will be a big mistake to ignore it. It’s necessary
that the application automatically adjusts to all screen sizes without any issues and
looks just as good when users are accessing it on a mobile phone screen of any size.
Applications with quality graphic art or design are captivating to the eyes of the users.
When you do not wish to use text, it is essential to know that a picture is worth a
thousand words. Therefore, you need to use high quality and intuitive images,
animations, visuals and designs to keep your users engaged.
The interaction between your application and the users should create positive
emotions and attitudes. It is more about how users feel when they are using your
application. You need to design your application with the users in mind. You need to
10
come up with intuitive and interactive designs, making east easy for the user to know Mobile Software
the right thing to do. Engineering
Most users tend to show less patience to an application that has poor navigation. It
pays to have a simple application that allows users to find and use what they need
with ease. You should aim to provide a clutter-free experience. Focus on delivering a
simple and easy to use application.
You do not need a complex interface and navigation system to appear modern, and
sometimes simplicity is the ultimate sophistication. Most users do not have all the
time to waste trying to explore your application; there are enough puzzle games in the
application store for them to play.
In Mobile Application Development, you need text to label your buttons, provide
guidelines and explain specific terminologies. The content in your application should
be explicit and precise. Stuffing keywords for SEO optimization may distort the
message you are trying to communicate. Applications with updated content and
information look new to all users, potential and repeat customers. Most experts talk
about delivering accurate and specific content.
There are a few different routes you can take to make your online product ready
for mobile devices. The option you choose largely depends on three main factors:
Size matters especially when the user has limited storage capacity and slow internet.
A well-designed and straightforward application tends to consume less space. Size
matters because it keeps the mobile device’s CPU and RAM free, making your
application easy and fast to load.
11
Web, Mobile and CASE Some applications will overwork the processor leading to high battery usage. Gaming
tools applications are known to consume more juice from a mobile device. The
development of your mobile application should be in such a way that it does not
consume too much energy.
When listening to music, reading an article or playing a game, some users may want
to share the experience with others on social media. For this reason, an application
should be able to integrate with popular social networking sites for easy and fast
sharing. With a built-in viral mechanism that promotes social sharing, you let your
customer market the application for you.
10.3.12 Security
The security of your application is the most crucial factor to consider above all other
considerations. You need to think about all the possible ways you can make your
users safe. This factor takes into account the type of technology you use to encrypt
user information and data.
10.3.13 Power Consumption – many aspects of an application affect its use of the
device’s power and thus the battery life of the device. Dedicated devices can be
optimized for maximum battery life, but mobile applications may inadvertently make
extensive use of battery-draining resources.
10.3.14 Compatibility
If your mobile application is to be available for all users, then you’ll have to consider
the iOS or Android versions available. As one upgrades from one version to the other,
application updates should also be available. Creating unique features for various
platform versions makes it easy for the user to see the change and keep them
engaged.
Overall, your application has to be simple and loads quickly. Application users are
always looking for something new and attractive to try. The success of your project
relies on the ten most important elements of mobile application development.
10.3.15 Simplicity
Making an application usable even without the network coverage is definitely a plus.
The availability of the internet is questionable in some areas of the world. If your
application works with internet support, there are more chances of increased use and
popularity. Also, this would enable the application to have more users from
developing countries.
12
10.3.17 Have a high performance Mobile Software
Engineering
A poorly performing mobile applications get usually abandoned by users. An
important component that gauges the success of an application is how the application
perform. A majority of mobile application users stops using an application that
perform poor more than twice. Performance is an extremely important component for
application success, and only high-performance applications get in the list of
successful applications.
Make quality improvements and add necessary features because regular updates based
on the users’ experience and reviews engage the users in the most practical way.
Frequent updates will also help improve the rating of your application. with every
update, you may deal with some new suggestions, complaints, and feedback. Keep up
with them and stay successful with your mobile application.
10.3.20 Marketing
The purpose of this topic is to put the spotlight on different mobile development
approaches and guide to the best way to develop applications based on what you need.
13
Web, Mobile and CASE Types of Mobile Development Approaches are;
tools 1) Native Application Development 2) Cross-Platform Application Development 3)
Hybrid Application Development 4) Rapid Mobile Application Development: RMAD
5) Progressive Web Applications: PWAs
A Step in the Right Direction
Having considered the different types of mobile development approaches, their main
features, and advantages, it is obvious that every approach is different and so will be
the resulting application.
For project owner, it should be in the best interest to define the purpose of the mobile
application in accordance with the exact needs of the target audience. This will help to
estimate the project timeline, the financial and technical resources needed, after which
it will be able to choose the most favourable development approach to follow.
Applications are distinct in their own ways. If the goal and desire is to develop a long-
term project, an application that will be responsive, have a superior quality user
experience, smooth performance, and reliable security, then the native development
approach is very advisable. On the other hand, if looking to compromise in budget
plans or you desire speed in development time, it can consider the cross-platform
approach.
However, there are ample other convincing reasons to embrace this platform for app
development:
Let’s take a closer look at what Apple and Google offer as a native mobile technology
stack for their platforms.
14
Native iOS Application Development Stack Mobile Software
Engineering
Objective-C
There are still plenty of mobile enterprise applications operating on the Objective-C
code, irrespective of the rise of Swift. This could be because it is a difficult process to
switch to Swift, especially if you have existing applications written in Objective-C
that need regular updates. All the same, Objective-C is very well-preferred by some
developers for projects of complexity and software engineering challenges.
Swift
The prominence and rise of the Swift language are as a result of its use for creating
Apple iOS and Linux OS applications. It is proclaimed to be a multi-purpose and
multi-paradigm programming language. However, the main reason for its popularity is
effective performance, when compared to other favorable languages.
Swift has the advantage of being an open-source programming language with code
less prone to error because it gives inline support that can manipulate data and text
strings. Additionally, Swift includes dynamic libraries. These libraries can be
uploaded directly to memory, thereby slashing the size of applications developed and
significantly increasing their performance.
The employment of Swift to develop applications for iOS simplifies the task of
development, plus, maintenance is stress-free. It also enhances code reusability, and
readability.
15
Web, Mobile and CASE There are two major toolsets used for iOS application development: Xcode and
tools AppCode.
AppCode
AppCode is a fast upcoming tool for programing native iOS application and comes as
an alternative to Xcode. Some developers have put out the word that it enables faster
coding than its rival Xcode. Nonetheless, it has a disadvantage. AppCode can only
design interfaces with the use of written code, unlike Xcode. AppCode supports
various programming languages for the Swift development environment, such as
JavaScript, C, C++, and Objective-C.
Apple Xcode
Xcode can be named the official IDE of Apple. Therefore, it is an appropriate choice
of a toolset for iOS application developed. The full-featured development
environment of Xcode enables the production of not only mobile applications, but
desktop applications too. To buttress being a good user interface development tool, it
works best for gaming applications.
Kotlin is a more recent programming language in comparison to Java. In any case, it’s
an appropriate technology option for Android Studio that is fast becoming more
stable. Purposefully, it is not just object-oriented but also an open-source
programming language. Furthermore, it is highly-functional and supports higher-order
functions.
Kotlin has powerful syntax with fewer errors than other languages used to develop
native Android applications. Equally important, it is faster to code, clean, lightweight,
and less verbose. Originally based on the Java Virtual Machine, interoperability with
Java makes it possible for developers to combine codes from Java-based projects with
Kotlin.
Runs on multi-platform
Concise and secure code
Interoperability with Java
Functions can be extended
Big community support
Easy code maintenance
16
Java Mobile Software
Engineering
There is no debate to it that Java is said to be one of the most widely used
programming languages. Without compromising, it is dominantly the most used class-
based, object-oriented language for developing Android applications. Java is ideal for
mobile and web applications, Big Data, among others. On top of that, it is also famous
for rich open-source tools and libraries that facilitate the easy and fast development of
top-notch applications.
Top development speed and product quality are the most prominent advantages of
Java. However, it has a downside of being comparatively slow and consuming
memory space. Nevertheless, you can consider Java for complex mobile projects,
especially if you want scalability and robustness. Big players such as Google
continuously work to make the Java language better. The main parts of the Android
OS are programmed with Java.
Highly secure
Great network capability
Portable and scalable code
Automatic management of memory
Robust programming language
Easy to use and compile
Not limited to any platform
Toolset
For a native integrated development environment, Android Studio and Eclipse are the
most favoured software.
Eclipse
The Eclipse software development kit (SDK) is another free, open-source mobile
development software. Originating from IBM visual and primarily coded in Java, its
main purpose is for the development of Java applications. The good news here is that
developers can extend their use of Eclipse by coding plug-in modules specially for
themselves, or by using other plug-ins as development toolkits.
Android Studio
The integrated development environment from Google is called Android Studio.
Usually, developers employed it to edit written code, handle performance tooling, and
debugging. With such characteristics as flexible development and an immediate
build/deploy system, Android studio enables making unique, high-quality Android
applications. Notably, there is a major difference if compared to Xcode, which
functions specifically for Mac OS. The Android studio works with other PC operating
systems.
17
Web, Mobile and CASE Uniformity across all platforms
tools Effective for budget control or low funding
Implementation is easy
Publishing can be at once for all platforms
The source code can be reusable
High demographic coverage
Fast time to market
The blend of native and web applications is known as hybrid app or hybrid
application. In a computing device, native applications are installed for a certain
program. But, to run web applications, multiple frameworks are available over the
internet. Hybrid apps are often mentioned in the context of mobile computing.
Resulting applications from the hybrid development approach have the speed of a
regular web application and the user experience similar to any type of native mobile
app. Notably, the use of a single code base enables deployment to all platforms
lowering the cost if compared to native applications. Lastly, hybrid applications with
hardware-dependent features have access to device hardware components and native
platform libraries.
It can be applied with several development platforms, examples are Alpha Software,
MobileFrame, and MobileSmith. They all possess the no-code and low-code options.
Advantages of MobileSmith:
Rapid mobile developers declare the functions and features of applications on the
frontend and the backend translates the specifications into code. In this case, the
frontend uses metadata to function. Effectively, this is done by summarizing the major
18
information about the functions of an application like asset managers or user interface Mobile Software
elements in a database. Thus, it cuts off the need for database coding. Engineering
Secure
Works online and offline
Good backend data integration
Works on all platforms including web
Code-free development
Little experience as a developer is need
Reusable components
Low cost of production
The last type of development approach, but not the least, which we cannot exclude is
the Progressive Web Application development. In this case, the engagement of HTML
is principal here.
Progressive Web Apps are the future of the world. Progressive Web Apps merge the
web world and the native app world. Simply put, PWAs are the native app like web
applications that are making everyone’s lives much easier.
10.5 SUMMARY
Mobile applications are vital to business growth. Therefore, the process and strategy
of mobile application development must be designed in a way that various parameters
are taken into consideration. It hopes that found the outlines of the transition of design
to development, important elements to consider in development with various
approaches are recommended for any application development project useful. It is
more involved than simply having an idea for a product or service that it had like to
introduce by just building an application.
19
Web, Mobile and CASE 10.6 SOLUTIONS / ANSWERS
tools
Reference Websites
http://developer.apple.com/iphone/index.action
http://developer.android.com/guide/index.html
http://scrum.org
20