Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

Prepared by: Dr Nandini Sidnal XXXXXXXXXXModerated by: Dr Ghassan Kbar Oct, 2018 Assessment Details and Submission Guidelines Unit Code MN404 – T2 2020 Unit Title Fundamentals of Operating Systems and...

1 answer below »
Prepared by: Dr Nandini Sidnal XXXXXXXXXXModerated by: Dr Ghassan Kbar Oct, 2018

Assessment Details and Submission Guidelines
Unit Code MN404 – T2 2020
Unit Title Fundamentals of Operating Systems and Programming
Assessment Type Individual Assignment
Assessment Title Inventory Management
Purpose of the
assessment (with
ULO Mapping)
This assignment assesses the following Unit Learning Outcomes; students should be
able to demonstrate their achievements in them:
a. Describe the role of Operating Systems (OS) and its different subsystems in
controlling computer hardware
. Demonstrate competency in the use of a command line interface to operate and
perform simple OS administration
c. Apply principles of abstraction and problem solving in an object-oriented
programming language
d. Apply knowledge of programming constructs in developing computer programs
e. Create programs based on incremental development processes of designing,
coding, testing and debugging.

Weight 30% of the total assessments
Total Marks 60 marks
Due Date XXXXXXXXXXWeek 10 laboratory class – To submit the video presentation of the algorithm.
Week 11 laboratory class – To submit video of the program Demonstration along with
the document

Submission
Guidelines
• All work must be submitted on Moodle by the due date along with a title Page.
• The assignment must be in MS Word format, 1.5 spacing, 11-pt Cali
i (Body) font
and 2.54 cm margins on all four sides of your page with appropriate section
headings.
• Reference sources must be cited in the text of the report, and listed appropriately
at the end in a reference list using IEEE referencing style.
Extension • If an extension of time to submit work is required, a Special Consideration
Application must be submitted directly through AMS. You must submit this
application within three working days of the assessment due date. Further
information is available at:
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-
and-guidelines/specialconsiderationdeferment
Academic
Misconduct

• Academic Misconduct is a serious offence. Depending on the seriousness of the
case, penalties can vary from a written warning or zero marks to exclusion from
the course or rescinding the degree. Students should make themselves familiar
with the full policy and procedure available at: http:
www.mit.edu.au/about-
mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-
Academic-Misconduct-Policy-Procedure. For further information, please refer to
the Academic Integrity Section in your Unit Description.




http:
www.mit.edu.au/about
http:
www.mit.edu.au/about
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure
http:
www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure
MN404 Fundamentals of Operating Systems and Programming Page 2 of 6
Prepared by: Dr Nandini Sidnal XXXXXXXXXXModerated by: Dr Ajay Sharma July, 2020
Academic Integrity:

For assignments, students are encouraged to consult each other, the lecturer, tutor or anyone
else for that matter. However, the assistance offered or accepted should not go beyond a discussion
of the problem and a sketch of a solution. But in your assignment, do not use any written material
from the discussion/website
ook. If you can reconstruct the discussion and complete the solution on
your own, then you have learned the material (and that is the objective of this course!).


Assignment 2 Specification

With the development of this application and the course, it makes the students capable of
applying knowledge of programming constructs in developing computer programs. The students shall
learn to create programs based on incremental development processes of designing, coding, testing
and debugging.


Assignment description:

Control and management of inventory are vital to most types of businesses but especially to
supermarkets. In the past, hand-written accounts were kept of inventory coming in and stock being
sold. Later, software packages became available to assist in inventory control although all data still
needed to be entered manually into a computer. These days, control of inventory in supermarkets
has become far more advanced with the use of digital technology integrated with software packages.
This effectively and much more accurately manages and controls stock.

In this assignment you have to develop a program based on incremental processes of collecting
software requirements, designing, coding, testing and debugging to maintain the inventory of a super
market for the managers. Inventory control is keeping a record of stock that comes into the store
and stock that leaves the store.

Following features of the inventory system are to be incorporated in the design and
implementation.

• The student shall develop the inventory for a grocery shop or any other shop of his/her
interest. The number of items in the inventory list may be limited to max 10.
• Inventory to account for the stock that is kept in the supermarket warehouse, on the floor, in
display, damaged etc. and in other areas of the store.
• Your code should also track on returns and update the stock.
• Information like where in the supermarket the stock has been placed and the use of the item
(is it for sale, display purposes or to replace a returned item?) is also to be recorded.
• Every time an item is sold, the sale to be deducted from the inventory list.
• In essence, your code should, be able to tell you how much inventory there is for any product
at any given time.



MN404 Fundamentals of Operating Systems and Programming Page 3 of 6
Prepared by: Dr Nandini Sidnal XXXXXXXXXXModerated by: Dr Ajay Sharma July, 2020


In summary:

The program must perform the following:

• Create an inventory list
• Insert the items when they a
ive and delete when sold or damaged.
• Location (shelf, warehouse, display etc) of the item to be displayed when requested.
• For any product/s the inventory to be displayed.


The assignment report has to include the following sections:
• User Requirements:
o Include all the user (assignment) requirements here.
For example: Number of items the item names and existing stock

• Analysis
Analysis often requires the programmer to learn some things about the problem domain
and that information the user will have to provide. Also, it should specify what the program
is going to do. In this case the problem domain would be the logic used to maintain the
inventory of the super market.

• Design:
The design phase has to describe how the program is going to do the desired task. This
usually involves writing an algorithm or a flow chart in fact, algorithms are more often
written in a somewhat stylized version of English called pseudocode.
Although there are no precise rules governing the syntax of pseudocode, in your pseudocode
you should strive to describe the essential elements of the program in a clear and concise
manner. Note that this pseudocode closely resembles Python code, so the transition to the
coding step should be straightforward.

• Implementation Phase:
In this phase the complete code in python without any syntax and semantic e
ors must be
completed. The complete code with proper indentation has to be pasted here along with
sample inputs and outputs.

• Testing: Only thorough testing can build confidence that a program is working co
ectly.
Testing is a deliberate process that requires some planning and discipline on the
programmer’s part.
Once all the e
ors are debugged, set of all possible inputs are to be provided. Even
though the range of the input numbers on a computer is finite, testing all of the possible
combinations of inputs would be impractical. So, the challenge is to find a smaller set of
inputs, called a test suite, from which we can conclude that the program will likely be
co
ect for all inputs. The number and type of input samples have to cover all possible
cases of validity checks of the inventory.

The difference between the opening and closing balance of the inventory has to match with
the items sold on that day or items purchased to stock.

MN404 Fundamentals of Operating Systems and Programming Page 4 of 6
Prepared by: Dr Nandini Sidnal XXXXXXXXXXModerated by: Dr Ajay Sharma July, 2020


• A short video to be recorded explaining:
o the logic of the algorithm
o the code in detail
o the test cases


Submission Guidelines:
Your assignment should be completed according to the General Guidelines for Presentation
of academic work. Your submission should contain the following:

I. The assignment Word file that will be submitted shall include:
a) Link of the video to be included in the word document that has the following details:
i) Explanation of the logic used in the algorithm to maintain the inventory on daily basis.
ii) Explanation of the code and demonstration of the outputs obtained.
iii) The time limit of the video is 5 min.
) Algorithm/flow chart
c) Complete program in Python without syntax e
ors (cut and paste the complete code).
d) Must include appropriate and sufficient comments in the source code.
e) Screen shots of initial compilation results with syntax e
ors.
f) Troubleshooting the syntax e
ors
g) Sufficient screen shots showing all possible outputs obtained. The file name must have
your student ID as part of its name.

II. Documentation should follow the standard submission guidelines as below:
i) Front page - indicating your name and student ID, teaching staff (Lecturer’s and tutor’s
name), a statement of what has been completed and acknowledgement of the names of
all assisted you.
ii) List of references used (IEEE style) – Reference sources must
Answered Same Day Sep 23, 2021 MN404

Solution

Yogesh answered on Sep 30 2021
153 Votes
Acitivty Diagram.png
Report.docx
User Requirements
This report is to explain about the inventory system and its creation with the help of Python language. The inventory is developed for a grocery shop in which the items are stored in the inventory which is created with the help of database. The items in the inventory list cannot be more than 10. The admin needs to enter his login credentials to access the details about the inventory and make changes to it. The inventory is used to store the information about the stock which is present in the supermarket warehouse. It will inform about its status whether it is on the floor, damage or in display or in any other area of the store. If any customer returns the item, then with the help of the code it will be updated in the stock. The user can search for any particular item with the help of product ID and the information will be retrieved from the table. The database will also store the information whether the stock is place and the use of the item, which is either for sale, for display purpose or need to be replaced. Every time when an item will be sold that inventory list will be updated by deducting its stock. The code will also be able to generate information about the inventory for any item at any given time.
Analysis
For this code I used take tKinter li
ary to create the GUI of the application and SQL Lite to connect the code with the database. Database method was created to create a table in the database if it is not present on the system. It will also ask for the username and password of the admin to perform operation. The next method will allow the user to search for any product in the inventory. The user can enter the past product code and information will be retrieved from the database. Next method is to add new item to the inventory. When the user selects this operation of form will be displayed over the screen and user can enter information about the product which will be saved in the table one. Another method is to update the sold information. Once the product is sold its amount will be reduced from the inventory. We can add the stock of an inventory item with the help of add method. The delete method will allow the user to delete information about any product. The exit method will end the code and it will display the information about the inventory to the user.
Design
Implementation
from tkinter import *
import tkinter.messagebox as tkMessageBox
import tkinter.ttk as ttk
import sqlite3
# Main Window
oot = Tk()
# Set Title
oot.title("Inventory System")
# Set Geometry of the window
width = 1000
height = 530
screen_width = root.winfo_screenwidth()
screen_height = root.winfo_screenheight()
x = (screen_width / 2) - (width / 2)
y = (screen_height / 2) - (height / 2)
oot.geometry("%dx%d+%d+%d" % (width, height, x, y))
# root.resizable(0, 0)
oot.config(bg="#6666ff")
# ========================================VARIABLES========================================
PRODUCT_LIST = []
PRODUCT_NAME = StringVar()
PRODUCT_PRICE = IntVar()
PRODUCT_QTY = IntVar()
PRODUCT_LOCATION = StringVar()
PRODUCT_USE = StringVar()
SEARCH = StringVar()
# ========================================METHODS==========================================
# Method to create database
def Database():
global conn, curso
conn = sqlite3.connect("inventory_database.db")
cursor = conn.cursor()
cursor.execute(
"CREATE TABLE IF NOT EXISTS `admin` (admin_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, username TEXT, "
"password TEXT)")
cursor.execute(
"CREATE TABLE IF NOT EXISTS `product` (product_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, product_name "
"TEXT, product_qty TEXT, product_price TEXT, product_location TEXT, product_use...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here