• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Some do's & don'ts

 
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi All,

First of all thanks to everyone in the forum for making my SCEA a success. I cleared Part 2 & 3. Though the score is less than 80. Since the socre is less, i went back to my solution to see if anything wrong.

I found that i missed to link payment and mileage account components in my class diagram eventhough i mentioned it in my assumtpions doc. So, i thought i share my submission details to other ranchers who are going to take up part II and III in the coming days.

It's just my experience and thoughts, not compulsory that everyone should follow.

1. Review your diagrams and documents before you submit for grading.
2. I never included swing application client components in any of the diagrams (class, component and sequence). Only in the Assumptions document i mentioned that travel agent is implemented as a swing client. So, i feel that it's better to include swing components in the diagrams as well so that person who is grading will be clear on how exactly the solution using swing clients is implemented.
3. I never included any packages in my component diagram. It's just a dump of all components connected to each other. I'm feeling that it's better to include packages as well in the component diagram.
4. I included only 4 sequence diagrams for the use cases mentioned in the assignment document and not for all, that too for web client only. I feel that it's better to include sequence diagrams for all use cases as many who scored high included sequence diagrams for all use cases.

I came to this conclusion after reading so many inputs from other ranchers in previous posts who scored good score.

It's only my thoghts. Thought will be helpful to other ranchers who are going to take up part II & III in future.

Thanks once again.
Laxmi
 
Ranch Hand
Posts: 295
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Laxmi,

A pass is still a pass - congrats to you!!
 
Ranch Hand
Posts: 39
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Laxmi,

Congrats!! And thanks for the tips. I am currently preparing the assignment (almost done). I will definetely keep them in mind before submitting.

How many component diagrams you had? I have 3 components for 3 modules to make the components clearer, and I have also divided them in tiers. Do you think that's Ok?

Did you include any package diagram in your assignment?

And for getting permissions from Sun before submitting, I sent a mail to SunCert@prometric.com but have not received any reply from them. How do I know if I have permissions?

Thanks,
Lokesh.
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I had just 1 component diagram. I included all components in it. I guess it's not the best way to do it. What you have followed seems much better than me. So, better keep as it is.

I didn't provide any package diagram but i provided deployment diagram and shown-in the respective protocols used for communication between them.

For your assignment upload, you will get a reply by 16th.

Again , all the very best to you.
Laxmi
 
Ranch Hand
Posts: 56
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congrats Laxmi. Great Job!
 
Sonal Ray
Ranch Hand
Posts: 56
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congrats Laxmi. Great Job!

I saw your SCEA Part II resources posting.

Now one small query. Have you followed any book eg: Core J2EE Pattern or would you suggest some book for Part II.
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I did follow some J2EE patterns in my assignment solution. I read it from Sun's web site.

http://java.sun.com/blueprints/corej2eepatterns/

U can read UML Distilled (don't know the author now) for information related to UML.

I followed Sun's latest pet store example.

Hope this information helps.
Laxmi
 
Sonal Ray
Ranch Hand
Posts: 56
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Laxmi Raghu:
I did follow some J2EE patterns in my assignment solution. I read it from Sun's web site.

http://java.sun.com/blueprints/corej2eepatterns/

U can read UML Distilled (don't know the author now) for information related to UML.

I followed Sun's latest pet store example.

Hope this information helps.
Laxmi




Thanks Laxmi.

 
Lokesh Rai
Ranch Hand
Posts: 39
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Laxmi,

What was the breakup of your score (individual diagrams), if you don't mind?

And I guess I'll wait more for Sun's email for upload permissions.

Lokesh
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here is my score and breakup on diagrams.

Grade: P
Score: 76
Comment: This report shows the total points that could have been awarded in each section and the actual amount of points you were awarded. This information is provided in order to give you feedback on your relative strengths on a section basis. The maximum number of points you could have received is 100, minimum to pass is 70.
Class Diagram (44 maximum) .......................... 36
Component Diagram (44 maximum) ...................... 30 Sequence/Collaboration Diagrams (12 maximum) ........ 10

For your assignment upload problems, send a mail to the following email id.

"SunCert," <SunCert@thomson.com>

Person Name is Shareon. U will surely get a reply within a day.

All the best to you.
Laxmi
 
Ranch Hand
Posts: 98
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congrats Laxmi!!!
Can you please tell me how many classes you put it in your class diagram?
Upto what level you draw the class diagram?
Did you change the context or associations from BDOM?
How did you address qos like security,performance,etc.

Thanks
vaidya
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
*****************Can you please tell me how many classes you put it in your class diagram?
Upto what level you draw the class diagram?
Did you change the context or associations from BDOM?
How did you address qos like security,performance,etc. *************

I had around 20 classes in my class diagram. I didn't change the BDM except associations. I made customer as a composite entity. U can find more details here.

http://java.sun.com/blueprints/patterns/CompositeEntity.html

I provided a deployment diagram in my submission that showed what are the protocols used by web and application clients. For example web clients interacted with web servers throught HTTPS where as swing clients used RMI-IIOP to access the middle layer.

To address the performance i did the following:

1. Used stateless session bean whereever possible. It's light weight compared to stateful and entity beans. That way it will boost performance.

2. Used session facade whereever applicable. Session Facade is a design pattern to access the Entity bean through local interface than accessing directly. It increases the performance over the network.

3. Use of an application framework is assumed. Large applications often benefit from an MVC application framework. I've used Web application framework that is shipped with the sample application with J2EE.

These are the things i remember currently. Hope this information helps.
 
Ranch Hand
Posts: 94
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations!!

Vijay
 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Nice one Laxmi.

Can I ask how you handled or your opinion with regard to the associations between Itinerary segment and flight. In my design I am taking segment to be a simple itinerary line item that a customer creates and not the alternative meaning - a segment is a trip between two cities... as if I follow this approach I need to have an addition concept and association between itinerary etc to track a seat reservation which kind of makes the assocation itinerary and segment redundant.
Thanks

Jesse
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
************
Can I ask how you handled or your opinion with regard to the associations between Itinerary segment and flight. In my design I am taking segment to be a simple itinerary line item that a customer creates and not the alternative meaning - a segment is a trip between two cities... as if I follow this approach I need to have an addition concept and association between itinerary etc to track a seat reservation which kind of makes the assocation itinerary and segment redundant.
****************

I didn't change anything between itinerary and segment from BDM. Only thing i changed were related to Customer which i made as a composite entity. Even i assumed segment as a line item of itinerary.
 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Laxmi, Congratulations!! Score is not bad at all. You did a great job of giving pointers to the others based on your experience.

Thanks a lot
Suman.
 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Laxmi,

Did you include the Mileage Account in your Class Diagram? It's of no use as FBN will interact with the Frequent Flyer System directly. My understanding is that it should not be included, but that would mean changing the BDOM. On the other hand, I cann't justify why I should include it in class diagram.

How did u handle this ?

Thanks,
BDeb
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
***********
Did you include the Mileage Account in your Class Diagram? It's of no use as FBN will interact with the Frequent Flyer System directly. My understanding is that it should not be included, but that would mean changing the BDOM. On the other hand, I cann't justify why I should include it in class diagram.

How did u handle this ?
*************

Yes. I included Mileage account in my class diagram eventhough i forgot to link payment and mileage account.

Mileage account is the logical representation of mileage points earned by the customer on performing a journey. This can be utilized for subsequent travels that he is going to perform provided enough mileage points are available. On performing journey for the first time, mileage will be earned and will be added to the mileage account. On the subsequent journey either he can use mileage earned earlier or pay by credit card. If he chooses to use mileage points, then the required number of mileage points will be deducted from his mileage account. However, if he chooses to pay by credit card, then earned mileage points will be added to his mileage account. So, it's one of the key class that will be utilized by the Customer while paying for his journey.

Please don't ever remove it from DBM. I read one earlier post where the candidate failed b'coz one of the reason was he removed the Mileage Account from BDM. I don't know the thread now. U can search if you need further info on that.

U think carefully youtself and understand how it's linked to other classes in the BDOM and associate it accordingly.

Get other's views as well.

All the very best to you!!
Laxmi
 
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congreats Laxmi.

There is lot of discussion/confusion about the version of EJB to be used in part 2. Which version you used in your assignment Ejb1.1 or 2.0?

Parag
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I used EJB 2.0 features eventhough i didn't explicitly metioned which version of EJB i'm following. It shouldn't matter as far as your architecture fits to any technology that is being used.
 
Jesse Jesse
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Laxi.

Just one more question, you say

I didn't change anything between itinerary and segment from BDM. Only thing i changed were related to Customer which i made as a composite entity. Even i assumed segment as a line item of itinerary.



So if you left segment as a one to one association with flight would I be right in saying that your segment concept contained the arrival and departure city and that you needed to introduce an additonal concept between itinerary and equipment to track a seat reservation. This is a part of the assignment that I find confusing given that I would move arrival and depature city to a flight description object and change the segment and flight association to 0..* - 1

Thanks in advance

Jesse
 
Parag Bharambe
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Laxmi.
The reason I asked for ejb version is that in Part 1 only EJB 1.1 is used not ejb 2.0. So I thought of getting clarification from experts. My understaning was that I can use only 1.1 version.

Which feature of ejb 2.0 you used (local beans/mdb)??

THanks,
Parag
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
**********
So if you left segment as a one to one association with flight would I be right in saying that your segment concept contained the arrival and departure city and that you needed to introduce an additonal concept between itinerary and equipment to track a seat reservation. This is a part of the assignment that I find confusing given that I would move arrival and depature city to a flight description object and change the segment and flight association to 0..* - 1
************

I assumed this way.

Segement and flight associated as 1 ... 1. One segement belongs to 1 flight. 1 Flight belongs to 1 equipment. 1 equipment contains 1 ... n number of seats.

An itinerary contains one or more segments. Each segment has the origin and destination. Origin and destination of the entire journey is : origin of first segment and destination of last segment.

For ex: if a person is travelling from A -> D, origin is A and destination is D.

It has 3 segments.

1st segment - A ---> B (having seat no. s1)
2nd Segment - B ---> C (having seat no. s2)
3rd Segment - C ---> D (having seat no. s3)

So, each segment has origin and destnation information. Flight will have information like Flight No, Type of aircraft, seating capacity etc..

Parag, i used local interfaces in my design. I didn't use MDBs.
 
Ranch Hand
Posts: 149
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
>Segement and flight associated as 1 ... 1. One segement belongs to 1 flight.

I believe it should be: Segment 0..* - 1 Flight. Each segment corresponds to exactly one flight, but one flight can have many segments.
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
--------------------------------------------------------------------------------
>Segement and flight associated as 1 ... 1. One segement belongs to 1 flight.

I believe it should be: Segment 0..* - 1 Flight. Each segment corresponds to exactly one flight, but one flight can have many segments.
-----------

Here flight has two meanings. One from customer point of view where a flight means an air transportation which takes him from origin to destination.

Flight has another meaning from architect's point of view where flight is the air transportation between two points not necessarily between origin and destination.

For ex: travelling from A -> C with a stop over at B, there will be two segemnts for a single journey.

A - > b
b - > c.

Since architect defined flight as means of transportation between two points, a - > b is served by 1 flight and b -> c is served by 1 flight, eventhough flight used between points a to b and b to c are same.

So, the association remains 1 ... 1 between segment and flight.
 
Parag Bharambe
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Laxmi,
How did you handle allocating seats? Have you allocated the seat number at the time of booking OR seats are allocated at the time of check-in?

Can I change the requirement mentioned in requirement document and mention the reason in assumption section?
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I assumed that seats are allocated during booking. But no particular seat number is assigned during booking. As the seats are booked in particular class (first class or cabin), i keep on deducting the number of seats in that class for a particular flight. When there are no more seats available, it will throw exception saying that the flight is fully booked.

I didn't mention in my assignment solution when the seats are assigned to customer. Just only booking i handled.

One thing you can assume is : after seats are booked, the particular seat will be assigned to customers based on first come , first serve basis during check-in. So, first come customers will get their preferred seat (aisle or window) and last arrived customers will have no choice but to choose from available seats.
 
Ranch Hand
Posts: 210
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Laxmi; you say that you forgot to make the link from MileageAccount to "payment" in you class diagram. Can you explain what you mean by this ?
Thanks.
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
********
Laxmi; you say that you forgot to make the link from MileageAccount to "payment" in you class diagram. Can you explain what you mean by this ?
********

I had a class called 'Payment' for paying the ticketing expenses. As per the specs given, ticketing expenses can be paid either by credit card or by using mileage points earned.

'MileageAccount' is another class which holds mileage earned as one of its attribute. Since payment can be done either by credit card or by mileage points, payment calss should linked to (connected to) both credit card class and mileage account class.

Hope i'm clear in explaining this.
 
Parag Bharambe
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Laxmi,

You mentioned " I assumed that seats are allocated during booking. But no particular seat number is assigned during booking�.

But requirement says that System respond with seats availability and then customer select seat.

So does it not a change in requirement?

Parag
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
***************
You mentioned " I assumed that seats are allocated during booking. But no particular seat number is assigned during booking�.

But requirement says that System respond with seats availability and then customer select seat.

So does it not a change in requirement?
**************

Yes. I assumed seats are allocated durng booking. But no particular seat is assigned during booking.

What i understood by 'system responds with seats availability' is whether seats are available in that particular class (first class or coach).

May be, now i feel that i didn't stick to requirements. I assumed the real case scenario wherein only seats allocated during booking and particular seat is assigned during check-in.

As far as what i read from previous posts, it's not advisable to change the requirements. In case, if you do so, you should provide proper justification for that.

So, please do take other's views as well.
 
Jim Janssens
Ranch Hand
Posts: 210
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Laxmi Raghu:
********
Laxmi; you say that you forgot to make the link from MileageAccount to "payment" in you class diagram. Can you explain what you mean by this ?
********

I had a class called 'Payment' for paying the ticketing expenses. As per the specs given, ticketing expenses can be paid either by credit card or by using mileage points earned.

'MileageAccount' is another class which holds mileage earned as one of its attribute. Since payment can be done either by credit card or by mileage points, payment calss should linked to (connected to) both credit card class and mileage account class.

Hope i'm clear in explaining this.




Ok, I understand.

What I'm still wondering however, did you have an assocication or a dependency between payment and MileageAccount/CC ? For me the link would be a dependency. The "payment" class would only uses information from the MA/CC class...
[ January 30, 2006: Message edited by: Koen Serneels ]
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
***********
What I'm still wondering however, did you have an assocication or a dependency between payment and MileageAccount/CC ? For me the link would be a dependency. The "payment" class would only uses information from the MA/CC class...
***********

Yes ... there is an association between 'payment' and MileageAccount/CC class. CreditCard can be used to pay for travel expenses in single transaction or multiple transactions. So, i used 1..* association between Payment and CC whereas Payment and MileageAccount is associated 1 ... 1.

What i mean by 'link' is a simple line of association connecting between MileageAccount and Payment class.
 
Laxmi Raghu
Ranch Hand
Posts: 218
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
***********
What I'm still wondering however, did you have an assocication or a dependency between payment and MileageAccount/CC ? For me the link would be a dependency. The "payment" class would only uses information from the MA/CC class...
***********

Yes ... there is an association between 'payment' and MileageAccount/CC class. CreditCard can be used to pay for travel expenses in single transaction or multiple transactions. So, i used 1..* association between Payment and CC whereas Payment and MileageAccount is associated 1 ... 1.

What i mean by 'link' is a simple line of association connecting between MileageAccount and Payment class.
 
Parag Bharambe
Ranch Hand
Posts: 57
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Laxmi I have two small questions.

Break journey:

A customer can travel directly from city A to city B OR he can travel to from A to C and C-B.

In your assignment have to consider break journey options (A-C and C-B)?

Composite Entity:
I see Customer and Itinerary have composition relationship (Customer holds Itinerary object). Have you shown the same relations between Customer and Itinerary in your assignment?
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic