Vaibhav AnuMontclair State University · Department of Computer Science
Vaibhav Anu
Ph.D. Software Engineering
About
53
Publications
14,820
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
374
Citations
Introduction
Dr. Vaibhav Anu is an Associate Professor of Computer Science at Montclair State University. He has received a PhD in Software Engineering from North Dakota State University. Dr. Anu's primary research focus is on studying human behavior during software development process and its impact on software quality.
Additional affiliations
August 2018 - present
Publications
Publications (53)
The Software design process involves a high degree of human interaction and design artifacts creation by software engineers. Software designers use their experience to make assumptions and decisions. Therefore, the software design is prone to errors that lead to a bad quality software. Software engineering literature focuses on software errors and...
Security requirements Engineering (SRE) is an activity conducted during the early stage of the SDLC. SRE involves eliciting, analyzing, and documenting security requirements. Thorough SRE can help software engineers incorporate countermeasures against malicious attacks into the software’s source code itself. Even though all security requirements ar...
Implicit Requirements (IMR) identification is part of the Requirements Engineering (RE) phase in Software Engineering during which data is gathered to create SRS (Software Requirements Specifications) documents. As opposed to explicit requirements clearly stated, IMRs constitute subtle data and need to be inferred. Research has shown that IMRs are...
This paper proposes a pilot approach based on the comparative analysis of supervised Machine Learning models coupled with basic Natural Language Processing concepts for classifying Functional and Non-Functional Requirements from huge collections of data relevant to the Requirements Engineering (RE) phase within software development. The publicly av...
Existing classification systems of cloud computing security challenges have mostly excluded human error as a major root cause of cloud security issues. Therefore, we propose a new cloud security challenge classification system by adding Human Error as a category and retaining the most relevant categories—Network, Data Access, and Virtualization—fro...
The African Diaspora App is a web application to educate people and gather information needed by travelers to expose them to the nuanced, varied narratives and richness of the African continent. In addition to travel, it targets individuals planning to repatriate to an African country. Repatriation has several challenges and the Diaspora App provid...
Information Security Governance (ISG) is now considered a vital component of any organization’s Information Technology (IT) Governance. ISG consists of the processes, organizational structures, and most importantly, the corporate leadership involved in the safeguarding of organization’s information assets. Hence, the purpose of ISG is to bring info...
The Covid-19 pandemic growth has led to a large desire for safety restrictions among citizens near or in Covid-19 affected areas. This includes requiring the use of masks when outdoors and an occupancy limit being placed when indoors. Some of these restrictions have been enforced by the government and can lead to infraction charges on those who cho...
Twitter, with its ever-growing influence, has continued to serve as a means of spreading information and providing early warnings to what the world is going through. The COVID-19 pandemic is no exception. With this disease resulting in hundreds of thousands of deaths, it is valuable that an analysis is done regarding where the information posted on...
The MCST App supports recovery of small businesses by providing information on COVID-19 related aspects such as safety measures. It caters to vendors (owners) & patrons (customers) entailing businesses such as restaurants, grocery stores, and pharmacies. The app provides user profile options for vendors and search options for patrons, along with si...
Africa is a continent with incredibly diversified cultures, landscapes, and people. Due its vastness, it can be difficult to assess accurate travel related information about African countries. The purpose of this project is to create an informational web application with an educational trivia game and travel resources to help people traveling to Af...
This paper addresses identification of implicit requirements (IMRs) in software requirements specifications (SRS). IMRs, as opposed to explicit requirements, are not specified by users but are more subtle. It has been noticed that IMRs are crucial to the success of software development. In this paper, we demonstrate a software tool called COTIR dev...
[Context ]A software vulnerability becomes harmful for software when an attacker successfully exploits the insecure code and reveals the vulnerability. A single vulnerability in code can put the entire software at risk. Therefore, maintaining software security throughout the software life cycle is an important and at the same time challenging task...
Over the past few years, we have worked on pioneering an approach that employs Commonsense Knowledge (CSK) to automate the identification of Implicit Requirements (IMRs) from text in large Software Requirements Specifications (SRS) documents. This paper builds on our IMR-identification approach by adding CNN-based deep learning to detect IMRs from...
Developing error-free software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop techniques that help requirements engineers detect and prevent requirements problems. As...
This paper presents a novel approach called vertical breadth-first tree that utilizes vertical data structures to find all-length paths (including shortest paths) for all pairs of vertices in a graph. Identifying all available paths, including shortest paths is a relevant research problem as this concept can help solve a range of complex problems (...
Background: Human-centric software engineering activities, such as requirements engineering, are prone to error. These human errors manifest as faults. To improve software quality, developers need methods to prevent and detect faults and their sources. Aims: Human error research from the field of cognitive psychology focuses on understanding and ca...
Inspections are a proven approach for improving software requirements quality. Owing to the fact that inspectors report both faults and non-faults (i.e., false-positives) in their inspection reports, a major chunk of work falls on the person who is responsible for consolidating the reports received from multiple inspectors. We aim at automation of...
In spite of the human-centric aspect of software engineering (SE) discipline, human error knowledge has been ignored by SE educators as it is often thought of as something that belongs in the realm of Psychology. SE curriculum is also severely devoid of educational content on human errors, while other human-centric disciplines (aviation, medicine,...
Context and Motivation: The correctness of software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop approaches that help requirement engineers not only detect, but also...
Context and Motivation: Our recent work leverages Cognitive Psychology research on human errors to improve the standard fault-based requirements inspections. Question: The empirical study presented in this paper investigates the effectiveness of a newly developed Human Error Abstraction Assist (HEAA) tool in helping inspectors identify human errors...
Software inspections are an effective method for early detection of faults present in software development artifacts (e.g., requirements and design documents). However, many faults are left undetected due to the lack of focus on the underlying sources of faults (i.e., what caused the injection of the fault?). To address this problem, research work...
Background: Developing correct software requirements is important for overall software quality. Most existing quality improvement approaches focus on detection and removal of faults (i.e. problems recorded in a document) as opposed identifying the underlying errors that produced those faults. Accordingly, developers are likely to make the same erro...
Software inspections are an effective method for achieving high quality software. We hypothesize that inspections focused on identifying errors (i.e., root cause of faults) are better at finding requirements faults when compared to inspection methods that rely on checklists created using lessons-learned from historical fault-data. Our previous work...