IP Library Patent Application 11171636
Patent Application
App. No. 11/171,636

Software source asset management

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/171,636
Abstract

Code information is marked by tags and tags are embedded into pieces of code or files called “codetags” that map tags to pieces of code. These tags can then be updated, searched, sorted, recombined, and tracked, among many other feedback mechanisms. These tags and their feedback mechanisms help to illuminate the engineering metadata and business metadata of pieces of code so as to help engineering management and business management of companies to better guide their software resources.

Claims (27)

1 . A computer-readable medium having a data structure stored thereon for expressing metadata of a piece of code, the data structure comprising:

a file tag that indicates a file in which a piece of code is being tagged;

a business tag that indicates business metadata for the piece of code; and

an engineering tag that indicates engineering metadata for the piece of code.

2 . The computer-readable medium of claim 1 , wherein the file tag can indicate one or more files.

3 . The computer-readable medium of claim 1 , wherein the business tag includes a field for storing a name of an agreement governing the use of the piece of code.

4 . The computer-readable medium of claim 1 , wherein the business tag includes a field for storing a Web address at which an agreement governing the use of the piece of code can be found.

5 . The computer-readable medium of claim 1 , wherein the business tag includes a field for storing a name of an entity who is a licensor to an agreement governing the use of the piece of code.

6 . The computer-readable medium of claim 1 , wherein the engineering tag includes an owner field that identifies a person responsible for the piece of code, the engineering tag further including a module field that identifies a software module that the piece of code is a part of.

7 . The computer-readable medium of claim 1 , wherein the engineering tag includes a classification tag that identifies a category to which the piece of code belongs, the engineering tag further including an intellectual property identifier for associating the piece of code with a piece of intellectual property.

8 . A system for tagging software, comprising:

a source repository for maintaining source codes and related files; and

a tagging database that communicates with the source repository to synchronize tag contents, the tagging database storing business tags that mark one or more agreements connected with pieces of code, the tagging database further storing engineering tags that mark engineering metadata of pieces of code.

9 . The system of claim 8 , wherein the engineering tags include fields that express responsibilty assignment of a piece of code, a module of which the piece of code is a part, a class that categorizes the piece of code, and intellectual property identification indicating that a piece of intellectual property is implemented in the piece of code

10 . The system of claim 9 , further comprising a notifier that communicates via e-mail to a manager to change responsibility assignment of the piece of code when a developer who is responsible for a piece of code has left his employment.

11 . The system of claim 10 , wherein the notifier alerts a developer when the developer cuts and pastes pieces of code that are restricted by an agreement.

12 . The system of claim 8 , further comprising a tagging Web site which various clients can access to refresh information contained in tags.

13 . The system of claim 8 , further comprising a tagging report generator by which various clients can request reports obtained from tags.

14 . The system of claim 8 , further comprising a tag validator that indicates whether tags are malformed.

15 . A method for tagging software, comprising:

tagging pieces of code with tags to mark their business and engineering metadata; and

notifying a person to update information contained in the tags when there are changes to personnel identified by the tags.

16 . The method of claim 15 , further comprising determining whether pieces of code are licensed pieces of code and whether an engineer has rights to modify the licensed pieces of code.

17 . The method of claim 15 , further comprising creating a codetag file for containing tags if the pieces of code are binary in form.

18 . The method of claim 15 , further comprising querying a tagging database containing tagged pieces of code for information related to pieces of code that participate in a software product release.

19 . The method of claim 15 , further comprising synchronizing tags in a tagging database and tags in a source repository.

20 . The method of claim 15 , further comprising printing a report that indicates a number of modules for which a manager is responsible.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034766/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2005
From: AHMED, SHAKIL; JONES, ANTHONY; CHRISTIANSEN, DAVID LAWLER; PROBERT, DAVID; SETHURAMAN, NAVEEN; GRAYSON, LISA; WODRICH, MARK; MUNSHI, RAJESH; MOORE, VALERIE
To: MICROSOFT CORPORATION
Reel/Frame 016782/0931 →