I have this course where we learn about the domain model, use cases, contracts and eventually leap into class diagrams and sequence diagrams to define good software classes.
I just had an exam and I got trashed, but part of the reason is we barely have any practical material, I spent at least two good months without drawing a single class diagram by myself from a case study.
During the exam the teacher gave us the domain model, two or three use cases on some vital system operations and a glossary. We had to model up a class diagram and some sequence diagrams for these. The thing is, the jump from real-life modeling to OO classes didn't seem clear to me.
I handle the GRASP principles pretty well, but I lack practice. I could use something that gives a pre-made analysis and asks you to draw the OO design in form of class diagrams or something. I know it varies from one person to another, but some concepts should always make sense.
I'm not here to blame the system or the class I'm in, I'm just wondering if people have some exercise-style books that either provide domain models with glossaries, system sequence diagrams and ask you to use GRASP to make software classes? I could really use some alone-time practicing going from analysis to conception of software entities.
I'm almost done with Larman's book called "Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Third Edition". It's a good book, but I'm not doing anything by myself since it doesn't come with exercises.
I've been programming in OO for four years now in Java and C++. It was oriented on business applications. I've also spent 6 months on UML syntax in a crash course in college. It's just that I don't understand how they can expect me to define software entities from use cases into class diagrams if I've done like one or two in my life.