
Amit Seal AmiWilliam & Mary | WM · Department of Computer Science
Amit Seal Ami
Master of Science in Software Engineering
Pursuing PhD in Computer Science at William & Mary
About
24
Publications
3,519
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
80
Citations
Introduction
Amit Seal Ami is researching Cyber Security and Software Engineering as Ph.D. Candidate at the Computer Science Department, William & Mary.
Skills and Expertise
Additional affiliations
June 2020 - December 2023
August 2018 - present
September 2014 - August 2018
Education
August 2018 - August 2023
Publications
Publications (24)
Software engineering requires modification of code during development and maintenance phase. During modification, a difficult task is to understand rationale of code changed by others. Present Integrated Development Environments (IDEs) attempt to help this by providing features integrated with different types of repositories. However, these feature...
A software defect prediction model is used to help identifying the defects of software module. Software attributes play an important role to build the model. The performance and effectiveness of a software defection model depends on the characteristics of various software attributes which can be used to predict whether a software module is defected...
The functionality of many mobile applications is dependent on various contextual, external factors. Depending on unforeseen scenarios, mobile apps can even malfunction or crash. In this paper, we have introduced MobiCoMonkey - automated tool that allows a developer to test app against custom or auto generated contextual scenarios and help detect po...
The correct use of cryptography is central to ensuring data security in modern software systems. Hence, several academic and commercial static analysis tools have been developed for detecting and mitigating crypto-API misuse. While developers are optimistically adopting these crypto-API misuse detectors (or crypto-detectors) in their software devel...
While software engineers are optimistically adopting crypto-API misuse detectors (or crypto-detectors) in their software development cycles, this momentum must be accompanied by a rigorous understanding of crypto-detectors' effectiveness at finding crypto-API misuses in practice. This demo paper presents the technical details and usage scenarios of...
The demand for automated security analysis techniques, such as static analysis based security testing (SAST) tools continues to increase. To develop SASTs that are effectively leveraged by developers for finding vulnerabilities, researchers and tool designers must understand how developers perceive, select, and use SASTs, what they expect from the...
The correct use of cryptography is central to ensuring data security in modern software systems. Hence, several academic and commercial static analysis tools have been developed for detecting and mitigating crypto-API misuse. While developers are optimistically adopting these crypto-API misuse detectors (or crypto-detectors) in their software devel...
The correct use of cryptography is central to ensuring data security in modern software systems. Hence, several academic and commercial static analysis tools have been developed for detecting and mitigating crypto-API misuse. While developers are optimistically adopting these crypto-API misuse detectors (or crypto-detectors) in their software devel...
This demo paper presents the technical details and usage scenarios of $\mu$SE: a mutation-based tool for evaluating security-focused static analysis tools for Android. Mutation testing is generally used by software practitioners to assess the robustness of a given test-suite. However, we leverage this technique to systematically evaluate static ana...
Mobile application security has been a major area of focus for security research over the course of the last decade. Numerous application analysis tools have been proposed in response to malicious, curious, or vulnerable apps. However, existing tools, and specifically, static analysis tools, trade soundness of the analysis for precision and perform...
Mobile application security has been a major area of focus for security research over the course of the last decade. Numerous application analysis tools have been proposed in response to malicious, curious, or vulnerable apps. However, existing tools, and specifically, static analysis tools, trade soundness of the analysis for precision and perform...
The aim of any curriculum is to produce industry ready students. The effectiveness of curricular activities, thus, can be measured by the performances of fresh graduates at their job sectors. To evaluate the Software Engineering (SE) syllabus, Institute of Information Technology (IIT), University of Dhaka, has taken an initiative, under the project...
Today’s mobile applications are continuously renovating user ex-periences by processing underlying contextual information of thehand-held devices. The mobility provided by these devices is en-couraging users to install and use applications on the move. Asa result, underlying context of these devices keep changing con-stantly. As the changes in cont...
Software defect prediction is a highly studied domain in Software Engineering research due to its importance in software development. In literature, various classification methods with static code attributes have been used to predict defects. However, defected instances are very few compared to non-defected instances and as such lead to imbalanced...
Software engineering requires modification of code during development and maintenance phase. During modification, a difficult task is to understand rationale of changed code. Present Integrated Development Environments (IDEs) attempt to help this by providing features integrated with different types of repositories. However, these features still co...
Software engineering requires modification of code during development and maintenance phase. During modification, a difficult task is to understand rationale of changed code. Present Integrated Development Environments (IDEs) attempt to help this by providing features integrated with different types of repositories. However, these features still co...
Scalability is the ability of a system to handle variation in execution environment and continuing to function in order to meet user needs. For ensuring scalability, it is important to verify that programmers are writing code that can scale. However, verifying scalability from code level has its own limitations as it did not receive adequate attent...
Fault tolerance is the ability to a system to continue its functionality despite the presence of faults in the architecture. For a dynamic system such as the cloud, fault tolerance is required to ensure business continuity. This paper proposes a high availability middleware that en-sures fault tolerance for cloud based applications. Effective Descr...