KF7012 – Implementation of Object Oriented Designs
Knowledge & Understanding
- Demonstrate in-depth knowledge and understanding of current best practice in the design and development of Object Orientated systems
Intellectual / Professional skills & abilities
- Design a system using advanced object orientated principles and methods, such as Behavioural, Creational and Structural design patterns, ensuring a high level of quality and data security.
- Implement and test Object Orientated programmes using advanced techniques ensuring a high level of quality and data security.
- Critically evaluate the effectiveness of implemented Object Orientated applications
Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA)
- Demonstrate a professional understanding of the importance of software quality in the development of applications.
Nature of the submission required
Individual work: The individual report should be a single document, and it must be in PDF format. You are required to upload this using Turn-it-in (ELP) as an originality report is required. Your work must be uploaded no later than 21st December 2016. You should name this file so that it is clearly your individual work and should contain your student ID as part of the name.
Group work: A ZIP file should be created that contains your entire Visual Studio project, including the test project. If you have used an Access database this should also be included in the ZIP file. Each C# software component should have the names of the group members within the comments at the top of the code. The ZIP file should also contain files for your Design (Task 2) and Testing (Task 4).
Where you have used words from someone else (quotations), they should be correctly quoted and referenced in accordance to the Northumbria Harvard System. You will be required to submit the report for the work via turn it in.
The size of a group is two students; you are expected to form your own groups by the end of teaching week 4. One member of teach group must email the module tutor giving the names of the group members. Anyone without a group at the beginning of week 5 will be assigned to a group.
Expected size of the submission
Expected size of written work is stated on the individual sections.
You must adhere to the university regulations on academic misconduct. Formal inquiry proceedings will be instigated if there is any suspicion of misconduct or plagiarism in your work. Refer to the University’s regulations on assessment if you are unclear as to the meaning of these terms. The latest copy is available on the university website.
Individual and Group components
Each task clearly states if the task is individual or group work. Submission of individual work will be at the same time as group work however these will be separate submission.
Peer Assessment is a valuable process and one that is ‘true to life’. In the work place, people have to get on with each other, even if they dislike a particular individual. By placing you in teams, we try to simulate that environment. This is why we have stressed that group members have to work together and contribute fairly. Peer assessment will be used to adjust the group mark this assignment.
Students are asked to think carefully about completing peer assessments. If someone has contributed little to the assignment, why give them good marks? It only diminishes the high standards of other students. Conversely, if someone has worked really hard and well, they should be rewarded with good marks. If everyone in the group has been ‘pulling their weight’ then marks should be more or less shared evenly.
It is important that peer assessment is carried out CONFIDENTIALLY. The reason for this is to ensure that there is no coercion. In this regard, each member must complete the form (as shown in Appendix B) for each group member including themselves. The information given in Appendix A is there to help you assess each of your peers. Please note that your tutors have the right to alter peer assessments if they feel they do not reflect the true position.
You may if you wish write comments about any of your peers (see Appendix B). However, it is compulsory for you to write a comment for any peer mark that is less than 5 or greater than 9.
Each form should be in a separate sealed envelope and handed in after the presentation
(alternatively the form may be e-mailed to the module tutor before the presentation)
Question KF7012 – Implementation of Object Oriented Designs
Task 1 Research Question (Individual Work)
This task is an individual task and covers the following learning outcome.
- Demonstrate in depth knowledge and understanding of current best practice in the design and development ofObject Orientated systems
In this task requires you to carry out some research. It is important that you use a range of quality sources and your findings and conclusions must be supported by the literature. The mark you are awarded is based on the quality of the research carried out, and principle conclusion you have drawn from the research you have conducted.
“Is the use of Pattern Based engineering appropriate for all projects?” You should start by identifying what benefits this approach has, as well as any pitfalls in applying Pattern Based Engineering. You should use the literature to try and ascertain where pattern based engineering is most applicable and where it should be avoided, if at all. Consider some of the topics covered on the module such as Anti-Patterns.
References from good-quality, relevant literature must be used in order to strengthen any points that you raise in your discussion.
Approximately 1500 words
Task 2UML Designs and OOP considerations
This task covers the following learning outcome.
Design a system using advanced object orientated principles and methods, such as Behavioural, Creational and Structural design patterns, ensuring a high level of quality and data security.
Produce an implementable class diagram for the system you are developing, this should show your final design of the software components and clearly show architectural patterns used in the development of the system. You are expected to use Design Patterns in the creation of you product, and you are also expected to show layering of the application, patterns should be considered in each of the layers for example your are expected to use a presentational Patten in the interface layer. This work should only include the requirements which you are expecting to implement during the time-box.
Justification, you must provide a justification for any of the patterns you have chosen to implement. Outlining reasons why the choices have been made, as well as any data security decision you have made. (5 marks)
Task 3 Implementing the technical Solution
In this task the following learning outcome is assessed.
Implement and test Object Orientated programmes using advanced techniques ensuring a high level of quality and data security.
You are not expected to try an implement the entire system. Agile methods require a subset of requirements to be taken into a time-box for development. You can apply MoSCoW to list of requirement, this will help you decide on what requirements you plan to implement. However you are expected to pick requirements which work together so that you can demonstrate a subsection of the entire system.
A relational database will be used to store you application data. However you are expected to create an object orientated system. Therefore you must consider how the objects link to the database CRUD operations. Write a short justification as to the approach you are going to use.
The system should be implemented using Visual Studio 2013 C# and the application must run on Visual studio 2013 professional in the lab. Visual Studio 2013 professional is available to students to download via DreamSpark. You may include instructions as to use which would include any valid logon details or user details that you have created. You will be required to use a database for the development of the application; the only condition is that the application must run in the lab.
The code is marked on the following aspects
- Scope Quality of technical implementation
- Justification and implementation of data access layer
- Winform should use the passive view variation of the MVP
- Design patterns should be implemented