In the upstream process
What is unique (what other companies don’t have)
We compile the user requirements into a document that is easy to understand visually. This is very important to share the understanding of “What kind of system do we want to build?” between users and developers at the requirements definition stage.
In EmotionSoft, we use a flow of concrete screen images to show “What kind of motion does the application have? EmotionSoft uses a flow of concrete screen images to show “how the application works,” and then consolidates the specifications by discussing them with the users.
If you view this document together with the documents that explain the situations where the application will be used in the overall workflow, you will be able to understand the overall picture of the system immediately.
More information can be shared with users with one diagram than with ten explanatory texts. By providing such explanatory materials to our customers, we have pleased many users.
Even if it’s obvious.
- We aim to create documents that are easy for users to understand, even in standard external design documents such as functional descriptions and conceptual schema design documents (E/R).
- We suggest sizing the required system resources or using the cloud by closely checking non-functional requirements such as response time, data store capacity, and fault tolerance/security measures. We perform capacity planning that looks at the combination of costs.
- We measure the difficulty and development cost of application functions from the standpoint of actually creating the program, and design the optimal functions.
In the downstream process
We adopt a stress-free round-trip method from coding and unit testing in the development environment to integration testing/system testing. While creating the application, we simultaneously create the unit test program in parallel.
This is a development style that skilled developers naturally adopt. However, most common unit testing programs use MSTest or XUnit to test business logic and backend logic. EmotionSof takes this one step further and allows you to test the screen functionality itself. In addition, we do not use mock Http Requests and Responses, but use the actual working Http Requests and Responses of the application, so we can perform more accurate testing.
In addition, EmotionSoft uses Selenium, which is one of our technological strengths, to create automated tests in parallel with the program production stage. The automated tests created in this way can be used in subsequent integration tests and system testing environments, leading to an overall reduction in testing man-hours.
IIn general, the man-hour ratio for each development phase is said to be (design : coding including unit testing : testing) = (3 : 2 : 5), but EmotionSoft has been able to significantly reduce the ratio of testing man-hours without compromising comprehensiveness.
These features not only improve the quality of the product, but also reduce the load of regression testing when some modifications are made to the program, and as a result, we can create applications that are highly resistant to specification changes, i.e., applications that can respond quickly to specification changes.
Even if a problem is found, we can identify the cause and deal with it smoothly. We have established a development style that prevents a vicious cycle of “fixing a program to deal with a problem cures the problem, but causes side effects in other places”.
