Professional Documents
Culture Documents
Illya Piskun - Senior Project - Complete Perfect Beautiful Draft of Essay
Illya Piskun - Senior Project - Complete Perfect Beautiful Draft of Essay
Mobile applications are used almost every day all around us. But have you ever
wondered how they were made? If you have, you probably thought that big teams develop and
just write a bunch of code and create a lot of designs. However, this is not the case and I am
finding out this is not that simple and there are different varieties of ways that they can be made.
That complexity can vary based on what features the application (app) uses, and also depends on
and purpose of the app, then the app development can be shorter or longer. There are also
different ways to get the app out to the public. For example, you can post it on Google Play
which is Android and you can also post it on the Apple store. There is also the third option,
which is to post it as an apk file. This choice of where your app is going to be available impacts
what programming language you use to write it in. Apps need to be marketed and monetized so
they can cover the development costs and the design of the app needs to be usable. Without these
decisions and choices made, there would probably be fewer apps that are successful. I am
interested in trying to develop an application for Android. The application will be breathing
exercises, which would help people relax. This project will help me learn an interesting skill and
useful one. Hopefully, my app will help others relax in today’s busy environment. I will need to
learn how to use the Android app development tools. There are also different versions of the
phone program, so I will need to choose which I will work with. I might also learn about the
different design tools to make an app. So I decided on this senior project and a good Senior
Project question to connect to developing an app. Which is why my question will be: What is the
1
5040857
The first step of app development is to make a prototype of the app. One way to make
low-fidelity mockups that give visual structure to your app’s functional requirements” (Invento).
These mock-ups are important since they help developers visualize their app and lets them know
what needs to be improved early on. This also helps them save time since “Your wireframes do
not need to be fully featured - just focus on representing core functionalities” (Shiverware). With
prototyping, developers also get an idea of what they will be programming. They also get to
know what improves over time and what will likely need more testing during app development.
This is important because in an interview I conducted with my mentor, Tanya Piskun, who is a
QA engineer she said, “I tried to develop, it was interesting because you learn from new ideas
from online course” (Piskun). This shows that people who do programming still learn new things
and while they are learning they are getting new ideas. Developers can then document these
ideas for apps through wireframes, and that can also sometimes give developers an idea of where
they might program a certain section of an app more. Them having a prototype of their
application is important: “With a ready prototype on hand, it’s time to put it into action.
Encourage as many people as you can to use it, so you can get the most diverse feedback
possible” (Strizic). This shows it might also allow them to get user feedback from people that
they know so they can change certain parts of their application. This will allow them to solve
some of the issues early on at the same time when they are getting user feedback for the
completed version of an application that they developed. Prototyping apps through wireframes is
the first great step in the app development process. It allowed them to go from just an idea from
2
5040857
The next step is to program and design the user interface in the process of developing a
mobile application. For an Android, the resource that is used is Andriod Studio. This is the
program that is used to program Android applications. Meaning it is vital to learn how to use
Android Studio. To make a user interface you will need to use XML: “Specifically, XML sets the
layout of things like buttons and images, and defines the font, color, and any text that shows by
default. To make those buttons actually do anything, you will need to use a programming
language like Java or Kotlin, though” (Sincki). Meaning they have to know how to use XML is
important to make the user interface. This also describes most of the visuals are made visuals are
made by XML. For the users to be able to interact with the app the people programming the app
will need to know one of those two languages for Android. Designing the logo and then adding it
there program is when they would be doing this. “In Foreground Layer, Source Asset, select
Image Asset Type. Browse to the icon asset in the drawable the folder just now” (Tsen). When
they followed these steps if they are doing a program for Andriod in Andriod studio. They will
be able to then upload their logo design for the app. This logo would be will be visible as an app
icon. While programming, one of the important things is to think about how it will be interactive
and how will the user interact with this app. A simple way is to have a button so when the user
clicks on this button it can take to another page of the app or complete a task that your button
was programmed to complete. This is one of the things a person can program in Android Studio:
“Android's user interface objects do that too. Thus, you can tell your Button to execute certain
code when it is clicked” (Gargenta). This is an example to make an interactive feature that is
important in developing an app. While programming an application trying to find errors early is
Specialist, he said, “By my view the hardest part of creating application learn many mistakes in
3
5040857
code tied to that mistakes. That they can be small unnoticeable and hard to find” (Hryhoryev).
What this means is that a piece of code does not work because of a certain mistake. That mistake
can be hard to find and fix it. Meaning when programming it is important to work through the
code thoroughly and check to see if any errors were made in the code. Since, an error found later
could cause a lot of problems, especially later since later on the code might be connected to other
code and it may take longer to fix those errors so the program would work. To program an
application for Apple you will need to use “The Xcode integrated development environment
(IDE) includes everything you need to build and upload apps for iPhone, iPad, Mac, Apple TV,
and Apple Watch” (”What's Included…”). So even if they master Android Studio they will still
have to learn how to use XCode to get their application on the apple store. This process is able to
get your ideas gathered and to finally a working functional product. Probably completing an
application would be motivational for them. And to get them looking forward to the next steps of
app development.
After they have programmed an application. Another critical step next is to get user
feedback on the app they have just programmed. Also, since developers have programmed a
usable app with a good interface they want to get some user feedback by giving to other people a
chance to try a program. Before they get user feedback it is important to test the app themselves
and fix any errors they find so they can get better feedback and not just some basic features that
are not working. To try the app and fix any errors they can use a simulator: “For the most part,
(Learning Android). This is an essential tool since this is their first chance to try out some of the
features that they have programmed. They can then go back and fix bugs. This is a term that is
used in programming to describe errors in code. Fixing these errors allow them to focus on the
4
5040857
user experience with their app so they can fix it. When gathering information from users on user
feedback, “Too many questions might leave your users frustrated. Instead, focus only on the
questions that will help you make impactful decisions” (Babich). It is important to phrase
questions correctly to get good user feedback which is another important step in app
development. This also means getting your feedback is important to have the app ready for
publishing.
Getting an app published is the next step which is an app going to a Google Play or app
store that will need to be modified for posting and receiving updates. To start doing this
developers need to “select the Export and upload a key from Java Keystore option. This is the
only way in which you can retain the key and have Google Play use it for signing” (Android
Play Store ). Using Java Keystore is needed to get an app on the Google Play store at least for
certain versions. This is also needed since “A Java KeyStore is a file that contains certificates.
These certificates are used in the Java code. KeyStore and the certificates within it are used to
make secure connections from the Java code” (JavaTpoint). This is an explanation of why Java
Keystore is needed for certain versions of an app. Also in Andriod Studio there is also there is
anthore option create a certificate instead of adding keystore manually when you finished your
application: “Android Studio offers to open the folder containing your shiny, new APK file.
That’s great! Open the folder, and stare proudly at your work” (Burd). That is the same file that
you could upload to Google Play store. There is a newer version of programs that one can create
using Android Studio using Kotlin instead of Java. One source I found talks about it being used
more often in programming Andriod Applications recently: “We will also explore the question of
how Kotlin’s increasing popularity could influence Java into the future and if it might replace it
entirely, at least in the context of Android development” (Böllhoff). This also shows that
5
5040857
programming is still evolving and app developers are trying to learn new things, which means
that applications use versions of programs in those languages. They will be able to use the
features that are available on those versions. The app developers will have to use Kotlin instead
of Java and learning this new language is part of the process of developing an application. I
discussed these challenges with my mentor and she said “you need to know both programming
language it can be hard to switch between languages” (Piskun). This could explain why it is
difficult to create an application for both Apple Store and Google Play Store. Publishing an app
is almost the last step of app development. Getting an app published will allow them to make
money and potentially invest money into the app to make it better with application updates.
Finally, the last step of developing an application is creating updates for your app when it
was posted and the app needs to be updated to fix any errors. Or if you want to add new features
to the app or just make changes to existing things in the app. You can do this by “onUpgrade() is
called whenever the user’s database version is different than the application version” (Gargenta).
This is a command that can be used when writing code to develop an app update. Also, it is part
of the code when developing an update to your application for people who have your app
currently installed and will be receiving your update. Programming app updates are important
since they can be able to improve and fix any errors in the code that they might have found later.
To develop “We need to open the database for writing the updates” (Gargenta). In the database,
code can be overwritten. Meaning they can remove certain parts of the code or you can add
certain code. This is where the commands for your app will be located so when the rest of
building an update is complete. Then when the user updates their app the changes to the app
should have been made. To get their update on Android they probably need to use “Your app can
6
5040857
use the Google Play Core libraries to support the following UX flows for in-app updates:” (
Developers). Using this tool developers when developing applications for Android could use this
feature to send out updates to users who have their app downloaded. This wraps up this very
important last step of developing an app. Since updating your application they could change
features and redesign the application to want their idea of how the app should be. Finally, with
this, they are able to respond to user feedback they got for their application.
These findings were valuable to the author since they gave him good details and that is
structured almost step by step. Showing him why it takes so long to develop an app. The answer
to what is the process of developing a mobile application. The first step is to create a prototype
of a mobile app using wireframes, or just draw the idea on paper. This way you can get ideas and
understand what needs to be completed. Then start developing by designing the UI and then
programming the application. Programming the application is needed to make the app functional.
During this process, you want to catch any coding errors you have made so they are less of a
problem later on. After you have programmed the app and have a usable product and result. The
developers would want to get user feedback on a mobile application that they have developed so
they can improve their application. With the user feedback incorporated into the application so
they could finally publish their application. After this, they could finally update the application.
Updating the application can be for coding error fixes or to just improve the app. So this is my
answer to what is the process of developing a mobile application. For the author this subject
matters because he thinks it would be a great skill to have in today’s world since knowing how to
make apps is something that could be a valuable skill if done correctly. The author also wants to
expand his knowledge and also learn an interesting new skill. Developing an app would allow
him to think more creatively and maybe learn how to solve solutions to problems. People should
7
5040857
care about this because apps are all around us and we should appreciate those who create them
due to the amount of time and effort needed to create them. Apps also help improve people's
lives. Hopefully from reading this essay you have more understanding that apps go through a
long 5 step process with people developing the need to be able to adapt and learn new skills
8
5040857
Work Cited
https://ionicframework.com/docs/deployment/play-store.
Böllhoff, Patrick. “Kotlin vs Java: Strengths, Weaknesses and When to Use Which.” Kotlin vs
Java: Strengths, Weaknesses and When to Use Which, K&C, 30 Sept. 2022,
https://kruschecompany.com/kotlin-vs-java/.
Burd, Barry. “How to Create a Publishable APK File for Your Android App.” For Dummies, For
https://www.dummies.com/article/technology/programming-web-design/app-developmen
t/how-to-create-a-publishable-apk-file-for-your-android-app-140886/.
https://developer.android.com/guide/playcore/in-app-updates.
Invonto, Team. “Mobile App Development Process: Step-by-Step Guide for 2022.”Invonto,
https://www.invonto.com/insights/mobile-app-development-process/#:~:text=Th
e%20app%20development%20process%20includes,the%20current%20mobile%2
0devices%20market.
https://www.javatpoint.com/java-keystore.
9
5040857
Shiverware. “7 Steps of App Development.” Shiverware Mobile & IoT Solutions, Shiverware
https://shiverware.com/app-development/7-steps-app-development.html.
Sinicki, Adam. “An Introduction to XML for New Android Developers – The Powerful
https://www.androidauthority.com/introduction-to-xml-968598/.
Strizic, Marko. How to Make a Prototype for Your Mobile App, Decode, 17 Feb. 2023,
https://decode.agency/article/how-to-make-a-prototype/.
Tsen, Vincent. “Step-by-Step Guides to Add Android App Icon.” DEV Community, DEV
https://dev.to/vtsen/step-by-step-guides-to-add-android-app-icon-596l.
https://developer.apple.com/programs/whats-included/.
10