The diagram isn't clear. Connection between roles suggest what yegor256 is talking about - that author thought about product manager. However if we take a step back from the diagram I understand the role differently.
Development manager is typically manager/leader of development group. Sometimes it's purely programming and sometimes the perspective is broader - it covers architecture/design, quality assurance, implementation and/or maintenance. Also, development manager usually has some formal power over (the part of) the team, being direct manager of people, while project and product managers in vast majority of cases aren't people managers.
Depending on the organization development manager can be focused more on a technical side of the work (architecture, design, etc.) or on leadership (managing people, motivation, staffing) or on both (which doesn't scale up very well).
Having said that, there is no single, universal project team organization. It will depend on specific company, specific project and specific people who are engaged, so don't take it that seriously. Look more for people's strengths so you cover all important roles in the project. It doesn't matter that much what those people have printed on their business cards.