I am trying to define which agile practices we are going to use, and I am having difficulty defining the list of agile best practices. I would like my list to be more from a technical point of view (the engineer's angle of view), and should define how SW engineers should approach the development. The list should be related to the management as least as possible.
If it matters, we are programming in c++.
It is fairly easy finding lots of best practices, and this is the list I managed to form so far :
We are already using some of the practices from the list. Some we are not going to use.
Are there good agile practices that I could add to the list?
PS I can add a small description of the practices, if requested.
EDIT
As I said, we are already using some agile practices (mostly the practices that proves to be the best) :
Because of the structure of our organization we can not use other practices, but as you can see the list is long, and you can not pick everything. Also, now we are only 4 SW developers, each maintaining approximately 80 kLOC and working on new stuff. Therefore we can not do for example pair programming, or collective ownership.
First, go read the Twelve Principles of Agile Software.
Second, figure out from what you know how to achieve the principles that are most important to you.
People constantly make the mistake of expecting Agile development to be a Silver Bullet or a rigorous set of processes that you need to adhere to that will make your software development successful.
That's not what it's meant to be. The fact that you already have a list of 15 "Best Practices" scares me a little. Don't take it too seriously and don't over-think it. If you find that you missed something...get it in the next iteration.