Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2491411.2505428acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

Producing software by integration: challenges and research directions (keynote)

Published: 18 August 2013 Publication History
  • Get Citation Alerts
  • Abstract

    Software is increasingly produced according to a certain goal and by integrating existing software produced by third-parties, typically black-box, and often provided without a machine readable documentation. This implies that development processes of the next future have to explicitly deal with an inherent incompleteness of information about existing software, notably on its behaviour. Therefore, on one side a software producer will less and less know the precise behaviour of a third party software service, on the other side she will need to use it to build her own application. In this paper we present an innovative development process to automatically produce dependable software systems by integrating existing services under uncertainty and according to the specied goal. Moreover, we (i) discuss important challenges that must be faced while producing the kind of systems we are targeting, (ii) give an overview of the state of art related to the identied challenges, and finally (iii) provide research directions to address these challenges.

    References

    [1]
    G. Ammons, R. Bod´ık, and J. R. Larus. Mining specifications. In Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, POPL ’02, pages 4–16, New York, NY, USA, 2002. ACM.
    [2]
    M. Autili, V. Cortellessa, D. Di Ruscio, P. Inverardi, P. Pelliccione, and M. Tivoli. Eagle: engineering software in the ubiquitous globe by leveraging uncertainty. In Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering, ESEC/FSE ’11, pages 488–491, New York, NY, USA, 2011. ACM.
    [3]
    M. Autili, V. Cortellessa, D. Di Ruscio, P. Inverardi, P. Pelliccione, and M. Tivoli. Integration architecture synthesis for taming uncertainty in the digital space. In Proceedings of the 17th Monterey conference on Large-Scale Complex IT Systems: development, operation and management, pages 118–131, Berlin, Heidelberg, 2012. Springer-Verlag.
    [4]
    M. Autili, D. Di Ruscio, P. Inverardi, P. Pelliccione, and M. Tivoli. ModelLAND: where do models come from. In To appear, Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2013.
    [5]
    M. Autili, P. Inverardi, and P. Pelliccione. Graphical scenarios for specifying temporal properties: an automated approach. Automated Software Engg., 14(3):293–340, Sept. 2007.
    [6]
    M. Autili, L. Mostarda, A. Navarra, and M. Tivoli. Synthesis of decentralized and concurrent adaptors for correctly assembling distributed component-based systems. J. Syst. Softw., 81(12):2210–2236, Dec. 2008.
    [7]
    M. Autili, D. Ruscio, A. Salle, P. Inverardi, and M. Tivoli. A model-based synthesis process for choreography realizability enforcement. In V. Cortellessa and D. Varró, editors, Fundamental Approaches to Software Engineering, volume 7793 of Lecture Notes in Computer Science, pages 37–52. Springer Berlin Heidelberg, 2013.
    [8]
    T. Berg, B. Jonsson, and H. Raffelt. Regular inference for state machines using domains with equality tests. In Proc. of FASE’08/ETAPS’08, pages 317–331, 2008.
    [9]
    A. Bertolino, P. Inverardi, P. Pelliccione, and M. Tivoli. Automatic synthesis of behavior protocols for composable web-services. In Proc of ESEC/FSE ’09, 2009.
    [10]
    A. W. Biermann and J. A. Feldman. On the synthesis of finite-state machines from samples of their behavior. IEEE Trans. Comput., 21(6):592–597, June 1972.
    [11]
    R. Bruni, I. Lanese, and U. Montanari. A basic algebra of stateless connectors. Theor. Comput. Sci., 366(1):98–120, Nov. 2006.
    [12]
    R. I. Bull, M.-A. Storey, J.-M. Favre, and M. Litoiu. An architecture to support model driven software visualization. In Proceedings of the 14th IEEE International Conference on Program Comprehension, ICPC ’06, pages 100–106, Washington, DC, USA, 2006. IEEE Computer Society.
    [13]
    J. Bézivin. On the unification power of models. Software & Systems Modeling, 4(2):171––188, 2005.
    [14]
    K. L. Calvert and S. S. Lam. Formal methods for protocol conversion. IEEE J.Sel. A. Commun., 8(1):127–142, Sept. 2006.
    [15]
    C. Canal, P. Poizat, and G. Salaun. Model-based adaptation of behavioral mismatching components. Software Engineering, IEEE Transactions on, 34(4):546–563, 2008.
    [16]
    S. Ceri, D. Braga, F. Corcoglioniti, M. Grossniklaus, and S. Vadacca. Search computing challenges and directions. In Proc of ICOODB’10, pages 1–5, 2010.
    [17]
    L. Cheung, R. Roshandel, N. Medvidovic, and L. Golubchik. Early prediction of software component reliability. In Proceedings of the 30th international conference on Software engineering, ICSE ’08, pages 111–120, New York, NY, USA, 2008. ACM.
    [18]
    A. Cicchetti and D. Di Ruscio. Decoupling web application concerns through weaving operations. Sci. Comput. Program., 70(1):62–86, Jan. 2008.
    [19]
    A. Cicchetti, D. Di Ruscio, R. Eramo, and A. Pierantonio. Jtl: a bidirectional and change propagating transformation language. In Proceedings of the Third international conference on Software language engineering, SLE’10, pages 183–202, Berlin, Heidelberg, 2011. Springer-Verlag.
    [20]
    A. Cicchetti, D. Di Ruscio, L. Iovino, and A. Pierantonio. Managing the evolution of data-intensive web applications by model-driven techniques. Softw. Syst. Model., 12(1):53–83, Feb. 2013.
    [21]
    A. Cicchetti, D. D. Ruscio, and A. Pierantonio. A metamodel independent approach to difference representation. Journal of Object Technology, 6(9):165–185, 2007.
    [22]
    J. E. Cook and A. L. Wolf. Discovering models of software processes from event-based data. ACM Trans. Softw. Eng. Methodol., 7(3):215–249, July 1998.
    [23]
    K. Czarnecki and S. Helsen. Feature-based survey of model transformation approaches. IBM Syst. J., 45(3):621–645, July 2006.
    [24]
    V. Dallmeier, N. Knopp, C. Mallon, G. Fraser, S. Hack, and A. Zeller. Automatically generating test cases for specification mining. IEEE Transactions on Software Engineering, 38(2):243–257, 2012.
    [25]
    C. Damas, B. Lambeau, P. Dupont, and A. van Lamsweerde. Generating annotated behavior models from end-user scenarios. IEEE Trans. Softw. Eng., 31(12):1056–1073, Dec. 2005.
    [26]
    R. Di Cosmo, D. Di Ruscio, P. Pelliccione, A. Pierantonio, and S. Zacchiroli. Supporting Software Evolution in Component-Based FOSS Systems. Science of Computer Programming, 76(12), 2011.
    [27]
    D. Di Ruscio, L. Iovino, and A. Pierantonio. Coupled evolution in model-driven engineering. IEEE Software, 29(6):78–84, Nov. 2012.
    [28]
    D. Di Ruscio, L. Iovino, and A. Pierantonio. A methodological approach for the coupled evolution of metamodels and atl transformations. In 6th International Conference on Model Transformation (ICMT2013), volume 7909 of LNCS, pages 60–75. Springer, 2013.
    [29]
    D. Di Ruscio, I. Malavolta, H. Muccini, P. Pelliccione, and A. Pierantonio. Developing next generation adls through mde techniques. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE ’10, pages 85–94, New York, NY, USA, 2010. ACM.
    [30]
    M. Dumas, M. Spork, and K. Wang. Adapt or perish: Algebra and visual notation for service interface adaptation. In S. Dustdar, J. Fiadeiro, and A. Sheth, editors, Business Process Management, volume 4102 of Lecture Notes in Computer Science, pages 65–80. Springer Berlin Heidelberg, 2006.
    [31]
    Y. Ephraim and N. Merhav. Hidden markov processes. IEEE Transactions on Information Theory, 48:1518–1569.
    [32]
    D. Garlan. Software engineering in an uncertain world. In Proc. of FSE/SDP’10, pages 125–128, 2010.
    [33]
    C. Ghezzi, A. Mocci, and M. Monga. Synthesizing intensional behavior models by graph transformation. In Proc. of ICSE ’09, pages 430–440, 2009.
    [34]
    D. Giannakopoulou, Z. Rakamari´ c, and V. Raman. Symbolic learning of component interfaces. In Proceedings of the 19th international conference on Static Analysis, SAS’12, pages 248–264, Berlin, Heidelberg, 2012. Springer-Verlag.
    [35]
    R. Hilliard, I. Malavolta, H. Muccini, and P. Pelliccione. On the composition and reuse of viewpoints across architecture frameworks. In Proceedings of the 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture, WICSA-ECSA ’12, pages 131–140, Washington, DC, USA, 2012. IEEE Computer Society.
    [36]
    G. Hohpe and B. WOOLF. Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. A Martin Fowler signature book. Addison Wesley Professional, 2004.
    [37]
    P. Inverardi, R. Spalazzese, and M. Tivoli. Application-layer connector synthesis. In M. Bernardo and V. Issarny, editors, Formal Methods for Eternal Networked Software Systems, volume 6659 of Lecture Notes in Computer Science, pages 148–190. Springer Berlin Heidelberg, 2011.
    [38]
    P. Inverardi and M. Tivoli. Automatic synthesis of modular connectors via composition of protocol mediation patterns. In Proceedings of the 2013 International Conference on Software Engineering, ICSE ’13, pages 3–12, Piscataway, NJ, USA, 2013. IEEE Press.
    [39]
    F. Jiang, Y. Fan, and X. Zhang. Rule-based automatic generation of mediator patterns for service composition mismatches. In Proceedings of the 2008 The 3rd International Conference on Grid and Pervasive Computing - Workshops, GPC-WORKSHOPS ’08, pages 3–8, Washington, DC, USA, 2008. IEEE Computer Society.
    [40]
    S. S. Lam. Correction to ’protocol conversion’. IEEE Trans. Softw. Eng., 14(9):1376–, Sept. 1988.
    [41]
    X. Li, Y. Fan, J. Wang, L. Wang, and F. Jiang. A pattern-based approach to development of service mediators for protocol mediation. In Proceedings of the Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008), WICSA ’08, pages 137–146, Washington, DC, USA, 2008. IEEE Computer Society.
    [42]
    D. Lo, L. Mariani, and M. Santoro. Learning extended fsa from software: An empirical assessment. J. Syst. Softw., 85(9):2063–2076, Sept. 2012.
    [43]
    D. Lorenzoli, L. Mariani, and M. Pezzè. Automatic generation of software behavioral models. In Proc. of ICSE ’08, pages 501–510, 2008.
    [44]
    I. Malavolta, H. Muccini, P. Pelliccione, and D. Tamburri. Providing architectural languages and tools interoperability through model transformation technologies. IEEE Trans. Softw. Eng., 36(1):119–140, Jan. 2010.
    [45]
    A. D. Marco, P. Inverardi, and R. Spalazzese. Synthesizing self-adaptive connectors meeting functional and performance concerns. In SEAMS, pages 133–142, 2013.
    [46]
    R. Mateescu, P. Poizat, and G. Salaün. Adaptation of service protocols using process algebra and on-the-fly reduction techniques. In Proceedings of the 6th International Conference on Service-Oriented Computing, ICSOC ’08, pages 84–99, Berlin, Heidelberg, 2008. Springer-Verlag.
    [47]
    K. Meinke. Automated black-box testing of functional correctness using function approximation. In Proc. of ISSTA ’04, pages 143–153, 2004.
    [48]
    K. Mishra and K. Trivedi. Uncertainty propagation through software dependability models. In Software Reliability Engineering (ISSRE), 2011 IEEE 22nd International Symposium on, pages 80 –89, 29 2011-dec. 2 2011.
    [49]
    N. Moha, V. Mahé, O. Barais, and J.-M. Jézéquel. Generic model refactorings. In Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems, MODELS ’09, pages 628–643, Berlin, Heidelberg, 2009. Springer-Verlag.
    [50]
    M. Neil, N. Fenton, and M. Tailor. Using bayesian networks to model expected and unexpected operational losses. Risk Analysis, 25(4):963–972, 2005.
    [51]
    R. Paige and J. Gray. Guest editorial to the special issue on model transformation. Software & Systems Modeling, 12(1):85––87, 2013.
    [52]
    R. Passerone, L. de Alfaro, T. Henzinger, and A. Sangiovanni-Vincentelli. Convertibility verification and converter synthesis: two faces of the same coin {ip block interfaces}. In Computer Aided Design, 2002. ICCAD 2002. IEEE/ACM International Conference on, pages 132–139, 2002.
    [53]
    F. Paternò and C. Santoro. Preventing user errors by systematic analysis of deviations from the system task model. International Journal of Human-Computer Studies, 56(2):225 – 245, 2002.
    [54]
    H. Raffelt, B. Steffen, T. Berg, and T. Margaria. Learnlib: a framework for extrapolating behavioral models. Int. J. Softw. Tools Technol. Transf., 11(5):393–407, Oct. 2009.
    [55]
    D. Schmidt. Guest editor’s introduction: Model-driven engineering. Computer, 39(2):25–31, 2006.
    [56]
    D. C. Schmidt, M. Stal, H. Rohnert, and F. Buschmann. Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects. John Wiley & Sons, Inc., New York, NY, USA, 2nd edition, 2000.
    [57]
    H. Singh, V. Cortellessa, B. Cukic, E. Gunel, and V. Bharadwaj. A bayesian approach to reliability prediction and assessment of component based systems. In Proc. of ISSRE ’01, 2001.
    [58]
    B. Spitznagel and D. Garlan. A compositional formalization of connector wrappers. In Proceedings of the 25th International Conference on Software Engineering, ICSE ’03, pages 374–384, Washington, DC, USA, 2003. IEEE Computer Society.
    [59]
    R. Tairas and J. Gray. Increasing clone maintenance support by unifying clone detection and refactoring activities. Inf. Softw. Technol., 54(12):1297–1307, Dec. 2012.
    [60]
    R. Taylor, N. Medvidovic, and E. Dashofy. Software Architecture: Foundations, Theory, and Practice. Wiley, 2009.
    [61]
    M. Tivoli and P. Inverardi. Failure-free coordinators synthesis for component-based architectures. Sci. Comput. Program., 71(3):181–212, May 2008.
    [62]
    G. Tselentis and A. Galis. Towards the Future Internet: Emerging Trends from European Research. Stand alone Series. IOS Press, Incorporated, 2010.
    [63]
    S. Uchitel, G. Brunet, and M. Chechik. Synthesis of partial behavior models from properties and scenarios. IEEE Trans. Softw. Eng., 35:384–406, May 2009.
    [64]
    R. Vacul´ın, R. Neruda, and K. Sycara. An agent for asymmetric process mediation in open environments. In Proceedings of the 2008 AAMAS international conference on Service-oriented computing: agents, semantics, and engineering, SOCASE’08, pages 104–117, Berlin, Heidelberg, 2008. Springer-Verlag.
    [65]
    R. Vaculin and K. Sycara. Towards automatic mediation of owl-s process models. In Web Services, 2007. ICWS 2007. IEEE International Conference on, pages 1032–1039, 2007.
    [66]
    A. van Lamsweerde. Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, 2009.
    [67]
    N. Walkinshaw, B. Lambeau, C. Damas, K. Bogdanov, and P. Dupont. Stamina: a competition to encourage the development and assessment of software model inference techniques. Empirical Software Engineering, pages 1–34, 2012.
    [68]
    A. Wasylkowski, A. Zeller, and C. Lindig. Detecting object usage anomalies. In Proc. of ESEC-FSE ’07, 2007.
    [69]
    R. W. White and R. A. Roth. Exploratory Search: Beyond the Query-Response Paradigm. Synthesis Lect. on ICRS. Morgan & Claypool Publishers, 2009.
    [70]
    G. Wiederhold and M. Genesereth. The conceptual basis for mediation services. IEEE Expert: Intelligent Systems and Their Applications, 12(5):38–47, Sept. 1997.
    [71]
    D. M. Yellin and R. E. Strom. Protocol specifications and component adaptors. ACM Trans. Program. Lang. Syst., 19(2):292–333, Mar. 1997.

    Cited By

    View all
    • (2019)Automated Synthesis of Application-layer Connectors from Automata-based SpecificationsJournal of Computer and System Sciences10.1016/j.jcss.2019.03.001Online publication date: Mar-2019
    • (2018)Life Sciences-Inspired Test Case Similarity Measures for Search-Based, FSM-Based Software TestingModelling Foundations and Applications10.1007/978-3-319-92997-2_13(199-215)Online publication date: 29-May-2018
    • (2015)Automated Integration of Service-Oriented Software SystemsFundamentals of Software Engineering10.1007/978-3-319-24644-4_2(30-45)Online publication date: 12-Nov-2015
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ESEC/FSE 2013: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
    August 2013
    738 pages
    ISBN:9781450322379
    DOI:10.1145/2491411
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 18 August 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Dependable software systems
    2. automated synthesis
    3. model elicitation
    4. model-driven engineering

    Qualifiers

    • Research-article

    Conference

    ESEC/FSE'13
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 112 of 543 submissions, 21%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)1
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 10 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Automated Synthesis of Application-layer Connectors from Automata-based SpecificationsJournal of Computer and System Sciences10.1016/j.jcss.2019.03.001Online publication date: Mar-2019
    • (2018)Life Sciences-Inspired Test Case Similarity Measures for Search-Based, FSM-Based Software TestingModelling Foundations and Applications10.1007/978-3-319-92997-2_13(199-215)Online publication date: 29-May-2018
    • (2015)Automated Integration of Service-Oriented Software SystemsFundamentals of Software Engineering10.1007/978-3-319-24644-4_2(30-45)Online publication date: 12-Nov-2015
    • (2014)Open Architectures and Software EvolutionProceedings of the 2014 23rd Australian Software Engineering Conference10.1109/ASWEC.2014.36(66-69)Online publication date: 7-Apr-2014
    • (2014)The Role of Parts in the System BehaviourSoftware Engineering for Resilient Systems10.1007/978-3-319-12241-0_3(24-39)Online publication date: 2014

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media