Consulting firms frequently claim to have found the perfect process for guaranteeing successful project outcomes. At Elucidated Technology, we believe that philosophy is naive.
Indeed, our process begins with the understanding that no process is in itself a magic bullet. We recognize that each organization does things
a little differently, and experience tells us that is generally a good thing because it takes advantage of the unique combination of skills and experience that
comprise the staff at each individual organization.
Step 1 - Determine Approach
Our first step is to determine what approach makes the most sense. We are guided by three primary factors that influence our approach:
Technology should always support a business process - not the other way around. We won't consider a technology solution until we fully understand the client's business process.
In a perfect world, we could ensure the presense of environments most conducive to our individual solutions.
This isn't a perfect world. We understand that in order to provide an effective solution, we have to work
within the constraints of our clients' existing environments. Thus, our experience has shown that fully
understanding the existing environment and factoring it in to the approach is paramount to success.
Cost should not be the only consideration in understaking a new project. Nevertheless, everyone seeks to maximize
productivity and minimize cost. The simple truth is that sometimes good enough is good enough. We'll be sensitive to your
budget in planning our approach.
Step 2 - Storyboard
Wait - isn't storyboarding part of the SCRUM process? The answer is an emphatic yes, and it is an equally important part of our process.
Storyboarding is simply an easy approach to documenting specific tasks that the system must accomplish. It forces the team to focus on the
business requirements rather than the technology. Once the requirements are fully understood, we
can select the most appropriate technology to address them.
Step 3 - Develop
You may be looking at the diagram on the right side of your screen and thinking, "Ah ha! Design isn't supposed to be part of development!"
It's okay. We forgive you. The more appropriate statement would be that designing and coding are treated separately in traditional software development.
At Elucidated Technology, we've found that projects are most successful when designing, coding, and testing are all encapsulated within a single
development phase. This iterative approach has become more popular in recent years, and is a core tenent of several agile methodologies - we think with good reason.
By designing a small feature, coding what was designed, testing what was coded, and making incremental refinements, any design flaws in either
the feature, or the system, become obvious very early in the process while there is still time to correct them and stay within project budget.
Step 4 - Deliver
We don't consider a solution delivered until the following items are complete:
- The solution is successfully installed and functioning correctly on the client system
- The solution has successfully passed User Acceptance Testing performed by the client to ensure that...
- All functionality outlined on the storyboard is implemented fully and correctly
- The client has 100% of the source code