Towards Refactoring DMARF and GIPSY OSS
Aaradhna Goyal, Ali Alshamrani, Dhivyaa Nandakumar, Dileep Vanga,, Dmitriy Fingerman, Parul Gupta, Riya Ray, Srikanth Suryadevara

TL;DR
This paper explores the design, implementation, and potential refactoring of two open-source systems, DMARF and GIPSY, focusing on architectural analysis, code quality issues, and proposing improvements for future development.
Contribution
It provides a detailed architectural and pattern analysis of DMARF and GIPSY, identifies code smells, and suggests refactorings with patchsets for future integration.
Findings
Identification of code smells in both systems
Proposed refactorings with patchsets for future implementation
Analysis of design patterns and architectural components
Abstract
We present here an exploratory and investigatory study of the requirements, design, and implementation of two opensource software systems: the Distributed Modular Audio Recognition Framework (DMARF), and the General Intensional Programming System (GIPSY). The inception, development, and evolution of the two systems have overlapped and in terms of the involved developers, as well as in their applications. DMARF is a platform independent collection of algorithms for pattern recognition, identification and signal processing in audio and natural language text samples, become a rich platform for the research community in particular to use, test, and compare various algorithms in the broad field of pattern recognition and machine learning. Intended as a platform for intensional programming, GIPSY's inception was intended to push the field of intensional programming further, overcoming…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Software Engineering Methodologies · Software Engineering Research · Logic, programming, and type systems
