|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Let's define what a software methodology actually is. From Wikipedia...
|
|
|
|
"A software development methodology or system development methodology in software engineering is a framework that is used to structure, plan, and control the process of developing an information system."
|
|
|
|
In a nutshell, when you follow a proven software methodology, you are no longer winging it. That's not to say following a software methodology guarantees success. In the wrong hands, it won't make a bit of difference. Furthermore, even the most talented software professionals can find themselves knee deep if they don't have a plan. So you need both, really.
|
|
|
|
|
|
|
|
|
|
Before you try to design and create your custom software application, you really need to define the basic nature of your project. It makes no sense to rush out designing the perfect solution before you've even defined the problem. Otherwise, how do you know we've even satisfied your requirements?
|
|
|
|
Just as importantly, how would you measure the success of the project? You can't. So we make our first objective defining exactly what it is you need to do, and setting up a plan to accomplish it.
|
|
|
|
|
|
|
|
|
|
»
|
Planning/Discovery
|
|
»
|
Project Planning
|
|
»
|
Requirements Definition
|
|
»
|
Conceptual System Design
|
|
|
|
|
|
|
|
|
|
Now when we have a better idea what we need to do, we formulate an appropriate solution, together with you and/or your team to craft the best solution. It's a team effort. So what are we doing during the design stage? Here's a brief list:
|
|
|
|
|
|
»
|
Prototyping
|
|
»
|
Functional Design
|
|
»
|
Technical Design
|
|
»
|
System Architecture
|
|
»
|
Training Plan
|
|
»
|
Test Plan
|
|
|
|
|
|
|
|
|
|
|
|
Let's clarify the above statement. It is common for parts of an application to go through the 4D's several times, until we get it exactly right. For example, we might discover that a certain module doesn't work exactly as intended while in the develop stage. This would cause us to clarify the requirements (define stage) and revisit the design, before making the required coding changes. Bottom line: it's a dynamic process. Don't let the linear structure of the methodology fool you.
|
|
|
|
The develop stage is usually the most time consuming. During this stage we are involved with activities pertaining the assembly, testing and documentation of the new software. Other activities that we perform during this stage include:
|
|
|
|
|
|
»
|
Application Coding
|
|
»
|
Testing/Quality Assurance
|
|
»
|
User Documentation *
|
|
»
|
Program Documentation *
|
|
»
|
Change Management
|
|
|
|
|
|
|
|
The deployment of any software application is possibly the most important aspect of the whole process. After all, in many respects, this is when the project really begins. The people in your organization are using it, and that means it better be installed, configured and performing correctly.
|
|
|
|
|
|
|
|
|
|
»
|
Hardware/Software Installation
|
|
»
|
Data Conversion
|
|
»
|
User Training *
|
|
»
|
Support Training *
|
|
»
|
Post Implementation Review
|
|
|
|
|
|
|
|
* If required at a separate cost.
|
|
|