Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I have created a python class and have attempted to generate a UML. Please provi

ID: 669163 • Letter: I

Question

I have created a python class and have attempted to generate a UML. Please provide feedback if there are changes that I need to make to the UML. Thank you!

class Employee(object):

   """This class represents the Employee"""
   def __init__(self, empno, ename, level=0):
       """The default class constructor"""
       self._number = empno
       self._name = ename
       self._level = level

   def getNumber():
       return self._number

   def getLevel():
       return self._level

   def getName():
       return self._name

   def setLevel(self, level):
       self._level = level

   def setNumber(self, empno):
       self._number = empno

   def setName(self, ename):
       self._name = ename

   def promote(self):
       """This function denotes employee promotion"""
       if self._level == 5:
           return
       self._level += 1
          
   def demote(self):
       """This function denotes employee demotion"""
       if self._level == 0:
           return
       self._level -= 1

   def __str__(self):
       """The function gives the representation of the Employee class"""
       return "Employee #: %s, Name: %s, Level: %d" %(self._number, self._name, self._level)


def main():
   alan = Employee("001", "Alan Turing")
   print(alan)
   alan.promote()
   print(alan)
main()

- _number: string

- _name: string

+ Employee (string empno, string ename, int level)

+ getNumber(): string

+ getLevel(): string

+ getName(): string

+ setLevel(int number): void

+ setNumber(string number): void

+ setName(string name): void

+ promote(string): boolean

Employee

- _number: string

- _name: string

- _level: int

+ Employee (string empno, string ename, int level)

+ getNumber(): string

+ getLevel(): string

+ getName(): string

+ setLevel(int number): void

+ setNumber(string number): void

+ setName(string name): void

+ promote(string): boolean

+ demote(string): boolean

Explanation / Answer

I have reviewed your code and it is in accordance with the project.

The UML diagram is correct and it matches with the code and the requirements.

There is no need for any changes in the code as well as the UML diagram.