Write a quality and complexity analysis report, JAVA Programming

Assignment Help:

In the context of this course work, you are asked to write a quality and complexity analysis report by applying programming design and implementation metrics for the AnagramGame Java based application. In order to accomplish this task, you need to follow the guidelines as of the check list below in this course work specification.

Your report shall include answers to the following requirements and questions:

a) Take a look at the code and try to understand the logic, particularly, the way scrambled words are disambiguated, i.e.., whether they are matched successfully against a correct word. Subsequently, estimate the time complexity of the disambiguation / matching algorithm and justify your answer.

b) Identify the most stable package of the AnagramGame application. Justify your answer.

c) Identify the mean instability and justify how it has been calculated.

d) It is being argued that the bad fix probability in the AnagramGame application must be around 40%, meaning that there is a 40% probability to fix an emergent problem badly. You should contradict this statement and justify your answer.

e) Given the bias that Cyclomatic Complexity (CC) is usually higher in longer procedures, suggest a metric, which normalises CC, meaning how much decision is there comparing with the given code. Subsequently, calculate the normalised CC for the two packages and the four Java classes, separately. Put forward any interesting implications you may have come along.

f) Provide the definition for Lack of Cohesion of Methods (LCOM). Subsequently, identify the java class with the highest lack of cohesion and justify your answer. Your justification shall also include whether there is any unjust penalty imposed to the result.

g) Given the algorithmic, as of point (a), and programming complexity, as of points (b) - (f), predict what will be the expected changes for both algorithmic and programming design,


Related Discussions:- Write a quality and complexity analysis report

Multitreading, what is multithreading in Java? Explain with example.

what is multithreading in Java? Explain with example.

Explain ftp-telnet-voip and instant messaging, Write a brief note on each o...

Write a brief note on each of the following. FTP Telnet Instant messaging VoIP FTP: File Transfer Protocol: This protocol is used to upload and download the

Android Development Project, Task I have an Android mobile app project tha...

Task I have an Android mobile app project that I''m trying to get profiles to transfer by connecting to a server at 23.23.175.213 port 1337. I have to send a json string to the se

Explain the three benefits of access protection, Explain the Three Benefits...

Explain the Three Benefits of Access Protection ? Access protection has three major benefits: 1. It permits you to enforce constraints on an object's state. 2. It gives a si

Why class can''t extend more than one class, Why is an Interface be able to...

Why is an Interface be able to extend more than one Interface but a Class can't extend more than one Class? Basically Java doesn't permit multiple inheritances, so a Class is r

Elliptic curve, In this project you need to write a program called "ECC.jav...

In this project you need to write a program called "ECC.java"to implement Elliptic Curve encryption/decryption. Specifically, your program will read parameters, plaintext and ciph

Explain the rules for tostring() methods, Explain the Rules for toString() ...

Explain the Rules for toString() Methods ? toString() methods should return a single line of text that does not contain any carriage returns or linefeeds. toString() methods

Explain testing objects for equality in java, Explain Testing Objects for E...

Explain Testing Objects for Equality in java? , = can only be used with numbers and characters. They cannot be used with Strings, booleans, arrays or other compound types sin

PROBLEM 2, #The objective is to implement a menu-based system for Bank Acco...

#The objective is to implement a menu-based system for Bank Accounts in order to simulate a very simple banking system. Many structures have to be declared to manage bank accounts.

Debugging, Debugging mode can be enabled by adding the following line of co...

Debugging mode can be enabled by adding the following line of code before creating new connections: XMPPConnection.DEBUG_ENABLED = true; When debugging mode is enabled, a

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