Development paradigm in software teams is changing in the last decade Instead of “one team one project” paradigm creative software companies now encourage employees to follow “one team multiple projects” paradigm The paradigm shift enables creative software companies to explore more possibilities based on the same development foundation Further the paradigm brings flexibility for company managers to adjust business strategies according to changing market Success of the paradigm is based on the fact that development resources in modern software industry are getting richer and more diverse For example the human resource along with other resources now comes from both internal and external sources of software companies The external resources are called crowd-based resources To effectively manage crowd-based resources the idea of crowd sourced software process is proposed to decorate existing software process with crowd-centric features In crowd sourced software process vendor groups acquire crowd users and developers with complementary skills to collaborate with each other flexibly By validating prior stakeholders and gathering expertise effectively from the crowd vendor groups can have improved productivity and increased innovation in software application projects To maintain effective and consistent communication distributed knowledge of validation from up-to-date assets to collaborative activities must be captured and accumulated for software teams Conventional engineering methods such as requirement acquisition and elicitation methods are analyst-centric Very little discussion is in adapting conventional tools for validation in crowd-centric context In conventional workspace development resources are passively validated A software team must deal with complex validation needs among resources It is impractical to crowd sourced software process The vast number and diversity of development resources need new systems to maintain effective collaboration The effective collaboration requires development resources to continuously validate each other perform self-correction provide channels for reporting unreliable information and requesting evidence It is defined as reactive validation in this study To achieve reactive validation development resources must be encapsulated as reactive objects Reactive objects provide appropriate granularity for software teams to accumulate their optimal reactive validation knowledge Through reactive validation vendor groups can grow their reactive knowledge network which responds to development resource changes instantly and reveals collaboration opportunities intelligently
Reactive Validation on Collaborative Development Resources
維中, 胡. (Author). 2016 Sept 7
Student thesis: Doctoral Thesis