The Challenge of Strengthening
For over 40 years since its founding in 1976, OMRON SOFTWARE Co., Ltd. has been providing software mainly for the OMRON Group for embedded devices such as station ticket gates, ticket vending machines, factory automation control equipment, ATMs and card payment terminals and more, engaged in the development of systems that are highly public and require a high level of reliability.
Through these ventures, we are challenging ourselves on a daily basis to strengthen the software technology capabilities required by our customers.
Moving Toward Acquiring New Technology
The environment surrounding society changes and evolves swiftly. Issues such as a declining labor force due to lower birthrates and an aging population or the arrival of a super smart society due to the coexistence of people, robots, and AI are emerging as challenges for modern society, and the importance of software is ever growing in every aspect of society.
With that in mind, we are focusing on three technologies in looking toward the arrival of an IoT society, and are working to strengthen them.
- Technology that creates value from the large amounts of data generated by the popularization of the Internet of Things
- High security technology that ensures the safety and reliability of today’s diverse data processing
- New communications technologies that support the way people and machines talk and interact
OMRON SOFTWARE accepts the challenge of creating new software technology and new value to contribute to the great society in which we live.
Tackling Software Human Resource Development
We are continuously working on strengthening software development environments through development support tools, new development processes, and more to meet changes in social needs.
That is why we established the "Software Human Resource Development System". Aiming for a software technology specialist group, we focus on training human resources with specialized technology and skills.
We prepare introductory training for new recruits so that they can acquire the basic knowledge required as a software engineer and get out into the field quickly.
Afterward, we actively nurture leading software engineering human resources by holding various training programs according to age, skill level, individual skill improvement and career vision goals, etc.
In addition to providing opportunities for lectures and training, engineers can head out into the field and acquire practical experience in tackling customer's issues. Our focus is on nurturing human resources who can offer solutions.
Fostering the Specialists Required for Software Development
Working for Continuous Quality Improvement
We carry out development work using our own "software development standard processes" and "quality management system", so that we can always provide stable and high quality software. These are the cores of our software development system, in which we take a base of various industry standards such as ISO and CMMI, and add to it our experience, skills, and know-how gained through years of software development.
Using these cores, we can always provide high quality software by combining the optimal development processes and development methods matching the characteristics of the software and system the customer desires.
Software development process, Quality management system
- Software development standard processes
- ISO (QMS: Quality Management System)
- PCI-DSS certification (*1) (acquisition expected)
- CMM/CMMI (*2)
- PMO (*3)
- SPC (*4)
- Automation, labor saving
- Software product lines
- XDDP (*5)
- Machine learning
*1: PCI-DSS: Credit card industry security standards established to safely handle credit card member data at participating stores and service providers
*2: CMMI (Capability Maturity Model Integration): An index for evaluating the maturity of processes centered on software development.
*3: PMO (Project Management Office): A department that carries out lateral support for individual project management issues within the organization.
*4: SPC (Statistical Process Control): Activities for statistical management and improving manufacturing variations.
*5: XDDP (eXtreme Derivative Development Process): A development process aimed at improving the quality of derivative development of embedded systems.
Efforts to Improve Productivity
The field of software development is becoming more and more important as time goes on, and yet right now a shortage of engineers due to a declining population is a serious problem, making the improvement of productivity a big issue.
So how can we quickly and accurately create software? By dramatically improving the productivity of software development, we are strengthening QCD through the shortening of development time, etc.
Actively working as the main pillar in this is mechanization and automation.
As an example, the use of various mechanization/automation tools makes it possible to mechanically detect errors hidden in the program in a short amount of time, specify the zone of influence for corrected sections of programs, automate test work, and more, improving quality and development efficiency.
- Static analysis tools: Detection of errors in programming codes and automatic analysis for understanding error trends
- Tools for identifying zone of influence: Mechanically distinguish corrected sections of programs and specify the zone of influence for secondary bugs caused by the corrections.
- Test tools: Automate test work and results confirmations by using test tools suitable for each development field
- CI environments: Automation of quality judgments through the incorporation of analysis software in the CI environment