Clean up for java programs, JAVA Programming

Assignment Help:

You have recently joined a games company. The SQA manager has given you the task of improving the code quality of simple games. This is a standard task which the SQA manager gives to all new employees to ensure that they understand company coding standards and the tools used in software development to promote software quality.

You are to improve the quality of the Java programs. You are to address the problem reports from Checkstyle, FindBugs, and RefactorIT Metrics. (A problem report is any warning or violation.)

The SQA manager requires you address a) all Checkstyle problems except package name conventions,  b) all FindBugs problems, and c) metric violations for: LOC, CLOC, DC (Density of Comments), RFC (Response for Class), DIT (Depth in Tree), DIP (Dependency Inversion Principle), LOCM (Lack of Cohesion of Methods), and V(G) (McCabe´s Cyclomatic Complexity). Do not change the default levels which are used to determine metric violations.

Note - There is no requirement to address problem reports for Keyin.java.
Note - There is no requirement to address problem reports from the Java compiler.
Note- The DIP metric should be addressed only for the program Frown.

A special requirement is that the Frown program be made more object-oriented with proper design of Die objects and that the DIP metric value is satisfactory.This special requirement is worth 2% of the 4% allocated to the assessment of the Frown program. Make it clear in your assignment report if you tackle or do not tackle this special requirement.

Report and Submission Instructions

Submit a report of the clean up. The front page of the report should have your name, the course number and course name, a title, and the declaration:  "This assignment is all my own work. This work has not been submitted for assessment in any other context. I have not knowingly allowed othersto copy my work."

In the report, provide a Table 1 which details the number of problem reports before the clean up. Rows of the table should be: Java compiler, Checkstyle, FindBugs, RefactorIT. Columns of the table should be Acey, Even, Lunar, and Frown. Then provide a Table 2, similarly structured, which provides the number of problem reports that remain after the clean up.

After Table 2, write a report section that describes the nature of problem reports that were not cleaned up and explain why they were not cleaned up. (Limit this section to 1 page.)

By the the deadline, submit a paper copy of the report to the instructor and upload an e-version  to your personal Blackboard group using File Exchange. Upload source code versions of the cleaned up code: Acey.java, Even.java, Lunar.java, Frown.java (plus any additional Java classes created to improve Frown).  (Source code files may be compressed using a standard utility.)Also upload a README2.txt file which briefly lists and describes the files you have uploaded .

The following comment header must appear on any new Java source files that you write.

/**

 * @author YOUR NAME

 * CS670M SOFTWARE QUALITY ASSURANCE

 *

 * This is all my own work.

 * I have not knowingly allowed others to copy my work.

 * This work has not been submitted for assessment in any other context.

 */

Some Advice

The Eclipse ProblemsView Menu is accessed through the small upside down triangle in the bottom output window. This can be used to set preferences and configure contents.

It can be convenient to create and save a configuration of RefactorIT Metrics so that in the Metrics view in Eclipse you see only data for the specified metrics: LOC, CLOC, DC (Density of Comments), RFC (Response for Class), DIT (Depth in Tree), DIP (Dependency Inversion Principle), LOCM (Lack of Cohesion of Methods), and V(G) (McCabe´s Cyclomatic Complexity).


Related Discussions:- Clean up for java programs

Write program for queue of cards, A Queue of Cards You are going to par...

A Queue of Cards You are going to parallel the development done in the lesson on inheritance where we constructed some base classes, StackNode and Stack, and derived  Floa

Task priority and uses in scheduling, What do you mean by a task's priorit...

What do you mean by a task's priority and how can we use it in scheduling ?

How to retrieve warnings, SQLWarning objects are a subclass of SQLException...

SQLWarning objects are a subclass of SQLException that deal with database access warnings. Warnings do not stop the implementation of an application, as exceptions do; they easily

Produce solutions to modern-practical problems, Students will design, devel...

Students will design, develop, test and document a Java application that reads data from an input file, processes the data, and then writes the processed data to an output file. CM

What is dispatchaction, The DispatchAction class is used to group related a...

The DispatchAction class is used to group related actions into single class. Using this class, you can have a method for every logical action compared than a one executes method. T

Networking, which concept is used to connect the networking in java

which concept is used to connect the networking in java

Need sms application server, Project Description: A java application is ...

Project Description: A java application is required with the subsequent features 1. Ability to use GSM Modem (and/or Mobile phones) or SMPP to send and receive SMS messages

Http tunneling and rmi calls across firewalls , RMI transport layer usually...

RMI transport layer usually opens direct sockets to the server. Several Intranets have firewalls that do not accept this. To get through the firewall an RMI call may be embedded wi

In programming what is an object, In programming, what is an object? Ob...

In programming, what is an object? Object is a named collection of properties (data and state) & methods (instructions, behaviour). Objects are key to understanding object-orie

Object-based programming, JavaScript is an extremely powerful object-based ...

JavaScript is an extremely powerful object-based (or prototype-based) language. It is not a full-blown OOP (Object-Oriented Programming) language, like Java, however it is an objec

Write Your Message!

Captcha
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