Generally speaking, multiple developers cannot work on the same project as the .os files are not merge-able (i.e. you cannot both change the same file and merge the changes). It is best to divide up your solution into separate projects. We most often create a new project for each adapter and construct automations against that adapter to get and set data. In addition, we often create a controller project that orchestrates the logic between the projects and calls the appropriate activities or automations to get/set data or navigate the adapters. Using the Interaction Framework, you can setup activities that each project will respond to and agree on their parameters (inputs/outputs) ahead of time.
If you agree on the parameters, then a developer working on the controller can code his/her project to respond to the completed events for the activities and handle any type of result required. Developers can then unit test their projects to ensure that they properly complete the work whenever the controller starts the activities they are listening for.
If multiple developers work on a project it is important to use a source control provider that provides exclusive locking and it should be enabled. When key files are updated (project, global containers, interaction,xml, etc) everyone should update their local copy. So, as Thomas said there are lots of reasons to work with a single developer on a project.
If multi developers need to interrogate same application, how can we reuse other project's items.
For example RobotA project and RobotB project use same application,
I want to reuse RobotA project's item on RobotB project to avoid to do same interrogation operation.
I tried this by adding RobotA's item to RobotB by Add->Existing Item.
It shows each *.os file which I copied by RobotA on RobotB's Solution Explorer but it does't work correctly like nothing displayed on screen shot tab.