IRJMETS60500285176 May

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

e-ISSN: 2582-5208

International Research Journal of Modernization in Engineering Technology and Science


( Peer-Reviewed, Open Access, Fully Refereed International Journal )
Volume:06/Issue:05/May-2024 Impact Factor- 7.868 www.irjmets.com
CHATBOT (GEMINI AI): CHAT WITH SUPERCHARGE YOUR IDEAS
Abhay Kumar Gupta*1, Aryan Tayal*2, Nilima Chand*3, Prashant Kumar*4, Prof. J. P. Bhati*5
*1,2,3,4,5Department of CSE -AI,IIMT College Of Engineering, Greater Noida(UP), India.
DOI : https://www.doi.org/10.56726/IRJMETS57937
ABSTRACT
Gemini is a maintenance support environment based on code clone analysis.
This paper delves into the intricate landscape of GEMINI, aiming to dissect the fundamental features,
technological frameworks, and challenges inherent in replicating the renowned communication platform.
GEMINI, with its seamless integration of text, voice, and video communication along with robust community
management tools, stands as a paragon in the realm of real-time communication platforms. The primary
objectives of this study involve a comprehensive analysis of GEMINI's key features, exploration of technologies
suitable for web-based real-time communication, and a deep dive into the challenges faced during the
development of a GEMINI. The technological framework encompasses front-end development using HTML, CSS,
JavaScript, and frameworks like React.js or Next.js, while the back-end relies on Node.js. The challenges
encountered in GEMINI development revolve around scalability, security, and real-time communication
efficiency. Successfully navigating these challenges is crucial for developers aiming to create a scalable, secure,
and responsive communication. This research equips developers with a comprehensive guide, offering insights
into design principles, technology choices, and strategies to overcome obstacles in the dynamic landscape of
GEMINI web development.
I. INTRODUCTION
Maintaining software systems is getting more complex and difficult task, as the scale becomes larger. Code
clone is one of the factors that make software maintenance difficult [1].A code is a portion in source files that
is identical or similar to another. If some faults are found in a code clone, it is necessary to correct the faults in
its all-code clones. However, for large-scale software, it is very difficult to modify them into the right way them
completely. In order to detect the code clones effectively, various clone detection methods have been proposed.
We have proposed and developed a code detection tool
,that detects code clones from single program or multiples. In this paper,we present a maintenance support
environment, called Gemini [3], which visualizes the code clone information from CCFinder .Using Gemini,we
can specify a set of distinctive code through GUIs, and refer theportionsofsourcecodecorrespondingtotheclones,
sothatreconstruction or so can be carried out with high maintainability.
Preliminaries
1.1 Definition on clone and related terms
A code relation is defined as an equivalence relation(i.e., reflexive, transitive, and symmetric relation) on
codeportions. A code relation holds between two code portionsif they are the same sequences.For a givenclone
relation, a pair of code portions is called code pair ifthe clone relation holds between the portions. An
equivalence class of code relationis called cloneclass.That is,a clone class is a maximal set of code portions in
which aclone relation holds between any pairs of code portions. Acode portion in a clone class of a programs is
called a codeclone.

www.irjmets.com @International Research Journal of Modernization in Engineering, Technology and Science


[8503]
e-ISSN: 2582-5208
International Research Journal of Modernization in Engineering Technology and Science
( Peer-Reviewed, Open Access, Fully Refereed International Journal )
Volume:06/Issue:05/May-2024 Impact Factor- 7.868 www.irjmets.com
CC Finder
CC Finder detects code clones fromall the sub-stringsof token sequence of source code and outputs the
locationsofthe clone pairs onthe sourcecode.In clone detectionof CCFinder, the token sequence of source code is
trans-formed, i.e., tokens are added, removed, or changed basedon the transformation rules that aims at
regularization ofidentifiersandidentificationofstructures.Then,eachidentifier related to types, variables, and
constants is replacedwith a special token.This replacement makes code portions with different variable names
a clone pair. Details ofCCFinderhave been shown in [2].
CCFinder has no GUI but it only generates character-based output.It is quite difficult for the person who
analyzes the source code to investigate a code clone only fromthis information and source code, and to perform
analysis of the source code and reconstruction of it.
Maintenance support environment
Design
Gemini invokes CCFinder internally and analyzes theoutputs from CCfinder.The architecture of Gemini is
shown in Figure1.
First of all, source files are input into code clone detector,CCFinder. Then the output of CC Finder is
accumulated in this code clone database. Using the database, clone pairmanage randclonecl assmanag
ervisualizetheinformationofclonepairsorclasses.Onsomeinterfaces,user can specify clone pairs or classes, he or
she is interested in. By selecting them, he or she can refer to the actual source code through source code
manager and its UI.
As principal interfaces to analyses code clones, there isscatter plot view and metric graph view in Gemini as
follows:
Scatterplotview
In scatter plot, both the vertical and horizontal axes represent lines of source files. A black dot means that the
corresponding tokens on the horizontal and the vertical axis arethe same. So, a clone pair is shown as a
diagonal line segment. Naturally, a diagonal line from the upper left to thelower right is always drawn since
such dot means comparison of token with itself. The dots are symmetrical with adiagonal line. In Figure 2(a),
each file includes only threetokens in order to simplify the plot and files are sorted inalphabeticalorder
ofthefilepaths. However, the distribution of dots is occasionally spreadwidely, depending on the file order. In
such case, the costforanalysisishighespeciallyinlarge- scalesoftware.

So, we give this view a sorting function with respect to the file ordernottodistri buteclonepairsall overthescatterpl
ot asmuchas possible. As a basic idea of sorting, we put similar filesas near as possible. Here the ratio of
covered code range ofafilebyclonesoftheotherfilethatistargetforcomparisonis used as the criterion of similarity.
Figure 2(a) is a scatterplotbeforesorting.Bythesorting, thedistributionbecomesnarrowerinFigure2(b).
UsingthisplotasuserinterfacelikeinFigure3(c)),usercaneasilyidentifythelocationofclonepairs.Thenthecorerespo
ndingsourcecodecanbereferredthroughsourcecodeview(SeeFigure3(c)).
www.irjmets.com @International Research Journal of Modernization in Engineering, Technology and Science
[8504]
e-ISSN: 2582-5208
International Research Journal of Modernization in Engineering Technology and Science
( Peer-Reviewed, Open Access, Fully Refereed International Journal )
Volume:06/Issue:05/May-2024 Impact Factor- 7.868 www.irjmets.com
Metricgraph view
In this view, the values of several kinds of metrics foreach clone class are shown as a graph, parallel
coordinates.For an example of metrics, there is DFL [2].It indicatesan estimation of how many tokens would be
removed fromsource files when the code portions in a given clone classare reconstructed. Based on the values
of such metrics, wecan focus on distinctive code clones that may be meaning-full in maintenance.By setting the
warning (interesting)range aboutthe value of each metric, user can select cloneclasses whose metric values are
in the range (See Figure3(b)).

(a)Scatterplotview(rightside)andclonepairlist view(leftside)

(b) Metricgraph(rightside)andcloneclasslist view(leftside)


www.irjmets.com @International Research Journal of Modernization in Engineering, Technology and Science
[8505]
e-ISSN: 2582-5208
International Research Journal of Modernization in Engineering Technology and Science
( Peer-Reviewed, Open Access, Fully Refereed International Journal )
Volume:06/Issue:05/May-2024 Impact Factor- 7.868 www.irjmets.com

(c) Sourcecodeview(rightside)
Implementation
Gemini has been implemented in Java and runs on the environment whereJDK1.3VM can be executed. A
example of GUI is shown in Figure3.
Market Opportunities
1. Expanding Market Reach:
• Geographical Expansion: Targets emerging markets with high potential for cryptocurrency adoption.
• Institutional Investors: Attracts institutional investors through enhanced security and regulatory
compliance.
2. Diversified Services:
• Trading Options: Offers a variety of trading options including spot trading, futures, and staking.
• Educational Resources: Provides comprehensive educational resources to help users understand
cryptocurrency trading.
II. CONCLUSION
The Gemini Clone presents a compelling proposition in the cryptocurrency exchange market by offering a
platform with similar functionalities and security features as Gemini. However, it faces significant challenges,
including market competition, regulatory compliance, and technical risks. With strategic planning and robust
execution, theGemini Clone can carve out its niche, offering value to users and contributing to the broader
cryptocurrency ecosystem.
III. REFERENCES
[1] Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System.
[2] The Gemini Exchange. (2023). Retrieved fromhttps://www.gemini.com
[3] Global Financial Regulations. (2023). Analysis of Cryptocurrency Compliance Standards.
[4] Cloud Security Alliance. (2023). Best Practices for Securing Cloud-Based Applications.
[5] B.S. Baker, On finding duplication and near-duplication in large software systems, in: WCRE’95:
Proceedings of the 2nd Working Conference on Reverse Engineering, IEEE Computer Society, 1995,
pp.86.
www.irjmets.com @International Research Journal of Modernization in Engineering, Technology and Science
[8506]
e-ISSN: 2582-5208
International Research Journal of Modernization in Engineering Technology and Science
( Peer-Reviewed, Open Access, Fully Refereed International Journal )
Volume:06/Issue:05/May-2024 Impact Factor- 7.868 www.irjmets.com
[6] I.D. Baxter, A. Yahin, L.M. de Moura, M. Sant’Anna, L. Bier, Clone detection using abstract syntax trees, in:
ICSM’98: Proceedings of the 14th IEEE International Conference on Software Maintenance, IEEE
Computer Society, 1998, pp. 368–377.
[7] R. Geiger, B. Fluri, H.C. Gall, M. Pinzger, Relation of code clones and change couplings, in: FASE’06:
Proceedings of the 9th International Conference of Funtamental Approaches to Software Engineering,
Springer, 2006, pp. 411–425.
[8] E. Juergens, F. Deissenboeck, B. Hummel, S. Wagner, Do code clones matter? in: ICSE’09: Proceedings of
the 2009 IEEE 31st International Conference on Software Engineering, IEEE Computer Society, 2009, pp.
485–495.
[9] T. Kamiya, S. Kusumoto, K. Inoue, Ccfinder: a multilinguistic tokenbased code clone detection system for
large scale source code, IEEE Transactions on Software Engineering 28 (7) (2002) 654–670.
[10] K. Kontogiannis, R. de Mori, E. Merlo, M. Galler, M. Bernstein, Pattern matching for clone and concept
detection, Automated Software Engineering 3 (1–2) (1996) 77–108.
[11] A. Lozano, M. Wermelinger, Assessing the effect of clones on changeability, in: ICSM’08: Proceedings of
the 24th IEEE International Conference on Software Maintenance, IEEE, 2008, pp. 227–236.

www.irjmets.com @International Research Journal of Modernization in Engineering, Technology and Science


[8507]

You might also like