Neosoft Technologies uses its own software development process, derived from the Iterative and Incremental software development process. This was developed in response to the weaknesses of the more traditional waterfall model. Our process is similar to the Rational Unified Process (RUP).
The basic idea behind iterative enhancement is to develop a software system incrementally, allowing the developer to take advantage of what was being learned during the development of earlier, incremental, deliverable versions of the system. Learning comes from both the development and use of the system, where possible. Key steps in the process were to start with a simple implementation of a subset of the software requirements and iteratively enhance the evolving sequence of versions until the full system is implemented. At each iteration, design modifications are made and new functional capabilities are added.
Our Methodology of Development implies the division of the project in distinct phases, each one of them being conceived to put the emphasis on the interaction and the satisfaction of the customer. At the end of each phase, we evaluate the situation to ensure us that a common comprehension exists between all the parts. The customer has the responsibility of validating and accepting carried out work before proceeding at the next stage of the project. A separate quotation can be provided for each phase at the beginning of the phase, even if one estimated for the complete project is provided to the beginning of the project. The phases are:
Project Startup
When we undertake a project, the project is completely planned and documented in the ‘Project Manual’.
This includes the planned project course and the planned deliverable goods.
Customer Requirements identification
The customer requirements are analyzed and the ‘Functional Analysis’ document is produced.
Design and Architecture
The software needs for the system are identified starting from the ‘Functional Analysis’ document. Each component for the software is conceived and described in detail in the ‘Organic Architecture’ document. As needed, we can produce prototypes of the screens to illustrate the functionalities and system ‘look and feel’.
Development and Testing
The development of the software is made during this phase as well as testing performed by our team. Testing include inspection for Quality Assurance. The software is compared to the ‘Functional Analysis’ and ‘Organic Architecture’ documents to ensure that all the requirements listed in the specifications are met.
Delivery and customer acceptance
The software is installed at the customer site for the tests and customer acceptance. Training is provided during this phase. A user guide and an online help can also be provided if needed.
Support and maintenance
One of the most important aspects in a project of development of software is the support after the installation.
We offer several options to fill our customer’s needs.