Digital Design approach to project management
Software development methodology is the essential component of successful development. Digital Design acknowledges its utter importance and pays much attention to development process management. It is now more than 10 years since our company, first of IT companies in Russia, obtained certificates of CMMI Level 3 and ISO 9001. We renew the certificates and prove our full compliance to the requirements of these standards each year.
In Digital Design project management is carried out according to the principles promoted by the Project Management Institute. The development process methodology is flexible and varies depending on the project type and customer preferences from Rational Unified Process (RUP) or Microsoft Solution Framework (MSF) models for the large projects with well-defined requirements to Agile model for small and middle-size projects with the changeable requirements and considerable customer involvement into the process. Besides we use a specific technical maintenance methodology for maintenance and support projects.
Regardless for the methodology selected for the project the following principles are always observed:
- Close co-operation with the Customer throughout the project life cycle
- Development process is apparent and manageable due to the usage of automation tools such as Microsoft Team Foundation Server (TFS) and Microsoft Groove
- Availability and transparency of project information to all stakeholders
- Close control from managers and quality assurance experts
Project management methodology is based on RUP and MSF principles and adjusted according to the specific of our projects. Development methodologies that we use include:
RUP adopted by Digital Design | Agile adopted by Digital Design to customer needs | |
|
|
|
General tasks and project phases with results of each phase:
| Preparation |
|
| Analysis & Requirements definition |
|
| Design |
|
| Development/Implementation |
|
| Documentation, Testing & Deployment |
|
| Acceptance |
|
Elements of Digital Design development process:
- Roles (vary for RUP, Agile and Technical Support methodologies)
- Deliverables (vary for RUP, Agile and Technical Support methodologies)
- TFS
- Communication with customer
To all project development methodologies used in Digital Design we apply six following best practices (according to RUP):
- Iterative development
Even if customer is looking for more traditional and formal model of development process it is possible to include steps of waterfall model in each iteration of the project. Each iteration consists of traditional phases of software development – business modeling, requirements collection, Analysis&Design, Implementation, test, deployment. Though each of these phases has particular length during concrete iteration. - Requirements management
We put additional attention on requirements set by customer. In case customer could not form precise requirements Digital Design is able using agile methods in development process propose pilot solution, that will initiate requirements generation. - Attention to the system as a whole and to its components in particular
Ability to test individual components before they are integrated into a larger system helps to eliminate number of risks and issues. - Model visually
Using diagrams to represent all major components and also TFS makes possible to make development process more clear both for project team members and customers. - Verify quality
Testing is considered as constant factor in any software product creation - Control changes
Constant synchronization and verification of changes.
