Start by reviewing the following key concepts and tasks:
These will introduce you to the basics of what you need to know about solution development in the context of DDI.
After reviewing the above you can:
-
Understand the solution design practice of your organization and the work products it produces. These will be an
inputs to your work.
-
Familiarize yourself with incremental development. One key aspect of DDI is to implement the solution by
increments, focusing on a small piece of the solution first, and adding additional functionality incrementally
during subsequent development cycles.
-
Identify the tools you can leverage with your team. It can be tools to automate key activities like static code
analysis, unit testing or design to code mapping. Talk to other teams to learn from their past experiences. They
can have used or identified tools in the past to increase their productivity.
-
Improve the quality of your implementation by reviewing assets such as:
5. Set up your development environment.
Common Pitfalls
The most frequent pitfall is to consider only functional requirement during your development activities. A common
mistake is to overlook non-functional requirements (availability, security, performance, etc...). Realization of both
functional and non-functional requirements will ensure the success of your Design Driven Implementation.
Another common pitfall is to be driven by programming language trends and implement the solution based on bleeding-edge
technology. It significantly increases the level of risk of your project. Don't forget there is no value in the
technology itself. Only the realization of the initial business need is a success factor. Try to benefit from past
achievements and reuse technologies your organization is thoroughly proficient in.
Try also to avoid reinventing the wheel each time you develop an element. It prevents you from focusing on critical
parts of the system where you really have to find innovative solutions. Chances are another team (or even the open
source community) has already implemented solutions to most common problems. Effective reuse is a key success factor.
It improves productivity and code maintainability.
Another pitfall in the practice is to minimize the importance of code reviews. The consequence is to discover
the problems too late in the process. They are then difficult to solve. Try to plan and conduct regular reviews to
detect potential problems as early as possible. It will increase the overall quality of the solution.
|