• 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

Architecture of FBN

 
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
In the instruction, under Overall Architecture, it says that the application has 3 key parts:
1. The server-side database with network server functionality
2. The client-side graphical user interface
3. A client-side database that handles the networking on behalf of the user interface.
The second part is clear. Can any body (Balaji Sambandam ??) explain what 1 and 3 are and difference between them? Is the instruction telling me that I have to have two databases - one on the client side and another on the server side? If we have two databases then they should be identical and the application should assure the synchronization of the databases. Having two databases does not make sense to me.
Is this a 3 tier application? I can only see two tiers - Client side GUI and Data Server. If the database, flat file in our case, is itself considered as another layer then it becomes three tier.
Your explanations are appreciated.

Thank you.
Ramesh Kadur
 
Ranch Hand
Posts: 318
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I don't know if this is true or not. I'm getting ready to download the assignment in a week or two. From reading your question, the only unclear part, it seems is 3. I've read that you have to make your program be able to run across a network and/or run on the same computer. In that case, it seems like you'd write a client-side class that interfaces with the database and if they want it to run networking then it connects to the actual database through sockets or whatever and if not, then it accesses in our case the local file system. Did that make any sense at all?
With Respect,
Matt DeLacey
 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
My implementation includes
RMI server as data server which binds the Data class which in turn fetches the records from the datafile
RMI Remote interface as data client or we can write a separate data client which uses remote interface to establish RMI network.
GUI uses remote interface/data client class for network comm.
Give your opinion on the above architecture.
 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
1. The server-side database with network server functionality
This is the server program which handles all the database
coming from the clients (through data client program).
3. A client-side database program that handles the networking on behalf of the user interface.
This is the Data client program/class which is used by the
clients to do all the database operations.
Basically you will have to provide all the public methods
,you defined in the server program, in the DATACLIENT program as well.
DATACLIENT will be in the client side (i.e in the machine
where GUI is running). If GUI needs to any database operation
it will call DATACLIENT method and dataclient will in turn
call server methods.
The basic idea of having DATACLIENT is that it acts as
proxy server in the client side and if there are future changes in the server methods , we can tweak dataclient program
a bit so that GUI need not be altered.
Remember DATACLIENT acts as abridege for generic GUI programs
that need to perform database opertaions on the FLIGHT server database


Originally posted by Ramesh Kadur:
Hi,
In the instruction, under Overall Architecture, it says that the application has 3 key parts:
1. The server-side database with network server functionality
2. The client-side graphical user interface
3. A client-side database that handles the networking on behalf of the user interface.
The second part is clear. Can any body (Balaji Sambandam ??) explain what 1 and 3 are and difference between them? Is the instruction telling me that I have to have two databases - one on the client side and another on the server side? If we have two databases then they should be identical and the application should assure the synchronization of the databases. Having two databases does not make sense to me.
Is this a 3 tier application? I can only see two tiers - Client side GUI and Data Server. If the database, flat file in our case, is itself considered as another layer then it becomes three tier.
Your explanations are appreciated.

Thank you.
Ramesh Kadur


 
Ramesh Kadur
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Balaji Sambandam and Matt Delacey -
Thank you for your interpretation and it is very helpful to me.
Sanjeev Kumar-
Your design looks logical to me. I am also planning to use RMI.
Thanks again everybody.
Ramesh Kadur
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic