Abstract
Software development is either creation activities that rely on developers creativity and talents, or manufacturing activities that follow the engineering processes. Engineering processes need to include creation activities to address tasks such as requirement elicitation and bug finding . On the other hand, by exploiting the crowd wisdom, open-source development has been demonstrated to be a suitable environment for software creation. However, it also has several limitations, such as guaranteeing the progress and quality of production process. This paper introduces a software development platform and ecosystem that combines the strengths of the two models. First, we propose the Trustworthy Software Model as a basis to support such a hybrid development ecosystem . The core of this model contains a novel lifecycle model, an evidence model and an evolution model. Second, based on the model, we propose the Trustworthy Software Development and Evolution Service Model. It integrates crowd collaboration , resource sharing, runtime monitoring , and trustworthiness analysis into an unified framework. Based on this integrated model, we designed and implemented TRUSTIE , which distinguishes itself from other software crowdsourcing platforms by providing the software collaborative development service and the resource sharing service with the general support of trustworthiness-analysis tools. TRUSTIE enables crowd-oriented collaboration among internal development teams and the external crowds by combining the software creation and software manufacturing in one ecosystem.
Keywords
- Software Project
- Software Artifact
- Software Resource
- Software Development Environment
- Collaborative Development
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
DeMarco, T., Lister, T.: Peopleware-Productive Projects and Teams. Dorset House Publishing Co., New York (1987)
Herbsleb, J.D.: Global software engineering: the future of socio-technical coordination. In: 2007 Future of Software Engineering, pp. 188–198. IEEE Computer Society (2007)
Howe, J.: Crowdsourcing: Why the Power of the Crowd is Driving the Future of Business. Random House, New York (2008)
Giles, J.: Internet encyclopaedias go head to head. Nature 438(7070), 900–901 (2005)
Torvalds, L.: The linux edge. Commun. ACM 42(4), 38–39 (1999)
Surowiecki, J.: The Wisdom of crowds: why the many are smarter than the few and how collective wisdom shapes business. Economies, Societies and Nations (2004)
Lakhani, K.R., Panetta, J.A.: The principles of distributed innovation. Innovations 2(3), 97–112 (2007)
Capek, P.G., Frank, S.P., Gerdt, S., Shields, D.: A history of IBM’s open-source involvement and strategy. IBM SYST. J. 44(2), 249–257 (2005)
Raymond, E.: The cathedral and the bazaar. Knowl. Technol. Policy 12(3), 23–49 (1999)
Xu, J.: System Programming Language. China Science Press, Beijing (1987)
Hasselbring, W., Reussner, R.: Toward trustworthy software systems. Computer 39(4), 91–92 (2006)
Robillard, P.N.: The role of knowledge in software development. Commun. ACM 42(1), 87–92 (1999)
Yang, F., Lü, J., Mei, H.: Technical framework for internetware: an architecture centric approach. Sci. China Ser. F: Inf. Sci. 51(6), 610–622 (2008)
Huang, S.K.: Mining version histories to verify the learning process of legitimate peripheral participants. ACM SIGSOFT Softw. Eng. Notes 30(4), 1–5 (2005)
Zanetti, M.S., Scholtes, I., Tessone, C.J., Schweitzer, F.: Categorizing bugs with social networks: a case study on four open source software communities. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 1032–1041. IEEE Press (2013)
Dou, W., Wei, G.W., Wei, J.C.: Collaborative software development environment and its construction method. J. Front. Comput. Sci. Technol. 5(7), 624–632 (2011)
TrustieTeam: Trustie software resource management specification, trustie-srmc v2.0 (2011)
O’reilly, T.: What is web 2.0: design patterns and business models for the next generation of software. Commun. Strateg. (65) (2007)
Wu, W., Tsai, W.T., Li, W.: An evaluation framework for software crowdsourcing. Front. Comput. Sci. 7(5), 694–709 (2013)
Yu, Y., Wang, H., Yin, G., Ling, C.: Reviewer recommender of pull-requests in GitHub. In: 2014 30th IEEE International Conference on International Conference on Software Maintenance and Evolution (ICSME 2014 TOOLS), pages to appear. IEEE (2014)
TrustieTeam: Trustie collaborative development environment reference specification, trustie-forge v2.0 (2011)
Lin, Y., Huai-Min, W., Gang, Y., Dian-Xi, S., Xiang, L.: Mining and analyzing behavioral characteristic of developers in open source software. Chin. J. Comput. 10, 1909–1918 (2010)
Zhou, M., Mockus, A.: Developer fluency: achieving true mastery in software projects. In: Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 137–146. ACM (2010)
TrustieTeam: Trustie software production line integration specification, trustie-spl v3.1 (2011)
Zhao, J., Xie, B., Wang, Y., Xu, Y.: TSRR: A software resource repository for trustworthiness resource management and reuse. In: SEKE, pp. 752–756 (2010)
TrustieTeam: Trustie software trustworthiness classification specification, trustie-stc v2.0 (2011)
Cai, S., Zou, Y., Shao, L., Xie, B., Shao, W.: Framework supporting software assets evaluation on trustworthiness. J. Softw. China 21(2), 359–372 (2010)
Wang, T., Wang, H., Yin, G., Ling, C.X., Li, X., Zou, P.: Mining software profile across multiple repositories for hierarchical categorization. In: 2013 29th IEEE International Conference on Software Maintenance (ICSM), pp. 240–249. IEEE (2013)
Yu, Y., Wang, H., Yin, G., Liu, B.: Mining and recommending software features across multiple web repositories. In: Proceedings of the 5th Asia-Pacific Symposium on Internetware, p. 9. ACM (2013)
Shao, L., Zhao, J., Xie, T., Zhang, L., Xie, B., Mei, H.: User-perceived service availability: a metric and an estimation approach. In: IEEE International Conference on Web Services, ICWS 2009, pp. 647–654. IEEE (2009)
Zeng, J., Sun, H.L., Liu, X.D., Deng, T., Huai, J.P.: Dynamic evolution mechanism for trustworthy software based on service composition. J. Softw. 21(2), 261–276 (2010)
Booch, G., Brown, A.W.: Collaborative development environments. Adv. Comput. 59, 1–27 (2003)
Kazman, R., Chen, H.M.: The metropolis model a new logic for development of crowdsourced systems. Commun. ACM 52(7), 76–84 (2009)
Tapscott, D., Williams, A.D.: Wikinomics: How Mass Collaboration Changes Everything. Penguin, New York (2008)
Mockus, A., Fielding, R.T., Herbsleb, J.: A case study of open source software development: the apache server. In: Proceedings of the 22nd International Conference on Software Engineering, pp. 263–272. ACM (2000)
Crowston, K., Howison, J.: The social structure of free and open source software development. First Monday 10(2) (2005)
Sarma, A., Maccherone, L., Wagstrom, P., Herbsleb, J.: Tesseract: interactive visual exploration of socio-technical relationships in software development. In: IEEE 31st International Conference on Software Engineering, ICSE 2009, pp. 23–33. IEEE (2009)
Dabbish, L., Stuart, C., Tsay, J., Herbsleb, J.: Social coding in GitHub: transparency and collaboration in an open software repository. In: Proceedings of the ACM 2012 Conference on Computer Supported Cooperative Work, pp. 1277–1286. ACM (2012)
Posnett, D., D’Souza, R., Devanbu, P., Filkov, V.: Dual ecological measures of focus in software development. In: 2013 35th International Conference on Software Engineering (ICSE), pp. 452–461. IEEE (2013)
Bird, C., Nagappan, N., Devanbu, P., Gall, H., Murphy, B.: Does distributed development affect software quality?: An empirical case study of windows vista. Commun. ACM 52(8), 85–93 (2009)
Mockus, A.: Amassing and indexing a large sample of version control systems: towards the census of public source code history. In: 6th IEEE International Working Conference on Mining Software Repositories, MSR’09, pp. 11–20. IEEE (2009)
Begel, A., Bosch, J., Storey, M.A.: Social networking meets software development: perspectives from github, msdn, stack exchange, and topcoder. Softw. IEEE 30(1), 52–66 (2013)
Liu, K., Shan, Z., Wang, J., He, J., Zhang, Z., Qin, Y.: Overview on major research plan of trustworthy software. Bull. Natl. Nat. Sci. Found. China 22(3), 145–151 (2008)
Boehm, B.W., Brown, J.R., Kaspar, H., Lipow, M., MacLeod, G.J., Merrit, M.J.: Characteristics of Software Quality, vol. 1. North-Holland Publishing Company, Amsterdam (1978)
McCall, J.A., Richards, P.K., Walters, G.F.: Factors in Software Quality. General Electric National Technical Information Service, Berlin (1977)
Golden, B.: Succeeding with Open Source. Addison-Wesley Professional, Boston (2005)
Wasserman, A., Pal, M., Chan, C.: The business readiness rating model: an evaluation framework for open source. In: Proceedings of the EFOSS Workshop, Como, Italy (2006)
Russo, B., Damiani, E., Hissam, S., Lundell, B., Succi, G.: Open Source Development, Communities and Quality. Springer, Berlin (2008)
Bird, C., Nagappan, N.: Who? Where? What? examining distributed development in two large open source projects. In: 2012 9th IEEE Working Conference on Mining Software Repositories (MSR), pp. 237–246. IEEE (2012)
Barr, J.: The paradox of free/open source project management (2005). http://archive09.linux.com/feature/42466. Accessed 6 May 2014
Aranda, J., Venolia, G.: The secret life of bugs: going past the errors and omissions in software repositories. In: Proceedings of the 31st International Conference on Software Engineering, pp. 298–308. IEEE Computer Society (2009)
Anonymous: Gerrit code review—a quick introduction, version 2.10-rc0-199-g60bca74 (2014). https://gerrit-review.googlesource.com/Documentation/intro-quick.html
Anonymous: Crowdsourcing software development, from Wikipedia (2014). http://en.wikipedia.org/wiki/Crowdsourcing_software_development
Wu, W., Tsai, W.T., Li, W.: Creative software crowdsourcing: from components and algorithm development to project concept formations. Int. J. Creat. Comput. 1(1), 57–91 (2013)
Huhns, M.N., Li, W., Tsai, W.T.: Cloud-based software crowdsourcing (dagstuhl seminar 13362). Dagstuhl Rep. 3(9) (2013)
Tsai, W.T., Wu, W., Huhns, M.N.: Cloud-based software crowdsourcing. IEEE Internet Comput. 18(3), 78–83 (2014). http://doi.ieeecomputersociety.org/10.1109/MIC.2014.46
Acknowledgments
This research is supported by the National High Technology Research and Development Program of China (Grant No. 2012AA011200), and National Natural Science Foundation of China (Grant No. 61432020 and 61472430). Our gratitude goes to all members of the TRUSTIE project, for their hard work and contribution, and also to the experts from the information technology domain of the National 863 Plan, for their continuous support and guidance.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Wang, H., Yin, G., Li, X., Li, X. (2015). TRUSTIE: A Software Development Platform for Crowdsourcing. In: Li, W., Huhns, M., Tsai, WT., Wu, W. (eds) Crowdsourcing. Progress in IS. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-47011-4_10
Download citation
DOI: https://doi.org/10.1007/978-3-662-47011-4_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-47010-7
Online ISBN: 978-3-662-47011-4
eBook Packages: Business and EconomicsBusiness and Management (R0)