Scratch development is a development method that involves developing a new product from scratch.
In other words, scratch development is a development method that is not based on something that already exists.
For example, information system development refers to developing a new system from scratch, rather than customizing an existing package or modifying a system that is already in use (package development).
Also, in software and website development, it refers to developing something new from scratch without using existing templates.
Scratch development process
Scratch development generally proceeds as follows.
① Project definition ② Design ③ Program development ④ Testing ⑤ Operation
Project definition is the step in which the developer summarizes the user’s requests, so it must be given the utmost importance in scratch development, where new development is done from scratch.
Advantages of scratch development
Scratch development does not involve customizing packages or modifying systems that are already in use, so you can build your own system that best suits your needs. Furthermore, having a unique system also helps us differentiate ourselves from other companies.
Scratch development is also an advantage as it has a high possibility of being used for a long time. In the case of package-based development, there is a possibility that the package itself will be discontinued. On the other hand, with scratch development, you are building your own system, so you can reduce the risk of the system stopping.
Disadvantages of scratch development
Scratch development is a development method that involves developing a new product from scratch, so it generally costs more and takes more time than package-based development.
Development costs are limited, and development speed has become important in recent years, so the cost and time required are the biggest disadvantages of scratch development.
Furthermore, the success of scratch development often depends on the skills, abilities, and techniques of the system development company and the person in charge, which is a risk and disadvantage since it does not utilize an already determined package.