We have our head office in Silicon Valley, USA, and we are developing systems with excellent engineers. The branch offices are located in Honolulu, USA, and the head office of the Japanese corporation is located in Utsunomiya City. This time, I would like to introduce an article on the flow of system development.
When developing your own system, you will most likely outsource it to a specialized system development company.
In order to specifically convey this request to a system development company, it is first necessary to know the system development process. To some extent, only by knowing the system development process flow and technical terms, development can proceed smoothly and risks can be avoided.
Therefore, here we will explain the system development process and technical terms.
System development proceeds according to a set process.
Think of it like cooking. When making pancakes, as per the recipe, first mix the flour, eggs, and milk. Then bake a mixture of them in a frying pan. As you can see, there are recipes for cooking that show the procedure.
Similarly, the development process is like a recipe in system development. Thanks to this process, system development can proceed as planned while maintaining quality.
Let a professional choose a system development company
・ Find the best match supplier
・ Introduction of speed in just one day
・ Supported by a concierge familiar with IT
・ Completely free of charge from consultation to introduction
Finding a subcontractor for system development
Click here for consultation
Let's take a look at the actual system development process. Here, we will tell you about the general flow of the most popular waterfall model in system development.
1. 1. Requirement definition (requirement definition)
In this process, it is clarified what kind of elements you want to incorporate into the newly developed system.
Furthermore, based on this request, we will plan the budget, personnel, and period. At this time, we will discuss with the system development company about the purpose and target of system development. One thing to note in the meeting is that the waterfall model will not return to the previous process. Once the project has started, you will not be able to move on to the next process without completing the previous process. At the same time, it does not return to the previous process. In other words, the deliverables will be produced in each process. It is important to have a plan that is decided at the first meeting so that system development can proceed while always maintaining a plan.
Make sure that you are aware of each other in the meeting so that there is no difference in the final completion of system development.
2. External design
Design the user interface based on the contents of the requirements definition.
To put it simply, the user interface is the appearance of the screen. This is a very important process for creating a system that is easy for users to use. It will directly affect the usability of the user, so when you have a meeting with the system development company, let's express your hope firmly and fill in the contents.
3. Internal design
Once the external design is decided, the next step is the internal design, that is, the programming design. External design was from the user's point of view, but internal design is from the developer's point of view, such as program design.
4. Programming
After designing a certain amount of programming in the internal design, we will create a program based on it.
5. Unit test
Here, we will check whether each of the programs actually created meets the criteria required in the initial requirement definition. In unit tests, each unit of programming, the so-called module, is tested.
6. Integration test
After unit testing, we'll combine multiple programs to see if they work. In other words, each module is combined and tested. For example, test whether the programs work together normally when passing data.
7. System (comprehensive) test
After the unit test and integration test are completed, we will perform a system (comprehensive) test that includes all of them. As the name implies, it is the process of confirming that all programs really work according to the requirement definition. For example, we test the durability and processing speed of many accesses.
8. Operational test
After successfully passing the system test, check whether it can be actually incorporated into the business. In the operation test, we test whether there is any problem in the system in the environment where the system is actually operated. In other words, it is very practical when compared to previous tests.
9. System migration (release)
This is the process of switching from the old system so that it can actually be used.
There are migration methods such as simultaneous migration that switches all at once and sequential migration that switches gradually.
10. Operation / maintenance
This process is to check the memory usage status so that it can be operated without problems.
In addition, this process includes updating from time to time so that the system can be used in better condition.
In order to continue to utilize the developed system continuously, it is necessary to constantly monitor the system.
There are several types of system development. Here, we will explain the two most typical types.
The characteristic of this type of system development called the waterfall model is that the process is carried out in order from the upstream process to the downstream process.
Although there are exceptions depending on the project, it is basically divided into the 10 processes introduced earlier. The waterfall model is a process in which each of these processes is performed in sequence.
As a result, you will not be able to move on to the internal design process when the external design has not yet been completed. As a result, the waterfall model has the advantages that it is easy to grasp the progress and that the process proceeds systematically, so it is easy to guarantee the quality.
If you want a sense of speed, this is the perfect development method for large-scale system development that requires schedule management.
On the other hand, the waterfall model has the disadvantage of taking time. Therefore, it may not be suitable for new businesses where speed is important.
Agile means "quick" in Japanese.
As the name implies, agile development is a speedy development method. In the waterfall model, each process is performed in sequence, but in agile development, there is no such rule.
Rather, it can be said that it is a development method that makes changes and corrections as needed while making the whole.
This development method is the best development method when you want a deliverable quickly, or when you have not clearly defined the requirements and want to make it for the time being and modify it at any time.
This development model is suitable for new businesses that require speedy business development.
In conversations with engineers, you may hear various two-letter words in the alphabet. They are abbreviations for system development terms and act like a common language for people involved in systems.
Even if you don't usually have contact with systems, when you become a person in charge of system development, if you can understand these abbreviations, you will be able to proceed smoothly. The typical ones are introduced below.
Planning / SP
Requirements analysis / SA
System method design requirements analysis / SA
Requirements analysis / SA
Requirements definition / RD–UI
Basic design / UI
Basic design / BD
Structural design / SS
Functional design / FD
Detailed design / DD
Detailed design / PD
Detailed design / PS
Program design / PD
Coding / CD
Programming / PG
Comprehensive test / PT
Operation test / OTO
So far, we have introduced the process in system development.
Please refer to the contents introduced here in order to accurately convey your request when developing a system.
System development proceeds according to a set process.
Think of it like cooking. When making pancakes, as per the recipe, first mix the flour, eggs, and milk. Then bake a mixture of them in a frying pan. As you can see, there are recipes for cooking that show the procedure.
Similarly, the development process is like a recipe in system development. Thanks to this process, system development can proceed as planned while maintaining quality.