# US 2014/0208288 A1 · Apparatus and Method for Managing a Software Development and Maintenance System

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0208288 A1
- Document ID: US20140208288A1
- Status: Published application
- Kind: A1
- Application number: 14/160,555
- Filed: 2014-01-22
- Published: 2014-07-24
- Earliest claimed: 2013-01-22
- Assignees: Siemens Aktiengesellschaft
- Inventors: Egon Wuchner
- Web page: https://patentgrep.com/patent/US20140208288A1

## CPC

- G06F 8/70: Software maintenance or management
- G06F 8/30: Creation or generation of source code
- G06F 11/3452: {Performance evaluation by statistical analysis}
- G06F 11/3688: {for test execution, e.g. scheduling of test suites}
- G06F 8/71: Version control (security arrangements therefor G06F21/57); Configuration management
- G06F 8/72: Code refactoring
- G06F 16/244: {Grouping and aggregation}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A management apparatus and a method for managing a software development and maintenance system are provided. In order to improve the quality and to minimize errors in a code base, an analysis of individual parts of the code base and related functional and/or architectural concerns is performed.

## Claims

### Claim 1

A managing apparatus for managing a software development and maintenance system, the managing apparatus comprising:
a construct memory configured to store a set of constructs, each construct of the set of constructs being an element of a software code base of a software system;
an issue memory configured to store a set of issues, each issue of the set of issues specifying an implementation of software feature or an architectural concern of the software code base;
a vector generating device configured to establish a set of vectors, wherein each vector of the set of vectors specifies a dependency between the stored set of constructs and at least one issue of the stored set of issues;
a computing device configured to compute a statistical value using the established set of vectors; and
a determining device configured to determine a degree of interdependence between the set of issues using the computed statistical value.

### Claim 2 (depends on 1)

The management apparatus of claim 1, further comprising:
a check-in device comprising:
a receiver configured for receiving a construct and for determining issue information specifying an issue associated with the received construct;
a verifying device configured for:
comparing the received construct with a version of the construct stored in the construct memory; and
identifying an amendment between the received construct and a stored former version of the construct; and
a tracking memory configured for:
storing the determined issue information; and
storing the identified amendment between the received construct and the stored former version of the respective construct,
wherein the check-in device is configured to store the received construct in the construct memory.

### Claim 3 (depends on 2)

The management apparatus of claim 2, wherein the verifying device is configured to determine lines of code that have been added, modified, removed, or a combination thereof in the received construct.

### Claim 4 (depends on 2)

The management apparatus of claim 2, wherein the receiver is configured to receive a plurality of constructs associated with a single issue, and the verifying device is configured to determine which constructs have been amended for the associated issue.

### Claim 5 (depends on 3)

The management apparatus of claim 3, wherein the receiver is configured to receive a plurality of constructs associated with a single issue, and the verifying device is configured to determine which constructs have been amended for the associated issue.

### Claim 6

A method for managing a software development and maintenance system, the method comprising:
providing a set of constructs of a software code base, each construct of the set of constructs being an element of a software code base of a software system;
providing a set of issues, each issue of the set of issues specifying an implementation of software feature or an architectural concern of the software code base;
establishing a set of vectors, wherein each vector of the set of vectors specifies a dependency between the provided set of constructs and at least one issue provided in the set of issues;
computing, with a processor, statistical values between the established set of vectors; and
determining a degree of interdependence between the set of issues using the computed statistical values.

### Claim 7 (depends on 6)

The method of claim 6, wherein the establishing comprises determining a number of constructs being affected by the respective one issue of the set of issues, and
wherein the determining comprises determining the degree of interdependence using the determined number of constructs being affected by the respective one issue.

### Claim 8 (depends on 6)

The method of claim 6, wherein the computing comprises computing a statistical correlation or a Pearson index of two established vectors of the set of vectors.

### Claim 9 (depends on 6)

The method of claim 6, wherein the computing comprises a multiple regression analysis.

### Claim 10 (depends on 6)

The method of claim 6, wherein each issue of the set of issues is a functional implementation of a feature or a bug fix.

### Claim 11 (depends on 6)

The method of claim 6, wherein each issue of the set of issues is an implementation of an architectural concern.

### Claim 12 (depends on 11)

The method of claim 11, wherein the implementation of the architectural concern comprises error handling, persistence, multi-thread strategies, or a combination thereof.

### Claim 13 (depends on 6)

The method of claim 6, wherein the set of constructs is a set of files, directories, sub-directories, namespaces, classes or class methods/functions.

### Claim 14 (depends on 7)

The method of claim 7, wherein the computing comprises computing a statistical correlation or a Pearson index of two established vectors of the set of vectors.

### Claim 15 (depends on 7)

The method of claim 7, wherein the computing comprises a multiple regression analysis.

### Claim 16 (depends on 7)

The method of claim 7, wherein each issue of the set of issues is a functional implementation of a feature or a bug fix.

### Claim 17 (depends on 8)

The method of claim 8, wherein each issue of the set of issues is a functional implementation of a feature or a bug fix.

### Claim 18 (depends on 8)

The method of claim 8, wherein each issue of the set of issues is an implementation of an architectural concern.

### Claim 19 (depends on 9)

The method of claim 9, wherein each issue of the set of issues is an implementation of an architectural concern.

### Claim 20 (depends on 7)

The method of claim 7, wherein the set of constructs is a set of files, directories, sub-directories, namespaces, classes or class methods/functions.
