Activity Sectors

Our Software Development Philosophy

Understanding client’s needs

The development process starts with our efforts to gain a complete and thorough understanding of the client’s needs and requirements. We work hard to get every requirement specified and written up in advance of project initiation. We then specify the project team and estimate time, duration, and cost. Further project planning and a general critical path analysis then yield the tasks and deadlines, which must be met for the project to be completed on time and on budget. We believe in the value of a rapid prototyping phase to incorporate customer’s feedback back into the designing process as early as possible.


Designing the solution

Semantix is a strong proponent of object-orientation and of the idea of separating design, specification and interfacing allowing the systems we develop to survive technology changes and the emergence of different middleware platforms for inter-process communication. We adopt a holistic view of the applicability of object oriented patterns in a variety of contexts and have geared our development methodology towards the use of UML for analysis and design and the use of UML-based tools for round-trip software engineering. We use development tools that guarantee that the software we develop is always synchronized with its design specifications so that the original blueprints are constantly evolving and do not become obsolete and irrelevant artifacts. We also subscribe to the idea of using technology neutral IDLs to define the interfaces between subcomponents of our system and / or external systems to facilitate the smooth integration of subsystems which are built using different baseline technologies (CORBA, EJB/J2EE, .NET, XML/SOAP).


Validating the solution

We are constantly honing the skills of our people through the organization of frequent training sessions, the application of uniform coding standards specifications, and the employment of walkthrough sessions and peer review procedures. These quality assurance measures make sure that all coding adheres to a coding standard and facilitate code integration and consistency. Senior engineer review procedures are conducted on all projects before integration to ensure high quality of work.



We have experts in C, C++, Ada, Java and Assembly programming for a variety of OS platforms. Our software development policies are modelled around the Software Engineering Institute's Capability Maturity Model (CMM).


As new technologies constantly appear for new application niches it is imperative for organizations to ensure that their systems are rooted in foundations that are solid and yet flexible enough to adapt to emerging software platforms and architectures

 ØCompany Profile ØBilling and Rating ØMediation and Roaming ØDrivers and systems software ØDefence and security