Patentable/Patents/US-7076788
US-7076788

Method for describing software architecture

PublishedJuly 11, 2006
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A method for describing software architecture utilizes a service concept to provide a map of the software system's features from top-level functionalities to actual code through all intermediate abstractions. The services are defined as logical and physical services. Physical services are bound to a given level of abstraction by the actual implementation, whereas logical services can be hierarchically divided into smaller logical services. A suitable abstraction level can be used for the logical services so that the best match between physical and logical services can be achieved. Linking physical services to logical services is done so that the set of physical services that implement a set of logical services can be found in a top-down fashion. Also the set of logical services that is implemented by a set of physical services can be found in the bottom-up fashion. The logical service structure can be used as a reference software architecture.

Patent Claims
7 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for describing a software architecture of a software system in terms of behavioral descriptions for facilitating the evolution and maintenance of the software system during continuous modification, the software architecture having a hierarchy of software artifacts that operate at different abstraction levels, said method comprising the steps of: identifying the software artifacts that make up the hierarchy of software artifacts in the software architecture that operate at different abstraction levels, wherein the abstraction levels include lower and higher levels, said lower abstraction level software artifacts comprising sequences of code and said higher abstraction level software artifacts defining services; determining interfaces between the identified software artifacts; structuring the interfaces into dialogues, wherein each of said dialogues define a behavioral description of the software architecture in terms of a sequence diagram of interactions between the software artifacts at the different abstraction levels for performing a specific operation; defining the dialogues; and documenting the purpose and usage of the dialogues as physical services.

2

2. The method set forth in claim 1 , further comprising: determining interactions between applications within the software architecture; and generating conceptual definitions of the interactions as logical services; wherein said step of documenting utilizes the conceptual definitions of the interactions in conjunction with said defined dialogues to document the purpose and usage of the respective services.

3

3. The method set forth in claim 2 , further comprising: mapping logical services to each physical service used in its implementation; determining whether said step of mapping generates a sufficiently simple map based on relationships between the logical and physical services; and documenting said map when it has been determined to be sufficiently simple.

4

4. The method set forth in claim 3 , further comprising decomposing the logical services into lower level logical services by dividing them into several interactions, said step of decomposing being performed when said map is determined to be insufficiently simple.

5

5. The method set forth in claim 3 , wherein said step of determining returns a result of a sufficiently simple map when each logical service is implemented by as few physical services as possible and each physical service participates in as few logical services as possible.

6

6. The method set forth in claim 3 , wherein said step of determining returns a result of an insufficiently simple map when each logical service is not implemented by as few physical services as possible.

7

7. The method set forth in claim 3 , wherein said step of determining returns a result of an insufficiently simple map when each physical service does not participate in as few logical services as possible.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

November 1, 1999

Publication Date

July 11, 2006

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Method for describing software architecture” (US-7076788). https://patentable.app/patents/US-7076788

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.