I failed on my assignment, and the feedback was "Missing EJBs/explanation, iMissing DAOs/integration classes referenced on other diagrams, also missing interfaces to external systems".
1. I have seen both pros and cons for showing DAOs in class diagrams. Since I've shown it in the component diagram (without any complaints!), should I either remove it from the component diagram, or add it to the class diagram?
2. What could be missing about the EJBs? I annotated each EJB with @EJB, what else?
3. How should external systems be shown in a class diagram? Using Subsystem or package UML symbol?
4. EJB and interface: Should I show both interface and EJB (implementation) with public methods in class diagram?
This is so strange I also got the same comments "Missing EJBs/explanation" maybe same instructor looking for something specific details. I am also not sure maybe someone from the forum shed some light?
As the instruction in the assignment says, you will need to use Java/JEE components in design. So best choice for business tier would be EJBs and for intergration tier would be DAOs specifically for communication to external systems.
For DB, its at your own discretion/ design choice.
Your architecture should be N-Tier based clearly calling out the JEE components being used in the individual tiers, using design patterns as best/standard practices. As far as possible, try to follow n-tier architecture in all diagrams including class,component,deployment and sequence.
In addition to the above, I have provided notes for all diagrams and extensive explanation on sequence diagrams depicting detailed technical flow for each use case, ie. one sequence diagram per use case ( as per cade and humphery sheil suggestion in chapter 9 of their book )
Not showing interfaces for EJBs shouldn't be a problem...
You can use UML stereotypes or annotations to show Session Beans. But, its important to show whether they are Stateless or Stateful - this can also be shown via annotations or stereotypes.
I had shown what beans are stateless and entity using stereotype. Not sure then what else was missing, I didn't use DAO as I mentioned I would be using JPA/POJOs/entity beans would be used. The only thing I would imagine I was missing was the interfaces for the SessionBeans... any other clues would be helpful.
pie. tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop