With you every step of the way.

Who are we

"Coming together is a beginning. Keeping together is progress. Working together is success."

Henry Ford

    Dorius is a information system and software development company that also specializes in buisness process management. We are oriented towards helping our clients in further development, as well as its maintenance. Through many years of work, we have built a reputation as a company that has young, hardworking and promising experts who want to push the boundaries and gain new experiences while working on each project.

    We are proud to have helped both larger and smaller companies outperform their own impediments. We did this by tailoring our methodology to each client and thus finding the optimal solution. We look at each project with great attention and always provide a unique approach.

    Experience shows that it is best to work with a young, hard-working and promising team of experts who want to prove themselves and always learn something new. They live, learn, thrive and have fun through the world of computers. They want to be the leaders in creating and developing more advanced solutions that contribute to the success and satisfaction of its customers through quality improvement, easier management of their own business and realization of business plans.
    For the needs of our users, they direct their efforts towards optimization and automation system solutions tailored to the specific needs of clients. With the help of educated and professional staff, they want to now, and in the future, provide quality services to the client through clear communication and incremental development, through the application of advanced information technology.

Team 1
Team 2

What we use

Front-end

HTML5, CSS3
Angular, Angular Material
Bootstrap 4&5
TypeScript, JavaScript

Back-end

C#
.NET
MS SQL
PostreSQL

Tools

TFS, GIT, Azure
Docker, Jira, Trello, Slack
MS Visio, Camunda, PowerBI
SSIS, SSAS, SSRS, Umbraco

Analysis & modeling

UML, BPMN
CMMN, DMN

Artificial Intelligence

Dialogflow
RASA
TensorFlow

Your first step towards a solution

Business and technology combined

Our methodology

    Methodology of developing an IS implies a defined software development process, where different standard methods, models, techniques and tools are applied in different phases. Given the different phases, we use agile software development methodologies.

    Agile software development refers to software development methodologies centered round the idea of iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. The ultimate value in Agile development is that it enables teams to deliver value faster, with greater quality and predictablity, and greater aptitude to respond to change. Scrum and Kanban are two of the most widely used Agile methodologies. Below are the most frequently asked questions around Agile and Scrum, answered by our experts.

    Strategic planning of IS development begins with observing the current situation (initial strategy). This contributes to setting the business goals, identifying problems and ideas, determining how to solve them, and defining the requirements for the system. It also contains a feasibility study, or an overview analysis of the problem area and determinating the boundaries of projects. Project planning consists of developing a work plan, appointing staff, managing and supervising the project. The business goal is to create a major project.
    Analysis of the system and user requirements include specifying project boundaries and business requirements. A detailed analysis of the existing system, problems and business requirements, the behavior of the real system and user requirements is performed. The requirements specification is a detailed description of the requirements, designed to be understood by designers and end users.

    Development of a conceptual model that represents the entire information content of the database. A conceptual model is a model of a real system in which the system is described as a set of objects, their attributes, and their internal relationships. In some approaches, the conceptual model is built directly, based on the business model of the system, and the objects of the conceptual model are used to specify applications.
    The logical design of a database in a given DBMS comes down to the transformation of a conceptual model into a database description of a specific Database Management System such as SQL Server. The logical model of the database defines the structures suitable for application development. Most often, this transformation is performed using the CASE tool in which the conceptual model is developed. The design of a logical database model is done by data modeling techniques (ERM or ERWin).
    Physical database design is the design of the internal, physical structure of a database, based on a logical model and specifications of all applications and non-functional specifications. The physical structure of the database should enable the achievement of satisfactory system performance. The key difference between logical and physical design is that the physical depends on the implementation environment and the logical does not.

    The Application Specification creates detailed functional specifications of the program which, for each identified program, defines what it should do, which outputs it should generate, based on the given inputs and the state of the system.
    The design of the application is done based on the application specification and the logical model of the database in a specific DBMS. Application design (modeling) represents the designer's view on future IS. It is used to make a decision on how to build a system. It contains the design of the necessary solutions. Detailed design represents the elaboration of a solution, the development of a technological model of IS (contractor's view). Design primarily involves the transformation of models obtained in system analysis into appropriate implementation systems.

    Deployment and setup of the database is implemented in a specific DBMS, followed by system performance, changes in applications and logical structure of the database, and appropriate adjustment of the physical structure. Application implementation involves programming, or coding. Thus, implementation involves building a database, coding (programming) the process (function) of a new IS, building software components, deploying components in a distributed implementation environment, and is done after selecting an implementation platform (e.g., .NET).
    Testing is checking the built-in components. System integration and verification is the joining of parts and verification of the whole, to prove that the system is working (that it is made correctly), as well as that it is doing what is required (that a real system has been made that meets user requirements).

    System maintenance and modification is the transfer of work activities and data conversion from the old to the new system, installation of equipment, applications and databases of the new system, initial data entry, establishment of protection and maintenance systems and training for the usage of the new information system. Maintenance consists of modifying the system to improve its performance or adapt the way it is used. Maintenance also includes the support of equipment suppliers, the assistance of technical staff to IS users during its use, as well as the development of a maintenance plan. Application maintenance involves changes in applications, and sometimes in the logical model of the database, that occur due to detected errors, changes in the implementation environment or changes in user requirements. Maintenance is an ongoing activity that begins immediately after the system is put into operation. No matter how well the system is designed, constructed and tested, errors will inevitably occur! Correcting errors in practice is called system maintenance. Maintenance does not in itself involve the installation of improvements or new features, but they are usually implemented.
Maintenance can be:
  • Preventive, which implies protection from possible problems. It is necessary to make regular backups. Backup is performed periodically (daily, weekly, monthly).
  • Corrective maintenance means repairing after a problem has occurred. Restoring data from a backup or removing the cause of the error (correction of the application) is the right move.
  • Adaptive maintenance is the adjustment of functionality (way of serving), adjustment of structure (changes in data structure) or improvement of performance (optimization of programs).
  • Perfect maintenance is upgrading the system to solve new problems or install new features.
  • During the implementation and maintenance, the analysis of additional requirements is performed, planning and preparation of the following activities, and thus a new development cycle begins. The new development cycle is carried out after reviewing the entire system and finding that major changes are needed due to changes in business or changes in business goals. A new development cycle is usually a new project.