Ship Cargo System D18124810 Software Engineering Today cargo shipment is constantly increasing industry which requires sufficient software to handle with different types of problems (loading/unloading,mooring operations, navigation, Machine Room sensors that check main engines and other mechanic equipment etc.) In my project, I tried to reproduce real life cargo managment system. Purpose Mostly this software will be used by qualified maritime specialists who one of main responsibilities is to calculate how many cargos a ship can load and transport from point A to point B. Also, the system must be monitored by an owner of the company and ship engineers to control and getting reports for company achieve. Term owner also includes any company office worker who is responsible to look after company’s ships. Examples what tasks can be achieved by user case: Owner wishes to check ship systems data by main application display data and if the owner wants to speak with any ship officer, he or she might use internal application chat or voice call. Also the Owner can access any ships where the application was installed. Deck Officer wants to calculate how much cargo a ship can take and calculate others ship data like ship stability with the cargo during the voyage, ship trim etc. Ship Engineers can monitor ship machinery by sensors. Still if something will happen with the equipment it has to be fix manually, thus this use case ir more about control and report to owner and captain about the situation and not about actually fixing it but in the future the sensors data might be used in other potencial application for engineers ( for example the sensor data can be saved and analyzed later by this application). High Level Description Comms via ship internal chat This use case is shared with all actors. Communication is implemented by online chat or voice call. In submenu users can see who online or offline, current conversations, chat and voice calls history is. Any user can add additional members to chat. Insert or delete loading parameters Deck Officer who is responsible for loading inserts cargo type (gas for tankers, containers for container ship or bulk cargo for bulk carriers) then sub menu appears where the officier inserts particular data like weight per unit,cargo frigability. Print Cargo plan Special button in main ship menu which can print data like cargo plan or calculation results. 3d Graphic Engine 3d graphic module which recreates a ship in 3d. After that it will mark all relevant to loading parts of the ship and let Deck Officer to manipulate with the cargo values. Ship hardware sensors Sub menu created for engineers to monitor ship machinery during the loading. Calculate a ship stability, trim, check if cargo is suitable for ship type After the officier inserted the data main perpose of the system happens. After complex math calculation on the main display will appear the result ( ship stability, time for loading, trim, etc) and 3d graphic modulation of the ship with capability to change the cargo position in the ships hold. Ship module will also show which part of the ship will be overloaded if the cargo will exidently move in the hold during the voyage. Extended step by step discription of the main flow Actor Action System Response 1 Deck Officer opens loading menu on the main 2 Sub menu opens and ready to get initial data. application screen for specific ship. 3 Deck Officer enter the cargo specific values size, 4 Loading menu accepts the data and try to weight etc and press calculate. calculate the result and send it to 3d engine and display menu. 4a If arithmetic error appears the program will ask to recheck the data and insert it again. 5 Deck Officer waits until 3d engine will process the data. 7 Deck Officer can manage cargo values, approve the cargo plan, or send it to an owner of approval 6 3d Engine recreates 3d module of the ship with cargo init. 6a if 3d engine error appears the program will show error code and how to deal with the error. 8 3d Engine will process any changes to cargo values by changing 3d module 8a Any error with loading such as too much cargo on any part of the hold might occur and Deck Officer has to fix it before the cargo plan approval Engineer controls flow Actor Action System Response 1 Engineer looks after engine room sensors. He or she opens the engine room sub menu in the application. 2 Menu shows sensors which will constanly changing values during loading operations. 2a If some sensons will show any number that is not usual and towards to critical point it will pop up the warning sign 4 Engineer opens the chat menu with option to make video call. 3 Engineer might contact Deck Officer to handle the problem with loading. If the problem is about machinery, Engineer should try to fix it inside engine room. 5 Engineer sends a message about the problem 7 Engineer gets the respond and order how to solve the problem 6 Chat notification pops up in the Deck Officer PC. 8 Both persons can print the report by Print afterwards Owner description Actor Action System response 1 Owner sends the cargo details to the Deck Officer PC via chat ( similar with Skype function) 2 Officer receive it and can make comments if needed ( notification will pop up) 3 Owner requests the approximate calculations from the Officer. 4 Insert or delete loading parameters use case 5 Officer sends the results back to the Owner to approval via chat 6 Owner choose which ship has the report and then analyze it Use case diagram