A decomposition is a structure that humans impose upon some real-world phenomenon to better understand it. computer science and information systems field, decompositions have had longstanding use as a means of mitigating problems associated with complex analysis, design, and programming work. A “good” decomposition, for example, facilitates analysts’ understanding of real-world systems they must model and programmers’ understanding of source code they must maintain.