1
ANNEX
ANALYSIS AND SYSTEM DEVELOPMENT
Ronan de Oliveira Combat
Software Project
SÃO GONÇALO/RJ
2023
2
Ronan de Oliveira Combat
Software Project
Work requested by Tutor Ricardo
Hiroshi Julio Susuki from the discipline of Project
Course analysis software
software development of the institution
anhanguera
SÃO GONÇALO/RJ
2023
SUMMARY
1 INTRODUCTION
2 DEVELOPMENT.............................................................................................. 4
3
2.1 Subject 1................................................................................................................6
2.1.1 First topic of subject 1...........................................................................5
2.1.2 Second topic of subject 1.......................................................................... 6
2.1.3 Third topic of subject 1................................................................. 6
2.1.4 Quarto topic of subject 1..............................................................................7
2.1.5 Quintotopic of subject 1
2.1.6 Sextotopic of subject 1................................................................................7
2.2 Subject 2................................................................................................................7
2.2.1 First topic of the subject 2...........................................................................8
3Conclusão.............................................................................................................. 10
Reference.......................................................................................................................... 14
4
INTRODUCTION
A software development process can be seen as
a set of organized activities used to define, develop, test and
maintain a software. Below are some objectives of the development process:
Definition of the activities to be carried out;
When a certain activity should be executed;
Person or group to carry out such activities;
Standardization in the development process.
DEVELOPMENT
As we can see above, software development
production process of a technological system, with the stages that comprise it
the conception of a product. It deals with how the phases are organized and what
It must always be done to standardize creation and allow companies and teams
create applications at scale.
In other words, this type of study is very useful for the famous factories of
software, question companies that produce systems for various purposes on a large scale.
the core business of these ventures is precisely the production of these applications.
5
To advance the discussion, we need to clearly understand
what software. Basically, it is a product that receives inputs, does
processings and generates an output. It is developed according to a scheme of
phases (which we will see in detail throughout this post) and with a standard of
communication between creators and machine, which is the programming language.
Software is, in other words, a ready script for
certain actions that the machine must perform based on interaction with people
users. A music streaming app, for example, requires that the device
play music, pause, skip to the next one or go back to the previous one. All
These activities are commands written by the person who programmed and are
executed when someone triggers them.
As the current world is strongly marked by new technologies,
The use of technological systems is everywhere, whether in our personal life or
in the professional field.
When we talk about software development, we must
clearly establish which methodology is used. Two of the most well-known in
The debates today are: waterfall and agile methodology.
The waterfall methodology is important because it is still used in
academic environments, but it was already the main strategy to produce software in
market decades ago. It consists of defining strict and sequential phases, with
the support of strong documentation to consolidate what is being produced.
The deadlines, resources, and requirements (system characteristics) are
defined in advance and planned even before the process begins.
The agile methodology emerged to address some problems of
cascading: deadlines too tight; insufficient products for demand, etc. So,
6
the appropriate way to make development more flexible, with fewer phases
rigidities that become short and recurring cycles, with the main objective of
constantly deliver value. In addition, we focus more on documentation and greater
emphasis on collaboration.
HOW DOES SOFTWARE DEVELOPMENT WORK?
Let's examine the main steps for development.
from a software and better understand how these work
processes.
It is worth remembering: the phases and orders vary according to the
the development methodology adopted, but these are generally
the main and essential ones in most market strategies.
Understanding customer needs
In software development, everything starts with the study of needs.
who will use the software, as it is produced to meet one of them.
It can be, for example, the need to listen to music on the phone or to manage
a bank account with ease. It is necessary to dive into the universe of people
what the clients will be and understand exactly how that system helps.
Requirements analysis
So, we move on to the analysis of requirements. The requirements are
basically the characteristics and functionalities of the entire system. From a
need, the team reaches various functions that implement a
solution. Citing our previous example: the ability to play/pause a
music is a feature, therefore, it can be a requirement.
7
This analysis should establish how complete the product will be.
created and defined a north to be followed, like a kind of roadmap.
Programming
After clearly defining the requirements that will be implemented, the
software development team proceeds toprogrammingpropriamente editada.
This is the stage of using a language and actually putting it into practice.
product features coding.
The deprogramming phase may actually be preceded by a stage
preparatory call modeling. It takes care of how the programming will be done.
it guides the logic of representation of reality in the system.
An example of this is the mapping of reality in modeling of
a database: it is necessary to think about common variables of everyday life and understand them
relationships between them (in a music software, the variable music is linked to
variable artist)
Testes
Once you have already implemented something and have a functional system in hand, it is
It is interesting to test the product to ensure that it is consistent.
that it actually meets the set objectives. This set of tests is based on
in patterns that are always used in stages of system development.
In tests, it is common for those who are developing to try to think like a person.
that uses application in day to day. In addition, it is possible to test inputs and uses
unexpected as well, as a way to seek structural flaws.
8
Implementation
After being tested, the software moves to the final stage: implementation. In this phase,
the product will finally be implemented in the environment where people will use it or will be
transformed into a downloadable version.
WHO WORKS WITH DEVELOPMENT?
In the software development process described above, many
people are involved. One of them is the developer, who takes care of the
system programming with a logic and with a programming language.
Another person who takes care of the design is the one who manages the
visual part of the application presentation and its navigation flow.
In a web development process, for example, we have the
personfront-end developer that takes care of the design and dialogue of the visual part, and
a back-end, which takes care of the backstage and infrastructural logic. There is also a person
full-stack developer, who performs both functions.
I will alsoFull stack developer: career,salaryand how to choose
a course
There are specific phases for professionals from other areas.
In some cases, there is a person responsible for the tests who works
specifically with system evaluation. There are also those who manage banks.
of data and be responsible for their modeling and configuration for each application.
We cannot fail to mention that there are professionals who focus on
also apart from deployment: the people who take care of the infrastructure in which the
systems are created and where they will be deployed later.
9
In summary: by studying this area, you can advance to any
one of these functions depending on your taste and objective.
As we saw in the article, to understand what development is
software requires an in-depth understanding of the steps
necessary and the methodologies involved.
We learned that there are the following phases of development
a software
understanding of the problem;
requirements analysis;
programming
testing
implementation.
The phases may vary, but these represent the main ones in a
common process.
Conclusion
The objective of this work is to create and develop an application using
the agile methodology Scrum. In the first stage, as a client, I thought of an application
that can help people find jobs, vacancies, and news in their city,
besides allowing the exchange of information and interaction between the users who are
10
searching. In the second stage, as Product Owner, I developed the product backlog,
I prioritized the functionalities according to the business value and created a framework of the
Scrum with divisions of stages, tasks, delivery date and responsible parties
activity.
Methods:
For the creation and development of the application, I used the methodology
Agile Scrum, which consists of a framework for project management and
software development. I used the following tools to create the
product backlog and the Scrum board: Trello and Asana.
Results:
Application: FindJobs
Features:
User registration: The user must create an account to access the
application and access its features.
Job search: The user can search for jobs, information and
hiring in your city using filters such as date, category, requirements, among others
others.
11
Job locator details: The user can access
informaçõesdetalhadas sobre o vagas, como local,período, disponibilidade dehorário
the requirements.
Socialize: The user can socialize with other participants of
the app will allow you to exchange information about job openings and employability.
region directly through the app, using linked social networks like LinkedIn
etc.
Notifications: The user can receive notifications about job openings.
interest.
Prioritization of features:
User registration
Job search
Job details
12
User interaction
Notifications
Scrum Board:
I used Trello to set up the Scrum board, with the following
stages:
Product backlog
Current sprint
In development
13
Testes
Completed
For each stage, I created the necessary tasks, with deadlines.
responsible for activity. The tasks include everything from the creation of the design of
application until the implementation of functionalities, testing, and launch.
The development of applications using the Scrum agile methodology
an efficient and collaborative way to manage projects and ensure that the
most important features are delivered on a priority basis. The use of
Tools like Trello and Asana facilitate organization and communication between the
development team members. With FindJobs, users will be able to
find events in your city in a simpler and faster way, in addition to being able to
interact and share information with other users of the application.
14
References
[Link]
de-
Software development is done by teams.
create applications at scale.
[Link]
software-development/5413