For my college internship at a company I am required to have strong analytical skills (basically for understanding a project assignment, understanding the problem domain, finding the right
patterns (OO, UML, etc), the right system design etc).
My question is: how do you develop strong analytical skills? Is it a talent you are born with? Is it something you can learn in software engineering books?
I've been through all the software engineering (101, 201 and 301) classes and I passed them, but I am afraid of not having these skills.