openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
704 stars 37 forks source link

[REVIEW]: BiGGer: A Model Transformation Tool written in Java for Bigraph Rewriting in GrGen.NET #6491

Closed editorialbot closed 3 months ago

editorialbot commented 6 months ago

Submitting author: !--author-handle-->@PioBeat<!--end-author-handle-- (Dominik Grzelak) Repository: https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs Branch with paper.md (empty if default branch): Version: v1.2.0 Editor: !--editor-->@vissarion<!--end-editor-- Reviewers: @abhishektiwari, @idoby Archive: 10.5281/zenodo.11565998

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/a4588689144a60762ef9a6df20096b2c"><img src="https://joss.theoj.org/papers/a4588689144a60762ef9a6df20096b2c/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/a4588689144a60762ef9a6df20096b2c/status.svg)](https://joss.theoj.org/papers/a4588689144a60762ef9a6df20096b2c)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@abhishektiwari & @Ethan-CS & @idoby, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @vissarion know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @idoby

📝 Checklist for @abhishektiwari

editorialbot commented 6 months ago

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 6 months ago

Software report:

github.com/AlDanial/cloc v 1.90  T=0.03 s (1453.1 files/s, 145188.6 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Java                            25            385            431           2047
Markdown                         2            174              0            489
TeX                              1             14              0            335
Maven                            1             10             17            294
XMI                             12              0              0            294
XML                              4              0              0            274
YAML                             1              1              4             18
JSON                             2              0              0              9
-------------------------------------------------------------------------------
SUM:                            48            584            452           3760
-------------------------------------------------------------------------------

Commit count by author:

    37  Dominik Grzelak
editorialbot commented 6 months ago

Paper file info:

📄 Wordcount for paper.md is 1079

✅ The paper includes a Statement of need section

editorialbot commented 6 months ago

License info:

✅ License found: Apache License 2.0 (Valid open source OSI approved license)

editorialbot commented 6 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-030-43916-3 is OK
- 10.1007/978-3-319-75396-6_5 is OK
- 10.1007/3-540-44618-4_19 is OK
- 10.1007/978-3-540-31847-7_20 is OK
- 10.1142/9789812562494_0038 is OK
- 10.1007/3-540-31188-2 is OK
- 10.1007/978-3-030-51372-6_3 is OK
- 10.1016/j.dam.2018.07.006 is OK
- 10.1007/11841883_27 is OK
- 10.1109/VLHCC.2005.23 is OK
- 10.5445/IR/1000007369 is OK
- 10.4204/EPTCS.231.2 is OK
- 10.1007/978-3-662-45917-1_2 is OK
- 10.1016/j.entcs.2007.04.013 is OK
- 10.1007/s00165-011-0184-5 is OK
- 10.1007/978-3-642-03741-2_28 is OK
- 10.1007/978-3-319-41540-6_27 is OK
- 10.1007/978-3-540-89020-1_38 is OK

MISSING DOIs

- No DOI given, and none found for title: EMF: Eclipse Modeling Framework
- No DOI given, and none found for title: The Space and Motion of Communicating Agents
- No DOI given, and none found for title: Principles of Model Checking
- No DOI given, and none found for title: Bigraphical Domain-specific Language (BDSL): User ...
- No DOI given, and none found for title: The GrGen.NET User Manual: Refers to GrGen.NET Rel...
- No DOI given, and none found for title: A SAT Based Algorithm for the Matching Problem in ...
- No DOI given, and none found for title: A CSP Implementation of the Bigraph Embedding Prob...
- No DOI given, and none found for title: Bigraph Ecore Metamodel (BEM): An EMOF-Compliant S...
- No DOI given, and none found for title: ISO/IEC 19508:2014 Information technology - Object...
- No DOI given, and none found for title: yFiles
- No DOI given, and none found for title: yComp

INVALID DOIs

- None
editorialbot commented 6 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

idoby commented 6 months ago

Review checklist for @idoby

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

abhishektiwari commented 6 months ago

Review checklist for @abhishektiwari

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

vissarion commented 4 months ago

Hello reviewers @abhishektiwari, @Ethan-CS, @idoby Any updates on your progress?

vissarion commented 4 months ago

Hello @abhishektiwari, @Ethan-CS, @idoby kind reminder to provide some feedback on your review progress.

abhishektiwari commented 4 months ago

@vissarion Thanks for the nudge. I will aim to provide first feedback mid next week.

Ethan-CS commented 4 months ago

Thanks for the reminder - really sorry about the delay, I’ve been out of action due to illness for a while but getting back to it now I’m out of hospital. Will keep in touch, aiming to have finished by end of next week.

On 14 May 2024, at 11:29, Vissarion Fisikopoulos @.***> wrote:

Hello @abhishektiwarihttps://github.com/abhishektiwari, @Ethan-CShttps://github.com/Ethan-CS, @idobyhttps://github.com/idoby kind reminder to provide some feedback on your review progress.

— Reply to this email directly, view it on GitHubhttps://github.com/openjournals/joss-reviews/issues/6491#issuecomment-2109843295, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARIYWRTWQSJBBLGVUH6QGJTZCHRPTAVCNFSM6AAAAABEXU36XGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBZHA2DGMRZGU. You are receiving this because you were mentioned.Message ID: @.***>

idoby commented 4 months ago

Hi, thanks for the reminder!

While this is well outside my field of expertise, just looking at the code it seems that this is a rather thin tool built on top of the GrGen framework. Can the author please explain why this package represents the results of significant scholarly effort as JOSS requires? It seems to me that if this code was written as part of a research paper on bigraphs, it might belong there rather than be published as a stand-alone general-use tool or library. Furthermore, the "statement of need" section of the paper does not seem to present the need for this tool, rather it describes what it accomplishes. Hence, I am not convinced that this package should be published as a stand-alone tool.

I would appreciate it if the author could clarify these points.

PioBeat commented 3 months ago

Sure, I will be glad to clarify the purpose of this tool!

Note that the present tool paper is part of another journal paper entitled "Efficient Bigraph Rewriting using GrGen.NET" submitted for review to ACM Formal Aspects of Computing, where the full mathematical details are given on how the method actually works that is implemented as presented here for JOSS. That is, the tool is a usable evaluation in form of a library and command-line tool. I could provide the manuscript to the reviewers upon request. While the code size is relatively small, the crucial and difficult part was the translation of the so-called relative pushout (RPO) rewrite semantics of bigraphs to the so-called single pushout (SPO) approach. These are two different category-theoretic approaches to graph rewriting with different properties. A side effect of developing such translation was the implementation of so-called tracking rules for bigraphs, which are further useful for causal reasoning and synchronization between two models.

In the software engineering communities it is widely acknowledged that graphs are a appropriate underlying mathematical formalism for representing and analyzing software models, modeling languages, processes and systems. An approach to model and analyze the dynamics of systems and processes is by using an approach called graph transformation systems. The usefulness of graph transformation in addressing various challenges in general software engineering is extensively explicated in [EEPT06]. Especially the algebraic formalisms, i.e., algebraic graph transformations systems, prove valuable as a formal specification technique in distributed state-based systems. Through the application of so-called graph transformation rules, computations and transitions can be effectively described by local transformation of states, which are represented as graphs. A rule consists of a left-hand side, specifying the graph pattern that needs to be found in the host graph, and a right-hand side that describes how the matched graph elements are rewritten afterwards. Then, rules are applied to the current graph as long as the left-hand side occurs in the graph. In this way, a transition system can be created and expanded incrementally by repeating the procedure on all new states until no rule can be applied anymore.

However, graph transformation essentially refers to the subgraph isomorphism problem, and more specifically for bigraphs this is referred to finding the forest in a tree (see [BaMR14]), both are NP-complete.

That being said, implementing bigraph matching and rewriting using the transformation tool GrGen.NET is for the following reasons. First, to supplement the currently sparsely available rewriting implementations for bigraphs by providing a working and efficient alternative, and second, to compare performance across these approaches in future work. From a practical standpoint, usable bigraph tools are BigraphER [SeCa16] and jLibBig [ChMP22], which solve bigraph matching as a Boolean satisfiability problem (SAT) and a Constraint satisfaction problem (CSP), respectively. I believe that it is important to provide alternative rewrite implementation grounded on different techniques to make bigraphs available for future experiments and provide access to users with other tools. A theory holds limited practical value in the absence of tools for its study and experimental evaluation.

I hope this clarifies some of your points. Should you have any further questions, I am more than happy to assist.

Kind regards, Dominik

[EEPT06] Ehrig, Hartmut; Ehrig, Karsten; Prange, Ulrike; Taentzer, Gabriele: Fundamentals of Algebraic Graph Transformation, Monographs in Theoretical Computer Science. An EATCS Series. Berlin Heidelberg : Springer-Verlag, 2006 — ISBN 978-3-540-31187-4 [BaMR14] Bacci, Giorgio; Miculan, Marino; Rizzi, Romeo: Finding a Forest in a Tree. In: Maffei, M.; Tuosto, E. (Hrsg.): Trustworthy Global Computing, Lecture Notes in Computer Science : Springer Berlin Heidelberg, 2014 — ISBN 978-3-662-45917-1 [SeCa16] Sevegnani, Michele; Calder, Muffy: BigraphER: Rewriting and Analysis Engine for Bigraphs. In: Chaudhuri, S. ; Farzan, A. (Hrsg.): 28th International Conference on Computer Aided Verification. Bd. 9780. Toronto, Canada : Springer International Publishing, 2016 — ISBN 978-3-319-41539-0 [ChMP22] Chiapperini, Alessio ; Miculan, Marino ; Peressotti, Marco: Computing (optimal) embeddings of directed bigraphs. In: Science of Computer Programming Bd. 221 (2022)

idoby commented 3 months ago

Your explanation does sound to me like substantial contribution has been made to your field in the other paper, and hope that it gets accepted into the ACM journal. However, as I understand it, JOSS requires that the software itself represent substantial effort and that it is likely to be used and cited as software. This package stands as the implementation of the algorithms in your other paper and therefore I believe users of your algorithms/code will likely cite the other paper, not the JOSS paper (as they should).

To conclude, while I applaud the scientific effort in developing the math, algorithms and implementation behind this package, I still have concerns regarding its fit for JOSS.

Since the JOSS guidelines are somewhat vague on this topic ("Co-publication of science, methods, and software"), I believe the decision should lie with the editor @vissarion.

vissarion commented 3 months ago

@idoby thank you for starting this discussion and for your comments. @PioBeat thank you for your detailed answer and for defending your submission.

I will first share my point of view with the editorial team and ask for feedback and I will come back to you with the result of the discussions.

vissarion commented 3 months ago

@editorialbot query scope

editorialbot commented 3 months ago

Submission flagged for editorial review.

vissarion commented 3 months ago

@idoby @PioBeat I have some news regarding the query scope.

I am convinced (and other JOSS editors agree) that in this case the method and the software can be considered are separate contributions. The software seems to address specific software challenges, it contains useful sample data for testing and evaluation and comes with detailed instructions.

Thus, I will remove the query-scope tag and we could continue the review process. @idoby is this OK with you?

idoby commented 3 months ago

Sure, I will continue my review then.

abhishektiwari commented 3 months ago

@PioBeat See my initial comments.

Given paper talks about users being able to use BiGGer programmatically in Java via the API, I suggest to publish the API/interface documentation for BiGGer before accepting this paper. I have opened the ticket to generate and publish the JavaDoc for BiGGer. It should be relatively a simple task.

Please also add contribution/Community guidelines.

Nonblocking

PioBeat commented 3 months ago

Dear @abhishektiwari,

I plan to create the Dockerfile with Mono, GrGen.NET, and BiGGer next week. Thank you for pointing out jEnv. This seems also a viable option.

abhishektiwari commented 3 months ago

Thanks @PioBeat

I will review updates in next few days and get back to you.

PioBeat commented 3 months ago

I have added a Dockerfile with Mono, GrGen.NET, and BiGGer already installed. The README explains how to run this.

I will close the respective issues after some time if there are no further amendments from your side.

abhishektiwari commented 3 months ago

Thanks @PioBeat for all the changes and also including Dockerfile for end user. I tested it worked as described.

@vissarion Completed review and checklist. Let me know if any thing else is needed for this review.

idoby commented 3 months ago

My review is also complete as far as I'm concerned.

vissarion commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

vissarion commented 3 months ago

@Ethan-CS since you now have two completed reviews and since it seems difficult for you to find the time for the review, I will remove you from the reviewers list. Thanks a lot for your interest and willingness to review this paper for JOSS.

vissarion commented 3 months ago

@editorialbot remove @Ethan-CS from reviewers

editorialbot commented 3 months ago

@Ethan-CS removed from the reviewers list!

vissarion commented 3 months ago

@abhishektiwari @idoby thank you both for your efforts!

vissarion commented 3 months ago

@PioBeat when a submission is ready to be accepted, we ask that the authors issue a new tagged release of the software (if changed), and archive it (see this guide). Please do this and post the version number and archive DOI here.

PioBeat commented 3 months ago

@vissarion Thanks for the notification. The tool is archived at Zenodo:

https://zenodo.org/doi/10.5281/zenodo.10803175

The latest version number is: v1.2.0

editorialbot commented 3 months ago

I'm sorry @PioBeat, I'm afraid I can't do that. That's something only editors are allowed to do.

vissarion commented 3 months ago

Thanks @PioBeat . Please update your zenodo record such that the title/authors/affiliations are exactly the same as in the JOSS submission.

PioBeat commented 3 months ago

Done @vissarion

vissarion commented 3 months ago

@editorialbot set 10.5281/zenodo.11565998 as archive

editorialbot commented 3 months ago

Done! archive is now 10.5281/zenodo.11565998

vissarion commented 3 months ago

@editorialbot set v1.2.0 as version

editorialbot commented 3 months ago

Done! version is now v1.2.0

vissarion commented 3 months ago

@editorialbot recommend-accept

editorialbot commented 3 months ago
Attempting dry run of processing paper acceptance...
editorialbot commented 3 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-030-43916-3 is OK
- 10.1007/978-3-319-75396-6_5 is OK
- 10.1007/3-540-44618-4_19 is OK
- 10.1007/978-3-540-31847-7_20 is OK
- 10.1142/9789812562494_0038 is OK
- 10.1007/3-540-31188-2 is OK
- 10.1007/978-3-030-51372-6_3 is OK
- 10.1016/j.dam.2018.07.006 is OK
- 10.1007/11841883_27 is OK
- 10.1109/VLHCC.2005.23 is OK
- 10.5445/IR/1000007369 is OK
- 10.4204/EPTCS.231.2 is OK
- 10.1007/978-3-662-45917-1_2 is OK
- 10.1016/j.entcs.2007.04.013 is OK
- 10.1007/s00165-011-0184-5 is OK
- 10.1007/978-3-642-03741-2_28 is OK
- 10.1007/978-3-319-41540-6_27 is OK
- 10.1007/978-3-540-89020-1_38 is OK

MISSING DOIs

- No DOI given, and none found for title: EMF: Eclipse Modeling Framework
- No DOI given, and none found for title: The Space and Motion of Communicating Agents
- No DOI given, and none found for title: Principles of Model Checking
- No DOI given, and none found for title: Bigraphical Domain-specific Language (BDSL): User ...
- No DOI given, and none found for title: The GrGen.NET User Manual: Refers to GrGen.NET Rel...
- No DOI given, and none found for title: A SAT Based Algorithm for the Matching Problem in ...
- No DOI given, and none found for title: A CSP Implementation of the Bigraph Embedding Prob...
- No DOI given, and none found for title: Bigraph Ecore Metamodel (BEM): An EMOF-Compliant S...
- No DOI given, and none found for title: ISO/IEC 19508:2014 Information technology - Object...
- No DOI given, and none found for title: yFiles
- No DOI given, and none found for title: yComp

INVALID DOIs

- None
editorialbot commented 3 months ago

:wave: @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/5482, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

danielskatz commented 3 months ago

@PioBeat - As track editor, I've now proofread your paper. I've suggested a lot of changes in https://github.com/bigraph-toolkit-suite/bigraphs.grgen-bigraphs/pull/5. Please merge this or let me know what you disagree with, then we can generate another proof as a final check and then publish the work.

danielskatz commented 3 months ago

@editorialbot recommend-accept

editorialbot commented 3 months ago
Attempting dry run of processing paper acceptance...
editorialbot commented 3 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-030-43916-3 is OK
- 10.1007/978-3-319-75396-6_5 is OK
- 10.1007/3-540-44618-4_19 is OK
- 10.1007/978-3-540-31847-7_20 is OK
- 10.1142/9789812562494_0038 is OK
- 10.1007/3-540-31188-2 is OK
- 10.1007/978-3-030-51372-6_3 is OK
- 10.1016/j.dam.2018.07.006 is OK
- 10.1007/11841883_27 is OK
- 10.1109/VLHCC.2005.23 is OK
- 10.5445/IR/1000007369 is OK
- 10.4204/EPTCS.231.2 is OK
- 10.1007/978-3-662-45917-1_2 is OK
- 10.1016/j.entcs.2007.04.013 is OK
- 10.1007/s00165-011-0184-5 is OK
- 10.1007/978-3-642-03741-2_28 is OK
- 10.1007/978-3-319-41540-6_27 is OK
- 10.1007/978-3-540-89020-1_38 is OK

MISSING DOIs

- No DOI given, and none found for title: EMF: Eclipse Modeling Framework
- No DOI given, and none found for title: The Space and Motion of Communicating Agents
- No DOI given, and none found for title: Principles of Model Checking
- No DOI given, and none found for title: Bigraphical Domain-specific Language (BDSL): User ...
- No DOI given, and none found for title: The GrGen.NET User Manual: Refers to GrGen.NET Rel...
- No DOI given, and none found for title: A SAT Based Algorithm for the Matching Problem in ...
- No DOI given, and none found for title: A CSP Implementation of the Bigraph Embedding Prob...
- No DOI given, and none found for title: Bigraph Ecore Metamodel (BEM): An EMOF-Compliant S...
- No DOI given, and none found for title: ISO/IEC 19508:2014 Information technology - Object...
- No DOI given, and none found for title: yFiles
- No DOI given, and none found for title: yComp

INVALID DOIs

- None
editorialbot commented 3 months ago

:wave: @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/5487, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept