Software Development Life Cycle

Bahatech Technology follows a software development methodology that is derived from Microsoft Solutions Framework and Rational Unified Process (RUP). Our process methodology is continually reviewed for improvement to further ensure quality development and product delivery consistent with customer expectations.

The following process methodology is a representation used in one of our business applications. Every project has unique requirements; hence, at the start of a project, a custom optimal process methodology is defined prior to the launch of the project.

Bahatech's methodology represents an optimization of standard process management techniques and best practices established through many years of project development experience. The important features of Bahatech methodology include:

Iterative Process

Ensures inputs from 'successor' process at each stage of the development cycle.

In-depth User Involvement

Ensures minimal risk of misalignment between application capabilities and end user requirements.

Object Orientation

Ensures identification and development of common, re-usable elements leading to more reliable, robust applications, requiring less development time.

In the Bahatech Offshore Software Development Process, there are eight distinct stages. Each of the stages consists of one or more task. The task describes what is to be performed in the pursuit of the stage's objectives. The tasks are frequently composed of steps.

Business Modeling

In this stage, we typically work closely with the client's business experts to ensure we clearly understand the business problems and what the client is trying to achieve and to recognize their business priorities. The main purpose of this stage is to define the project and to establish buy in for the project.

Bahatech tasks:

Bahatech Deliverables:


In this stage, we assemble all the information needed to develop the client's software including the complete scope of the project and the project objectives and benefits. The end users and the project team are also identified. We create documents that outline how we propose to develop and deliver the project, including required functionality, environment, interfaces and a project plan.


Bahatech tasks:


Our Business Consultants meet to conduct Joint Application Development sessions with the client to describe what the system should do and allow the developers and the client to agree on that description. These are brainstorming sessions in which a document is created with the stakeholder's vision. The identified use cases function as a unifying thread throughout the system's development cycle.


Bahatech tasks:

Analysis & Design

We create a detailed functional specification and advise the client on options available to him with respect to architectural approaches and technology solutions for project implementation. Then we create a design specification that describes the internal architecture of the system. We follow the iterative model of development. In this methodology, once the preliminary requirements are clarified, the next step is to quickly build the prototype of the application. The prototype can go through continuous evolutions until it becomes the final product, exact to specifications.

Bahatech tasks:


The primary goal of this phase is to take the logical design in the design specification and implement it in a physical software application. This is the stage where the project is actually off the ground. The developers working on the project abide by Bahatech's strict internal coding standards to develop your application quickly and properly. They use state of the art tools and technologies, and work from the functional and design specifications to ensure your project is created precisely to your requirements.


Bahatech tasks:


At Bahatech, we utilize a rigorous test plan created at the beginning of your project. Testing for us is also an iterative process. We believe quality assurance throughout a project ensures that the functional and design specifications are written to produce software that is reliable and usable. Quality Assurance specialists continuously and methodically test independent modules, as well as the complete system, throughout and after the programming process.

Bahatech tasks:


Once we get your approval on the project, we install the solution in the business environment. This includes the information system software, files and databases which are utilized by the information system, operational documentation, system and program documentation, trained staff and integration of the foregoing into the operational environment. We do not consider a project complete unless the software is working in the desired location and integrates with existing systems and business processes.


Bahatech tasks:

Maintenance & Support

The primary goal of the maintenance and support phase is to service new requirements and to fix anomalies that occur in the real world implementation of the software. We also make sure that the software receives functional updates on an as-needed basis as your business needs evolve.

Bahatech tasks: