The key is
effective product management, which can then lead to
effective project management. Specifically, someone needs to know what the product is and where the product is going (road map). Often the product is at the mercy of the loudest sales person, demanding the feature to make their sale. SalesPersonX needs FeatureY to close a $50,000 deal, when CustomerA, CustomerB, and CustomerC have all requested ImprovementD, maybe they'll renew without it, maybe not.
Someone needs to make this call: prioritize ImprovementD or FeatureY. Maybe they can both get done this year, maybe not. It's a business decision, either keep current customer happy or drive for sales. Usually SalesPersonX knows RockstarZ's number and calls him directly. RockstarZ get's burned out from the constant pressure and quits.
So, someone needs to be gathering feedback from customers and prospects, build a roadmap, then project management can concentrate on delivering features.
I have worked at one company that got this right and it was a joy. I didn't realize it at the time, but I've since come to regret leaving there.
Edit; I just realized OP asked for reading material, I opined instead. Sorry, leaving this here anyway