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.
Similar content being viewed by others
Notes
DBLP—http://www.informatik.uni-trier.de/~ley/db.
Mendeley—http://www.mendeley.com/.
UserRequirements and MockPlug: http://www.userrequirements.org.
10th Annual State of Agile Survey—http://stateofagile.versionone.com/.
CompleteSearch DBLP—http://www.dblp.org/search/index.php.
Balsamiq Mockups—http://balsamiq.com/products/mockups/.
Internet Movie Data Base - http://imdb.com; last accessed February 4, 2014.
YouTube—http://youtube.com; last accessed February 4, 2014.
References
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
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
Basili VR, Caldiera G, Rombach HD (1994) The goal question metric approach. Encycl Softw Eng 2(1994):528–532
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
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
Brusilovsky P (2001) Adaptive hypermedia. User Model User-Adap Inter 11:87–110
Cohen J (1988) Statistical power analysis for the behavioral sciences. 2nd edn. Routledge, London
Cohn M (2004) User stories applied: for agile software development. Addison-Wesley Professional, Boston
Dheepa V, Aravindhar DJ, Vijayalakshmi C (2013) A novel method for large scale requirement elicitation. Int J Eng Innov Technol (IJEIT) 2:375–379
Díaz O (2012) Understanding web augmentation. In: Grossniklaus M, Wimmer M (eds) Current trends in web engineering. Springer, Berlin, pp 79–80
Díaz O, Arellano C (2015) The augmented web: rationales, opportunities, and challenges on browser-side transcoding. ACM Trans Web (TWEB) 9(2):8
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
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
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
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
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
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
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
Glinz M (2007) On non-functional requirements. In: Requirements engineering conference, 2007. RE’07. 15th IEEE international, pp 21–26
Kelly S, Tolvanen JP (2008) Domain-specific modeling: enabling full code generation. Wiley, New York
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
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
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
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
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
McCornack RL (1965) Extended tables of the Wilcoxon matched pair signed rank statistic. J Am Stat Assoc 60(311):864–871
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
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
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)
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
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
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
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
Shull F, Singer J, Sjøberg DIK (eds) (2008) Guide to advanced empirical software engineering. Springer, London
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
Sutcliffe A (2010) Collaborative requirements engineering: bridging the gulfs between worlds. In: Intentional perspectives on information systems engineering. Springer, Berlin, pp 355–376
Ton H (2007). A strategy for balancing business value and story size. In: Agile conference (AGILE), 2007, pp 279–284
Vuković M (2009) Crowdsourcing for enterprises. In: 2009 World conference on Services-I, pp 686–692
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
Whittle J, Hutchinson J, Rouncefield M (2014) The state of practice in model-driven engineering. Softw IEEE 31(3):79–85
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
Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering. Springer Science & Business Media, Berlin
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
Platypus: https://addons.mozilla.org/es/firefox/addon/platypus/
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-016-0257-3