collection of programs that manage the DB structure and control access to its stored data
an intermediary between users and the DB
enables data sharing
presents an integrated view of the data to users
receives app requests and translates them into operations
goods. hides the DB's internal complexity from apps and users. better data integration and less data inconsistency. increased end-user productivity. improved data sharing, security, and access. improved decision-making. enhanced data quality by promoting accuracy, validity, and timeliness of data
hierarchies are good for 1:M (tree) but not M:N (graph or multiple inheritance)
manage large amounts of data for complex manufacturing projects
represented by an upside-down tree that contains segments (the equivalent of a file system's record type)
goods. promotes data sharing. parent/child relationship promotes conceptual simplicity and data integrity. DB security is provided and enforced by DBMS. efficient with 1:M relationships
bads. requires knowledge of physical data storage characteristics. the navigational system requires knowledge of the hierarchical path. changes in structure require changes in all apps. implementation limitations No data definition. lack of standards
goods. conceptual simplicity. handles more relationship types. flexible data access. data owner/member relationship promotes data integrity. conforms to standards. includes data definition language and data manipulation language
bads. system complexity limits the efficiency. navigational system yields complex implementation, app dev, and management. structural changes require changes in all apps