CiviCRM: how to manage several areas for the same organization?
The answer to your question depends on some of the details - but most likely you'll want to use ACLs.  See here: https://docs.civicrm.org/user/en/4.7/initial-set-up/permissions-and-access-control/.

In some cases, you may want to consider multi-site permissioning - it depends on the size of your database and how much you need to differentiate between different departments.  E.g. if you need different departments to create public-facing forms, each with their own "theme", you may want to consider multi-site.