Abstract
Portability is a crucial requirement in the mobile game domain. Aspect-oriented programming has been shown to be a promising solution to implement the portability concerns, and more generally, to be a key technical enabler to transition mobile application development toward systematic software reuse. In this chapter, we report an exploratory case study that critically examines how aspect orientation is practiced in industrial-strength mobile game applications. Our analysis takes into account technical artifacts, organizational structures, and their relationships. Altogether these complementary and synergistic viewpoints allow us to formulate a set of hypotheses and to offer some concrete insights into developing information reuse and integration strategies in the rapidly changing landscape of mobile software development.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Alves, V., Camara, T., Alves, C.: Experiences with mobile games product line development at meantime. In: International Conference on Software Product Lines (SPLC), pp. 287–296. IEEE Press, New York (2008)
Alves, V., Cardim, I., Vital, H., Sampaio, P.H.M., Damasceno, A.L.G., Borba, P., Ramalho, G.: Comparative analysis of porting strategies in J2ME games. In: International Conference on Software Maintenance (ICSM), pp. 123–132. IEEE Press, New York (2005)
Alves, V., Matos, P., Cole, L., Vasconcelos, A., Borba, P., Ramalho, G.: Extracting and evolving code in product lines with aspect-oriented programming. Trans. Aspect-Oriented Softw. Dev. 4, 117–142 (2007)
Bhowmik, T., Alves, V., Niu, N.: Porting mobile games in an aspect-oriented way: an industrial case study. In: International Conference on Information Reuse and Integration (IRI), pp. 458–465. IEEE Press, New York (2013)
Bosch, J.: From software product lines to software ecosystems. In: International Conference on Software Product Lines (SPLC), pp. 111–119. Carnegie Mellon University, Pennsylvania (2009)
Cardoso, J.M.P., Carvalho, T., Coutinho, J.G.F., Luk, W., Nobre, R., Diniz, P.C., Petrov, Z.: LARA: an aspect-oriented programming language for embedded systems. In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 179–190. ACM Press, New York (2012)
Cataldo, M., Herbsleb, J.D.: Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity. In: International Symposium on Empirical Software Engineering and Measurement (ESEM), pp. 2–11. ACM Press, New York (2008)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Software Eng. 20, 476–493 (1994)
Conway, M.: How do committees invent? Datamation 14, 476–493 (1968)
Coplien, J.O., Harrison, N.B.: Organizational Patterns of Agile Software Development. Prentice Hall, New Jersey (2004)
Easterbrook, S., Singer, J., Storey, M.-A., Damian, D.: Selecting empirical methods for software engineering research. In: Shull, F., Singer, J., Sjøberg, D.I.K. (eds.) Guide to Advanced Empirical Software Engineering, pp. 285–311. Springer, London (2008)
Enough Software: J2ME Polish. http://www.j2mepolish.org
Facon, X.: Porting your MIDlets to new devices. http://www.webpronews.com/porting-your-midlets-to-new-devices-2003-05
Figueiredo, E., Cacho, N., Sant’Anna, C., Monteiro, M., Kulesza, U., Garcia, A., Soares, S., Ferrari, F.C., Khan, S.S., Filho, F.C., Dantas, F.: Evolving software product lines with aspects: an empirical study on design stability. In: International Conference on Software Engineering (ICSE), pp. 261–270. IEEE Press, New York (2008)
Figueiredo, E., Sant’Anna, C., Garcia, A., Bartolomei, T.T., Cazzola, W., Marchetto, A.: On the maintainability of aspect-oriented software: a concern-oriented measurement framework. In: European Conference on Software Maintenance and Reengineering (CSMR), pp. 183–192. IEEE Press, New York (2008)
Frakes, W.B., Fox, C.J.: Sixteen questions about software reuse. Commun. ACM 38, 75–87 (1995)
Jansen, S., Finkelstein, A., Brinkkemper, S.: A sense of community: a research agenda for software ecosystems (NIER Track). In: International Conference on Software Engineering (ICSE), pp. 187–190. IEEE Press, New York (2009)
Juniper Research: Looking at the future of mobile games. http://www.juniperresearch.com
Kanode, C.M., Haddad, H.M.: Software engineering challenges in game development. In: International Conference on Information Information Technology: New Generations (ITNG), pp. 260–265. IEEE Press, New York (2009)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: European Conference on Object-Oriented Programming (ECOOP), pp. 220–242. IEEE, Finland (1997)
Marek, L., Villazón, A., Zheng, Y., Ansaloni, D., Binder, W., Qi, Z.: DiSL: A domain-specific language for bytecode instrumentation. In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 239–250. ACM Press, New York (2012)
Menon, H.: Portability analysis in mobile gaming using J2ME. Master’s Thesis, West Virginia University, USA (2006)
Messerschmitt, D.G., Szyperski, C.: Software Ecosystem: Understanding an Indispensable Technology and Industry. The MIT Press, Cambridge (2005)
Murphy, G.C.: Everyday aspects (keynote presentation). In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 229–230. ACM Press, New York (2009)
Niu, N., Alves, V., Bhowmik, T.: Portability as an aspect: rethinking modularity in mobile game development. In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 3–4. ACM Press, New York (2011)
Niu, N., Easterbrook, S.: Concept analysis for product line requirements. In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 137–148. ACM Press, New York (2009)
Niu, N., Easterbrook, S., Yu, Y.: A taxonomy of asymmetric requirements aspects. In: International Workshop on Early Aspects (EA), pp. 1–18. Springer, London (2007)
Oracle: Jave 2 Platform Micro Edition. http://www.oracle.com/technetwork/java/javame
Qualcomm: Brew. http://www.brewmp.com
Rashid, A., Chitchyan, R.: Persistence as an aspect. In: International Conference on Aspect-Oriented Software Development (AOSD), pp. 120–129. ACM Press, New York (2003)
Rinard, M.: Sociological aspects of aspect-oriented programming (keynote presentation). In: International Conference on Aspect-Oriented Software Development (AOSD). ACM Press, New York (2010)
Scott, J.: Social Network Analysis: A Handbook. Sage Publications, London (2000)
Tukey, J.: Exploratory Data Analysis. Addison-Wesley, Boston (1977)
Yin, R.K.: Case Study Research: Design and Methods. Sage Publications, London (2003)
Young, T.J.: Using aspectJ to build a software product line for mobile devices. Master’s Thesis, University of British Columbia, Canada (2005)
Zhang, W., Jarzabek, S., Loughran, N., Rashid, A.: Reengineering a PC-based system into the mobile device product line. In: International Workshop on Principles of Software Evolution (IWPSE), pp. 149–160. IEEE Press, New York (2003)
Zhao, J.: Measuring coupling in aspect-oriented systems. In: International Software Metrics Symposium (METRICS), pp. 14–16. Chicago (2004)
Acknowledgments
We thank the partner companies for the generous support throughout our study, especially for sharing their data, time, and expertise. The work is in part supported by the U.S. NSF (National Science Foundation) Grant CCF-1238336.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Bhowmik, T., Alves, V., Niu, N. (2014). An Exploratory Case Study on Exploiting Aspect Orientation in Mobile Game Porting. In: Bouabana-Tebibel, T., Rubin, S. (eds) Integration of Reusable Systems. Advances in Intelligent Systems and Computing, vol 263. Springer, Cham. https://doi.org/10.1007/978-3-319-04717-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-04717-1_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-04716-4
Online ISBN: 978-3-319-04717-1
eBook Packages: EngineeringEngineering (R0)