Question
Unit Learning Outcomes LO1 Examine the key components related to the object-orientated programming paradigm, analysing design pattern types LO2 Design a series of UML class
Unit Learning Outcomes | |
LO1 | Examine the key components related to the object-orientated programming paradigm, analysing design pattern types |
LO2 | Design a series of UML class diagrams |
LO3 | Implement code applying design patterns |
LO4 | Investigate scenarios with respect to design patterns |
Transferable skills and competencies developed | |
Understanding how to translate a scenario into UML class diagrams and implementing it using OOP concepts | |
Vocational scenario: | |
You are a software developer at Space Dimensions Company. You have been assigned to work on a project to handle a factory system.
The factory has a name, address, invoice value and products. Each product consists of id, name and price.
The factory has several types of employees in the factory in which they all share a name, id, email, salary and phone. The manager has department in which he/she works in, office number and project name in which he/she is responsible for. The workers have a position, shift and a flag that defines if the worker is a team leader or not. The accountant has a level and a list of responsibilities.
A client has id, name, address and purchase order. The purchase order has client linked to it, id, invoice value and products. The purchase order must have an option to add products to the purchase which will increase the invoice value based on the products price.
Both the factory and client should have a pay option that will pay the invoice value. All the employees should have an option to get their salaries based on their profession as follow: Manager salary = base salary + 25% of the base salary Worker salary = base salary + 5% of the base salary Accountant salary = base salary + 10% of the base salary
Note: Employee is too general. It has been decided to use an object oriented approach to design and implement the system.
| |
Assignment activity and guidance | |
Task 1 Briefly describe the following Object oriented concepts. Provide diagrams and code snippets (you must write code) to supplement your explanations. Static variables and methods Default constructor and parametrise constructors Access modifiers and encapsulation Abstraction Task 2 Create a detailed UML class diagram for the factory system using a suitable UML tool. The classes should include attributes and methods. Explain one inheritance and one composition relationships existed in your UML.
Task 3 Implement the system using a suitable object oriented language. Provide screen shots (in addition to source code) as evidence of program execution.
Task 4 LLH has a HR system and they want to integrate it with your new developed system. The main problem is that they do not have any documentation. You need to extract the UML class diagram from the already existed code to able to do the task. Investigate how we can create a tool to extract the UML automatically from the given code in details. Task 5 There are three categories of design patterns which are creational, behavioural and structural. Given the list below that has design patterns examples. Sort them into the three categories and explain your choices.Singleton Pattern Facade Pattern Observer Pattern Decorator Pattern Factory Pattern Strategy Pattern
| |
Recommended Resources Please note that the resources listed are examples for you to use as a starting point in your research the list is not definitive. Textbooks
|
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started