Software development

We are a software development group which specializes in designing and implementing custom IT systems for business users and manufacturing plants. The beginning of every IT project is a very delicate time - during this period the foundations of every IT system are designed and it is extremely important to make them as solid as possible. Do it poorly and the cost of expanding your system in the future will sky rocket. and even force you to rewrite the whole software package. Lets us help you from the start!

Analisis and design

Requirements analysis

The most general phase of the analysis in which we:

  1. Identify the stakeholders in the project - people that know what your company requires from the system and will do acceptance tests after it is developed.
  2. Interview the stakeholders and document their requirements for the new IT system.
  3. Check if we have conflicting requirements from various stakeholders that will have to be consolidated with them.

The product of this phase is a document which describes the general goals which the system either:

  • must accomplish - strong requirements,
  • should accomplish if they are not to expensive - week requirements.

Processes analysis

This type of analysis is done if the new IT system will have to impact already existing business or manufacturing process in your company. The analyst will document their current state in the form of use case stories and flow charts to fully understand how they work. New more detailed requirements usually arise during this phase and they will extend the requirements analysis. Furthermore, the functional design will reference the process analysis document when ether it enhances or alters a currently existing process.

Functional design

The functional design is a detailed description of how the system will work from the end users perspective. To do this accurately it will contain:

  • use case stories - which will document how process will be supported by the system,
  • GUI mockups - sketches which will show how the systems user interface will look like and behave.

The design document will give the stakeholders detailed view on how their company will work with the system and how will it accomplish their requirements.

Technical design

The technical design is a general description of how the systems internal structures will look like. It will consist of:

  • general architecture described via a UML deployment diagrams,
  • other UML diagrams of the most crucial parts of the system like:
    • foundations of the data model,
    • division of system services and their programmers interfaces.
  • a list of technologies that will be used to implement and run the system.

Development and maintenance

Team assembly

We'll start with assembling a team with the skill set required to build the system. The team leader is always a core employee of our company while team members like programmers or testers are usually contracted for the project.

Programming and testing

The assembled team will start to hammer down the supplied specifications and design documents into the actual software package. They will do it incrementally in programming-testing cycles. Most test runs will be performed internally by the contracted testers but from time to time we will ask the project stakeholders from your company to do acceptance tests. This will assure us that we are going in the right direction and that both sides understood the design documents.

Deployment and training

After the initial version of the system is ready and it will pass all acceptance tests from your side we can begin the deployment phase. The first step will be to deploy all the required software on the the supplied hardware. The second step will be to train all the staff from your company to use the system and to perform basic administrative tasks.

Maintenance and improvement

Once the system  is running in the production environment we will leave at least one programmer from the team to do maintenance and continuous improvement. He will be responsible for supporting the end users, monitor the systems performance and also implementing bugfixes and smaller improvements. When more complex improvements are required in the future we will once again do a full design - development cycle.