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

Literal inter-language use case driven modularization

Published: 14 March 2016 Publication History
  • Get Citation Alerts
  • Abstract

    Use cases are a practically proven choice to concisely and precisely express what highly interactive systems do. Several attempts have been made to modularize code according to use cases. None of these approaches is able to gather all the code related to a use case in one module and to reflect its steps. However, to allow for code to be modularized according to use case flows and their steps, an instrumentation environment is necessary. In this paper, literal multi-language use case coding based on defragmentation is proposed. The approach aims at fully preserving use case flows in as comprehensible form as possible. The steps of use case flows appear directly in the code as comments. Despite being comments, the steps are active, which is achieved by a dedicated preprocessor and framework. The detailed step implementation gathers all the code fragments of each step each of which may be in a different programming language.

    References

    [1]
    M. M. Burnett and B. A. Myers. Future of end-user software engineering: Beyond the silos. In Proceedings of Future of Software Engineering, FOSE 2014, pages 201–211, Hyderabad, India, 2014. ACM.
    [2]
    M. Bystrický and V. Vrani´c. Preserving use case flows in source code. In Proceedings of 4th Eastern European Regional Conference on the Engineering of Computer Based Systems, ECBS-EERC 2015, Brno, Czech Republic, Aug. 2015. IEEE CS.
    [3]
    M. Bystrický and V. Vrani´c. Development environment for literal inter-language use case driven modularization. In Proceedings of Modularity 2016 Demos & Posters, Máálaga, Spain, 2016. ACM.
    [4]
    J. Bálik and V. Vrani´c. Symmetric aspect-orientation: Some practical consequences. In Proceedings of NEMARA 2012: International Workshop on Next Generation Modularity Approaches for Requirements and Architecture, at AOSD 2012, Potsdam, Germany, 2012. ACM.
    [5]
    A. Cockburn. Writing Effective Use Cases. Addison-Wesley, 2000.
    [6]
    J. Coplien and G. Bjørnvig. Lean Architecture for Agile Software Development. Wiley, 2010.
    [7]
    K. Czarnecki and U. Eisenecker. Generative Programming: Methods, Tools, and Applications. Addison-Wesley, 2000.
    [8]
    E. W. Dijkstra. On the role of scientific thought. Technical Report EWD 447, The University of Texas at Austin, USA, 1974. http: //www.cs.utexas.edu/users/EWD/ewd04xx/EWD447.PDF.
    [9]
    J. Franc˚u and P. Hnˇetynka. Automated code generation from system requirements in natural language. e-Informatica Software Engineering Journal, 3(1):72–88, 2009.
    [10]
    J. Greppel and V. Vrani´c. An opportunistic approach to retaining use cases in object-oriented source code. In Proceedings of 4th Eastern European Regional Conference on the Engineering of Computer Based Systems, ECBS-EERC 2015, Brno, Czech Republic, Aug. 2015.
    [11]
    [12]
    W. H. Harrison, H. L. Ossher, and P. L. Tarr. Asymmetrically vs. symmetrically organized paradigms for software composition. Technical Report RC22685, IBM Research, Dec. 2002.
    [13]
    S. Herrmann. A precise model for contextual roles: The programming language ObjectTeams/Java. Applied Ontology, 2(2):181–207, 2007. ISSN 1570-5838.
    [14]
    R. Hirschfeld, M. Perscheid, and M. Haupt. Explicit use-case representation in object-oriented programming languages. In Proceedings of 7th Symposium on Dynamic Languages, DLS’11, pages 51–60, Portland, Oregon, USA, 2011. ACM.
    [15]
    I. Jacobson. Use cases and aspects – working seamlessly together. Journal of Object Technology, 2(4), July–August 2003.
    [16]
    I. Jacobson and N. Pan-Wei. Aspect-Oriented Software Development with Use Cases. Addison-Wesley, 2004.
    [17]
    A. Kacofegitis and N. Churcher. Theme-based literate programming. In Proceedings of 9th Asia-Pacific Software Engineering Conference, APSEC 2012. IEEE, 2002.
    [18]
    D. E. Knuth. Literate programming. The Computer Journal, 27(2): 97–111, 1984.
    [19]
    M. Nosál’, J. Porubän, and M. Nosál’. Concern-oriented source code projections. In Proceedings of 2013 Federated Conference on Computer Science and Information Systems, FedCSIS 2013, pages 1541– 1544, Kraków, Poland, 2013. IEEE.
    [20]
    H. Ossher, W. Harrison, F. Budinsky, and I. Simmonds. Subjectoriented programming: Supporting decentralized development of objects. In Proceedings of 7th IBM Conference on Object-Oriented Technology, July 1994.
    [21]
    T. Reenskaug and J. O. Coplien. The DCI architecture: A new vision of object-oriented programming. Artima Developer, 2009. URL http://www.artima.com/articles/dci_vision.html.
    [22]
    M. Smith. Towards Modern Literate Programming. Honours project report, University of Canterbury, Christchurch, New Zeland, 2001.
    [23]
    V. Vrani´c. Towards multi-paradigm software development. Journal of Computing and Information Technology (CIT), 10(2):133–147, 2002.
    [24]
    J. Zat’ko and V. Vrani´c. Assessing the DCI approach to preserving use cases in code: Qi4J and beyond. In Proceedings of IEEE 19th International Conference on Intelligent Engineering Systems, INES 2015, Bratislava, Slovakia, 2015. IEEE.
    [25]
    M. Śmiałek, N. Jarz˛ebowski, and W. Nowakowski. Translation of use case scenarios to Java code. Computer Science, 13(4):35–52, 2012.
    [26]
    Introduction Use Cases as Code Modules Engaging Multiple Languages Processing Use Case Relationships Broader Context Implementation and Evaluation Related Work Conclusions and Further Work

    Cited By

    View all
    • (2023)Use case modeling in a research setting of developing an innovative pilgrimage support systemUniversal Access in the Information Society10.1007/s10209-023-01047-1Online publication date: 3-Nov-2023
    • (2023)Use Case Driven Educational Content EngineeringLearning in the Age of Digital and Green Transition10.1007/978-3-031-26190-9_14(139-150)Online publication date: 23-Feb-2023
    • (2017)Employing issues and commits for in-code sentence based use case identification and remodularizationProceedings of the Fifth European Conference on the Engineering of Computer-Based Systems10.1145/3123779.3123792(1-8)Online publication date: 31-Aug-2017
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    MODULARITY Companion 2016: Companion Proceedings of the 15th International Conference on Modularity
    March 2016
    217 pages
    ISBN:9781450340335
    DOI:10.1145/2892664
    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]

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 14 March 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. DCI
    2. Use case
    3. aspect-oriented programming
    4. flow of events
    5. intent
    6. modularization

    Qualifiers

    • Research-article

    Conference

    Modularity '16

    Acceptance Rates

    Overall Acceptance Rate 41 of 139 submissions, 29%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)3
    • Downloads (Last 6 weeks)0

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Use case modeling in a research setting of developing an innovative pilgrimage support systemUniversal Access in the Information Society10.1007/s10209-023-01047-1Online publication date: 3-Nov-2023
    • (2023)Use Case Driven Educational Content EngineeringLearning in the Age of Digital and Green Transition10.1007/978-3-031-26190-9_14(139-150)Online publication date: 23-Feb-2023
    • (2017)Employing issues and commits for in-code sentence based use case identification and remodularizationProceedings of the Fifth European Conference on the Engineering of Computer-Based Systems10.1145/3123779.3123792(1-8)Online publication date: 31-Aug-2017
    • (2017)Modularizing Code by Use Cases and Tests for Better MaintainabilityCompanion Proceedings of the 1st International Conference on the Art, Science, and Engineering of Programming10.1145/3079368.3079379(1-1)Online publication date: 3-Apr-2017
    • (2016)Development environment for literal inter-language use case driven modularizationCompanion Proceedings of the 15th International Conference on Modularity10.1145/2892664.2893465(12-15)Online publication date: 14-Mar-2016

    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