Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

SCEA Part 2 - Itinerary question

 
Frankie Fr
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,

i'm working on SCEA part 2 and i'm getting really confused.
I can't understand how the itinerary is created. I try to be clearer.

If i want to move from Rome to New York my itinerary would be (for example):

Rome -> London (Segment 1)
London -> New York (Segment 2)

How the system can know that i've to stop in london if i depart from rome to go to new york.
Should i investigate how the system work to find this 2 segments? Or i should simply assume that there's a component that gives to me the segments connecting two cities.
In other words, the connections n the time table is stored somewhere on the DB n i should access it or it is out of the exam this part?
Pls Help me!!!
Thx
F.
 
Ricardo Ferreira
Ranch Hand
Posts: 156
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Frankie Fr:
Hello,

i'm working on SCEA part 2 and i'm getting really confused.
I can't understand how the itinerary is created. I try to be clearer.

If i want to move from Rome to New York my itinerary would be (for example):

Rome -> London (Segment 1)
London -> New York (Segment 2)

How the system can know that i've to stop in london if i depart from rome to go to new york.
Should i investigate how the system work to find this 2 segments? Or i should simply assume that there's a component that gives to me the segments connecting two cities.
In other words, the connections n the time table is stored somewhere on the DB n i should access it or it is out of the exam this part?
Pls Help me!!!
Thx
F.


Hi Frankie,

You are able to supose that could exists an component (designed by you or legacy) that supply a number of flights pre-defined flights (London to S�o Paulo, New York to Italy).

So, the user just selects the flights. But, you need to build an component that create a designed list with a couple flights given a simple query like:

------------ "I'm here, and I want to go to There ..." --------------

This component will make the difference in you itinenary creation. In fact, the itinerary is only a composite object based on a set of aggregations fo each segment, and a reference to an customer.

Good Luck!
 
Thomas Taeger
Ranch Hand
Posts: 311
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Frankie,
Originally posted by Frankie Fr:
How the system can know that i've to stop in london if i depart from rome to go to new york.

Did you consider to store this knowledge in a table/entity?

Also remember the alternate flights. Maybe London is not the only possible airport (route) between departure and arrival city.

Thomas
 
Santiago Urrizola
Ranch Hand
Posts: 172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
think you have a component to ask the posibles alternatives to flight betwen two cities, for example:
the user input: New Your to Roma

Then you can ask to this component the alternatives and return:

Alternative 1 = New York, Roma
Alternative 2 = New York, London, Roma
Alternative 3 = New York, Estoril, Madrid, Roma
The user pick one of the alternatives, and yo find fligths with other (or the same) component betwen New york -> Longon ; London -> Roma, and each of one fligth forms the legs of the itinerary

You design the existence of this searcher compoenent but not the implementation, you design input and ouptput, interface. Some people (graph especialist, DBA, etc) implements them.

What you think ?
 
Thomas Taeger
Ranch Hand
Posts: 311
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Santiago,
your thoughts sound totally reasonable!

Originally posted by Santiago Urrizola:
You design the existence of this searcher compoenent but not the implementation, you design input and ouptput, interface.

What does it mean to design a component? It means to declare the method headers with their signatures (parameters, types, ...) within interfaces, allways taking care on loose coupling and high cohesision. That's all.

But on the other hand we can not just provide a component asserting that this will solve the requirement somehow.
We should
a) provide the these methods in interfaces (of components and classes) and
b) show the usage of these methods in Sequence diagrams, in UML 2 preferably (and mostly sufficiently) from interface to interface.


Originally posted by Santiago Urrizola:
Some people (graph especialist, DBA, etc) implements them.

Exactly.

Thomas
 
Frankie One Fr
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thx Guys.

I'm missing something. Let's suppose i've a component that i design by myself and this component gives to me the segment list connecting two cities, ex.

Rome -> London (Seg 1)
London -> NY (Seg 2)

Now, if i look at the BDM i notice there's just one to one relation between Segment and Flight, but at the same time, in the real life, there can be more than one flight for each segment.
So i'm wondering if the BDM diagram has to be applied when i find flights or just when the user has chosen its itinerary.

Thx again.
F. (I've changed my ID cos i lost my password!)
 
Thomas Taeger
Ranch Hand
Posts: 311
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Frankie One Fr:
Now, if i look at the BDM i notice there's just one to one relation between Segment and Flight, but at the same time, in the real life, there can be more than one flight for each segment.

Welcome in the club! Many people have noticed and stated that the BDM just is buggy, and corrected it, as you would do in real life.

This is one point where diversification of assignments starts - is enforced somehow.

You can find a lot of desperate discussions on this question in former posts, just use the Search link.

Thomas
[ June 11, 2006: Message edited by: Thomas Taeger ]
 
ravi janap
Ranch Hand
Posts: 389
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi

Some of my observations.

1. The assignment instructions clearly mentions that one need not have to explicitly specify the method signatures.

2. While saving the itinerary for a customer, you save the itinerary object that has many segments. Each segment has one and only one flight that the customer has selected. Each flight has many seats because a customer can book any number of seats (for himself and his family) on a flight.

Thanks

-- Ravi
[ June 11, 2006: Message edited by: Ravindra Janapareddy ]
 
Thomas Taeger
Ranch Hand
Posts: 311
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Ravindra Janapareddy:
1. The assignment instructions clearly mentions that one need not have to explicitly specify the method signatures.

If this is a note on "What does it mean to design a component? It means to declare the method headers with their signatures (parameters, types, ...) within interfaces, allways taking care on loose coupling and high cohesision." then you are right that signatures are not needed in the assignment.
I mentioned signatures with parameters and types in contrary to thinking in implementation that is even more unnessesary.
Additionally if the UML tool does well support reusing methods of and in Sequence diagrams (and Class diagrams) then I spend the few seconds for giving a signature. This helps to avoid failures in Sequence diagrams. But you are right, you need not.


Originally posted by Ravindra Janapareddy:
2. Each segment has one and only one flight

Yes, in Frankies model each segment is assigned to one and only one flight, but the other way around each flight may have multiple segments, i.e. 1:N, not 1:1. And he (like many others before) argued with a) real life data model and b) logic (1:1 would not make sense, we should merge both entities then - if not 1:N is needed and if not both entities are of different master/activity kind).


Originally posted by Ravindra Janapareddy:
Each flight has many seats because a customer can book any number of seats (for himself and his family) on a flight.

That sounds reasonable, although from the BDM the term "Flight" leaves open if it concernes master data (one Flight = an aeroplain having say 150 seats) or activity data (for 1 person and maybe the whole family, as you argue).

Thomas
 
Santiago Urrizola
Ranch Hand
Posts: 172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
2. Each segment has one and only one flight

For the company point of view this is true, a segment of an itinerary has only one fligt.
But to connect two cities there are a lot off posibles segmentes,
Dig any of you consider use of LEGs,

for example
Itinerat has leg and leg has one fligth (this is the itinerery chosen by a user)
And Segments are used by components to search posibles flights and presents posibles itinerys, this is how in the real life works.
What yo think ?
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic