Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

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.

share|improve this question
2  
what are you having trouble with? if its just creating UML from descriptions of a proposed project don't worry, the real world doesn't care about creating valid UML from that. the real world only cares about having accurate and understandable documents. –  Ryathal Jun 21 '12 at 13:25
1  
    
Well, 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. –  Pat Jun 21 '12 at 14:15

2 Answers 2

up vote 3 down vote accepted

Here are some suggestions:

1-Talk to your professor, he may suggest proven material

2-Understand the basics of OO (what is an object, what is inheritance, etc.) first before you get to do OO design.

3-Try to write some simple business-like programs using what you learned in (2). Forget algorithms, etc. focus on business concepts such as Order, Customer, etc.

4-Get an introductory text on UML. Consider a business book such as "UML™ for the IT Business Analyst: A Practical Guide to Object-Oriented Requirements Gathering", review at: Link

5-Try to create a class diagram of businesses you are familiar with. For example, Restaurant Invoice, Customer Complaint, etc.

6-Go to more focused books on database design (to get the ERD) and on Use Cases.

Learning is an ongoing endeavor, don't give up.

share|improve this answer
    
I've been programming in OO for four years now in Java and C++. It was oriented on business applications so I'm pretty sure I'm covering the first 3 points. 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. Sorry if I hadn't specified it. I will have a talk with my teacher this week, thanks. –  Pat Jun 21 '12 at 14:45
    
I am a bit surprised at your case. If you have all this experience, I can't figure out what your problem is. Take the example of a use case like "Customer opens savings account at branch" - Can't you tell what entities are involved here? We have Account, SavingsAccount, Customer, Bank, BankBranch and BankEmployee. Now we draw associations between them and 80% of the task is done. –  Emmad Kareem Jun 21 '12 at 16:57

here is a page with some video notes on it. This is my web server/page that I made to access the books content after my class subscription expired with person. There are other sections on that page and the appendixes are a good place to look.

Appendix G is on Flow Charting.

The missing ones are in the book so I can't help there but I do not think they relate anyway.

http://opccnet.org/cpp/gaddis/video/index.php

P.S. It is not up 100% of the time but about 95% so if it does not go threw give it a night and it should be good.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.