0% found this document useful (0 votes)
34 views28 pages

Mad2 Chapter 2two

mobile application chapter 2 Axum university

Uploaded by

Efrem Mekonen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views28 pages

Mad2 Chapter 2two

mobile application chapter 2 Axum university

Uploaded by

Efrem Mekonen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

Mobile Application Development

CHAPTER TWO
Factors in Developing Mobile Applications
1. Mobile Software Engineering

 A mobile application structured as a multi-layered application


consisting of user experience, business, and data layers.

 when developing a mobile application, you may choose to develop a


thin Web-based client or a rich client.

 If you are building a rich client, the business and data services layers
are likely to be located on the device itself.
1. Mobile Software Engineering

 If you are building a thin client, the business and data layers will be
located on the server.

 Figure 1 illustrates common rich client mobile application architecture.


1. Mobile Software Engineering

Figure 1 Common rich client mobile application architecture


1.1 Presentation Layer

 The presentation layer contains the components that implement


and display the user interface and manage user interaction.

 This layer includes controls for user input and display, in addition to
components that organize user interaction.
1.1 Presentation Layer

 The presentation layer include the following:

 User Interface components: used to display information to the user and accept user input.

 Presentation Logic components: the application code that defines the logical behavior and
structure of the application in a way that is independent of any specific user interface
implementation.

 When implementing the Separated Presentation pattern, the presentation logic


components may include Presenter, Presentation Model, and View Model components.
1.2 Business Layer
The business layer includes the following:

 Application façade. provides a simplified interface to the business logic components, often
by combining multiple business operations into a single operation that makes it easier to use
the business logic.

 It reduces dependencies because external callers do not need to know details of the business
components and the relationships between them.

 Business Logic component: concerned with the retrieval, processing, transformation, and
management of application data; application of business rules and policies; and ensuring
data consistency and validity.
1.2 Business Layer
Business logic components can be further subdivided into the following two categories:

 Business Workflow components: After the UI components collect the required data from the
user and pass it to the business layer, the application can use this data to perform a business
process.

 Business Entity components: Business entities, or more generally business objects,


encapsulate the business logic and data necessary to represent real world elements, such
as Customers or Orders, within your application.
1.3 Data Layer
The data layer may include the following:

 Data Access components: These components abstract the logic required


to access the underlying data stores. They centralize common data access
functionality in order to make the application easier to configure and
maintain.

 Service agents: When a business component must access data provided by an


external service, you might need to implement code to manage the semantics
of communicating with that particular service.

 Service agents implement data access components for calling services from
your application, and may provide additional services such as caching,
Frameworks and Tools
A framework is just a collection of tools that make it simple to create mobile
applications.

The framework enables you to work with a common structure, which is crucial for
enhancing the creation of mobile applications.

Also, it frequently supports app development techniques to create reliable mobile apps
for company's requirements.

You can choose mobile development frameworks that are made to facilitate the creation
of mobile applications.

It is a software library that offers a basic framework to facilitate the creation of


Essential Factors to Consider Before Selecting Mobile App
Development Framework

One of the biggest questions that come up in your mind when planning for creating a
mobile app is:
• Which is the best mobile app framework that you should opt for?
• What is the perfect mobile app UI framework that will work out for you?
• How can you select the best mobile app framework?
• What is the best mobile app development framework?
Essential Factors to Consider Before Selecting Mobile App
Development Framework

Before deciding on one, thoroughly examine your company's requirements. Here are
some pointers to help you choose the best mobile app development framework:

• Design & UI for Your Mobile Apps

• Mobile App Development Partner

• Closed or Open Ecosystem

• Skilled Personnel

• Evolution of Ecosystem
Frameworks and Tools
A mobile app development framework is a platform or software that is especially designed
to support app building.

Such frameworks are essentially a software library that offer a structure and environment
for building applications for specific platforms.

Such frameworks and tools simplify iOS and Android app development and put your projects
on a faster track.
Mobile Application Development Frameworks and Tools
Mobile Application Development Frameworks and Tools
Mobile Application Development Frameworks and Tools
Mobile Application Development Frameworks and Tools
Mobile Application Development Frameworks and Tools
Generic UI Development
Most of software application, at some point are either started or scheduled by person or
human i.e., user.
It is important to consider physical characteristics of interaction:

• How the controls are designed

• Physical environment in which the interaction takes place The layout and physical quality
of the screen

• Look and feel of application and how users wants the user interface
Generic UI Development
Feature of User Interface:

• Intuitiveness: UI should be easy to use, navigate and instinctive.

• Consistency: UI components of software application need to be consistent with


each other and its operating environment.

• Easy to Learn

• UI should provide help and hints.

• Provide shortcuts to expert users.

• Trustable, Predictable and easily understandable.

• Robust: UI should gracefully recover from any error and recovery should be fast and
Generic UI Development

Interface components may involve:


- Input Controls: Input Controls involve buttons, toggles, dropdown lists, checkboxes, date
fields, radio buttons, and text fields.
- Navigational Components: Navigational components contain slider, tags, pagination,
search field, breadcrumb, icons.
- Informational Components: Informational Components contain tooltips, modal windows,
progress bar, icons, notification message boxes.
- Containers: Containers include accordion (displays collapsible content panels for
presenting information in a limited amount of space).
Generic UI Development
UI are in three different types of formats:
1. Graphical User Interface (GUIs)
In the Graphical user interface, the users can interact with visual representations on
the digital control panels. Example of GUI, a computer's desktop.
2. Gesture-Based Interfaces :In gesture-based interfaces, users can interact with 3D design
spaces by moving their bodies. Example of Gesture-Based Interfaces, Virtual Reality (VR)
games.
3. Voice-Controlled Interfaces (VUIs):In, Voice-controlled interfaces (VUIs), users can
interact with the help of the voice. Example of Voice-Controlled Interfaces (VUIs), Alexa on
Amazon devices, and Siri on iPhone.
Generic UI Development
The Generic User Interface (Generic UI, GUI) framework allows you to create UI
screens using Java and XML.
XML is optional but it provides a declarative approach to the screen layout and
reduces the amount of code which is required for building the user interface.
The application screens consist of the following parts:
Descriptors - XML files for declarative definition of the screen layout and data
components.
Controllers - Java classes for handling events generated by the screen and its UI
controls and for programmatic manipulation with the screen components.
A screen is a main unit of the generic UI. It contains visual components, data
Generic UI Development
The basic building block for user interface is a View object which is created from the View
class and occupies a rectangular area on the screen and is responsible for drawing and event
handling.
View is the base class for widgets, which are used to create interactive UI components like
buttons, text fields, etc.
The ViewGroup is a subclass of View and provides invisible container that hold other Views
or other ViewGroups and define their layout properties.
At third level, different layouts are present which are subclasses of ViewGroup class and a
typical layout defines the visual structure for an Android user interface.
Layout can be created either at run time using View/ViewGroup objects or can declare layout
using simple XML file main_layout.xml.
Android User
Android supports multiple users on a single Android device by separating user accounts
and application data.
Android device management uses the following general terms:
User: Each user is intended to be used by a different physical person.
Each user has distinct application data and some unique settings
Secondary users can be created either directly via the primary user interface or from a
Device Administration application.
Account: Accounts are contained within a user but are not defined by a user, nor is a user
defined by or linked to any given account.
Users and profiles contain their own unique accounts but are not required to have accounts
Android User
Profile: A profile has separated app data but shares some system-wide settings (for example,
Wi-Fi and Bluetooth).
A profile is a subset of, and tied to, the existence of a user.
A user can have multiple profiles. Profiles are created through a Device
Administration application.
A profile always has an immutable association to a parent user, defined by the user that
created the profile.
Profiles do not exist beyond the lifetime of the creating user.
App: An application's data exists within each associated user.
App data is sandboxed from other applications within the same user.
Android User
User types:

• Primary:
First user added to a device.
The primary user cannot be removed except by factory reset and is always running
even when other users are in the foreground.
This user also has special privileges and settings only it can set.
Secondary: Any user added to the device other than the primary user.
Secondary users can be removed (either by themselves or by the primary user) and
cannot impact other users on a device.

• Guest :Temporary secondary user. Guest users have an explicit option to quickly
Android User
Profile Types:
Managed: Created by an application to contain work data and apps.
They are managed exclusively by the profile owner .
Launcher, notifications, and recent tasks are shared by the primary user.
Restricted: Uses accounts based on the primary user, who can control what apps are
available on the restricted profile.
Available only on tablets and television devices.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy