Explain the significance of detailed project planning

Assignment Help Software Engineering
Reference no: EM131099285

Assignment 1

Overview

You are required to document, test and refactor an existing application. You will be given a copy of an existing C# application which is responsible for taking bookings for a cruise ship, this application is badly in need of refactoring and even a casual viewing of the source code reveals many examples of the "code smells" discussed by Fowler.

Learning Outcomes Assessed

Knowledge:

K1. explain the significance of detailed project planning and control, good communication and documentation and the use of appropriate tools in order to provide a quality product;

K2. discriminate between software engineering and programming, and thus the distinction between a software configuration and a program;

Skills:

S2. analyse source code and develop comprehensive unit test suites

S3. operate CASE software to document the design of a piece of software

S4. apply refactoring to identify poor programming practice in existing source code and improve its structure and readability

There are eight types of cabin which may be booked. Standard costs are as follows:
- Balcony Suite ($5000 per cabin)
- Suite ($4000 per cabin)
- Deck 3 - Outside Twin ($3500 per cabin)
- Deck 2 - Outside Twin ($3400 per cabin)
- Deck 1 - Outside Twin ($3300 per cabin)
- Deck 3 - Inside Twin ($3400 per cabin)
- Deck 2 - Inside Twin ($3300 per cabin)
- Deck 1 - Inside Twin ($3200 per cabin)

Requirements

- Report detailing any "code smells" present in the code and how you intend to refactor them out of the code

- A refactored version of the system eliminating all identified code smells

- A class diagram illustrating the initial code and another class diagram illustrating the final refactored code (including all relevant dependencies)

- A sequence diagram illustrating how the final refactored system processes a new booking

- Extensive NUnit tests for methods SetupShip and BookPassage in the FedUniCruises class

- Add a loyalty rewards system. People who are bronze members of the loyalty rewards program receive a 5% discount on all bookings, people who are silver members receive 7.5% discount, while gold members receive 10% off the cost of their bookings.

- Add a platinum membership to the loyalty rewards program which entitles the holder to 50% off the cost of booking on decks 1, 2 and 3 and 25% off the cost of bookings for all suites.

Attachment:- start up classes.zip

Reference no: EM131099285

Questions Cloud

Write a three-pages analysis of the given case : You will write a 3-page analysis/critique of the following case. There should be 4 identified sections: Facts, and then Decision; and then Solutions; and then; Conclusion.
Do you believe that climate change is a serious problem : Do you believe that climate change is a serious problem? Why or why not. Do you believe that mankind is contributing to this problem or are the changes we are seeing simply the result of natural cycles? Does the ultimate cause of the problem matte..
Explain the primary purpose of a crm system : Explain what is meant by ERP and explain the primary purpose of an ERP system. Use examples to support your answer. Your response should be at least 200 words in length.
What is the longest time in which the cloth can be pulled : Assume that the coefficient of friction of the glass sliding on the tablecloth or sliding on the tabletop is 0.5. (For the trick to be effective the cloth should be pulled out so rapidly that the glass does not move appreciably
Explain the significance of detailed project planning : explain the significance of detailed project planning and control, good communication and documentation and the use of appropriate tools in order to provide a quality product;
What are some recent examples in our contemporary society : Do we even have one of these ideas of democracy? Please provide evidence in support of your opinion. What are some recent examples in our contemporary society that support your opinion?
Draw a clear force diagram form : Draw a clear force diagram form.
Provide a brief overview of the recovery process : Find out how much money was granted, for what type of disaster, and what the majority of the funds were spent on (recovery or mitigation). Provide a brief overview of the recovery process and any challenges identified.
Find the radius of the orbit of a synchronous satellite : The simplest way to find the answer and give your results is by expressing all distances in terms of the Earth's radius Re.

Reviews

Write a Review

Software Engineering Questions & Answers

  Evaluate natural settings of test environment for web users

Evaluate the natural settings of the test environment for Web users. Note: Test environments are usually labs designed to conduct testing. Natural settings refer to the user's normal operating environment

  Draw a uml class diagram that models the aspects of a real

draw a uml class diagram that models the aspects of a real estate agents business that are described below.bullthe

  The function of a misuse case methodology

Why is use case mapping so important to the function of a misuse case methodology?

  External entity-relationship diagram

An External Entity-Relationship Diagram indicating relationships of the AMAC and the other external entities in the system. Note you do not need to include attributes of the entities on the ERD. Just the relationships and their cardinality and mod..

  Write a program that sets up an int array

Then write a second program that uses just one function that efficiently will handle either situation. Make the one function as concise and elegant as possible. It should not have repetitive code.

  Writing and executing an insert statement

Make yourself a student by writing and executing an INSERT statement to insert a row into the STUDENT table with information about you.

  Technology management plan

Technology Management Plan

  Create logic for program that will produce count of readers

Create the logic for a program that would produce a count of readers by income groups as follows: under $20,000, $20,000- $29,999, $30,000-$49,999, $50,000-$69,999, and $70,000 and up.

  Explain and apply the phases of the project management life

Explain and apply the phases of the project management life cycle

  Discuss fault tolerance approaches that systems managers use

Windows server software works seamlessly with most hardware vendors that offer fault tolerant systems. Discuss fault tolerance approaches that systems managers use to assure continuity of operations.

  A determine what variables explain likelihood of passing

a determine what variables explain likelihood of passing to each stage of funneli inquire for information ii attend

  Summarize advantages and the disadvantages of such a group

A group meeting of stakeholders in an organization is sometimes suggested as a useful compromise between individual interviews and questionnaires to collect information from which requirements are defined for a software project.

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