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

Java Gui, Does the java applet using swing components, JAVA Programming on ...

Does the java applet using swing components, JAVA Programming on this contain all the source codes for download?

Compression, 1 occurrence of "oog", and 1 occurrence each of "goog", "oogo"...

1 occurrence of "oog", and 1 occurrence each of "goog", "oogo",

Java Project, How to start a java project? how to draw a flow chart?

How to start a java project? how to draw a flow chart?

Describe what is bytecode, Describe what is bytecode? It is an inst...

Describe what is bytecode? It is an instruction set. It extends with class. 'javac' compiler translates the .java file into .class. JVM interprets bytecode.

Relate java with C/C++, Relate Java with C/C++ Very similar C/C++ synta...

Relate Java with C/C++ Very similar C/C++ syntax, operators, etc. Core language is simpler than C++ -- no pointers, no operator overloading, and no multiple inheritance.

Difference between java mail and jms queue, JMS is the ideal high-performan...

JMS is the ideal high-performance messaging stage for intra business messaging, with full programmatic control over quality of service and delivery options. JavaMail gives lowes

For what purposes ftp is used in networks, For what purposes FTP is used in...

For what purposes FTP is used in networks? FTP is known as file transfer protocol it is basically used to download or upload files / data to a remote computer.

Cadence design systems, Cadence Design Systems:   Role Working ...

Cadence Design Systems:   Role Working on tickets including debugging of unix based applications Installations of unix based tools/utlity Installation

Explain java.lang.string library in java, Explain java.lang.string library ...

Explain java.lang.string library in java? Strings are objects. Specifically they're instances of the class java.lang.String . This class has several methods which are useful f

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