Unit I Introduction
Unit I Introduction
Unit I Introduction
3. Cross-Platform Application: –
These are frameworks that allow developing total native applications which have access to all the
native features of IOS and Android but with the same code base. These apps run on both Android
and IOS. So normally the development speeds of these apps are very fast and the maintenance
cost is low. The performance speed is comparatively low to 1st party native apps but faster than
PWA.
Xamarin is Microsoft cross-platform solution that uses the programming languages like .NET,
C#, F#. The IDE preferred is Visual Studio. The UI/UX is totally native giving access to all
features. This technology is having a wide community. And whenever an update is released by
Android and IOS the same updates are released by Microsoft through Visual Studio.
React Native is Facebook’s cross-platform solution which uses the language JavaScript And the
preferred IDE is WebStrom & Visual Studio Code. Same like Xamarin React Native has totally
native UI/UX and gives access to all features. And the updates are released the same day by
Facebook as Android and IOS.
Flutter is Google’s cross-platform solution which uses the language, Dart. The IDE preferred is
Android Studio, IntelliJ IDE, and Visual Studio Code. The UI/UX is bespoke and Flutters has to
come up with their new libraries whenever Android and IOS comes up with an update to mimic
those update. The community is fast growing.
Advantages of Cross-Platform Application:
1. The apps’ development speed is very high as they use the same code base for both
Android and IOS.
2. The apps’ maintenance cost is low as the errors and updates as to be countered only
once.
Embedded Systems:
While embedded systems are computing systems, they can range from having no user interface
(UI) -- for example, on devices designed to perform a single task -- to complex graphical user
interfaces (GUIs), such as in mobile devices. User interfaces can include buttons, LEDs
(light-emitting diodes) and touchscreen sensing. Some systems use remote user interfaces as
well.
Chip manufacturers for embedded systems include many well-known technology companies,
such as Apple, IBM, Intel and Texas Instruments. The expected growth of embedded systems is
partially due to the continued investment in artificial intelligence (AI), mobile computing and the
need for chips designed for high-level processing.
Embedded systems are used in a wide range of technologies across an array of industries. Some
examples include:
Ref: YASINEMIR/STOCK.ADOBE.COM
Often, embedded systems are used in real-time operating environments and use a real-time
operating system (RTOS) to communicate with the hardware. Near-real-time approaches are
suitable at higher levels of chip capability, defined by designers who have increasingly decided
the systems are generally fast enough and the tasks tolerant of slight variations in reaction. In
these instances, stripped-down versions of the Linux operating system are commonly deployed,
although other OSes have been pared down to run on embedded systems, including Embedded
Java and Windows IoT (formerly Windows Embedded).
Embedded systems vary in complexity but, generally, consist of three main elements:
● Hardware. The hardware of embedded systems is based around microprocessors and
microcontrollers. Microprocessors are very similar to microcontrollers and, typically,
refer to a CPU (central processing unit) that is integrated with other basic computing
components such as memory chips and digital signal processors (DSPs).
Microcontrollers have those components built into one chip.
● Software and firmware. Software for embedded systems can vary in complexity.
However, industrial-grade microcontrollers and embedded IoT systems usually run
very simple software that requires little memory.
● Real-time operating system. These are not always included in embedded systems,
especially smaller-scale systems. RTOSes define how the system works by
supervising the software and setting rules during program execution.
In terms of hardware, a basic embedded system would consist of the following elements:
The sensor reads external inputs, the converters make that input readable to the processor, and
the processor turns that information into useful output for the embedded system.
A diagram of the basic structure and flow of information in embedded systems.
There are a few basic embedded system types, which differ in their functional requirements.
They are:
● Mobile embedded systems are small-sized systems that are designed to be portable.
Digital cameras are an example of this.
● Networked embedded systems are connected to a network to provide output to other
systems. Examples include home security systems and point of sale (POS) systems.
● Standalone embedded systems are not reliant on a host system. Like any embedded
system, they perform a specialized task. However, they do not necessarily belong to a
host system, unlike other embedded systems. A calculator or MP3 player is an
example of this.
● Real-time embedded systems give the required output in a defined time interval.
They are often used in medical, industrial and military sectors because they are
responsible for time-critical tasks. A traffic control system is an example of this.
The Apple Store segment had the largest market share, accounting for more than 62.88 percent of
global revenue in 2021. The segment's high share is primarily due to iOS apps' relatively higher
rate of monetization for revenue generated by in-app purchases and premium apps. Additionally,
an increase in iPhone and iPad users globally is contributing to the segment's growth.
Furthermore, mobile game spending will account for a sizable revenue share in 2021.
Moreover, in terms of the number of downloads, the Google Play store segment accounted for
the highest share in 2021 and is anticipated to continue its dominance during the forecast period.
Also, there has been a massive growth in Android smartphone sales over the past few years, with
many new competitors such as OnePlus and Xiaomi Corp. challenging the existing and leading
players such as Samsung and iPhone. The emergence of new Android smartphone manufacturers
has led to the introduction of a wide range of mobile applications on Google's Play Store. The
introduction of a wide range of mobile applications, coupled with a huge consumer base ensures
a strong growth prospect for the Google Play store during the forecast period.
Application Insights
The gaming application segment of the mobile application market held the largest revenue share
of more than 42.94% in 2021. Furthermore, the segment is anticipated to continue its dominance
during the forecast period due to an unprecedented rise expected in the gaming population and
resultantly the number of mobile gaming applications in economies such as China and India.
Additionally, the three main Operating System (OS) platforms used to create mobile games are
iOS, Android, and Windows. The number of games downloaded on Android OS in 2019 was
large, but iOS generated more revenue because paid games are more prevalent.
To learn more about this report, request a free sample copy
The music and entertainment application segment is projected to exhibit a significant CAGR of
around 13.9% from 2022 to 2030. The segment includes music and entertainment applications
such as Netflix, HBO NOW, Tinder, Spotify, YouTube, Amazon Prime, and Hulu among others.
In the U.S., Netflix generated the highest revenue in the music and entertainment application
segment, followed by YouTube in 2018. There has been a massive increase in the usage of music
and entertainment apps on account of the growing popularity of streaming services. Live
streaming apps such as Netflix, YouTube, and Instagram enable users to broadcast live videos to
a broader audience as well as engage them on daily basis.
Regional Insights
North America dominated the market and accounted for over 31.83% of the revenue share in
2021. The high market share is accredited to the presence of several players in the region, such
as Apple Inc.; Hewlett Packard Enterprise; Google LLC; Netflix Inc.; and Microsoft
Corporation. High smartphone adoption, strong in-app consumer spending, and a relatively
higher number of smartphone application downloads have all resulted in a large market share. In
aspects of paid mobile games, in-app billing, and a rapidly increasing mobile app user base, the
U.S. is expected to rise as a hugely profitable market for mobile games applications.
The Asia Pacific is expected to emerge as the fastest growing regional market given the potential
the region holds in terms of internet penetration and smartphone adoption. India and China are
anticipated to remain the major markets, offering strong growth opportunities to all participants
across the mobile application ecosystem. Furthermore, growing disposable income coupled with
government initiatives such as Digital India is expected to favorably impact regional market
growth in the forthcoming years. Moreover, the availability of low-cost data usage packs and
advancements in networking are other key growth boosters in regional growth.
Reference:
https://www.grandviewresearch.com/industry-analysis/mobile-application-market#
An app’s whole potential, gorgeous user experience, and state-of-the-art functionality can all be
wasted if no significant user base is even remotely aware of its existence.
The application publishing process serves to make your app available to millions of potential
users.
Nowadays, there are thousands of apps released in the app stores every day. Because of this, you
have to stand out from the crowd. A successful app showcase requires a bit of a knack for
marketing and presentation. Fortunately, an experienced partner will surely guide you through
the whole process. Publishing an app is, after all, a vital part of the app development lifecycle.
Your app development partner should assist you in uploading your Android app to Google Play,
and your iOS app to the App Store. There are also a few other app stores, like Huawei’s App
Gallery. Nonetheless, there are still a few obligations that you as the App Owner should be aware
of.
A beta version of any application can attract early adopters, which is an important step in taking
your mobile app mainstream. Early adopters provide a lot of beneficial feedback about your
application’s pros and cons. And their experience and rating can help you to understand the
acceptance of the app and the demand as well. This type of word-of-mouth marketing for your
mobile app will bolster its reputation, and help the admin to acquire even more users.
How Can You Submit Your App In The App Store And Google Play Store?
To provide you an idea about the Apple Store submission processes, we are going to highlight
some basic submission processes.
Let’s get an idea about the submission process of the Google Play Store:
After launching your mobile app, the next and crucial step is marketing it. If people don’t get to
know about your app, then there is no chance of downloading it. To spread your app and
convince people to explore it, consider making attractive and informative videos that can show
your app’s functionality. And do not forget the potential of social media, use all digital platforms
to reach every corner of the world. It will deliver people a glimpse of your app and highlight the
key features that can simplify the need for life.
Reference: https://www.mindbowser.com/a-step-by-step-guide-to-mobile-app-development/
Techniques describe how tasks are performed under specific circumstances. A task may have
none or one or more related techniques. A technique should be related to at least one task.
The following are some of the well-known requirements gathering techniques −
Brainstorming
Brainstorming is used in requirement gathering to get as many ideas as possible from group of
people. Generally used to identify possible solutions to problems, and clarify details of
opportunities.
Document Analysis
Reviewing the documentation of an existing system can help when creating AS–IS process
document, as well as driving gap analysis for scoping of migration projects. In an ideal world,
we would even be reviewing the requirements that drove creation of the existing system – a
starting point for documenting current requirements. Nuggets of information are often buried in
existing documents that help us ask questions as part of validating requirement completeness.
Focus Group
A focus group is a gathering of people who are representative of the users or customers of a
product to get feedback. The feedback can be gathered about needs/opportunities/ problems to
identify requirements, or can be gathered to validate and refine already elicited requirements.
This form of market research is distinct from brainstorming in that it is a managed process with
specific participants.
Interface analysis
Interfaces for a software product can be human or machine. Integration with external systems
and devices is just another interface. User centric design approaches are very effective at making
sure that we create usable software. Interface analysis – reviewing the touch points with other
external systems is important to make sure we don’t overlook requirements that aren’t
immediately visible to users.
Interview
Interviews of stakeholders and users are critical to creating the great software. Without
understanding the goals and expectations of the users and stakeholders, we are very unlikely to
satisfy them. We also have to recognize the perspective of each interviewee, so that, we can
properly weigh and address their inputs. Listening is the skill that helps a great analyst to get
more value from an interview than an average analyst.
Observation
By observing users, an analyst can identify a process flow, steps, pain points and opportunities
for improvement. Observations can be passive or active (asking questions while observing).
Passive observation is better for getting feedback on a prototype (to refine requirements), where
active observation is more effective at getting an understanding of an existing business process.
Either approach can be used.
Prototyping
Prototyping is a relatively modern technique for gathering requirements. In this approach, you
gather preliminary requirements that you use to build an initial version of the solution - a
prototype. You show this to the client, who then gives you additional requirements. You change
the application and cycle around with the client again. This repetitive process continues until the
product meets the critical mass of business needs or for an agreed number of iterations.
Requirement Workshops
Workshops can be very effective for gathering requirements. More structured than a
brainstorming session, involved parties collaborate to document requirements. One way to
capture the collaboration is with creation of domain-model artifacts (like static diagrams, activity
diagrams). A workshop will be more effective with two analysts than with one.
Reverse Engineering
When a migration project does not have access to sufficient documentation of the existing
system, reverse engineering will identify what the system does. It will not identify what the
system should do, and will not identify when the system does the wrong thing.
Survey/Questionnaire
When collecting information from many people – too many to interview with budget and time
constraints – a survey or questionnaire can be used. The survey can force users to select from
choices, rate something (“Agree Strongly, agree…”), or have open ended questions allowing
free-form responses. Survey design is hard – questions can bias the respondents.