Programming and software development

Software development and programming is our primary activity. We offer both own products to be adjusted and implemented for particular customer and complete on-demand development services. These include analysis based on the customer needs, solution design, implementation, testing, deployment and maintenance. Mostly we develop specialized information systems, databases or web applications, however, we can handle also related desktop or mobile utilities or software for special purpose systems.

Technologies
Mostly we use following technologies:
Java, PHP, .NET, SQL servers (MySQL, PostgreSQL), web servers (Apache, Nginx, AWS), XML, web services, mobile applications.

How Do We Work
The software development process in our company is focused on delivery of high quality software work on previously agreed schedule. We use known and wellproven principles of software development methodologies such as RUP (Rational Unified Process) and SCRUM. The whole development process is managed and controlled via specialized tools for software project management. During the development process, the investor / customer has a possibility of continuous online monitoring of the project status using the software project management tool apart from source code management this can also be used to specify additional requirements and monitor the implementation schedule and plan individual tasks.
Ideally, we the whole software project is divided into the following parts:

1. Software specifications – initial analysis

The goal is to precisely describe the target system and its relations to another software systems operated by customer and specify functionality and interfaces of the application. Specification also includes a project plan and schedule. The output of the analysis is a structured document describing the desired software system at the level of detail, necessary for the development / programming, and for determining the project budget and schedule. Technical details are recorded in a form of UML diagrams, complemented by a text description. The structure of the system is designed in an interactive wireframe diagram. The software analysis platform independent, not designed for a specific software platform, system or framework. On the contrary, the goal is a general but accurate description of the system with low level of technical details, so that the choice of the specific technology to be used is possible at later phase, that is at start of the system implementation.


2. Implementation, development of software components

Adjustments or development of new software modules based on the software specification. The system is usually based on an existing open-source framework, because of the previously mentioned advantages compared to a proprietary system.

3. Integration with external systems

The software analysis describes data-flows, and necessary integration with external systems operated by a customer (e-shop integration with accounting software, suppliers' and partners' systems, payment gateway integrations, etc.). In addition to the development of interface modules, we are also prepare testing data and scenarios to verify the integration components correct operation.

4. Testing

It includes running functional, load and integration tests. Test scenarios are prepared in advance and need to be approved in cooperation with the customer. It also involves user testing across different end-user devices (such as PC, tablet, smart phone).

5. The production deployment

Installation of the system to production servers s (application, database, proxy) and system configuration for production service with focus on high availability.

6. Management, maintenance and technical support

Based on the maintenance and management contract parameters, we are able to provide hosting services with the defined SLA2, including monitoring and technical support in 24/7/365 mode, as well as system maintenance (system upgrades, security monitoring).