Our Methodology
Up | Why Use MindCrafted? | Our Methodology | Project Planning | Track Record
Working with us means you will
become involved with the MindCrafted way of creating software.
We have established a systems development methodology that
maximizes quality while minimizing cost.
Our methodology emphasizes careful planning. It eliminates
confusion about what to do next and what to produce. Our
methodology results in proven successes. It provides a road map for project
participants and guides us in developing systems in a systematic
way, not by accident or momentum.
Numerous studies have shown that the cost of
changing a specification in a software development project increases at
least tenfold with each step in a project. There is never any
cheaper time to make a change than right now. Projects that use careful planning
from the very beginning
minimize later changes, thus holding down costs and reducing the time to
complete a project.
Steps in the MindCrafted Methodology Include...
 |
Methodology
|
 |
 |
Gathering
Requirements
|
|
Every
software development project comes with its own unique
set of requirements, both business and technical.
Depending on the size and complexity of a project,
MindCrafted Systems uses numerous modeling techniques to
document requirements and as verification that we truly
understand a client's needs.
Models
can range anywhere from ER and object diagrams,
functional specifications, use cases to full blown
prototypes. We would also gather statistics required to
make technical decisions concerning the scale of the
system and which platform would provide the best
solution given any business or organizational
constraints. |
 |
Creating A Design And Implementation
Strategy
|
|
Once we
know what a system needs to do, then MindCrafted Systems
can specify
the steps necessary to construct the system. This would
include database design, program and interface
specifications, wrapper definitions and all
user-interface deliverables, including screens and
reports.
With this
information, then MindCrafted Systems further defines
the design given the choice of development tools and
implementation platform.
Concurrently, MindCrafted Systems can help you plan the
steps necessary to physically deliver a system to its
end-users. This would include hardware and software
specifications, specifying network requirements and
specifying installation requirements. |
 |
On Your Mark, Get Set, Start Coding!
|
|
Only after
we know
what to write, how to write it and what to write it
with do we begin generating programming
code with its own code generator as well as writing code by hand. We differ
from our competition because our teams are small
and each member wears many different hats, interchanging
them where necessary. This streamlines our efforts
since, from the very beginning, all of our team members
know that actually writing a system is the final goal.
This is
also the point in the project where testing begins. We
start with the original requirements, mapping each one
back to a deliverable within the system. That is how we
check for the system's completeness. We
then map each deliverable back to its design
specification in order to check for correctness.
|
 |
Implementation
|
|
Before
installing a new piece of software into your
organization, we outline the preliminary steps necessary
to assure success. This includes everything from
hardware and software considerations to training and
documentation. We work to make the implementation of a
new system as seamless as possible, avoiding the
disruption of your daily business practices. |
 |
Refinement
|
|
Changing requirements are not a sign
of sloppy work, they are a fact of life. All businesses change and adaptability
is a key component in successful businesses. We at MindCrafted Systems design
our systems to easily allow alterations and additions to functionality. They are
built to change.
Each system we create comes with a
built in change control system for tracking changes. We use this to manage
priorities as well as managing what to include in a new release of the software.
This allows you to manage what changes get done at what time. |
|
 |
Analysis |
 |
|
Defining what a system
needs to do and under what constraints.
|
| Design |
|
Specifying how a system
will be built. |
| Construction |
|
Creating, purchasing
and testing all the specified
components of a system.
|
| Implementation |
|
Putting a system into
production and using it to conduct business. |
| Back To The Top |
|
Instead of implementing a traditional
waterfall methodology, we take small portions of a
system completely through all the steps in order to
gather immediate feedback, again, making corrections as
early in the development process as possible. |
|