Create a class diagram of the initial code

Assignment Help Software Engineering
Reference no: EM131624560 , Length: 3

Analysis and Design

Overview

This is an individual assignment that requires you to document, test and refactor an existing application.

Learning Outcomes Assessed
The following course learning outcomes are assessed by completing this assessment:
- S1. Apply software design principles to design and document software that utilises design patterns
- 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
- S5. Apply an appropriate software development methodology to the development of a software system

Assessment Details
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 managing pet adoptions for an animal rescue organisation. This application is badly in need of refactoring and even a casual viewing of the source code reveals many examples of the "code smells" talked about in Fowler's book.

The base application consists of five classes: AdoptAPet, Shelter, Animal, Adoption and Client. Clients are able to adopt animals based on availability and choice of animal type.

Assignment Requirements

Step 1 - Rename the base code
1. Download the code from Moodle and unzip it in the filesystem
2. Rename the base folder to "Assignment 1 - yourid" (your id equals your student number)
3. Open the solution up in Visual Studio right click on the Solution and rename it as per (2)
4. Build the solution and inspect the output. Spend some time becoming familiar with the code before you do anything else.

Step 2 - Identify "code smells"
Open up a new document in Word (or equivalent), start documenting any code smells you identify in the code in point form. You might want to cut and paste the code into Word to illustrate the problems.

Step 3 - Create a class diagram of the initial code.
Do this in Enterprise Architect and copy the resultant diagram into your Word file. Ensure your EA file is saved and labelled as "starting code base".

Step 4 - Refactor and unit test code
Ensure that your starting code and EA file is backed up. Once this is done, commence refactoring the code in Visual Studio. Document each change you make and provide an explanation of why you have done so.

Your final code should be fully refactored and have unit tests developed for every method (other than any ToString and Get and Set methods). These unit tests should be documented to demonstrate the results before and after the changes to confirm that the functionality of the code has not changed.

Step 5 - Create diagrams of the final code.
Do this in Enterprise Architect and copy the resultant diagram into your Word file. Create a class diagram of the final code, and a sequence diagram showing how a new adoption request is processed in the final code. Ensure your EA file is saved and labelled as "final code base".

Attachment:- Assignment.rar

Reference no: EM131624560

Questions Cloud

Write an essay on importance of mission and vision statement : Essay Assignment- Write a 750 words essay on the importance of mission and vision statements.
Define coaches who employ methods to help : NFL Teams and their owners face challenges from players and coaches who employ methods to help them win but may be unethical
What is the quarterly dividend paid : Today the shares are selling at $64.07. If the required rate of return for such shares is 16.5 percent, what is the quarterly dividend paid by this company?
Compute the firm earnings per share : The Med Tech Company recently reported net profits after taxes of $15.8 million. It has 2.5 million shares of common stock outstanding and pays preferred.
Create a class diagram of the initial code : ITECH3201 Software Engineering - Create a class diagram of the initial code - Ensure your EA file is saved and labelled as "starting code base".
What is the current share price : The forecast for the share price a year from now is $36.00. If the required rate of return is 19.0 percent, what is the current share price?
Variables influence the firm sustainable growth rate : Explain how each of the variables influence the firm's sustainable growth rate.
Expected to grow in the near future : The current share price of Largent Ltd is $45.26. If the required rate of return is 18 percent, what is the dividend paid by this company
Determine the recoverable amount of the land : On 1 July 2016 Big Wednesday Ltd acquired land at a cost of $1,000,000. Determine the recoverable amount of the land for each reporting date

Reviews

len1624560

9/2/2017 5:45:15 AM

Documentation of Final Code • Class Diagram of final code in Enterprise Architect AND the report 2 • Sequence Diagram in Enterprise Architect AND the report showing the processing of a new adoption request. Note that full credit will not be given for overly complex diagrams – only key, relevant messages are to be included. 2 Total 20 Feedback Assignments will be marked within 2 weeks of submission. Marks will be loaded in fdlGrades, and a completed marking sheet will be available via Moodle.

len1624560

9/2/2017 5:45:07 AM

Marking Criteria/Rubric Student ID Student Name Task Available Marks Student Mark Documentation of Initial Code • Report documenting “code smells” present in the initial code base 2 • Class diagram of the initial code provided in both Enterprise Architect AND the documented report. 2 Refactoring • Completed refactored code base, eliminating the bad smells present in the initial code base 4 • Report identifying and documenting changes made to the code and justification of each change 2 Unit Testing • A comprehensive set of unit test cases that covers all the required functionality in the provided code base 3 • Report documenting completed unit tests demonstrating that the refactored code has maintained previous functionality 3

len1624560

9/2/2017 5:44:55 AM

A word of caution: there is some software available that enables automatic generation of sequence diagrams. These tend to produce over-complicated sequence diagrams with considerably more detail than is useful to us. Only the key messages specifically relevant to processing a new adoption are to be included in the sequence diagram. You will not receive full credit for sequence diagrams if you provide excessively complex diagrams. Submission Your program code and all documentation should be zipped into a single file and loaded into the Assignment Box provided in Moodle by the due date and time. This includes: • All code representing your refactored application and unit tests • The accompanying Enterprise Architect file with model versions that correspond to your final code submission • An electronic report, in Microsoft Word, containing your UML, identification of any problems with the initial code, and an explanation of your Refactorings.

len1624560

9/2/2017 5:44:40 AM

Learning Outcomes Assessed The following course learning outcomes are assessed by completing this assessment: • S1. Apply software design principles to design and document software that utilises design patterns • 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 • S5. Apply an appropriate software

Write a Review

Software Engineering Questions & Answers

  Research report on software design

Write a Research Report on software design and answer diffrent type of questions related to design. Report contain diffrent basic questions related to software design.

  A case study in c to java conversion and extensibility

A Case Study in C to Java Conversion and Extensibility

  Create a structural model

Structural modeling is a different view of the same system that you analyzed from a functional perspective. This model shows how data is organized within the system.

  Write an report on a significant software security

Write an report on a significant software security

  Development of a small software system

Analysis, design and development of a small software system.

  Systems analysis and design requirements

Systems Analysis and Design requirements

  Create a complete limited entry decision table

Create a complete limited entry decision table

  Explain flow boundaries map

Explain flow boundaries map the dfd into a software architecture using transform mapping.

  Frame diagrams

Prepare a frame diagram for the software systems.

  Identified systems and elements of the sap system

Identify computing devices, which could be used to support Your Improved Process

  Design a wireframe prototype

Design a wireframe prototype to meet the needs of the personas and requirements.

  Explain the characteristics of visual studio 2005

Explain the characteristics of Visual Studio 2005.

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