By whibla / January 21, 2019
Have you ever wondered what is software development, what is the process to develop a system, what people are doing it, these questions are common and this day we will answer these questions.
It is important to know that software development is a structure applied to the development of a product, this process consists of two main stages of system analysis and design; everything starts when the management, or sometimes the systems development staff, realizes that a certain business system needs to be improved.
When software is going to be developed, they intervene, such as the customer who is the one with the problem in their company and wants to solve it. For this, the System Analyst is in charge of making all the requirements and needs of the client available to them. programmers who are the people in charge of carrying out what is coding and designing the system to test it and install it to the client.
This is how several people intervene since a single person could not determine everything necessary to avoid missing a requirement or some part of the new system, while more people are involved is better to cover all the requirements of the system.
Every system takes a process of software development, said processes is carried out in 6 stages:
Analisys of requirements Capturing, analyzing and specifying requirements (including proof of them) is a crucial part; The achievement of the final objectives depends to a great extent on this stage.
Extracting the requirements of a software product is the first stage and to create it requires skill and experience in software engineering to recognize incomplete requirements. The result of the analysis of requirements with the client is reflected in the SRS document, Specification of System Requirements, whose structure can be defined by several standards, and an Entity / Relationship diagram is defined, in which the main entities will participate in the development of the software.
Design and architecture
It refers to determining how it will work in general without going into details. It consists of including considerations of the technological implementation, such as the hardware, the network, etc.
Reducing a design to code may be the simplest part of software engineering work, but it is not necessarily the longest stage. The complexity and duration of this stage is linked to the programming languages used.
In this stage it is verified that the software correctly performs the tasks indicated in the specification. It is necessary to test each software module separately, and then test it in an integral way, in order to reach the
It refers to what concerns the documentation of the software development itself and the management of the project, going through modeling (UML), diagrams, tests, user manuals, technical manuals, etc; all with the purpose of eventual corrections, usability, future maintenance and extensions to the system.
Maintain and improve the software to face discovered errors and new requirements. This may take more time than the initial development of the software. About 2/3 of all software engineering has to do with maintenance. A small part of this work is to fix errors, or bugs.
Some known Methodologies:
– The RUP methodology is the most adaptable for long-term projects.
– The XP methodology, on the other hand, is recommended for short-term projects.
– The MSF methodology adapts to projects of any size and of any technology.
It can also be said that the most important thing before choosing the methodology that should be used to implement the software, is to determine the scope it will have and then from there to see which is the most suitable for the application.