[this post is not complete]
Every project has leaders. There are project managers, analyst leads, developer leads, and architects. Each adequately meets their portion of the software development lifecycle. What's somewhat easy is coming up with their job descriptions, what difficult is defining their correct relationships.
Here, four fill all roles. Whenever two things are merged, something of each is lost. No one expects either to be fully the same, any more than two glasses of water poured into one remains the same volume. What is lost, however, can be selected; job descriptions address this.
Each truth could be its own book. But each should be inserted as part of a project's culture. Mutual respect, regular communication, and regard are necessary part of human interaction. Still, progress is better than consensus. A project's endgame is a product, not friendship.