erminas develops individual enterprise software solutions for highest demands. The use of agile software development and continuous integration ensures that your enterprise application is supplied in the shortest time possible. erminas Applications are characterized by clear and intuitive usability and high reliability. They are high-performance and scalable. Maintenance is straightforward and efficient.
Our standards are high. erminas develops software with state-of-the-art methods. Agile software development, continuous integration, test-driven development, standard-compliant, secure interfaces: This has been our standard for many years.
1. (Optional) Innovation Workshop
If your project idea is still very vague, we use innovation methods (Design Thinking, Lean Startup, Rapid Prototyping) to develop a concrete business solution from your idea. Our customers find it helpful that we can transfer our broad knowledge of innovative digital solutions and data-supported business models from different industries to their industry, which can result in completely new, user-centered and business-relevant approaches.
2. Requirements Workshop
An erminas software project begins with a workshop in which we carefully examine and record your requirements together with you. The results of the requirements workshop will be summarized in a catalogue of requirements in coordination with you. Based on the requirements, we work with you to define concrete goals and draw up a roadmap. We will provide you with a price indication for the individual steps as a decision-making aid.
3. (Optional) Safeguarding of critical project components with research character
In many software projects, our customers develop solutions that nobody has developed before. Such projects often contain individual features of a research nature. The implementation time for such a partial solution can often not be estimated concretely. We safeguard such critical points by checking them in advance with the smallest possible test setting (PoC/Proof of Concept).
4. Setting up processes and project infrastructure
Together we define responsibilities and communication channels. For effective communication, we offer our customers modern collaboration solutions such as video conferences, chat and ticket systems. A development environment will be set up for your project and a test and acceptance environment will be set up at your site. If necessary, our developers receive remote access to your systems.
5. Iterative development
Methods of agile development have established themselves worldwide. They increase transparency and flexibility in the development process and lead to a faster deployment of the developed systems. In contrast to classical development methods, a fully executable version is produced at a very early stage – albeit with minimal functionality. The solution is then extended iteration by iteration with additional functionalities. After each iteration, the result is executable software. Each cycle we present the result to you and you can test and approve it. Following the timetable, you then define the goals for the next iteration with us.
6. Live presentation and handover to the IT operation
Once the project has reached the desired feature scope, we will put it live for you and gladly support you in instructing the users in the use of the project and the support processes. The advantages of agile development become apparent again when the project is handed over to IT operations. Because the first iteration has already produced an executable software product on your systems, there is no time-consuming provisioning process any more. It is the same process that has already taken place with each previous iteration. And your IT department is involved right from the start.
7. Maintenance and further development
Maintenance and further development are also iterations in which bugs are fixed and further features added. These can be continued formally like the project or be supported within a maintenance contract.
We generally offer you both ways. Which way is the most suitable for you depends on your existing IT infrastructure. Our customer base includes banks and well-known industrial companies. Modern software solutions can be operated in the cloud. If the solutions are hosted as so-called cloud applications, the entire operation of servers, operating system updates and similar maintenance measures are no longer necessary. Such systems are highly available, scalable and very secure nowadays. Sensitive data is encrypted by our systems to protect it. If required, data can additionally be stored within the EU.
The on-premise operation of software solutions locally in your internal network can be an optimal solution – depending on specifications and requirements. The security of IT systems on site depends on the size of the IT infrastructure and the specialisation of your business. Together with your IT team we will find the optimal solution. By the way, we can also help you with your data privacy protection needs and the DSGVO.
erminas can offer you over 20 years of experience in the development of web portals, mobile websites and mobile apps for every purpose. Even in a classic software development environment Web-based applications also have many advantages: Unlike classic client software, software doesn’t have to be installed on the user’s system and no updates have to be manually installed. A simple web browser is sufficient. No special hardware is required. There are no software updates for the users, conflicts with operating system updates are impossible.
With any device, from anywhere
Our web-based applications can be used from anywhere. From the PC, smartphone or tablet. Access is secure and it is possible to determine who can access the application from where. Web-based applications can also be used well on embedded systems such as terminals, industrial tablets, handheld devices and touch screens on the shop floor.
Would you like to generate knowledge from larger data sets, process (sensor) data streams and generate reports? erminas has specialists in the fields of data analysis, machine learning, complex event processing (CEP), data mining and the application of complex algorithms and cognitive cloud services for data analysis. Fields of application are e.g. health insurance, trade, industrial manufacturing and medical technology.
A peek under the hood – technology stacks and methods
erminas has been using Agile Development (SCRUM) in all its projects for many years. This increases transparency and flexibility in the development process. Scrum also leads to a faster deployment of the developed systems.
Test-driven development (TDD) has also been a fixed standard in erminas software projects for many years. Individual software is usually a growing product that is constantly being upgraded and expanded. Test-driven development ensures that existing software components still work after every iteration (with every update). Any changes to external interfaces or software libraries (e.g. operating system updates, new versions of cloud services) are immediately noticeable and make testing the entire software unnecessary in the event of a change.
Continuous Integration has been an integral part of our software solutions for many years. This includes version management (Git), automated build processes, automated tests. Continuous Delivery is also used in some projects.
In the Dev-Ops area we work with native Cloud Apps and Container Services (Docker, Kubernetes). This enables us to achieve smooth deployments and stable and flexible operations with little effort.
At erminas we rely on the combination of the ticket and agile board system Atlassian Jira, the wiki system Atlassian Confluence, the git solution Atlassian BitBucket, the group chat Slack for communication with internal and customer teams. All solutions are interconnected. This allows our teams to create tickets from slack and create branches from Jira-Tickets. Tickets mentioned in the Wiki are automatically linked and displayed with the processing status. Build statuses appear as notifications in Slack.
We mainly use .NET C#, Python, .NET Core (operating system independent), Java, node.js and C as programming languages (high-level languages).
Most mobile development projects are realized in Angular 2. Mobile Apps with Ionic.