Get Instant Help From 5000+ Experts For
question

Writing: Get your essay and assignment written from scratch by PhD expert

Rewriting: Paraphrase or rewrite your friend's essay with similar meaning at reduced cost

Editing:Proofread your work by experts and improve grade at Lowest cost

And Improve Your Grades
myassignmenthelp.com
loader
Phone no. Missing!

Enter phone no. to receive critical updates and urgent messages !

Attach file

Error goes here

Files Missing!

Please upload all relevant files for quick & complete assistance.

Guaranteed Higher Grade!
Free Quote
wave
Assessment Guidelines for Object Oriented Systems Design and Development

Learning Outcomes tested in this assessment

Learning Outcomes tested in this assessment (from the Module Descriptor):

Knowledge & Understanding:

1.Demonstrate in-depth knowledge and understanding of current best practice in the design and development of Object Orientated systems

Intellectual / Professional skills & abilities:

2.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.

3.Implement and test Object Orientated programmes using advanced techniques ensuring a high level of quality and data security.

4.Critically evaluate the effectiveness of implemented Object Orientated applications

Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA):

5.Demonstrate a professional understanding of the importance of software quality in the development of applications.

See Appendix A for assessment criteria. Note that this work is worth 100% of the module and that the marks total 100 marks.

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 2nd January 2021. You should name this file so that it is clearly your individual work and should contain your student ID as part of the document name.

Group work: A ZIP file should be created that contains your entire Visual Studio project, including the test project. Justifications of choices made such as patterns used and the data access layer need to be in a PDF document called justifications. The document should be in the root of the folder, you also need to supply a file which contains a list of all names and student ids of the group members “group.txt”.

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) these should be in PDF format and need to be legible (easy to read) it is your responsibility to check the PDF files are legible.

Please note that the compression format has to be zip, you must not use: ‘rar’, ‘7z’ or compression formats.

Late work carries a penalty. Even if you are one minute late, the penalty has to be applied. Please make sure you give yourselves plenty of time to upload the work. Multiple submissions are possible.

Nature of the submission required

It is your responsibility to check that you have uploaded the file correctly to the ELP. After uploading the file to the ELP, download the file and check that the contents are what you expect.

Group work

The size of a group can be between two and six students, no groups may be larger than six but may be less; you are expected to form your own groups by the end of teaching week 4. One member of each group must email the module tutor giving the names of the group members. Anyone without a group at the beginning of week 6 will be assigned to a random group. In the rare event that a group is not working well together it may be disbanded. The module tutor will have final say when this occurs, It will only happen if there is sufficient documented proof that one member is not contributing to the work, in such eventualities it will be expected that each member does the remaining work on an individually basis, Alternatively students may be able to join another group who is willing to accept you and that there is still enough time to make a sufficient contribution to the new group. In such cases the module tutor must be notified.  

Expected size of the submission:

Expected size of written work is stated on the individual sections.

Academic Misconduct:

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. Quote or paraphrase other work with caution. Please discuss with the module tutor if you are unsure what is expected.

Fair use of code from the internet:

You are not permitted to use templates from the internet; any group which uses a template to create the architectural foundation of their work will be formally investigated for academic misconduct, all the work must be your own.

Small amounts of code can be taken and modified from the internet however all occurrences must be clearly indicated in the comments section at the top of each class. You must including in the comments section a reference to the original source. Methods and properties should also be marked as “copied from: URL” or “biased on: URL” if they have originated from an external source.

Group work

Monitoring of assessment progress:

You are required to use github as a repository for your assessment. Your progress on the assessment will be monitored it is important that the group work is started early, groups which have not made sufficient progress can expect emails, you will be required to give the module tutor access to the github project at the commencement of the technical part of the assessment.

Reflective writing:

Tasks 5 and 6 are reflective writings; although many of you are aware of what reflective writing is. Past evidence indicates that some students do not understand what is required. It is not about ‘book work’ where your answer is basing on external sources, although you should use some academic papers to support your arguments. These questions are about what you and your group have done and what you have learned from the process. You are required to indentify positives and weaknesses in the group work.  Use the theory covered in the module to effectively aid you in this reflective evaluation of your work. The reflective commentary should be critical; you should identify what when wrong and demonstrate you have learned from the process.

Extensions and Illness:

Please make sure that all group items are held in a central repository so that it does not rely on a single individual. If someone in your group is ill then you must all discuss the possibility for extensions with Ask4Help. Module tutors and Course leaders cannot grant extension, you must go to Ask4Help.

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 and Group Diary

In order to complete the group work you will need to work with other students. It is important that you evenly distribute the work between yourselves and work effectively with each other.  You are required to keep a diary so that you log and minute all communication and meetings. The diary will be required as part of the evidence in the portfolio. Given the current situation regarding covid-19 you will be required to hold group meetings using software such as zoom or teams.

You must also supply one peer-assessment form for each group member. This will need to be agreed and signed by each group member. Social distancing will complicate the process. It is expected that with the individual work each member supplies a copy of all the peer assessments, and that everyone submits the same values on these documents. This will be sufficient to acknowledge you agree with the marks for each member including your own.

Expected size of the submission

If the diary and/or individual peer assessment forms are missing then the group part of this assignment, will be capped at 50%. Based on the peer assessment form you will be able to calculate a score of between 3 and 8 which measures your peers views of the quality of your team work in this task. We reserve the right to consult with you and potentially change the weightings (and in extreme cases marks) when this is felt necessary. We will not do this before the assignment is handed in. On the form each student’s performance in the team is graded by a number of criteria. Each criterion will be given a score of between 3 and 8. Once all the 9 criteria have been graded the average score across the criteria for the student will be determined. This is called Team Work Score, which will be between 3 and 8. Calculate this by adding up the score for each of the nine criteria and then dividing by nine. Once the peer assessment forms have been completed for all members of the group it is possible to determine the group average. This is calculated by adding up the Team Work Scores for all the group members and dividing the total by the number of group members. A weighting can then be calculated by dividing the students Team Work Score by the group average. The weighting applies to only the group component of the assessment. A student’s mark will be determined by multiplying the group mark by the weighting. This will be calculated to the nearest whole number

Technology requirements

Application must be built using Visual Studio 2019 or Visual Studio 2017, professional or enterprise. The community edition is not suitable for this work, as it will not work with Entity Framework.

You must use the database built into visual studio as your data store, you should not use any other database.

The GUI must be built using windows forms (winForms). ASP or other presentational technologies are not permitted.

Patterns must be present in the technical solution, for example the presentational layer should use MVP. You are also required to use Entity Framework and LINQ.

Radiant Smile Dental practice requires you to build a windows application to support dental practice. The dental practice only deals with NHS patients however it does offer a number of treatments not covered by the standard NHS services such: teeth whiting, dental implants.   

Academic Misconduct

When a patient is registered their details such as date of birth, name, address, email are captured and stored by the system. A medical questionnaire is given during the registration process. The questionnaire captures information regarding any medical conditions which may affect the treatment and any allergies the patient may have such as to latex or antibiotics.

When a patient visits the dental surgery a check is done to see when they last updated their medical history. If this was more than a year ago the system will prompt the reception staff to ask if they has been any changes to their medical history. If there has they will be required to fill in a new medical questionnaire.

All patients must provide the name and address of their GP practice. It is likely that many of the patients in the dental practice will be register to a small number of local GP practices.

All treatments private / NHS should be easily maintained by the practice staff. This may be the change of pricing in line with changes to the NHS fees. It could also include new private services or accommodate a change in price due to a special offer.

Checkups can be booked in one of three ways

·When a patient comes to the end of a treatment plan of has had a check-up which requires no work they are offered an opportunity to book a six month check-up.

·When they first register with the practice.

·If they telephone in and ask for a check-up, a check is made to make sure they have not already had a check up within the last four months.

This task is an individual task and covers the following learning outcome.

1.Demonstrate in depth knowledge and understanding of current best practice in the design and development of Object Orientated systems

Question for section one and two

“Most systems require user authentication, identify the technical approach you would use to storing the password information so that a user was able to authenticate themselves at a later date. You discuss a range of approaches and any weaknesses with the indentified approaches.”   

The research is split into three sections,

The initial part you will be limited in your usage to a single source of information, namely “stack overflow”. This initial investigation should take approximately 1 hour to complete. And will be undertaken during the lab session. See Appendix B for information regarding how to capture the information. If you miss the lab you can still do the exercise and forward the information to the module tutor for analysis.  

Fair use of code from the internet

This second part answers the same question however it should be only done after the lecture on security. You must document the work in the same way as you did for section one, using the layout from Appendix B. Part one documented finding information on stack overflow in this section. You also need to write a short summary identifying the technical measures you would take and give a reference to any code examples which you would use as a basis for implementing the solution.

Identify possible technical solutions to security protecting information in the properties of a class prior to it being persisted on a database.  Additionally you should consider and outline any implications any of the possible solutions may have on the winder functionality or performance the application.

 Task 2 UML Designs and OOP considerations (Group work) 10 marks

This task assesses the 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. It should not be post implementation diagram created by visual studio. 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 you 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.     

You must provide a justification for any of the patterns you have chosen to implement. Outlining reasons why the choices have been made. You should also include any patterns which you believe could be beneficial to the software architecture, but which you decided not implement. A rational for their exclusion should be given. (5 marks)

Task 3 Implementing the technical Solution (Group work) 20 marks

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 and 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 working subsection of the entire system, you should use vertical development.

You are expected to develop the application using the standard three layer model and the domain and presentation layer should contain some of the patterns covered in the module.

Entity Framework must be used to persist the objects. It is your choice on how you use the technology. It is recommended not to use Database first as this will have architectural consequences to your system.

The system must be implemented using Visual Studio 2017 or 2019 and be written in C#. As stated earlier only windows forms may be used and the application must use the inbuilt database.

You may include instructions as to use which would include any valid logon details or user details that you have created.  

 The code is marked on the following aspects:

Scope technical implementation

Quality of the solution, including architecture patterns used.

Task 4 Testing (Group work)

In this task the following learning outcome is assessed.

1.Demonstrate a professional understanding of the importance of software quality in the development of applications.

It is expected that there is sufficient level of unit level testing within the layers of the application. It is important that each class and method has an associated testing component. You should also carry out some testing at system level making sure that the system performs the needed system functionality. You should use both positive and negative testing.  

Visual Studio provides an inbuilt testing framework, you are expected to automate as many of the tests as possible using the inbuilt unit testing framework.  If you have used dependency injection/mock objects to isolate classes you should make this clear in your testing strategy.

All tests must also be documented in a test plan, it is not enough to just have test project, it must documented in a plan.

Task 5 Evaluation of the development process (Individual Work)

In this task the following learning outcome is assessed.

1.Critically evaluate the effectiveness of implemented Object Orientated applications

2.Demonstrate a professional understanding of the importance of software quality in the development of applications.

Many iterative methodologies incorporate an evaluation step at the end of each development time-box.  The purpose is to reflectively evaluate the development increment so that lessons can be learned, and improve the development process in future increments.  In this section you are required to critically evaluate development process and the tools used.

·Critically evaluate the approach your team used in selecting what requirements in implement in the development time box, you should consider the logical grouping of the functionality and if you choose to many or two few requirements to implement.

·Teamwork, you need to critically evaluative how you’re team worked together in producing the technical solution. How you self organised yourselves.  If any problems occurred they should be listed as well as any attempt to reach a resolution.

·Tool evaluation: Critically Evaluate: the development environment, database chosen and the use of testing tools in the development of the system.

Task 6 Evaluation of the technical solution (Individual Work)

In this task the following learning outcome is assessed.

1.Critically evaluate the effectiveness of implemented Object Orientated applications

Critically evaluate the Design and Implementation in relation to the object orientated principles covered in the module. You must consider the patterns you have used and discuss if they were effective and also identify any patterns you have not implemented but believe to be relevant.

Discuss the choice of Data Access implementation. Was Entity Framework directly used or did you impose your own unit of work and repository patterns. You need to justify and reflect on the choice you made.

Critically evaluate your application in terms of security. You do not need to discuss password security which you covered in the research question. However you should focus on the security needs of the application from the data perspective. You should use what you discovered from task one section three in order to give some specific recommendation related to this application.  

support
close