To ensure that our clients always receive top-quality software
products on time and within budget, Matrid employs a rigorous
project methodology, which is premised on a holistic view
of systems engineering. This approach recognizes the vital
importance of human interactions - between our management
team and our clients, as well as between our clients and
the systems we build. This philosophy informs every stage
of our software development process - from gathering project
requirements to delineating detailed specifications, executing
the project, and testing the resulting systems. After all,
meeting or exceeding client expectations is our ultimate
goal.
Requirements
Gathering
Careful
requirements gathering is an essential first step in any
software or database development project. In our experience,
the time spent up front to gather detailed functional requirements
eliminates process delays, improves system quality, and
greatly reduces "function creep" with its associated
cost overruns. In addition, requirements gathering lays
the foundation for a framework of mutual education, brainstorming,
negotiation, and progress tracking.
At
the start of every project, Matrid's programmers and project
leaders work together with our clients to develop a detailed
understanding of their needs. This process typically involves
a series of meetings where our software and database experts
collect functional requirements from users, resolve conflicting
requirements, establish and prioritize project goals, and
identify critical risk and success factors for the project.
Project
Specification
Once
the functional requirements for a product have been gathered,
Matrid's project leaders work with the client to translate
those requirements into detailed project specifications.
At this stage, the team resolves any conflicting views of
the product or the overall project goals, defines the interaction
of the product with each user group within the client's
organization, and establishes a delivery time and cost estimate
for the project.
From
our experience with past projects, we recognize that it
can be difficult to predict how a complex system will perform
and how it will look and feel, until it is deployed. For
that reason, the best approach often is to build a prototype
system at first and then make iterative refinements, adding
new functionality as needed. This approach is often the
fastest way to bring a product to market.
Project
Execution
As
a project moves into the development phase, our Project
Managers maintain continuous contact with the client and
with our programmers to ensure accurate communications and
constant project oversight. Our managers and quality control
personnel supervise every detail of the project and report
weekly. This uncompromising approach to quality assurance
and project oversight provides complete accountability for
every stage of the project and ensures that the final product
fulfills or exceeds the client's expectations.
Quality
Assurance
In
today's highly competitive marketplace, releasing new software
quickly is often the key to success. There is tremendous
pressure to be the fastest to market with the right product
or service. However, the accompanying sense of urgency can
lead to shortcuts that compromise product quality, resulting
ultimately in unsatisfied customers, lost revenues, and
a diminished reputation.
With Matrid, you will not sacrifice quality to achieve timely
results. Our software quality assurance (SQA) procedures
start the day the project specifications are finished and
continue until the project's completion. Matrid has developed
a system Track Master that allows our team members, managers
and management to monitor quality assurance, input SQA issues,
track bug fixes, and follow project item changes at their
desktops.
Our quality assurance program encompasses the following:
continuous tracking of quality assurance issues on-line
with Track Master test strategies for program functions
and expected performance parameters; continuous generation
and implementation of test scripts to track program output
in the development process; stress testing, risk and failure
analysis, and defect analysis; automated testing when appropriate;
detailed QA documantation.