Our Methodology

Our Software Development Methodologies incorporate current best software practices to develop high quality software and service support consistently. At Austenite, we have subdivided our software engineering principles into three categories.

Software Development Methodologies

  • Engineering
  • Quality
  • Management

Software Engineering

At Austenite, we follow a systematic and disciplined approach to software development by applying the following principles:

  • Analyze the problem
    Determine the requirements and define a solution.
  • Break Up the Solution
    Break up the solution into clearly defined components.
  • Control the Relationship
    Rigorously control the relationship between components.

Our Software Development Model

Software Development Model

Click to enlarge

Deliverables

At Austenite, we keep our clients informed all the time and involve them at every stage of the development process.

Development Process

Quality Principles

We believe quality is not tested into a software product; it is built in by the software process that produces it. One of the elements of this process is effective practice. At Austenite, we follow continuous and rigorous error detection process, based on the following quality principles:

  • Prevent defects from being introduced
  • Ensure that defects are detected and corrected as early as possible
  • Establish and eliminate the causes as well as the symptoms of defects
  • Independently audit the work for compliance with standards and procedures

The number of defects can be substantially reduced by adopting a strategy for defect prevention, but they will not be entirely eliminated consequently. Consequently, at Austenite, as a second line of defence, we detect and correct defects as soon as they are introduced into the development and eliminate the causes as well as symptoms of the defects. The reason for this is simple. A landmark study by Boehm reported that the longer defects go undetected, the more expensive they become to correct.

Quality Principles

Relative Cost Factor to Find and Fix Defects

To detect and correct defects at the early stage of the development, we do extensive research about our client’s requirement and develop our software definition report. It’s an iterative process and we interact with our clients regularly at this stage. Based on our client’s feedback, we keep on refining the report and eliminating possible causes of defects from the report, until our client is completely satisfied.

Management Principles

The development of a software product involves much more than the transformation of a stated requirements into software. It always takes place in some business context, which imposes time, resources and budget constraints on the work. At Austenite, our management team takes a great deal of care to plan, schedule and monitor the project activities to take account of these constraints. They also address the issue of communication, both between the developer and the customer, and between members of the development team. Our effective managemement of these issues is based on the following principles:

Defining Roles and Responsibilities

To run a project effectively and efficiently, our management team takes necessary steps to make sure that the members of the development team have an understanding of

  • their roles in the team
  • their responsibilities
  • their areas of authority
  • the lines of communication within the team and with other groups

Planning the Work

At Austenite, we feel planning is absolutely essential for a successful software development and we develop realistic plans for all the activities and risks involved. We plan with focus on three aspects

  • Technical
  • Quality
  • Resources

Tracking Progress against Plan

We regularly track and document our work against our plan and take corrective action when necessary.

Progressive Refining the Plan

Planning is an attempt to forecast the future and is always based on incomplete information. It is thus difficult to be entirely accurate, and the further into the future the planning extends, the more difficult it becomes. The difficulty lies partly in the fact that it is impossible to foresee every eventuality, and partly in the fact that the perception of the task being planned is altered and refined as the task is informed. To address this issue, at Austenite, we follow a two-tier approach to planning. At any given point, we plan at two levels: an outline plan, covering long term objectives, activities and priorities at a high level; and a detailed plan, which is a refinement of the outline plan, spanning the immediate future at a greater level of detail.

Please contact us for further details.