The generalized project management process we follow. Each client process is different.
The 8 Steps
Our project management process varies based on the specific project details and context, but for the most part they can be generically viewed as the process below.
Step 1 :: Initial Consultation
The purpose of the initial consultation meeting is to gather details about the client, their business, and the issues they are looking to solve.
Gather details on the client's industry.
Gather details on the client's company.
Analyze the issues the client needs resolved.
Evaluate current solution, if any.
Step 2 :: Follow-Up Consultation
The purpose of the follow-up consultation is to review the details discovered during our initial research to determine possible solutions to the problem and determine whether the project is feasible or not.
Discuss possible solutions and there trade-offs.
Discuss estimated cost range of project estimates.
Review and update software requirements.
Step 3 :: Detailed Proposal
A few days to weeks are spent researching the domain, the technologies, and designing a high-level software architecture. Depending on the subjact matter, a proposal could take weeks. Our proposals includes estimated timelines with milestones and their deliverables to clearly define both our company's and the client's deliverables.
A project overview and understanding from our end.
A set of functional requirements (deliverables) to acheive.
Phase breakdown with functional requirements for each phase.
Project estimation pricing.
Complete contract w/ terms and other legal conditions.
Step 4 :: Research & Planning
Before development, the team needs to understand both the domain of the problem including the industry and why the problem is... a problem. A thorough understanding of existing technology and industry best practices insures our solution efficiently solves the problem at hand.
Project management portal setup w/ client access.
Detailed research on company, industry, and issues.
Best-practices and company-specific procedures analyzed.
Analysis of existing similar technologies & capabilities.
Analysis and determination of ideal technologies.
Use-case analysis and unique requirements.
Step 5 :: Prototype Design
To make sure we are on the same page and our solution satisfies your needs, we design a prototype that has a mockup of key pages and clearly defines the user experience. It not only shows clients what to expect, but enables developers to build the solutions with confidence of the client's approval.
Back-end technology and hosting setup.
Front-end base architecture setup.
Data model design with database configuration.
Helpers and required libraries implemented.
Wireframe interface design and adjustements.
Core functionalities for both front and back end.
Technology selection validation and adjustements.
Step 6 :: Streamlined Development
Having clear understandings of the problem domain and client-accepted designs, the development roadmap is clear and developers stricly focused on development. Development is completed in steps with client feedback from adjustments provided between steps to double insuring the product meets client expectations.
Complete development in phases as defined in proposal.
Collaboration and progress approval meetings every week (or day).
Gradual deliverables release and testing performed as possible.
Functional requirements implementation and base testing.
Use-case implementation and base testing.
Step 7 :: Tested & Warrantied
Before finalizing the development, the testing defined in the specifications is performed and signed off by the client project manager. Even after completion, our company offers 60 warranties to fix any other issues that may arise and support plans for beyond the warranty period.
Testing-ready product released.
User acceptance testing.
Functional requirements & use-case testing.
Adjustments based on feedback.
Finalization of project via client sign-off.
Production-ready product released.
Step 8 :: Hosting & Maintenance
We also offer hosting and maintenance services that include minimal hosting fees that we personally monitor and offer a pre-specified number of hours that can be used for maintenance and/or additional development on a monthly basis.
Provide hosting management services to client (optional).
Provide support and maintenance services to client (optional).
Provide improvement servces, as requested by client.