Skip to main content

Table 4 TD items identified by the development team

From: Understanding automated and human-based technical debt identification approaches-a two-phase study

ID

Type

Location

Description

Principal

Interest

Interest Probability

Intentional?

1

Design

Lingada.java, ItemGuarnicao.java, FuncionarioAccess.java, ItemTreinamento.java, RestricaoFuncionario.java

These classes have the attribute Employer Name, but this data is stored in an external database. Thus, it is not possible to access the employer information as we can do with the other information stored in the system database.

High

High

High

Yes

2

Documentation

MALO_SGI Especificacao_Requisitos.doc

The Module of Allocation does not have the requirements specification document.

High

High

High

Yes

3

Design

AlocacaoController.java alocacar(...) method

This method checks the data about employers in Access database and, after, sort the data according to a set of criteria. However, the method is currently very large and need to refactored in small methods.

Low

Low

Low

No

4

Design

customer inclusion (file ClienteController.java) company inclusion (file EmpresaController.java)

By entering a zip code in the inclusion of a company or customer, the system returns some districts as cities, but those districts do not exist on IBGE’s table. This fact can cause errors when an invoice is created.

Medium

Low

Low

No

5

Design

Files FaturaController.java and NFe.java

I need to make a verification with the activity name when I need to identify a service type or bill. This information is fixed in the code, and can bring errors when some update is performed or the data in database have incorrect names.

Medium

Low

Medium

Yes

6

Design

File DespesaController.java

There is a need to locate the cost codes according to their numbering. However, this information is fixed in the code and any update or error on it can bring bad side effects to the system.

Medium

Low

Medium

Yes

7

Design

File AutoTracJob.java

High consumption of memory causing stack overflow. This method needs to run every 2 min, but because of this problem it was only running once a day to keep the data updated.

Medium

Low

Low

No

8

Design

File Parser.java

In the import of “Machine Daily,” it is necessary to associate the “Machine Daily 1” to “Machine Daily 2” (this mapping is one-to-one), but sometimes, we can have more than one Machine Daily 2. In this case, the system can only store the “machine daily 2” that arrived first, the second “machine daily 2” is lost.

High

Low

Low

Yes

9

Documentation

Use cases of the Module of Billing

Requests for change by the customer have been treated, but the description of use cases and their business rules have not been updated.

Medium

Medium

High

No

10

Test

Several functionalities

Deliveries of system functionalities for acceptance testing before system testing, due to customer pressure who wants to see the changes that have been addressed (weekly deploys).

Medium

Low

High

No

11

Design

Many files of Tranship System and many files of an external system that is integrated to Tranship.

Each system has its own database (both MySQL), but they have some entities in common, so some data are repeated. Besides, sometimes one table is more complete in one of the systems. The integration work was only performed for the employees table.

High

High

High

Yes

12

Defect

cadatrarContratoApoioMaritimo method of Module of Operations.

The contract can have a symbol or “adjustment percentual.” These points were not considered on the Module of Operations.

Medium

Medium

High

Yes

13

Defect

excluirEmbarcacao method of Module Administrative

A ship, even excluded, can be part of the division of the cost center associated with it.

Medium

High

Medium

Yes

14

Defect

gerarRelatorioEstado method of Module of Operations

A query to the database does not return old data that are still valid when the search date is the current date.

Low

Medium

High

Yes

15

Defect

calcularValorServico method of Module of Operations

The calculation of the Maritime Support Services value is incorrect due to a change occurred in how this calculation is made.

Medium

High

High

Yes

16

Defect

gerarRelatorioLocalizacao method of Module of Operations

This functionality is almost all incomplete.

Medium

Medium

Medium

Yes

17

Test

Module of Operations

It is a very complex module because there are dependencies between modules in the system, and this requires careful attention during testing execution.

Medium

High

High

Yes

18

Documentation

Requirements specification and use case description for the Administrative and Alocation Modules

The documentation must be always updated and the requirements gathering must be in accordance with customer needs. Frequent changes in these modules have been causing a lot of rework.

Medium

Medium

High

Yes

19

Design

Cliente class

In the Cliente form, sometimes due to lack of time when implementing any specific method in the system, the system loses quality.

Medium

Medium

Low

No

20

Test

Forms

The lack of test plans can bring problems after system deployment.

Medium

Medium

Medium

No

21

Usability

All project forms

The system should have a user interface “standard.”

Medium

Medium

Medium

No