Create a z schema that adequately describes the wtc system

Assignment Help Software Engineering
Reference no: EM13839519

Question:

Prepare the solution as per the required criteria mentioned in the document, if you need any material please let me know.

Wheat Truck Control System (WTC)

As a Software Engineering consultant, your task is to develop a formal specification in Z for the following proposed system:

Wheat Truck Control System (WTC)

A new computerized system is to be developed for the storage and handling of accounts for wheat farmers and truck deliveries to Mahsroh Wheat Board silos. Detailed below are the major objects to be considered in the system: silos, ships, trucks and farmers. This system could be quite complicated. However, to simplify the system for this assignment we will be content to include the following in our proposed system:

Silos

The Board currently has ten (10) wheat silos around the country but the system must be written to seamlessly handle at least twice that number. Each silo has a unique name and storage capacity (in tonnes) that must be stored in the proposed system. In addition the system must maintain the current amount of wheat stored in the silo. Obviously when the silo is full no further deliveries of wheat can be made to that silo before some is off-loaded onto a ship for export overseas. Similarly a silo cannot off-load more wheat onto a ship than is currently stored. We will assume that when off-loading to a ship, no trucks can unload due to operational and safety considerations. Only one ship can be handled at a time at each silo.

We will assume that only one truck can unload into a particular silo at any one time. Therefore during busy times each silo also maintains a queue of trucks waiting to unload. Trucks should only be entered into the waiting queue when there is sufficient room for the wheat that the truck holds, i.e. you need to know that the current storage plus all the loads currently in the queue will not exceed the silos capacity.

Ships

The system will keep a record of all ships that have been registered to transport wheat overseas for the Wheat Board. The ships name, nationality and capacity (in tonnes) will be stored. The ship's captain can specify the amount of wheat to be off-loaded into the ship as long as it is less than the ships capacity and also the silos current amount in storage. The system will keep a record of the amount of wheat off-loaded to the ship and adjust the current storage appropriately.

Trucks

As each loaded truck arrives at the silo, it is weighed to ascertain the amount of wheat in the truck. The system maintains a list of registered trucks and their empty weight (in tonnes). Therefore, a single weighing is sufficient to determine the wheat load. If there is sufficient room in the silo then the wheat is off-loaded into the silo and a record is kept of the amount off-loaded against both the truck registration number and the farmer providing the wheat.

Date and Time

Normally we would maintain the date and time of each operation (truck delivery or ship off-loading) however to simplify this assignment we will ignore those aspects. Instead, we will keep a sequential count of each operation for each silo. Therefore, we will have a history of the order of truck unloading and ship off-loading operations that take place for each silo.

The system would be able to say for example, that silo HORSHAM_1, operation number 999 involved 25 tonne of wheat delivered by the truck registered TONKA owned by Jack Black from farmer Bob Smith. Then operation 1000 was an off-loading operation of 125,000 tonnes to the ship "Southern Aurora".

There is also a need to keep track of the operation order between silos, therefore we will keep a global sequential count of the operations at silos as well. See the following table for an example:

Global No  Silo  Count Operation Vehicle Name  Tonnes  Farmer  
...             
12336 HORSHAM_1  999 Load   TONKA   25 Smith, Bob 
12337 MELBOURNE 555 Load   DUPLO   20 Jones, Mark  
12338 HORSHAM_1  1000 Off-Load Southern Aurora  125,000  
12339 MELBOURNE 556 Load   LEGGO   50 Simons, Jill  
12340 HORSHAM_1  1001 Load   TONKA  25 Jones, Mark  
...   
     

Farmers

The system will maintain a record of each farmer supplying wheat to the silo. Details to be kept include the farmer's name, address and phone number.

Z Schema Operations

You are to create a Z schema that adequately describes the WTC system. It should include at least one state space and the following operations:

• An initialization operation called Init.

• An operation Enter_new_silo that an operator uses to enter the details of a new silo into the system. Assume the new silo is currently empty.

• An operation Accept_delivery that an operator uses to signal the system to begin off-loading x tonne of wheat from a truck. Note that the system must do a check to see if that storage capacity is available in the silo, if not then an error message must be output and no truck unloading done. Additional information needed by this routine is the truck registration and the farmer's name. If successful this operation stores all necessary details into the system for that delivery. If a truck is already unloading then this new truck will be placed in a queue waiting for its turn to unload.

• An operation Leave_queue. This operation is run by the system operator each time there is a queue for a silo and the driver of a specified truck decides that the anticipated waiting time is too long and leaves the queue. The operation outputs to the operator the list of trucks in the queue after the specified truck is removed or if none in the queue a reasonable error message.

• An operation Silo_account that outputs the total amount of wheat in tonnes delivered to a particular silo by ALL farmers in a specified time period (note that means between two global operations numbers in our simplified system). In other words between global operations 10000 and 10500 for example.

• An operation Ships_total_account that outputs the total amount of wheat that a particular ship has taken from ALL silos in the total history of the system.

• An operation Farmers_account that outputs the total amount of wheat delivered to ALL silos in between two specified global operation numbers (e.g. 10000 and 10500).

You should provide robust versions of each operation that are capable of handling any possible error conditions.

Reference no: EM13839519

Questions Cloud

What are the characteristics of perfect competition : What are the characteristics of perfect competition? Why does this type of fast-food restaurant tend to display characteristics of perfect competition? Imagine you are running a firm with the characteristics of a perfectly competitive firm. Describe ..
Under a situation of majority voting : How can a small special-interest group win, since the benefits flow only to a small group, under a situation of majority voting?
Prepare statement of financial performance for given period : Prepare the adjusted trial balance at 31 August 2005. Prepare statement of financial performance for the period ended 31 August 2005. Prepare statement of financial position as at 31 August 2005.
Opportunity to meet doug derito : If you had the opportunity to meet Doug DeRito, what five questions would you ask?
Create a z schema that adequately describes the wtc system : Prepare the solution as per the required criteria mentioned in the document, if you need any material please let me know - You are to create a Z schema that adequately describes the WTC system.
Explain why do corporations issue stock : Why do corporations issue stock. Why do investors buy that stock. What is the primary difference between common stock and preferred stock. Explain what dollar cost averaging is and why an investor would use the technique.
Real interest rate with his notation : In macroeconomics from williamson (4th edition) in chapter 11, it says that demand for credit is R=q (totally elastic), but in williamsons notation, R is in nominal terms and q in real terms. Isnt that mistaken? Shouldn’t it be r=q? (r=real interest ..
Human-level machine intelligence : It may be reasonable to believe that human-level machine intelligence has a fairy sizeable chance of being developed by mid-century, and that is has a non-trivial chance of being developed considerably sooner or much later;
Federal reserve had to resort to non-standard methods : The Federal Reserve had to resort to non-standard methods to try to stimulate the economy the last several years in part because:

Reviews

Write a Review

Software Engineering Questions & Answers

  Define erp and describe its functionalities

Define ERP and describe its functionalities. Describe ERP II systems. Differentiate between core ERP modules and extended ERP modules

  Nbspa full revolution press has 100 rpm flywheel rotation

nbspa full revolution press has 100 rpm flywheel rotation. the press is equipped with tow hand trip devices mounted on

  Beats number at output of first round of des decryption

Calculate the beats number 1, 16, 33, and 48 at output of first round of DES decryption, suppose that ciphertext block is composed of all ones.

  Up over the agile methodology for some projects

Please write about unified process vs. agile methodologies (1100 to 1300 words) Include when would it be unwise to use either of these methodologies? Would you consider using an Agile methodology such as Scrum or XP in one of your projects?

  Design the requires and the provides interfaces

Design the Requires and the Provides interfaces of at least two (2) components that might be used in a system in an emergency control room for a call-logging component that records calls made.

  Write the definition of the function max

Add the function max to the class arrayListType to return the largest element of the list. Also, write the definition of the function max and aprogram to test this function.

  Explain teaching hypervisor design and implementation

Teaching Hypervisor Design, Implementation, and Control to Undergraduate Computer Science and Computer Engineering Students

  Apply principles of coding to using software to code data

While hand-coding is one way to organize your data, you may also want to take advantage of software programs that facilitate the coding process. Apply principles of coding to using software to code data

  Decide on the types of accounting and financial records

decide on the types of accounting and financial records that rolando and rosa should and should not share with their

  Es attempt to create a level of lsquointimacy between the

es attempt to create a level of lsquointimacy between the company and its main suppliers and customers. explain what

  Program to calculate the average salary and years employed

Construct a program that determines how many consonants are in an entered string of fifty characters or less. Output the entered string and the number of consonants in the string.

  Planning and budgeting methods are notorious for their

question 1 planning and budgeting processes are notorious for their rigidity and irrelevance to management action. how

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd