Communities are about people. Managing your users is not a trivial task and should not be under-estimated. You must make sure your permissions system is iron-tight to prevent any user from accessing content or functionality that they should not. How are users going to interact? What information are you going to collect from them? What information should be shown or hidden from other users?
There are many factors to consider, and we can help you with every step of the process in the creation of a robust system.