PCB Logical design data is stored in a database according to a
connectivity-based data model. Circuit functional blocks, inputs and
outputs of functional blocks, and signals are stored as separate data
structures. Those structures may be edited by users at separate clients
during concurrent editing sessions. Profile data for each of multiple
users specifies logical design data elements accessible by, and PCB
design software to be provided to, that user. The PCB design software may
be plug-ins executable within a web browser at a client, and the client
computers may communicate with the database via the Internet. Layout data
may also be stored in the database, with elements of the layout data
mapped to elements of the logical design data. Constraint data may also
be stored in the database, with elements of the constraint data being
mapped to elements of the layout data.