This coursework is designed to allow the learner to demonstrate their broad understanding, knowledge and the skills gained through the module’s learning journey. The coursework must be submitted as one document in a report format with the full implementation of the code project embedded as an object at the end of the report.
A company in central London is looking for Software Developer to develop simple employees’ management application. The company needs to record employees’ detail and the departments working in. The different departments are Sales, Marketing, Administrator, HR and Finance. The college wants to develop an application that performs the following functions.
• The admin can login to the system before use.
• After login, the system should provide options like add new employees, remove employees, change employees’ department, navigate through employees’ detail and to make a search for an employee’s detail.
• The employee’s detail should have Id, first name, last name, dob, phone, her/her picture (optional), department working in, start date, salary, and type of employment (part-time and full-time).
• For this application, you may or may not use any database as backend.
• UML diagram should cover use-case diagram, class diagram and Activity diagram.
• Programming Environment: You can use Visual Studio 2019 as a programming IDE. You must present your programming skills using OOP (Object Oriented Programming) in C#.
• Expected programming output: For fulfilment of LO3 you need implementation of all the functionalities, providing that they are complete and follow OOP principles.
The application you develop will be either a desktop with a GUI, Console or web application. Whichever of the options will be decided by what is used in the teaching of this course.
C# is an OOP language that allows OOD paradigms such as Abstraction Encapsulation, polymorphism, and Inheritance. You need to examine the characteristics of the Object-orientated paradigm in relation to the given scenario. You need to discuss a range of design patterns from each of the creational, structural, and behavioural patterns and analyse the relationship between the object-orientated paradigm and the design patterns to be used in this application.
N.B. You may use code snippets to aid your discussion. Any code snippets that appear in your submission must be within the context of the given scenario. Textbook examples are not acceptable.
In designing an object-oriented solution, it is important to make use of modelling tools such as UML diagrams. Your task here is to produce a UML Class diagram to capture the relationships (generalisation, specialisation, composition) between the entities identified for the implementation of an OO solution to the scenario. Your UML class diagrams should be specific to the design pattern you will use in this implementation, and it must be complete with the necessary fields and methods that will be implemented in LO3.
N.B. All UML diagrams and/or code snippets included in your submission must be within the context of the given the scenario. Textbook examples are not acceptable.
Based on your UML class diagrams in LO2 you are required to develop the application in C# by following object-oriented programming paradigm. The application must implement all the features listed in the given scenario above. You will select an appropriate design pattern (with justification) to implement and evaluate the pattern used. Use Visual Studio 2019 community edition or any other IDE of your choosing as your development tool.
N.B. In This section, you should explain the key elements of your implementations, the rationale for your approach etc., for example how your implementation relates to your design in LO2, its relationship with the design patterns discussed and your evaluation and test results. This can
be supported with code snippets. Your complete code will be submitted as an embedded object in the appendix section also.
Discuss a range of design patterns (Creational, structural, and behavioural pattern types) with reference to relevant examples as applied to the given scenario. Reconcile the most appropriate design pattern to the given scenario and critically evaluate the design patterns against a range of scenarios with justification of your choices.
N.B. Any models, code etc. included in this section must be within the context of the given the scenario. Textbook examples alone are not acceptable.
Note: You should attach all the supporting documents as a separate file in the appendix section of your assignment.
To gain a Pass in a Btec Hnd Unit, you must meet all the Pass criteria; to gain a Merit, you must meet all the Merit and Pass criteria; and to gain a Distinction, you must meet all the Distinction, Merit and Pass criteria.
a. All coursework must be word processed.
b. Avoid using “Text box” in writing your assignment.
c. Document margins must not be more than 2.54 cm (1 inch) or less than 1.9cm (3/4 inch).
d. Font size must be within the range of 10 point to 14 points including the headings and body text (preferred font size is 11) in Arial.
e. Standard and commonly used type face, such as Arial and Times New Roman, should be used.
f. All figures, graphs and tables must be numbered.
g. Material taken from external sources must be properly referred and cited within the text using Harvard system
h. Do not use Wikipedia as a reference.
Any act of plagiarism or collusion will be seriously dealt with according to the College regulations. In this context the definitions and scope of plagiarism and collusion are presented below:
Plagiarism is presenting somebody else’s work as your own. It includes copying information directly from the Web or books without referencing the material, submitting joint coursework as an individual effort.
Collusion is copying another student’s coursework, stealing coursework from another student and submitting it as your own work.
Suspected plagiarism or collusion will be investigated and if found to have occurred will be dealt with according to the College procedure (For details on Plagiarism & Collusion please see the Student Handbook).
a. Initial submission of coursework to the tutors is compulsory in each unit of the course.
b. The student must check their assignments on icon vle with plagiarism software Turnitin to make sure the similarity index for their assignment stays within the College approved level. A student can check the similarity index of their assignment up to five times in the Draft Assignment submission point located in the home page of the icon vle.
c. All Final coursework must be submitted to the Final submission point into the Unit (not to the Tutor). The student would be allowed to submit only once and that is the final submission.
d. Any computer files generated such as program code (software), graphic files that form part of the coursework must be submitted as an attachment to the assignment with all documentation.
e. Any portfolio for a Unit must be submitted as an attachment in the assignment
a. Make backup of your work in different media (hard disk, memory stick, etc.) to avoid distress due to loss or damage of your original copy.
a. If you need an extension for a valid reason, you must request one using an Exceptional Extenuating Circumstances (EEC) form available from the Examination Office and ICON VLE. Please note that the tutors do not have the authority to extend the coursework deadlines and therefore do not ask them to award a coursework extension. The completed form must be accompanied by evidence such as a medical certificate in the event of you being sick and should be submitted to the Examination Office.
b. Late submission will be accepted and marked according to the College procedure. It should be noted that late submission may not be graded for Merit and Distinction.
c. All late coursework must be submitted to the Late submission point into the unit (not to the Tutor) in the ICON VLE. A student is allowed to submit only once and that is also treated as the final submission.
d. If you fail in the Final or Late submission, you can resubmit in the Resubmission window.
Analyse: Break an issue or topic into smaller parts by looking in depth at each part. Support each part with arguments and evidence for and against (Pros and cons)
Evaluate: When you evaluate you look at the arguments for and against an issue.
Critically Evaluate/Analyse: When you critically evaluate you look at the arguments for and against an issue. You look at the strengths and weaknesses of the arguments. This could be from an article you read in a journal or from a textbook.
Discuss: When you discuss you look at both sides of a discussion. You look at both sides of the arguments. Then you look at the reason why it is important (for) then you look at the reason why it is important (against).
Explain: When you explain you must say why it is important or not important.
Describe: When you give an account or representation of in words.
Identify: When you identify you look at the most important points.
Define: State or describe the nature, scope or meaning.
Implement: Put into action/use/effect
Compare: Identify similarities and differences
Explore: To find out about
Recommend: Suggest/put forward as being appropriate, with reasons why?