Open Access. Powered by Scholars. Published by Universities.®

Software Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

San Jose State University

Discipline
Keyword
Publication Year
Publication
Publication Type

Articles 1 - 30 of 32

Full-Text Articles in Software Engineering

Canvas Autoquiz, Archit Jain Jan 2022

Canvas Autoquiz, Archit Jain

Master's Projects

Online learning management platforms such as Canvas are thriving and quickly replacing traditional classrooms, especially during these pandemic-struck times. As more and more quizzes are administered online, we need tools that make the quiz creation process easier and faster. Canvas Autoquiz is a command-line tool that allows instructors to automatically create and upload quizzes of varying difficulty levels. It also allows instructors to export quizzes from one LMS platform to another. This project explores the need, design, and implementation of the tool, and prospective future work.


Taming The Data In The Internet Of Vehicles, Shahab Tayeb Jan 2022

Taming The Data In The Internet Of Vehicles, Shahab Tayeb

Mineta Transportation Institute Publications

As an emerging field, the Internet of Vehicles (IoV) has a myriad of security vulnerabilities that must be addressed to protect system integrity. To stay ahead of novel attacks, cybersecurity professionals are developing new software and systems using machine learning techniques. Neural network architectures improve such systems, including Intrusion Detection System (IDSs), by implementing anomaly detection, which differentiates benign data packets from malicious ones. For an IDS to best predict anomalies, the model is trained on data that is typically pre-processed through normalization and feature selection/reduction. These pre-processing techniques play an important role in training a neural network to optimize …


Computer-Aided Diagnosis Of Low Grade Endometrial Stromal Sarcoma (Lgess), Xinxin Yang, Mark Stamp Sep 2021

Computer-Aided Diagnosis Of Low Grade Endometrial Stromal Sarcoma (Lgess), Xinxin Yang, Mark Stamp

Faculty Research, Scholarly, and Creative Activity

Low grade endometrial stromal sarcoma (LGESS) accounts for about 0.2% of all uterine cancer cases. Approximately 75% of LGESS patients are initially misdiagnosed with leiomyoma, which is a type of benign tumor, also known as fibroids. In this research, uterine tissue biopsy images of potential LGESS patients are preprocessed using segmentation and stain normalization algorithms. We then apply a variety of classic machine learning and advanced deep learning models to classify tissue images as either benign or cancerous. For the classic techniques considered, the highest classification accuracy we attain is about 0.85, while our best deep learning model achieves an …


Developing An Effective Targeted Mobile Application To Enhance Transportation Safety And Use Of Active Transportation Modes In Fresno County: The Role Of Application Design & Content, Samer Sarofim Jul 2021

Developing An Effective Targeted Mobile Application To Enhance Transportation Safety And Use Of Active Transportation Modes In Fresno County: The Role Of Application Design & Content, Samer Sarofim

Mineta Transportation Institute Publications

Do pedestrians and cyclists need their own app? Pedestrians and cyclists in Fresno county think so, and this research examined this need and how it relates to the importance of app design. Survey participants (all who regularly use active transportation modes) along with a variety of transportation stakeholders, including the Fresno Council of Government, the California Department of Transportation (Caltrans) District 6, and the City of Fresno — Public Works Department, indicated the importance of designing effective communication tools to enhance the utilization of active transportation modes and to ensure the safety of vulnerable road users. In this study, over …


Asynchronous Validations Using Programming Contracts In Java, Rahul Shukla May 2021

Asynchronous Validations Using Programming Contracts In Java, Rahul Shukla

Master's Projects

Design by Contract is a software development methodology based on the idea of having contracts between two software components. Programming contracts are invariants specified as pre-conditions and post-conditions. The client component must ensure that all the pre-conditions are satisfied before calling the server component. The server component must guarantee the post-conditions are met before the call returns to the client component. Current work in Design by Contract in Java focuses on writing shorthand contracts using annotations that are processed serially.

Modern software systems require a lot of business rules validations on complicated domain objects. Often, such validations are in the …


Graph Classification With Kernels, Embeddings And Convolutional Neural Networks, Monica Golahalli Seenappa, Katerina Potika, Petros Potikas Mar 2020

Graph Classification With Kernels, Embeddings And Convolutional Neural Networks, Monica Golahalli Seenappa, Katerina Potika, Petros Potikas

Faculty Publications, Computer Science

In the graph classification problem, given is a family of graphs and a group of different categories, and we aim to classify all the graphs (of the family) into the given categories. Earlier approaches, such as graph kernels and graph embedding techniques have focused on extracting certain features by processing the entire graph. However, real world graphs are complex and noisy and these traditional approaches are computationally intensive. With the introduction of the deep learning framework, there have been numerous attempts to create more efficient classification approaches. We modify a kernel graph convolutional neural network approach, that extracts subgraphs (patches) …


Black Box Analysis Of Android Malware Detectors, Guruswamy Nellaivadivelu, Fabio Di Troia, Mark Stamp Mar 2020

Black Box Analysis Of Android Malware Detectors, Guruswamy Nellaivadivelu, Fabio Di Troia, Mark Stamp

Faculty Publications, Computer Science

If a malware detector relies heavily on a feature that is obfuscated in a given malware sample, then the detector will likely fail to correctly classify the malware. In this research, we obfuscate selected features of known Android malware samples and determine whether these obfuscated samples can still be reliably detected. Using this approach, we discover which features are most significant for various sets of Android malware detectors, in effect, performing a black box analysis of these detectors. We find that there is a surprisingly high degree of variability among the key features used by popular malware detectors.


Continuous Deployment Transitions At Scale, Laurie Williams, Kent Beck, Jeffrey Creasey, Andrew Glover, James Holman, Jez Humble, David Mclaughlin, John Thomas Micco, Brendan Murphy, Jason A. Cox, Vishnu Pendyala, Steven Place, Zachary T. Pritchard, Chuck Rossi, Tony Savor, Michael Stumm, Chris Parnin Jan 2020

Continuous Deployment Transitions At Scale, Laurie Williams, Kent Beck, Jeffrey Creasey, Andrew Glover, James Holman, Jez Humble, David Mclaughlin, John Thomas Micco, Brendan Murphy, Jason A. Cox, Vishnu Pendyala, Steven Place, Zachary T. Pritchard, Chuck Rossi, Tony Savor, Michael Stumm, Chris Parnin

Faculty Research, Scholarly, and Creative Activity

Predictable, rapid, and data-driven feature rollout; lightning-fast; and automated fix deployment are some of the benefits most large software organizations worldwide are striving for. In the process, they are transitioning toward the use of continuous deployment practices. Continuous deployment enables companies to make hundreds or thousands of software changes to live computing infrastructure every day while maintaining service to millions of customers. Such ultra-fast changes create a new reality in software development. Over the past four years, the Continuous Deployment Summit, hosted at Facebook, Netflix, Google, and Twitter has been held. Representatives from companies like Cisco, Facebook, Google, IBM, Microsoft, …


Evolution Of Integration, Build, Test, And Release Engineering Into Devops And To Devsecops, Vishnu Pendyala Jan 2020

Evolution Of Integration, Build, Test, And Release Engineering Into Devops And To Devsecops, Vishnu Pendyala

Faculty Research, Scholarly, and Creative Activity

Software engineering operations in large organizations are primarily comprised of integrating code from multiple branches, building, testing the build, and releasing it. Agile and related methodologies accelerated the software development activities. Realizing the importance of the development and operations teams working closely with each other, the set of practices that automated the engineering processes of software development evolved into DevOps, signifying the close collaboration of both development and operations teams. With the advent of cloud computing and the opening up of firewalls, the security aspects of software started moving into the applications leading to DevSecOps. This chapter traces the journey …


Blockchain In Libraries, Michael Meth Dec 2019

Blockchain In Libraries, Michael Meth

Faculty Research, Scholarly, and Creative Activity

This issue of Library Technology Reports (vol. 55, no. 8), “Blockchain in Libraries,” examines the application of blockchain in libraries. Blockchain technology has the ability to transform how libraries provide services and organize information. To date, most of these applications are still in the conceptual stage. However, sooner or later, development and implementation will follow. This report is intended to provide a primer on the technology and some thought starters. In chapter 2, the concept of blockchain is explained. Chapter 3 provides eight thought and conversation starters that look at how blockchain could be applied in libraries. Chapter 4 looks …


A Webrtc Video Chat Implementation Within The Yioop Search Engine, Yangcha Ho May 2019

A Webrtc Video Chat Implementation Within The Yioop Search Engine, Yangcha Ho

Master's Projects

Web real-time communication (abbreviated as WebRTC) is one of the latest Web application technologies that allows voice, video, and data to work collectively in a browser without a need for third-party plugins or proprietary software installation. When two browsers from different locations communicate with each other, they must know how to locate each other,

bypass security and firewall protections, and transmit all multimedia communications in real time. This project not only illustrates how WebRTC technology works but also walks through a real example of video chat-style application. The application communicates between two remote users using WebSocket and the data encryption …


Pantry: A Macro Library For Python, Derek Pang Dec 2018

Pantry: A Macro Library For Python, Derek Pang

Master's Projects

Python lacks a simple way to create custom syntax and constructs that goes outside of its own syntax rules. A paradigm that allows for these possibilities to exist within languages is macros. Macros allow for a shorter set of syntax to expand into a longer set of instructions at compile-time. This gives the capability to evolve the language to fit personal needs.

Pantry, implements a hygienic text-substitution macro system for Python. Pantry achieves this through the introduction of an additional preparsing step that utilizes parsing and lexing of the source code. Pantry proposes a way to simply declare a pattern …


Gradubique: An Academic Transcript Database Using Blockchain Architecture, Thinh Nguyen Dec 2018

Gradubique: An Academic Transcript Database Using Blockchain Architecture, Thinh Nguyen

Master's Projects

Blockchain has been widely adopted in the last few years even though it is in its infancy. The first well-known application built on blockchain technology was Bitcoin, which is a decentralized and distributed ledger to record crypto-currency transactions. All of the transactions in Bitcoin are anonymously transferred and validated by participants in the network. Bitcoin protocol and its operations are so reliable that technologists have been inspired to enhance blockchain technologies and deploy it outside of the crypto-currency world. The demand for private and non-crypto-currency solutions have surged among consortiums because of the security and fault tolerant features of blockchain. …


Support Vector Machines For Image Spam Analysis, Aneri Chavda, Katerina Potika, Fabio Di Troia, Mark Stamp Jan 2018

Support Vector Machines For Image Spam Analysis, Aneri Chavda, Katerina Potika, Fabio Di Troia, Mark Stamp

Faculty Publications, Computer Science

Email is one of the most common forms of digital communication. Spam is unsolicited bulk email, while image spam consists of spam text embedded inside an image. Image spam is used as a means to evade text-based spam filters, and hence image spam poses a threat to email-based communication. In this research, we analyze image spam detection using support vector machines (SVMs), which we train on a wide variety of image features. We use a linear SVM to quantify the relative importance of the features under consideration. We also develop and analyze a realistic “challenge” dataset that illustrates the limitations …


On The Effectiveness Of Generic Malware Models, Naman Bagga, Fabio Di Troia, Mark Stamp Jan 2018

On The Effectiveness Of Generic Malware Models, Naman Bagga, Fabio Di Troia, Mark Stamp

Faculty Publications, Computer Science

Malware detection based on machine learning typically involves training and testing models for each malware family under consideration. While such an approach can generally achieve good accuracy, it requires many classification steps, resulting in a slow, inefficient, and potentially impractical process. In contrast, classifying samples as malware or benign based on more generic “families” would be far more efficient. However, extracting common features from extremely general malware families will likely result in a model that is too generic to be useful. In this research, we perform controlled experiments to determine the tradeoff between generality and accuracy—over a variety of machine …


An Open Source Discussion Group Recommendation System, Sarika Padmashali May 2017

An Open Source Discussion Group Recommendation System, Sarika Padmashali

Master's Projects

A recommendation system analyzes user behavior on a website to make suggestions about what a user should do in the future on the website. It basically tries to predict the “rating” or “preference” a user would have for an action. Yioop is an open source search engine, wiki system, and user discussion group system managed by Dr. Christopher Pollett at SJSU. In this project, we have developed a recommendation system for Yioop where users are given suggestions about the threads and groups they could join based on their user history. We have used collaborative filtering techniques to make recommendations and …


Web - Based Office Market, Manodivya Kathiravan May 2017

Web - Based Office Market, Manodivya Kathiravan

Master's Projects

People who work in an office often have different pools of resources that they want to exchange. They want to trade their resources/work(seller) with a person who wants that particular resource(buyer) and in return get another resource the buyer offers. These kind of exchanges are often called Barter-exchanges where an item is traded for another item without the involvement of actual money. An exchange is set to be complete when there is a match between an available item and a desired item. This exchange is called direct exchange. When an item desired by one user is made available through a …


Library For Writing Contracts For Java Programs Using Prolog, Yogesh Dixit May 2017

Library For Writing Contracts For Java Programs Using Prolog, Yogesh Dixit

Master's Projects

Today many large and complex software systems are being developed in Java. Although, software always has bugs, it is very important that these developed systems are more reliable despite these bugs.

One way that we can help achieve this is the Design by Contract (DbC) paradigm, which was first introduced by Bertrand Meyer, the creator of Eiffel. The concept of DbC was introduced for software developers so that they can produce more reliable software systems with a little extra cost. Using programming contracts allows developer to specify details such as input conditions and expected output conditions. Doing this makes it …


A Ltihub For Composite Assignments, Sunita Rajain May 2017

A Ltihub For Composite Assignments, Sunita Rajain

Master's Projects

Learning management systems (LMS) such as Canvas and Blackboard use Learning Tool Interoperability (LTI) as their main integration point for external learning tools. Each external tool provider has to implement LTI specifications or follow LTI standards that is a time consuming and complex process as there is no easy to follow specification available. Through this project, I have developed a system that follows the LTI specifications and integrates the CodeCheck autograder and interactive exercises with any LMS. I developed a Java based web app named LTIHub that acts as a mediator between LMS and any Learning Tool Provider. The LTIHub …


A Chatbot Framework For Yioop, Harika Nukala May 2017

A Chatbot Framework For Yioop, Harika Nukala

Master's Projects

Over the past few years, messaging applications have become more popular than Social networking sites. Instead of using a specific application or website to access some service, chatbots are created on messaging platforms to allow users to interact with companies’ products and also give assistance as needed. In this project, we designed and implemented a chatbot Framework for Yioop. The goal of the Chatbot Framework for Yioop project is to provide a platform for developers in Yioop to build and deploy chatbot applications. A chatbot is a web service that can converse with users using artificial intelligence in messaging platforms. …


Impact Of Reviewer Social Interaction On Online Consumer Review Fraud Detection, Kunal Goswami, Younghee Park, Chungsik Song Jan 2017

Impact Of Reviewer Social Interaction On Online Consumer Review Fraud Detection, Kunal Goswami, Younghee Park, Chungsik Song

Faculty Publications

Background Online consumer reviews have become a baseline for new consumers to try out a business or a new product. The reviews provide a quick look into the application and experience of the business/product and market it to new customers. However, some businesses or reviewers use these reviews to spread fake information about the business/product. The fake information can be used to promote a relatively average product/business or can be used to malign their competition. This activity is known as reviewer fraud or opinion spam. The paper proposes a feature set, capturing the user social interaction behavior to identify fraud. …


Interactive Computer Science Exercises In Edx, Hong Le May 2016

Interactive Computer Science Exercises In Edx, Hong Le

Master's Projects

This project focuses on improving online learning courses for Computer Science. My approach is to create a platform in which interactive exercises can be implemented for students to work on. Methodology includes creating plugins for interactive exercises using XBlock, a component architecture for building independent online courses on edX. The exercises are based on existing exercises like CodeCheck and Wiley’s InterActivities Exercise System. In order to integrate these exercises, I implemented CodeCheck XBlock and Interactive XBlock. These Xblocks allow students to work on interactive exercises on edX, and instructors to view and download students’ submissions.


A Content-Sensitive Wiki Help System, Eswara Satya Pavan Rajesh Pinapala Dec 2014

A Content-Sensitive Wiki Help System, Eswara Satya Pavan Rajesh Pinapala

Master's Projects

Context-sensitive help is a software application component that enables users to open help pertaining to their state, location, or the action they are performing within the software. Context-sensitive “wiki” help, on the other hand, is help powered by a wiki system with all the features of context-sensitive help. A context-sensitive wiki help system aims to make the context-sensitive help collaborative; in addition to seeking help, users can directly contribute to the help system. I have implemented a context-sensitive wiki help system into Yioop, an open source search engine and software portal created by Dr. Chris Pollett, in order to measure …


A Trust-Aware System For Personalized User Recommendations In Social Networks, Magdalini Eirinaki, Malamati Louta, Iraklis Varlamis Apr 2014

A Trust-Aware System For Personalized User Recommendations In Social Networks, Magdalini Eirinaki, Malamati Louta, Iraklis Varlamis

Faculty Publications

Social network analysis has recently gained a lot of interest because of the advent and the increasing popularity of social media, such as blogs, social networking applications, microblogging, or customer review sites. In this environment, trust is becoming an essential quality among user interactions and the recommendation for useful content and trustful users is crucial for all the members of the network. In this paper, we introduce a framework for handling trust in social networks, which is based on a reputation mechanism that captures the implicit and explicit connections between the network members, analyzes the semantics and dynamics of these …


Identification Of Influential Social Networkers, Magdalini Eirinaki, S. P. Singh Monga, S. Sundaram Jan 2012

Identification Of Influential Social Networkers, Magdalini Eirinaki, S. P. Singh Monga, S. Sundaram

Magdalini Eirinaki

Online social networking is deeply interleaved in today's lifestyle. People come together and build communities to share thoughts, offer suggestions, exchange information, ideas, and opinions. Moreover, social networks often serve as platforms for information dissemination and product placement or promotion through viral marketing. The success rate in this type of marketing could be increased by targeting specific individuals, called 'influential users', having the largest possible reach within an online community. In this paper, we present a method aiming at identifying the influential users within an online social networking application. We introduce ProfileRank, a metric that uses popularity and activity characteristics …


Online And Offline Ebook Management System Using W-Cms, Rohan Vibhandik Apr 2011

Online And Offline Ebook Management System Using W-Cms, Rohan Vibhandik

Master's Projects

In this internet and smart-phone era paper books are almost obsolete. Many developers have come up with the eBooks which can be read online on computer or on a smart-phone. Users can now access them offline any time without carrying a bulky pBook (Paper Book). The stable eBook application should restrict and control the use of contents to protect the copyrights. Encryption and enforcement of digital policies are generally managed by Digital Rights Management (DRM). The stable system for online as well as offline readers safeguard the intellectual properties for authors, publishers by providing a protection to their digital content, …


Video Chat Application For Facebook, Shirali Chokshi Apr 2011

Video Chat Application For Facebook, Shirali Chokshi

Master's Projects

This project is mainly written for the facebook users. In today’s world, there are many social networking sites available. Among those social networking web sites, facebook is widely used web site. Like all other social networking web sites, Facebook also provides many features to attract more and more users. But it lacks in providing the most important feature of social networking, i.e. video chat. I explore the different options and requirements needed to build the video chat application. I have also described the integration of the application with the facebook.


Web-Based Ide To Create Model And Controller Components For Mvc-Based Web Applications On Cakephp, Sugiharto Widjaja Dec 2010

Web-Based Ide To Create Model And Controller Components For Mvc-Based Web Applications On Cakephp, Sugiharto Widjaja

Master's Projects

A Web-based IDE that allows users to easily manage Model and Controller components of a CakePHP web application was developed. With this IDE, users are able to manage the model and controller components without having to write very much PHP code. They are able to create new model components without having to worry about creating the database tables for the models as the IDE creates them automatically. The IDE offers a simple interface for users to edit the schema of their models. Users can add or delete data from their models without dealing with the SQL insert/delete statements. The IDE …


View Component Of Web-Based Ide To Develop Web Applications In Cakephp, Swathi Vegesna Dec 2010

View Component Of Web-Based Ide To Develop Web Applications In Cakephp, Swathi Vegesna

Master's Projects

The aim of the project is to build a Web-based IDE (Integrated Development Environment) that enables users to create a Web application in PHP on the CakePHP framework. The view component of the IDE allows the users to build the CakePHP view templates, which include the HTML tags which can be properly linked with the controller functions. Users will be able to create the HTML form elements only by performing certain drags, drops and clicks. This project will create dynamic view elements, which is achieved by connecting them to the Controllers components. This IDE helps the users to create dynamic …


One Social, Sowmya Sampath Dec 2010

One Social, Sowmya Sampath

Master's Projects

Facebook streams and Twitter tweets represent user content in two common social media systems. Users often have accounts on both these systems and to keep their content current for both of them they must update each separately. It is thus difficult to manage and maintain both of these social networks together. The goal of this project is to build a social website called One Social, where users can view their Facebook streams and Twitter tweets in one single view and thereby easily organize and maintain their updates. In One Social, users can enter a status message and can share it …