Create a z schema that adequately describes the wtc system

Assignment Help Software Engineering
Reference no: EM131660987

Assignment: Software Engineering Methodologies

Overview

As a Software Engineering consultant, your task is to develop a formal specification in Z for the proposed system described below. You will present your work to show that your system does work and answer questions about the system specification your group has developed.

Details

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 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 offloaded 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. Refer to the table below as an example:

You will need to decide how to demonstrate that your system specification works and satisfies the client requirements. (You might wish to discuss your approach with your tutor.)

General Comments

The submission must be presented in a professional, clear and concise manner. If you need further system information please use your initiative and make reasonable and logical assumptions. Questions of a general nature (for example to clarify some part of the assignment requirements) can also be sent to the discussion forums, note these should not in any way give solutions or parts thereof. Similarly you are encouraged to ask questions about the Z specification language, it is not simple and no students will have encountered it before.

Requirements:

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. For example, if the ship or truck is not correctly registered in the system an appropriate error message must be given.

The submissions will be considered for presentation, conciseness and correctness (both logically and notationally). Versions of the operations that are developed using the Z Schema Calculus will be more highly considered than monolithic versions that account for all conditions within a single schema.

You should also add a narrative in the report to explain any schemas or logic that you have used. Schemas should be annotated. Authorship should be made clear.

You will be asked to explain and answer questions about your work in a presentation - which will be scheduled at a suitable time - in either labs or lecture.

Attachment:- Assignment-Software-Engineering-Methodologies.pdf

Reference no: EM131660987

Questions Cloud

Identify the professional fit for advanced nursing role : Identify the professional fit for advanced nursing role. Nurse Practitioner
Quickly and release gaseous : The reaction between HCl and NaHCO3 should take place quickly and release gaseous CO2.
Should icann action viewed as horizontal restraint of trade : The Internet Corporation for Assigned Names and Numbers (ICANN) is a nonprofit entity that organizes Internet domain names.
Implications of foreign law antitrust issues : Implications of Foreign Law Antitrust issues are not limited to domestic businesses doing business in the United States.
Create a z schema that adequately describes the wtc system : 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.
Define how do you define masculinity : How do you define masculinity. Are there sets of characteristics that must be displayed to be considered masculine
Define individual health history and examination assignment : Individual Health History and Examination Assignment, Document findings of complete physical examination in Situation-Background-Assessment-Recommendation
Discuss the sherman act : Sherman Act. An agreement that is blatantly and substantially anticompetitive is deemed a per se violation of Section 1 of the Sherman Act.
Have allitron and donovan violated any antitrust laws : Allitron and Donovan agree that Allitron will no longer sell in Indiana and Ohio and that Donovan will no longer sell in Illinois and Kentucky.

Reviews

Write a Review

Software Engineering Questions & Answers

  Understand the concept of methodologies

Explain why is it important to understand the concept of methodologies. If most companies do not use methodologies, why should you learn to use them?

  What makes software so important

List a number of ways that software has an impact on our life

  Write an international mini-plan for a company that

write an international mini-plan for a company that interests you or a productservice that you want to sell yourself.

  Explain synchronization problem

There is a one way bridge that can hold up to 3-cars. Cars reach at one end of bridge and exit the bridge at the other end.

  Find out by searching the web

What do you know about focused Linux distributions? If nothing, what can you find out by searching the Web? By "focused" we mean distributions that exist primarily for a specific purpose or set of tasks (e.g. security, penetration testing, backup,..

  Create a method called displayemployeeinformation

Create a method called displayEmployeeInformation that accepts an Employee object, provides an output header string, and then displays Employee information.

  Design user-s requirements specification for school

Design a user's requirements specification for the EasyDrive School of Motoring database system. Use a single major user view for the application (Director View)

  Why is the systems development life cycle important?

Why is the systems development life cycle important?

  Research the following financial off balance sheet

research the following financial off balance sheet instrumentsaforeign currency forwards exchange contract binterest

  Design an improved interactive password system

Design an improved interactive password system? Present your design and describe what kind of attacks your protocol can protect.

  Educational aspect of security information system

Educational Aspect of Security Information system security education has continued to be a challenging endeavor due to computer users not being motivated to learn how to maintain security

  The components of staffing recruitment selection and

the components of staffing recruitment selection and employment are important to the organization. discuss how the

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