Programming Assignment 1 Background Information Drilling for oil in the United States has become a high-tech industry. The oil production companies rely on a complex array of sensors on each drilling...

Programming Assignment 1 Background Information



Drilling for oil in the United States has become a high-tech industry. The oil production companies rely on a complex

array of sensors on each drilling rig to monitor the state of all operations. These sensors feed data to a server mounted on

the rig. The server is connected to a network which enables workers on the rig as well as managers back at the company

offices to monitor all aspects of the operations.

Your Assignment



You are to create a program that simulates the sensors on oil rigs. Following is a list of requirements based on a

preliminary discussion with representatives of Oilfield Instrumentation-USA (OI-USA)*. (Note: Your list of requirements

in the documentation shall expand on the list below. Just copying this list and calling it your requirements

is NOT acceptable.)

1. The application shall allow the user to select any number of wells from a list of active wells. At any time while the

application is running the user shall be able to add or remove wells from the selected list.

2. The application shall allow the user to select any number of sensors to monitor on each selected well. At any time

while the application is running the user shall be able to add or remove sensors being monitored for each selected

well.

3. All data defining the list of active wells and the sensors on each shall be read from a data file in a modified XML

format. A data parser class will be provided to read and parse the data file.

4. Sensor readings for all selected wells shall be printed on the screen at 5 second intervals.

5. In this version of the software, wells shall be identified by:

o The name of the company operating the well.

o A well ID in the format "nn-nnnn" where n is any digit in the range 0..9.

6. In this version of the software, possible sensors for each well shall include:

o Hole depth - Current depth of the drill hole measured in feet.

o Bit depth - Current location of the drill bit in the hole measured in feet. This is the same as hole depth

unless the bit is traveling, i.e. being removed or inserted.

o ROP (Rate of Penetration) - Rate at which the bit is drilling. This is measured in feet per hour of drilling

except when the bit is traveling when the reading displayed for this sensor is "Off Bottom", i.e. is not

currently drilling. o Pump pressure - This is the pressure in the pump which is pumping the mud (lubricant) down into and out

of the hole. This is measured in PSI (Pounds per Square Inch).

o Casing pressure - Pressure in the bit casing. This is measured in PSI.

o Flow out - Mud flow out of the bit casing. This is measured in percentage (%) of the maximum possible

flow.

o Torque Max - Maximum torque that can be applied to the bit. This is measured in kilo-footpounds (kflb).

o Mud Pit Volume - Volume of mud (used as a lubricant) available. This is measured in barrels abbreviated

as BBL. FYI: BBL as an abbreviation for barrel(s) is an old symbol. The double 'b' is thought to either

represent the plural "barrels" or to avoid confusion with the abbreviation "bl" which stood for "bales."

7. At 5 second intervals a report shall be printed on the screen giving the identifying information on each well being

monitored and the current readings of all selected sensors. This display shall continue until the application is

terminated unless the user is selecting wells to add to or remove from the list of monitored wells or selecting

sensors to add to or remove from the list of sensors for any monitored well.

8. This project shall be created as a Win-32 Console Application using the Microsoft Visual Studio compiler It

shall NOT use precompiled headers.

Deliverables



These products as specified below shall be delivered electronically via e-mail to the instructor.



Preliminary Class Diagram -- The class diagram shall be drawn using standard UML notation and shall show all of the

classes to be implemented in the software and their relationships (dependencies, associations, generalizations, realizations,

etc.) The PCD shall be submitted for instructor approval NLT (Not Later Than) Thursday, June 16.



Class Outline -- The class outline shall list all proposed variables and functions in each proposed class with a brief

description of what each does. The class outline shall be submitted for instructor approval NLT (Not Later Than) Tuesday,

June 27.



Functionality Outline -- The functionality outline shall be an outline which will show the step-by-step functionality of

the program. This should be taken out to a fair amount of detail. The functionality outline shall be submitted for instructor

approval NLT (Not Later Than) Thursday, June 30.



Final Project -- The entire Visual Studio solution (compatible with Microsoft Visual Studio 2012 or later) shall be

compressed into a zip file and submitted for instructor approval NLT Thursday, July 7. Just turning in your source files is

not acceptable.





We will have several class periods in which we will meet as a team to discuss and plan this project. We will be doing

a lot of brainstorming and planning together, but remember that each person is responsibility for implementing the

final design on their own.



To download a sample executable as well as a data file and a parser for the data, find them in the files sections on

canvas. To see a number of hints that may be useful for implementing this assignment, find them in the files sections

of the canvas page.
Jul 07, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions ยป

Submit New Assignment

Copy and Paste Your Assignment Here