A model for representing the design of a distributed software system and a design procedure are suggested. The model is based on a modified form of petri net and the modification is made based on the desirable features of software blueprints. It enables one to represent the static structure and the dynamic behavior of the modeled system at a desired level of design. The model emphasizes hierarchical component structure, explicit representation of data flow, the incorporation of the concepts of system design such as abstraction, elaboration, and functional decomposition, and especially the representation of the design of the interaction between components.