| |
| Collaboration |
| |
Using a well defined collaboration model means that we maximize all opportunities for interaction by using a recursive and incremental methodology as well as leveraging internet technology where appropriate.
Developing internet applications is especially well suited for collaboration in that it has the added benefit that the on-site team can access the programs for testing via an internet server, eliminating the need for the on-site team to maintain a test environment and deploy applications.
We use a model of shared responsibility and constant review, to ensure that each incremental deliverable is meeting requirements, and is correct. This avoids the problems encountered on projects for which a “program specification” is given to a software house who then delivers a “working system” meeting the spec. This process is prone to many problems and often results in unsatisfactory results. Our collaborative model is far more interactive and flexible allowing for “discovery” throughout the process. By taking small steps and checking at each step, we can prevent and correct any problems and miscommunications before they become so entrenched in the software that the end deliverable is not really what the end user had desired.

In The above diagram shows how we could interact in a typical internet application development project. TheDevShop would create a file repository on its FTP server that creates a single secured area for exchanging files and building a project “library”. Each party would contribute their deliverables, to the library and all parties involved can review and seek clarification as well as contribute to the deliverables. Much of the analysis and requirements would reside in this library. Each deliverable would go through a formal “acceptance” and while parallel tasks can occur, acceptance must be obtained on prerequisite tasks before the dependent task can occur. For example Programming would not begin before a user interface and database design had been reviewed and accepted by you. Unit development and testing will occur in our development center. Once accepted by our internal QA it would be published on our secure internet server where the on-site team members can access and test the application. Once accepted by the on-site team, the system would be handed over to the on-site team to install and test through the normal system promotion processes.
In addition to file sharing and early testing there are many other tools to assist in collaboration. E-mails are key for exchanging written correspondence. In addition we have also used internet “chat” to some dialog exchanges. Our video conference facilities offer yet another means to collaborate. Our video conference unit includes collaborative software to assist in file exchange and electronic white boards. For windows applications, we also leverage remote control software to share views of desktops, prototypes and demonstrations.
|
|
|