Skip to main content
Log in

CrowdMock: an approach for defining and evolving web augmentation requirements

  • Original Article
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

Web Applications are accessed by millions of users with different needs, goals, concerns, or preferences. Several well-known Web Applications provide personalized features, e.g., they recommend specific content to users by contemplating individual characteristics or requirements. However, since most Web Application cannot consider all users’ requirements, many developers started to create their own mechanisms for adapting existing applications. One of the most popular techniques for third-party applications adaptation is Web Augmentation, which is based on the alteration of its original user interface, generally by using scripts running at the client side (e.g., the browser). In the context of Web Augmentation, two user roles have emerged: scripters who are those users able to create a new augmentation artifact, and end users without programming skills, that just consume the artifacts that may satisfy totally or partially their needs. Scripters and end users generally do not know each other, and they have rarely a contact, beyond the fact that they use the same script repositories. When end users cannot get their needs covered with existing artifacts, they claim for new ones by specifying their requirements (called Web Augmentation requirements) using textual descriptions, which are usually hard to interpret by scripters. Web Augmentation requirements are a very particular kind of Web requirements for which there partially exist a solution implemented by the Web site owner, but still users need to change or augment that implementation with very specific purposes that they desire to be available in such site. In this paper, we propose an approach for defining and evolving Web Augmentation requirements using rich visual prototypes and textual descriptions that can be automatically mapped onto running software artifacts. We present a tool implemented to support this approach, and we show an evaluation of both the approach and the tool.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21

Similar content being viewed by others

Notes

  1. DBLP—http://www.informatik.uni-trier.de/~ley/db.

  2. Mendeley—http://www.mendeley.com/.

  3. https://openuserjs.org/scripts/YePpHa/YouTube_Center.

  4. https://openuserjs.org/scripts/JoeSimmons/YouTube_Auto_Buffer_Auto_HD.

  5. Stylish, https://addons.mozilla.org/es/firefox/addon/stylish/.

  6. https://forum.userstyles.org/categories/style-requests.

  7. https://addons.mozilla.org/en-us/firefox/addon/greasemonkey/.

  8. http://greasyfork.org/.

  9. http://userscripts-mirror.org/.

  10. http://userscripts-mirror.org/forums/2.html.

  11. UserRequirements and MockPlug: http://www.userrequirements.org.

  12. 10th Annual State of Agile Survey—http://stateofagile.versionone.com/.

  13. CompleteSearch DBLP—http://www.dblp.org/search/index.php.

  14. Balsamiq Mockups—http://balsamiq.com/products/mockups/.

  15. http://pencil.evolus.vn.

  16. https://balsamiq.com.

  17. http://www.lifia.info.unlp.edu.ar/crowdmock/public/crowdmockexperiment.zip.

  18. Internet Movie Data Base - http://imdb.com; last accessed February 4, 2014.

  19. YouTube—http://youtube.com; last accessed February 4, 2014.

  20. http://gomockingbird.com.

  21. https://adblockplus.org.

References

  1. Azadegan A, Cheng X, Niederman F, Yin G (2013) Collaborative requirements elicitation in facilitated collaboration: report from a case study. In: 2013 46th Hawaii international conference on system sciences (HICSS), pp 569–578

  2. Bao J, Sakamoto Y, Nickerson JV (2011) Evaluating design solutions using crowds. In: Seventeenth americas conference on information systems, August 4th–7th, pp 2013–2015

  3. Basili VR, Caldiera G, Rombach HD (1994) The goal question metric approach. Encycl Softw Eng 2(1994):528–532

    Google Scholar 

  4. Bigham J, Ladner R (2007) Accessmonkey: a collaborative scripting framework for web users and developers. In: Proceedings of international cross-disciplinary conference on web accessibility (W4A 2007), pp 25–34

  5. Bouvin NO (1999) Unifying strategies for Web augmentation. In: Proceedings of the tenth ACM conference on hypertext and hypermedia: returning to our diverse roots: returning to our diverse roots, pp 91–100

  6. Brusilovsky P (2001) Adaptive hypermedia. User Model User-Adap Inter 11:87–110

    Article  MATH  Google Scholar 

  7. Cohen J (1988) Statistical power analysis for the behavioral sciences. 2nd edn. Routledge, London

  8. Cohn M (2004) User stories applied: for agile software development. Addison-Wesley Professional, Boston

    Google Scholar 

  9. Dheepa V, Aravindhar DJ, Vijayalakshmi C (2013) A novel method for large scale requirement elicitation. Int J Eng Innov Technol (IJEIT) 2:375–379

    Google Scholar 

  10. Díaz O (2012) Understanding web augmentation. In: Grossniklaus M, Wimmer M (eds) Current trends in web engineering. Springer, Berlin, pp 79–80

  11. Díaz O, Arellano C (2015) The augmented web: rationales, opportunities, and challenges on browser-side transcoding. ACM Trans Web (TWEB) 9(2):8

    Google Scholar 

  12. Díaz O, Arellano C, Azanza M (2013) A language for end-user web augmentation: caring for producers and consumers alike. ACM Transactions on the Web (TWEB) 7(2):9

    Google Scholar 

  13. Díaz O, Arellano C, Aldalur I, Medina H, Firmenich S (2014) End-user browser-side modification of web pages. In: Benatallah B, Bestavros A, Manolopoulos Y, Vakali A, Zhang Y (eds) Web information systems engineering–WISE 2014. Springer International Publishing, pp 293–307

  14. Ferreira J, Noble J, Biddle R (2007) Agile development iterations and UI design. In: Eckstein J, Maurer F, Davies R, Melnik G, Pollice G, (eds) Agile conference (AGILE), 2007. pp 50–58

  15. Firmenich S, Gaits V, Gordillo S, Rossi G, Winckler M (2012) Supporting users tasks with personal information management and web forms augmentation. In: Brambilla M, Tokuda T,   Tolksdorf R (eds) Proceedings of international conference on web engineering. Springer, Berlin, pp 268–282

  16. Firmenich S, Rossi G, Winckler M (2013) A domain specific language for orchestrating user tasks whilst navigation web sites. In: Daniel F, Dolog P, Li Q (eds) Proceedings of international conference on  web engineering. Springer, Berlin Heidelberg, pp 224–232

  17. Firmenich D, Firmenich S, Rivero JM, Antonelli L (2014) A platform for web augmentation requirements specification. In: Casteleyn S, Rossi G, Winckler M (eds) Proceedings of international conference on web engineering. Springer International Publishing, pp 1–20

  18. Garrido A, Firmenich S, Rossi G, Grigera J, Medina-Medina N, Harari I (2013) Personalized web accessibility using client-side refactoring. Internet Computing, IEEE 17(4):58–66

    Article  Google Scholar 

  19. Glinz M (2007) On non-functional requirements. In: Requirements engineering conference, 2007. RE’07. 15th IEEE international, pp 21–26

  20. Kelly S, Tolvanen JP (2008) Domain-specific modeling: enabling full code generation. Wiley, New York

    Book  Google Scholar 

  21. Ko A, Myers B, Rosson M, Rothermel G, Shaw M, Wiedenbeck S, Abraham R, Beckwith L, Blackwell A, Burnett M (2011) The state of the art in end-user software engineering. ACM Comput Surv (CSUR) 43(3):21

    Article  Google Scholar 

  22. Lim SL, Quercia D, Finkelstein A (2010) StakeNet: using social networks to analyse the stakeholders of large-scale software projects. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering, vol 1, pp 295–304

  23. Lim SL, Damian D, Finkelstein A (2011) StakeSource2.0: using social networks of stakeholders to identify and prioritise requirements. In: 2011 33rd international conference on software engineering (ICSE), New York: IEEE Xplore, pp 1022–1024

  24. Lucassen G, Dalpiaz F, van der Werf JME, Brinkkemper S (2015) Forging high-quality user stories: towards a discipline for agile requirements. In: 2015 IEEE 23rd international requirements engineering conference (RE), pp 126–135

  25. Luna ER, Rossi G, Garrigós I (2011) WebSpec: a visual language for specifying interaction and navigation requirements in Web Applications. Requir Eng 16(4):297–321

    Article  Google Scholar 

  26. McCornack RL (1965) Extended tables of the Wilcoxon matched pair signed rank statistic. J Am Stat Assoc 60(311):864–871

    Article  MathSciNet  Google Scholar 

  27. Mukasa KS, Kaindl H (2008) An integration of requirements and user interface specifications. In: Proceedings of the 2008 16th IEEE international requirements engineering conference. IEEE Computer Society, pp 327–328

  28. Ponzanelli L, Bacchelli A, Lanza M (2013) Leveraging crowd knowledge for software comprehension and development. In: 2013 17th European conference on software maintenance and reengineering (CSMR), pp 57–66

  29. Reenadevi R, Dugalya P (2012) Identifying malicious stakeholders using algorithm For large scale requirement-elicitation. Int J Comput Commun Technol 3(6, 7, 8):106–108 (ISSN (Print): 0975–7449)

    Google Scholar 

  30. Ricca F, Scanniello G, Torchiano M, Reggio G, Astesiano E (2010) On the effectiveness of screen mockups in requirements engineering: results from an internal replication. In: Proceedings of the 2010 ACM-IEEE international symposium on empirical software engineering and measurement, p 17

  31. Rivero JM, Rossi G (2013) MockupDD: facilitating agile support for model-driven web engineering. In: Sheng Q, Kjeldskov J (eds) Current trends in web engineering. Springer International Publishing, pp 325–329

  32. Rivero JM, Grigera J, Rossi G, Luna ER, Montero F, Gaedke M (2014) Mockup-driven development: providing agile support for model-driven web engineering. Inf Softw Technol 56(6):670–687

    Article  Google Scholar 

  33. Shimakage M, Hazeyama A (2004) A requirement elicitation method in collaborative software development community. In: Product focused software process improvement. Springer, Berlin, pp 509–522

  34. Shull F, Singer J, Sjøberg DIK (eds) (2008) Guide to advanced empirical software engineering. Springer, London

  35. Sjøberg D, Anda B, Arisholm E, Dybå T, Jørgensen M, Karahasanovic A, Koren EF, Vokác M (2002) Conducting realistic experiments in software engineering. In: Proceedings of 2002 international symposium on empirical software engineering, 2002, pp 17–26

  36. Sutcliffe A (2010) Collaborative requirements engineering: bridging the gulfs between worlds. In: Intentional perspectives on information systems engineering. Springer, Berlin, pp 355–376

  37. Ton H (2007). A strategy for balancing business value and story size. In: Agile conference (AGILE), 2007, pp 279–284

  38. Vuković M (2009) Crowdsourcing for enterprises. In: 2009 World conference on Services-I, pp 686–692

  39. Walker M, Takayama L, Landay JA (2002) High-fidelity or low-fidelity, paper or computer? Choosing attributes when testing web prototypes. In: Proceedings of the human factors and ergonomics society annual meeting, vol 46, No. 5. SAGE Publications, pp 661–665

  40. Whittle J, Hutchinson J, Rouncefield M (2014) The state of practice in model-driven engineering. Softw IEEE 31(3):79–85

    Article  Google Scholar 

  41. Willighagen EL, O’Boyle NM, Gopalakrishnan H, Jiao D, Guha R, Steinbeck C, Wild DJ (2007) Userscripts for the life sciences. BMC Bioinform 8(1):487

    Article  Google Scholar 

  42. Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering. Springer Science & Business Media, Berlin

    Book  MATH  Google Scholar 

  43. Wu W, Tsai WT, Li W (2013) Creative software crowdsourcing: from components and algorithm development to project concept formations. Int J Creat Comput 1(1):57–91

    Article  Google Scholar 

  44. Platypus: https://addons.mozilla.org/es/firefox/addon/platypus/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sergio Firmenich.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Firmenich, D., Firmenich, S., Rivero, J.M. et al. CrowdMock: an approach for defining and evolving web augmentation requirements. Requirements Eng 23, 33–61 (2018). https://doi.org/10.1007/s00766-016-0257-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-016-0257-3

Keywords

Navigation