Implement and test object orientated programmes

Assignment Help Other Subject
Reference no: EM133217780 , Length: word count:3000

Assessment - Practical Programming and Report

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

Learning outcome 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.

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

Learning outcome 4: Critically evaluate the effectiveness of implemented Object Orientated applications

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

Case Study: Iron Helm

Background

Iron Helm has been in business for the last forty years. It supplies traditional handmade armoury to governments and the entertainment industry. The company prides itself on the artistry involved in make very fine traditional items.

The majority of the work undertaken by Iron Helm is in the production of very fine swords and armour. Various governments buy swords and armour for ceremonial occasions.

Another important source of revenue is the entertainment industry. Each year there are new movies and large scale TV productions which require beautifully crafted items for their main characters. There are only a few companies in the world which are trusted by the entertainment industry to produce these items on time and to the correct level of artistry. Undertaking such work is very prestigious for the company, and is seen as the most important of all the work they undertake. Items for the entertainment industry are also sold at a premium price which reflects the level of craftsmanship put into the items.

Lastly the company also undertakes creating items for wealthy collectors. There is not a huge amount of demand in this area as the prices of the items are very high. Items are made and then there is an attempt to sell them on the company's website. The items are usually copies of the items made for the entertainment industry as well as some proven designs such as the Excalibur sword.

The main problem the company faces is volatility in the demand for its products. Although there is a fairly constant demand from governments, the entertainment industries demand is very sporadic. However the entertainment industries work is prized most of all by the company.

The deadlines from the entertainment industry are very strict; if the company was late with an order then there would be little change of securing future work from this sector.

Recently a deadline for the entertainment industry was almost missed. If the deadline had of being missed the impact on the company would have been significant. Therefore a new system is needed which will aid management in understanding the current schedule of work. In doing so it will help in three main areas:
• The scheduling of work (order in which to do the work)
• Deciding on whether new contracts can be undertaken.
• Help managers to identify problem early so that mitigating action can be taken.

Swords typically for the entertainment industry will take 80 to 120 hours to make and sell for many thousands of Euros, and armour can take 80 to 300 hours to construct depending on the complexity and the design required. Ceremonial swords will typically take 20 to 30 hours to make depending on the design and sell for no more than one thousand Euros. The system will then calculate the estimate of the total number of hours required to complete the potential order.

Functional Requirements

1. Initial enquiry: Due to the sporadic nature of the demand there are times when the company needs to refuse orders it cannot complete. It should be able to provide honest estimates as to when a potential order can be completed. An initial form captures the key information so that an estimate can be given to the client, they are also recorded in the system as an enquiry so that the client can choose to turn the enquiry into an order at a later date. See below for enquiry/order information.

2. Production estimates: The contracts manager will quickly assess the time needed to complete the order this will be in hours, and price the work accordingly. The system will then check to see if the work can be scheduled. See below for details regarding automatic scheduling and schedule check.

3. Create order: Enquiries can be progress an order status if the client accepts the estimated completion date as well as the price. The order is then automatically placed into the Schedule.

4. View schedule: The system show the schedule for next two months as well as highlighting if the current order is being schedule. This is calculated from the start and end dates and the percentage complete

5. Record Progress: Allows a percentage complete to be recorded against an order.

Task 1 Research Question (Individual Work)

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

Statement "Many commercial software developments use Object Orientated Languages but do not produce Object Orientated Systems. Growing numbers of projects are switching to an Anaemic Domain Model rather than the traditional Rich Domain Model. Monolithic systems which are based on Object Orientated Analysis, Design and Programming are being replaced by micro services architecture which are often procedural in nature."

Questions you should consider:
• Should we lament the decline in OOP systems?
• Have the changes been influenced by a change in the development methodologies and/or changes to the technologies available, if so, how? And to what extent has this influenced the change?
• Procedural based systems have proven to be problematic in the past, are the new developments using procedural programming likely to lead to the same problems?
• Is pattern based engineering no longer relevant?

Task 2 UML Designs and OOP considerations (Group work)

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.
Word Limit 300

Task 3 Implementing the technical Solution (Group work)

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. You must use code first approach. Database first and Design First are not allowed.
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 must include instructions on how to start the application including 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, and it must documented in the test plan (a formal list of the tests to be carried out and the expected outcome).

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.
Word limit: 1000.

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.

Attachment:- Advanced Programming.rar

Reference no: EM133217780

Questions Cloud

Write a program that determines the linguistic complexity : CS 677 High-performance Computing, Grand Valley State University - demonstrate your problem-solving ability and basic coding skills, and to practice conducting
Discuss each of the four major financial statements : Discuss each of the four major financial statements. What is the purpose of each? Which must be prepared first? How are the statements interrelated
Define service learning in the context of my profession : Define service learning in the context of my profession. Assess the impact of my service on the community. (the general public and Military)
Identify an example of a global company whose strategy : Identify an example of a global company whose strategy is to achieve higher quality in order to increase market share and profitability.
Implement and test object orientated programmes : KF7014 Advanced Programming, Implement and test Object Orientated programmes using advanced techniques ensuring a high level of quality and data security.
What type of research method would you use to address : Interpersonal Conflict in the Workplace Discussion- What type of research method (i.e., qualitative or quantitative) would you use to address your example? Why
What will be required for new budget to operation correctly : Your operation review all departments and give suggestions and your views on what will be required for your new budget to operation correctly.
Discuss the economy of belize : Strategy is to expand in central america, belize can be a target country for super selectos. Discuss the economy of Belize.
Identify the national incidence rate-preventability : Estimates the national incidence rate, preventability, and cost of adverse events in SNFs by using a two-stage medical record review to identify events.

Reviews

Write a Review

Other Subject Questions & Answers

  Identify two to three common themes in the literature

Identify two to three common themes in the literature. Include seven to ten peer-reviewed quantitative or qualitative articles related to your topic.

  Write presentation to board of tourism to promote country

Write presentation which Board of Tourism could use to promote country and the strategies you would use to improve the presentation and describe why you wouuld consider these suitable.

  List the risk factors for cerebrovascular accidents

List the risk factors for cerebrovascular accidents and why? What cultures are at higher risk and why? Describe 0 to 4+ scale for scoring deep tendon reflexes.

  Analyze the different ways to evaluate economic

Analyze the different ways to evaluate economic performance and determine which provides the best assessment of the economy. explain your rational.

  What do you remember from your years in elementary school

Saddleback College Question: What do you remember from your years in elementary school? What were you good at? What about yourself worried you?

  What are the needs of the priority population

Who is the priority population? what are the needs of the priority population? which subgroups within the priority population have greatest need? where are the subgroups located geographically

  Would have any conflicts or concerns supporting a patient

Discuss the safety and effectiveness of alternative and complementary medicine for the treatment of specific illnesses such as cancer, diabetes.

  Examine the impact of effective management

MGMT 330 Purpose: This assignment will provide you an opportunity to examine the impact of effective management on the overall success of an organization.

  Imagine that you are the pilot in this hypothetical scenario

Imagine that you are the pilot in this hypothetical scenario, and you are responsible for ensuring an international dignitary departs and arrives safely from and to both airports of your choice. You may refer to your notes, textbook, course discussio..

  Becoming ordained monks in modern times

What problems have women faced in becoming ordained monks in modern times and how have they handled them?

  Difference between primary and secondary sex characteristics

Explain the difference between the primary sex characteristics and secondary sex characteristics and explain the biological foundation of sex-how people become female and male

  Describe and justify the number of meetings

What are the most important group norms you would like to develop - How will composition affect the norms or their development

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd