Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

Assignment - Three Layer Architecture

Description - In this assignment you are to design your 3-layer architecture. The top layer will consist of:

  • The console user interface which you already have.
  • A graphical user interface (GUI) which you will need to build.

The middle layer is the control layer where your business rules are placed. There will be little for you in this layer because we don't have a number of business rules. So most of the requirements for the control layer will be simply to ensure the command from the UI layer is valid under the current application state and pass the work on to the appropriate model (data) layer.

The third layer is the model (data) layer. This layer contains the code that is specifically designed for data manipulation. For example, you may write out the data for a surgeon as the "Person" portion in a personrec.txt file while the Doctor portion of the properties get written to a doctorrec.txt file. Finally the specific surgeon properties may get written to a surgeonrec.txt file. When a surgeon is selected for display on the user interface, the control layer may request the surgeon data from the model layer, but the model layer will need to reassemble the data from three different files. That is the responsibility of the model layer.

Deliverables -

GUI Layouts - The most dramatic design will be the GUI.

State Change Models (SCM) - Each GUI window or function group should have a SCM associated with it. These models will be very simple. What I want to see is the major events that require response.

GUI Behavior Descriptions - Each GUI window should have a text-based description (scenario) of how a typical use would look like. For example, in the above window, it might be:

  • Enter patient name in name field; health number in health number field
  • If patient doesn't exist, a panel will display "That patient not found" and fields will be cleared
  • Select doctor from the drop-down list
  • Press cancel to not save and exit screen
  • Press save to commit data and exit screen

Of course you need to provide your own specification.

Control Layer Class: The control layer behavior have no visual component. The control layer is responsible for how the model objects interact. For example, the model layer contains the classes which define the ward, bed, patient, doctor, etc. However it is the control layer that interacts with these model layer objects to get thing done. So the control layer contains the references to all wards, patients and doctors.

Model Layer Classes: The Model layer behavior have no visual component. The model layer is responsible for actual definition and creation of objects in the model. For example, the model layer contains the classes which define the ward, bed, patient, doctor, etc. The control layer will manipulate the model layer for purposes of creating a patient, obtaining an empty bed in a ward and assigning a doctor to the patient. The model layer contains the object classes but do not drive the application. The model layer is responsible for things like writing the persistent data of each model object to permanent storage and reading it back again when the app is restarted at some later time. NOTE: Except for the persistent data component, your class models from the previous assignment should work without any changes. If you find you are making major changes to the model classes, you may be incorrectly dividing the responsibilities of the layers.

Specifications for the Application -

We aren't going to change the behavior of the application at this point. So here is the basic menu from the previous assignment:

1. quit

2. add a new patient to the system

3. add a new doctor to the system

4. assign a doctor to a patient

5. display the empty beds of the ward as a list of bed labels with purpose

6. assign a patient a bed of a particular

7. release a patient

8. drop doctor-patient association

In your control and model layers, you will provide the functionality necessary for the application to perform correctly. We will quickly go through each option.

Attachment:- Assignment File.rar

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M92859834

Have any Question?


Related Questions in Computer Engineering

Question suppose a computer using set associative cache has

Question : Suppose a computer using set associative cache has 2^16 words of main memory and a cache of 128 blocks, and each cache block contains 8 words. Show steps, please type. a. If this cache is 2-way set associative ...

Systems analysis and design projectpersonal trainer inc

Systems Analysis and design project Personal Trainer, Inc. owns and operates fitness centers in a dozen Midwestern cities. The centers have done well, and the company is planning an international expansion by opening a n ...

In a survey of 3236 adults 1470 say they have started

In a survey of 3236 adults, 1470 say they have started paying bills online in the last year. Construct a? 99% confidence interval for the population proportion. Interpret the results.

A balloon has 050 mol ar at 175 k 0997 atm and 0775 l if

A balloon has 0.50 mol Ar at 175 K, 0.997 atm and 0.775 L. If the moles are doubled and the temperature dropped to 115 K at constant pressure, what would the volume (in L) be?

As the school year begins what trends are taking place with

As the school year begins, what trends are taking place with Educational Technology in schools?

Create a class named horse that contains data fields for

Create a class named Horse that contains data fields for the name, color, and birth year. Include get and set methods for these fields. Next, create a subclass named RaceHorse, which contains an additional field that hol ...

Can someone please code this simple background subtraction

can someone please code this simple background subtraction but with height and width ratio to detect a human being. Please! I so badly need it for my dissertation,, cant make a loop that would subtract the every frame fr ...

What is the prupose of adding nahco3 solution to dissolve

What is the prupose of adding NaHCO3 solution to dissolve the crude products in refinning process (Chemistry)

Please help with anbspfunctionnbspcodesymbol to convert

Please help with a function  codeSymbol , to convert each mark to a symbol (A, B, C, D, E, F) and a code (7,6,5,4,3,2,1) according to the table below. And call it in the main function. Use the table below to determine th ...

When talking about economics and the history of it for the

When talking about Economics and the history of it. For the past recessions the U.S. has had, do we look at it mostly on the loan side of the banks or what causes most recessions?

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As