1. Homepage
  2. Programming
  3. IE5600 Applied Programming for Industrial Systems - Assignment 2 - PyWarehouse

IE5600 Applied Programming for Industrial Systems - Assignment 2 - PyWarehouse

Engage in a Conversation
NUSIE5600Applied Programming for Industrial SystemsPyWarehousePython

IE5600 – Applied Programming for Industrial Systems CourseNana.COM

IE5600 – Applied Programming for Industrial Systems CourseNana.COM

AY 2023/24 Semester 2 Individual Assignment 2 - PyWarehouse CourseNana.COM

Objectives CourseNana.COM

At the completion of the individual assignment, you should: CourseNana.COM

  1. Develop a better understanding of how to apply the computational problem solving process to a complex problem that requires the use of appropriate data structures and algorithms. CourseNana.COM

  2. Implement procedural and object-oriented programming paradigms in Python. CourseNana.COM

  3. Apply appropriate user-defined data structures and algorithms. CourseNana.COM

General Requirements CourseNana.COM

You are required to develop a Python program known as PyWarehouse which is essentially a warehouse management system for a typical manufacturing and import/export company. PyWarehouse will manage the storage locations in the warehouse, the inventory items stored in the storage locations as well as the inbound and outbound movement of these inventory items. CourseNana.COM

Figure 1 shows a layout plan of a typical warehouse divided into several zones such as reception, loading & unloading, picking and storage. As illustrated in the layout plan, the storage zone is further organised into multiple storage racks. CourseNana.COM

Figure 2 shows a hypothetical layout plan based on Figure 1 which will constitute the actual warehouse that PyWarehouse would be managing. In this hypothetical layout plan, the storage racks are numbered sequentially with the odd numbered racks on one side and the even numbered racks on the other side. CourseNana.COM

Each storage rack is further divided into one or more levels of storage spaces known as shelves. Each storage shelf can be further divided into one or more compartments known as storage bins. Each storage bin is characterised by various key parameters such as length, width, depth, volumetric space, and load capacity. Refer to Figure 3 for a three-dimensional view of a typical storage rack. An inventory item may only be allocated to a storage bin of sufficient volumetric space and adequate load capacity. In addition, no part of the item should protrude out of the storage bin, i.e., the length CourseNana.COM


Figure 1 – Layout plan of a typical warehouse. CourseNana.COM

Picking, Putaway, Packing CourseNana.COM

Forklift Parking X CourseNana.COM

Loading & Unloading CourseNana.COM

Reception CourseNana.COM

Figure 2 – Hypothetical layout plan of PyWarehouse. CourseNana.COM

Bin 2
Bin 3
CourseNana.COM

Depth Width CourseNana.COM

Length CourseNana.COM

Figure 3 – Three-dimensional view of a typical storage rack (with numbering of rack, shelves and bins). CourseNana.COM

In general, the load capacity of a storage bin will remain the same or decrease as the shelf level increases in order to maintain the overall stability of the storage rack. In other words, heavier items should be stored on lower storage shelves. If a storage bin is shared among multiple items, it is necessary to check that the odd-shaped volumetric space remaining is sufficient and a heavier item is not stacked on top of a lighter item. See the two examples depicted in Figure 4. CourseNana.COM

Figure 4 – Sharing of storage bins by multiple items. CourseNana.COM

Rack 1 Shelf 2 Bin 2 CourseNana.COM

Remaining odd-shaped volumetric space CourseNana.COM

Bin 1 CourseNana.COM

Existing Item CourseNana.COM

New Item that is lighter weigh CourseNana.COM

Bin 2 CourseNana.COM

Existing Item CourseNana.COM

Design and Implementation of Classes CourseNana.COM

Design a set of suitable classes together with the necessary inheritance and/or association relationships to represent the warehouse shown in Figure 2 that PyWarehouse would be managing. You do not need to draw a UML class diagram as part of the deliverable submission. You are only required to define the classes in a Python module and import this module for use in the actual PyWarehouse program. CourseNana.COM

You need to take into consideration that each storage rack consists of multiple storage shelves and each shelf is further divided into multiple storage bins as shown in Figure 3 and 4. CourseNana.COM

In addition, the classes also need to be able to represent inventory items that are stored in the warehouse. For simplicity, PyWarehouse is only required to track inventory items in broad lot quantity that are packaged in carton boxes or pallets. In other words, each unit of an inventory item manifest as a single carton box or pallet stored at a particular storage bin. CourseNana.COM

  • SKU Code – MASK CourseNana.COM

  • Name – COVID-19 3-Ply Face Mask (100 Boxes) CourseNana.COM

  • Dimensions (LxWxD) – 100 cm x 100 cm x 100 cm CourseNana.COM

  • Volumetric Space – 1,000,000 cm3 CourseNana.COM

  • Weight – 20 kg CourseNana.COM

  • Quantity – 10: CourseNana.COM

    o 1 – Rack 1 Shelf 1 Bin 1 o 2 – Rack 1 Shelf 1 Bin 1 o 3 – Rack 1 Shelf 1 Bin 2 o 4 – Rack 1 Shelf 1 Bin 2 o 5 – Rack 1 Shelf 1 Bin 3 o 6 – Rack 1 Shelf 1 Bin 3 o 7 – Rack 1 Shelf 2 Bin 1 o 8 – Rack 1 Shelf 2 Bin 1 o 9 – Rack 1 Shelf 2 Bin 2 o 10 – Rack 1 Shelf 2 Bin 2 CourseNana.COM

    It is mandatory to apply the object-oriented programming paradigm to this assignment. Otherwise, you would only be awarded 50% of the marks for the use cases. CourseNana.COM

Use Cases CourseNana.COM

Use the classes that you have defined to implement the following use cases for PyWarehouse without the use of any Python modules. In other words, your program should NOT contain any import statement unless you are importing your own user-defined module(s). CourseNana.COM

Use Case CourseNana.COM

Use Case Description/Business Rules CourseNana.COM

Create Storage Rack (2 marks) CourseNana.COM

  • Create a new storage rack in the warehouse. CourseNana.COM

  • You may assume that all storage bins in a rack has the CourseNana.COM

    same parameters. CourseNana.COM

    Sample Input:
    Rack Number – 1
    Number of shelves – 3
    Number of bins per shelf – 3
    Bin Length – 200 cm
    Bin Width – 200 cm
    Bin Depth – 200 cm
    Computed Volumetric Space for each Bin – CourseNana.COM

    8,000,000 cm3
    Bin Load Capacity – 50 kg CourseNana.COM

    Sample Output: CourseNana.COM

Created the following storage bins: CourseNana.COM

o Rack 1 Shelf 1 Bin 1 o Rack 1 Shelf 1 Bin 2 o Rack 1 Shelf 1 Bin 3 o... CourseNana.COM

o Rack 1 Shelf 3 Bin 3 CourseNana.COM

Create Inventory Item (1 marks) CourseNana.COM

Create a new inventory item record. CourseNana.COM

Sample Input:
SKU Code – MASK
Name – COVID-19 3-Ply Face Mask (100 Boxes) Length – 100 cm
Width – 100 cm
Depth – 100 cm
Computed Volumetric Space for each Unit – CourseNana.COM

1,000,000 cm3 Weight – 20 kg CourseNana.COM

Tan Wee Kek, tanwk@comp.nus.edu.sg 5 CourseNana.COM

IE5600 – Applied Programming for Industrial Systems CourseNana.COM

Use Case CourseNana.COM

Use Case Description/Business Rules CourseNana.COM

Add Inventory (4 marks) CourseNana.COM

Use Case CourseNana.COM

Use Case Description/Business Rules CourseNana.COM

Remove Inventory (1 mark) CourseNana.COM

Query Inventory Item (1 mark) CourseNana.COM

SKU Code – MASK CourseNana.COM

Sample Output:
SKU Code – MASK
Name – COVID-19 3-Ply Face Mask (100 Boxes) Dimensions (LxWxD) – 100 cm x 100 cm x 100 CourseNana.COM

cm
Computed Volumetric Space for each Unit – CourseNana.COM

1,000,000 cm3
Weight – 20 kg
Quantity On Hand – 1 CourseNana.COM

o 1 – Rack 1 Shelf 1 Bin 1 CourseNana.COM

Note that in use case 3, we added 2 units of MASK to Rack 1 Shelf 1 Bin 1 and in use case 4 we removed 1 unit of MASK. CourseNana.COM

Use Case CourseNana.COM

Use Case Description/Business Rules CourseNana.COM

Query Storage Bin (1 mark) CourseNana.COM

o 1 – MASK CourseNana.COM

Note that in use case 3, we added 2 units of MASK to Rack 1 Shelf 1 Bin 1 and in use case 4 we removed 1 unit of MASK. CourseNana.COM

Deliverable Submission CourseNana.COM

The assignment deliverable to be submitted to the Canvas Assignment tool are to be placed in a single zip archive file with the following folders structure: CourseNana.COM

source subfolder containing:
o All Python source files that constitute your program.
o The main source file containing the program entry point should be named as CourseNana.COM

pywarehouse.py, i.e., your program should be runnable with the command CourseNana.COM

           python pywarehouse.py

Upload this zip archive file to the designated Canvas Assignment: Individual Assignment 2. CourseNana.COM

Your deliverables must be submitted latest by Sunday, 26 November 2023, 11:59 pm. No assignment will be accepted for assessment after this date/time and you will be awarded 0 marks. CourseNana.COM

-- End of Assignment Specification -- CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
NUS代写,IE5600代写,Applied Programming for Industrial Systems代写,PyWarehouse代写,Python代写,NUS代编,IE5600代编,Applied Programming for Industrial Systems代编,PyWarehouse代编,Python代编,NUS代考,IE5600代考,Applied Programming for Industrial Systems代考,PyWarehouse代考,Python代考,NUShelp,IE5600help,Applied Programming for Industrial Systemshelp,PyWarehousehelp,Pythonhelp,NUS作业代写,IE5600作业代写,Applied Programming for Industrial Systems作业代写,PyWarehouse作业代写,Python作业代写,NUS编程代写,IE5600编程代写,Applied Programming for Industrial Systems编程代写,PyWarehouse编程代写,Python编程代写,NUSprogramming help,IE5600programming help,Applied Programming for Industrial Systemsprogramming help,PyWarehouseprogramming help,Pythonprogramming help,NUSassignment help,IE5600assignment help,Applied Programming for Industrial Systemsassignment help,PyWarehouseassignment help,Pythonassignment help,NUSsolution,IE5600solution,Applied Programming for Industrial Systemssolution,PyWarehousesolution,Pythonsolution,