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

Software Engineering Commons™

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

Software engineering

Discipline
Institution
Publication Year
Publication
Publication Type
File Type

Articles 91 - 120 of 152

Full-Text Articles in Software Engineering

The Importance Of Being Isolated: An Empirical Study On Chromium Reviews, Subhajit Datta, Devarshi Bhatt, Manish Jain, Proshanta Sarkar, Santonu Sarkar Oct 2015

The Importance Of Being Isolated: An Empirical Study On Chromium Reviews, Subhajit Datta, Devarshi Bhatt, Manish Jain, Proshanta Sarkar, Santonu Sarkar

Research Collection School Of Computing and Information Systems

As large scale software development has become more collaborative, and software teams more globally distributed, several studies have explored how developer interaction influences software development outcomes. The emphasis so far has been largely on outcomes like defect count, the time to close modification requests etc. In the paper, we examine data from the Chromium project to understand how different aspects of developer discussion relate to the closure time of reviews. On the basis of analyzing reviews discussed by 2000+ developers, our results indicate that quicker closure of reviews owned by a developer relates to higher reception of information and insights …


A Study On The Geographical Distribution Of Brazil’S Prestigious Software Developers, Fernando Figueira Filho, Marcelo Gattermann Perin, Christoph Treude, Sabrina Marczak, Leandro De Almeida Melo, Igor Marques Da Silva, Lucas Bibiano Dos Santos Aug 2015

A Study On The Geographical Distribution Of Brazil’S Prestigious Software Developers, Fernando Figueira Filho, Marcelo Gattermann Perin, Christoph Treude, Sabrina Marczak, Leandro De Almeida Melo, Igor Marques Da Silva, Lucas Bibiano Dos Santos

Research Collection School Of Computing and Information Systems

Brazil is an emerging economy with many IT initiatives from public and private sectors. To evaluate the progress of such initiatives, we study the geographical distribution of software developers in Brazil, in particular which of the Brazilian states succeed the most in attracting and nurturing them. We compare the prestige of developers with socio-economic data and find that (i) prestigious developers tend to be located in the most economically developed regions of Brazil, (ii) they are likely to follow others in the same state they are located in, (iii) they are likely to follow other prestigious developers, and (iv) they …


Software Application And Mobile Optimization, Timothy Yu May 2015

Software Application And Mobile Optimization, Timothy Yu

Undergraduate University Honors Capstones

Most software applications have yet to be optimized for mobile devices, such as smartphones and tablets. Such is the case with Gallaudet University’s enterprise information systems, Bison, the university’s administration system, including all records except for finances and Blackboard, the university’s learning management system. A two-part project addressed this lack of mobile optimization with Bison. The first part was the Residence Life Sticker Project intended to familiarize the developer with Gallaudet’s internal IT systems. It involved developing a web form for the Office of Residence Life to record receipt of ID card stickers, handbooks, and release room consent information. The …


A Mathematical Framework Of Human Thought Process: Rectifying Software Construction Inefficiency And Identifying Characteristic Efficiencies Of Networked Systems Via Problem-Solution Cycle, Jonathan Sarbah-Yalley Jan 2015

A Mathematical Framework Of Human Thought Process: Rectifying Software Construction Inefficiency And Identifying Characteristic Efficiencies Of Networked Systems Via Problem-Solution Cycle, Jonathan Sarbah-Yalley

Master's Theses

Problem

The lack of a theory to explain human thought process latently affects the general perception of problem solving activities. This present study was to theorize human thought process (HTP) to ascertain in general the effect of problem solving inadequacy on efficiency.

Method

To theorize human thought process (HTP), basic human problem solving activities were investigated through the vein of problem-solution cycle (PSC). The scope of PSC investigation was focused on the inefficiency problem in software construction and latent characteristic efficiencies of a similar networked system. In order to analyze said PSC activities, three mathematical quotients and a messaging wavefunction …


Multimodal Code Search, Shaowei Wang Jan 2015

Multimodal Code Search, Shaowei Wang

Dissertations and Theses Collection (Open Access)

Today’s software is large and complex, consisting of millions of lines of code. New developers of a software project always face significant challenges in finding code related to their development or maintenance tasks (e.g., implementing features, fixing bugs and adding new features). In fact, research has shown that developers typically spend more time on locating and understanding code than modifying it. Thus, we can significantly reduce the cost of software development and maintenance by reducing the time to search and understand code relevant to a software development or maintenance task. In order to reduce the time of searching and understanding …


An Active Learning Module For An Introduction To Software Engineering Course, A. Frank Ackerman, Ph.D. Jan 2014

An Active Learning Module For An Introduction To Software Engineering Course, A. Frank Ackerman, Ph.D.

Computer Science & Software Engineering

Many schools do not begin to introduce college students to software engineering until they have had at least one semester of programming. Since software engineering is a large, complex, and abstract subject it is difficult to construct active learning exercises that build on the students’ elementary knowledge of programming and still teach basic software engineering principles. It is also the case that beginning students typically know how to construct small programs, but they have little experience with the techniques necessary to produce reliable and long-term maintainable modules. I have addressed these two concerns by defining a local standard (Montana Tech …


Automated Test Case Generation To Validate Non-Functional Software Requirements, Pingyu Zhang Aug 2013

Automated Test Case Generation To Validate Non-Functional Software Requirements, Pingyu Zhang

School of Computing: Dissertations, Theses, and Student Research

A software system is bounded by a set of requirements. Functional requirements describe what the system must do, in terms of inputs, behavior, and outputs. We define non-functional requirements to be how well these functional requirements are satisfied, in terms of qualities or constraints on the design or on the implementation of a system. In practice, the validation of these kinds of requirements, does not receive equal emphasis. Techniques for validating functional requirements target all levels of software testing phases, and explore both black-box and white-box approaches. Techniques for validating non-functional requirements, on the other hand, largely operate in a …


Orion: A Software Project Search Engine With Integrated Diverse Software Artifacts, Tegawende F. Bissyande, Ferdian Thung, David Lo, Lingxiao Jiang, Laurent Réveillère Jul 2013

Orion: A Software Project Search Engine With Integrated Diverse Software Artifacts, Tegawende F. Bissyande, Ferdian Thung, David Lo, Lingxiao Jiang, Laurent Réveillère

Research Collection School Of Computing and Information Systems

Software projects produce a wealth of data that is leveraged in different tasks and for different purposes: researchers collect project data for building experimental datasets; software programmers reuse code from projects; developers often explore the opportunities for getting involved in the development of a project to gain or offer expertise. Finding relevant projects that suit one needs is however currently challenging with the capabilities of existing search systems. We propose Orion, an integrated search engine architecture that combines information from different types of software repositories from multiple sources to facilitate the construction and execution of advanced search queries. Orion provides …


Mutual Assessment In The Social Programmer Ecosystem: An Empirical Investigation Of Developer Profile Aggregators, Leif Singer, Fernando Figueira Filho, Brendan Cleary, Christoph Treude, Margaret-Anne Storey, Kurt Schneider Feb 2013

Mutual Assessment In The Social Programmer Ecosystem: An Empirical Investigation Of Developer Profile Aggregators, Leif Singer, Fernando Figueira Filho, Brendan Cleary, Christoph Treude, Margaret-Anne Storey, Kurt Schneider

Research Collection School Of Computing and Information Systems

The multitude of social media channels that programmers can use to participate in software development has given rise to online developer profiles that aggregate activity across many services. Studying members of such developer profile aggregators, we found an ecosystem that revolves around the social programmer. Developers are assessing each other to evaluate whether other developers are interesting, worth following, or worth collaborating with. They are self-conscious about being assessed, and thus manage their public images. They value passion for software development, new technologies, and learning. Some recruiters participate in the ecosystem and use it to find candidates for hiring; other …


Generating Minimal T-Wise Test Suites, Luis C. Gutierrez, Carlos Nieto, Francisco Zapata, Martine Ceberio Jul 2012

Generating Minimal T-Wise Test Suites, Luis C. Gutierrez, Carlos Nieto, Francisco Zapata, Martine Ceberio

COURI Symposium Abstracts, Summer 2012

As the use of computing devices increases every day, users rely on the adequate functioning of software. When software is not tested properly, it can yield erroneous information or a complete failure of the system. The NIST estimates that defective software cost the United States economy close to $60 billion a year. Therefore, there is a need to develop software testing techniques that are time and cost effective. Fully testing software under all possible combinations of parameters values cannot be reduced. However, testing can focus on covering all combinations of subsets of parameters and empirical data shows that doing so …


Pointcut Rejuvenation: Recovering Pointcut Expressions In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Phil Greenwood, Awais Rashid, Harry Xu May 2012

Pointcut Rejuvenation: Recovering Pointcut Expressions In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Phil Greenwood, Awais Rashid, Harry Xu

Publications and Research

Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. In this paper, we present an automated approach that limits fragility problems by providing mechanical assistance in pointcut maintenance. The approach is based on harnessing arbitrarily deep structural commonalities between program elements corresponding to join points selected by a pointcut. The extracted patterns are then applied to later versions to offer suggestions of new join points that may require inclusion. To illustrate that the motivation behind our proposal is well founded, …


Generating Minimal Pair-Wise Covering Test Suites, Luis C. Gutierrez ^, Martine Ceberio * Apr 2012

Generating Minimal Pair-Wise Covering Test Suites, Luis C. Gutierrez ^, Martine Ceberio *

COURI Symposium Abstracts, Spring 2012

Software is ubiquitous and needs to be reliable. Software testing therefore plays an important role in software development. Proper testing a software system informs about its quality and reliability so as to prevent unexpected behavior during system execution. One of the methods to prevent failures consists in testing a system under different input values, but when all possible input values are tested, an impractical number of test cases might result. In software testing, pair-wise testing is a combinatorial technique which uses combination of pair input values to generate test cases. Using pair-wise testing dramatically reduces the number of test cases, …


Significantly Reducing The Processing Times Of High-Speed Photometry Data Sets Using A Distributed Computing Model, Paul Doyle, Fredrick Mtenzi, Niall Smith, Adrian Collins, Brendan O'Shea Jan 2012

Significantly Reducing The Processing Times Of High-Speed Photometry Data Sets Using A Distributed Computing Model, Paul Doyle, Fredrick Mtenzi, Niall Smith, Adrian Collins, Brendan O'Shea

Other

The scientific community is in the midst of a data analysis crisis. The increasing capacity of scientific CCD instrumentation and their falling costs is contributing to an explosive generation of raw photometric data. This data must go through a process of cleaning and reduction before it can be used for high precision photometric analysis. Many existing data processing pipelines either assume a relatively small dataset or are batch processed by a High Performance Computing centre. A radical overhaul of these processing pipelines is required to allow reduction and cleaning rates to process terabyte sized datasets at near capture rates using …


Online Assistance, Imran Khan Jul 2011

Online Assistance, Imran Khan

All Capstone Projects

From the introduction: "This project entitled Online Assistance is efficient and designed to do only one thing, facilitate communications between help desk staff and end users. The overriding design goal is to be as simple and frictionless for both users and help desk staff as is possible. It can leverage SQL server for membership and role based security or integrate with windows authentication and Active Directory groups.

Software Engineering occurs as a consequence of a process called “System Engineering”. Instead of concentrate solely on software, system-engineering focuses on a variety of elements like Analyzing, Designing and organizing these elements into …


Mining Iterative Generators And Representative Rules For Software Specification Discovery, David Lo, Jinyan Li, Limsoon Wong, Siau-Cheng Khoo Feb 2011

Mining Iterative Generators And Representative Rules For Software Specification Discovery, David Lo, Jinyan Li, Limsoon Wong, Siau-Cheng Khoo

Research Collection School Of Computing and Information Systems

Billions of dollars are spent annually on software-related cost. It is estimated that up to 45 percent of software cost is due to the difficulty in understanding existing systems when performing maintenance tasks (i.e., adding features, removing bugs, etc.). One of the root causes is that software products often come with poor, incomplete, or even without any documented specifications. In an effort to improve program understanding, Lo et al. have proposed iterative pattern mining which outputs patterns that are repeated frequently within a program trace, or across multiple traces, or both. Frequent iterative patterns reflect frequent program behaviors that likely …


Revision Of Remote (Recursively Estimating Multi-Threaded Observation Tool Enterprise) For Commercialization, Jeongtaek Hong Jan 2011

Revision Of Remote (Recursively Estimating Multi-Threaded Observation Tool Enterprise) For Commercialization, Jeongtaek Hong

Theses Digitization Project

The purpose of this study is to have ReMoTe be commercialized or released as open source at some future date to the general public. ReMoTe will provide an enhanced user interface that will allow users easy to use functions and setup their projects and define their thread and phases. ReMoTe will have the ability to handle muliple projects, and specify any number of phases for any thread.


Teaching Software Engineering Project Management-A Novel Approach For Software Engineering Programs, Craig Caulfield, David Veal, Stanislaw Maj Jan 2011

Teaching Software Engineering Project Management-A Novel Approach For Software Engineering Programs, Craig Caulfield, David Veal, Stanislaw Maj

Research outputs 2011

In response to real and perceived short-comings in the quality and productivity of software engineering practices and projects, professionally-endorsed graduate and post-graduate curriculum guides have been developed to meet technical developments and evolving industry demands. Each of these curriculum guidelines identifies better software project management skills as critical for all graduating students, but they provide little guidance on how to achieve this. One possible way is to use a serious game - a game designed to teach and educate players about some of the dynamic complexities of the field in a safe and inexpensive environment. This paper presents the results …


An Organizational Maturity Model Of Software Product Line Engineering, Faheem Ahmed, Luiz Fernando Capretz Jun 2010

An Organizational Maturity Model Of Software Product Line Engineering, Faheem Ahmed, Luiz Fernando Capretz

Electrical and Computer Engineering Publications

Software product line engineering is an inter-disciplinary concept. It spans the dimensions of business, architecture, process, and the organization. Some of the potential benefits of this approach include cost reduction, improvements in product quality and a decrease in product development time. The increasing popularity of software product line engineering in the software industry necessitates a process maturity evaluation methodology. Accordingly, this paper presents an organizational maturity model of software product line engineering for evaluating the maturity of organizational dimension. The model assumes that organizational theories, behavior, and management play a critical role in the institutionalization of software product line engineering …


Software Engineering: Application Of 80/20 Rule In Software Engineering Waterfall Model, Muzaffar Iqbal, Muhammad Rizwan Aug 2009

Software Engineering: Application Of 80/20 Rule In Software Engineering Waterfall Model, Muzaffar Iqbal, Muhammad Rizwan

International Conference on Information and Communication Technologies

Software process is the most important part of software project management, and software process models are important means of implementing the software process in any software organization. When there is need to improve the software process, then the need to improve the work-task part (software process models) of the software process must arise. As, there is need of increasing the commitment of software project managers through out the software development life cycle (SDLC), so we need to give them the list of activities in Waterfall Model, which should be made efficient by the software development team, to get the 80% …


Data Mining For Software Engineering, Tao Xie, Suresh Thummalapenta, David Lo, Chao Liu Aug 2009

Data Mining For Software Engineering, Tao Xie, Suresh Thummalapenta, David Lo, Chao Liu

Research Collection School Of Computing and Information Systems

To improve software productivity and quality, software engineers are increasingly applying data mining algorithms to various software engineering tasks. However, mining SE data poses several challenges. The authors present various algorithms to effectively mine sequences, graphs, and text from such data.


The Impact Of Process Choice In High Maturity Environments: An Empirical Analysis, Narayanasamy Ramasubbu, Rajesh Krishna Balan May 2009

The Impact Of Process Choice In High Maturity Environments: An Empirical Analysis, Narayanasamy Ramasubbu, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

We present the results of a three year field study of the software development process choices made by project teams at two leading offshore vendors. In particular, we focus on the performance implications of project teams that chose to augment structured, plan-driven processes to implement the CMM level-5 Key Process Areas (KPAs) with agile methods. Our analysis of 112 software projects reveals that the decision to augment the firm-recommended, plan-driven approach with improvised, agile methods was significantly affected by the extent of client knowledge and involvement, newness of technology, and the project size. Furthermore this decision had a significant and …


Improving Effort Estimation By Voting Software Estimation Models, Luiz Fernando Capretz, Venus Marza Jan 2009

Improving Effort Estimation By Voting Software Estimation Models, Luiz Fernando Capretz, Venus Marza

Electrical and Computer Engineering Publications

Estimating software development effort is an important task in the management of large software projects. The task is challenging, and it has been receiving the attentions of researchers ever since software was developed for commercial purpose. A number of estimation models exist for effort prediction. However, there is a need for novel models to obtain more accurate estimations. The primary purpose of this study is to propose a precise method of estimation by selecting the most popular models in order to improve accuracy. Consequently, the final results are very precise and reliable when they are applied to a real dataset …


Sub-Circuit Selection And Replacement Algorithms Modeled As Term Rewriting Systems, Eric D. Simonaire Dec 2008

Sub-Circuit Selection And Replacement Algorithms Modeled As Term Rewriting Systems, Eric D. Simonaire

Theses and Dissertations

Intent protection is a model of software obfuscation which, among other criteria, prevents an adversary from understanding the program’s function for use with contextual information. Relating this framework for obfuscation to malware detection, if a malware detector can perfectly normalize a program P and any obfuscation (variant) of the program O(P), the program is not intent protected. The problem of intent protection on programs can also be modeled as intent protection on combinational logic circuits. If a malware detector can perfectly normalize a circuit C and any obfuscation (variant) O(C) of the circuit, the circuit is not intent protected. In …


Rejuvenate Pointcut: A Tool For Pointcut Expression Recovery In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid Sep 2008

Rejuvenate Pointcut: A Tool For Pointcut Expression Recovery In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid

Publications and Research

Aspect-oriented programming (AOP) strives to localize the scattered and tangled implementations of crosscutting concerns (CCCs) by allowing developers to declare that certain actions (advice) should be taken at specific points (join points) during the execution of software where a CCC (an aspect) is applicable. However, it is non-trivial to construct optimal pointcut expressions (a collection of join points) that capture the true intentions of the programmer and, upon evolution, maintain these intentions. We demonstrate an AspectJ source-level inferencing tool called rejuvenate pointcut which helps developers maintain pointcut expressions over the lifetime of a software product. A key insight into the …


Obfuscation Framework Based On Functionally Equivalent Combinatorial Logic Families, Moses C. James Mar 2008

Obfuscation Framework Based On Functionally Equivalent Combinatorial Logic Families, Moses C. James

Theses and Dissertations

This thesis aims to be a few building blocks in the bridge between theoretical and practical software obfuscation that researchers will one day construct. We provide a method for random uniform selection of circuits based on a functional signature and specific construction specifiers. Additionally, this thesis includes the first formal definition of an algorithm that performs only static analysis on a program; that is analysis that does not rely on the input and output behavior of the analyzed program. This is analogous to some techniques used in real-world software reverse engineering. Finally, this thesis uses the equivalent circuit library to …


Moops: A Web Implementation Of The Personal Software Process Reporting System, Thomas Russell Gigler Iii. Jan 2008

Moops: A Web Implementation Of The Personal Software Process Reporting System, Thomas Russell Gigler Iii.

Theses Digitization Project

The purpose of Moops is to bridge the gap between PSP Scriber, geared very specifically to the CSCI655 class, and other available PSP implications which are so general they are difficult to use immediately without valuable time spent learning the software. Moops is a PHP/MySQL based web application designed to provide the students taking the CSCI655 graduate software engineering course at CSUSB with an intuitive, easy to use tool to implement the Personal Software Process (PSP). Moops eliminates the possibility of errors in calculations by completing all calculations for the user.


Simplifying Cyber Foraging For Mobile Devices, Rajesh Krishna Balan, Darren Gergle, Mahadev Satyanarayanan, James Herbsleb Jun 2007

Simplifying Cyber Foraging For Mobile Devices, Rajesh Krishna Balan, Darren Gergle, Mahadev Satyanarayanan, James Herbsleb

Research Collection School Of Computing and Information Systems

Cyber foraging is the transient and opportunistic use of compute servers by mobile devices. The short market life of such devices makes rapid modification of applications for remote execution an important problem. We describe a solution that combines a "little language" for cyber foraging with an adaptive runtime system. We report results from a user study showing that even novice developers are able to successfully modify large, unfamiliar applications in just a few hours. We also show that the quality of novice-modified and expert-modified applications are comparable in most cases.


Remote: A Complete Tool To Support Software Process Management, Darrion Todd Demelo Jan 2006

Remote: A Complete Tool To Support Software Process Management, Darrion Todd Demelo

Theses Digitization Project

The purpose of the project is to provide the Department of Computer Science at California State University, San Bernardino with a software project management tool that will help companies in their software development. ReMoTe (Recursively Estimating Multi-Threaded Observation Technology Enterprise) will assist software engineering teams with defining their scheduled delivery dates, life-cycle definitions, team hierarchy, and communication. Using the object-oriented approach, ReMoTe can support any software life cycle model. ReMoTe can help manage and control the software process over the Web. It also allows people to manage software artifacts using database systems such as mySQL, Microsoft Access, or Oracle.


Enhancement Of Software Engineering By Shifting From Software Product To Software Service, Muhammad Saeed, Muhammad Jaffar-Ur- Rehman Aug 2005

Enhancement Of Software Engineering By Shifting From Software Product To Software Service, Muhammad Saeed, Muhammad Jaffar-Ur- Rehman

International Conference on Information and Communication Technologies

Software development has always been a supply side affair, in which domain experts were the main requirement providers. Software engineers have been creating new technologies, frameworks and methodologies but this has made the software engineering job more complex. Recently all this has been looked at from demand-side prospective. So a new concept of Service Based Software Engineering is shaping up which look at the software as a service rather then a product. This paper is going to analysis the fundamental requirements of such a paradigm shift, by first gathering the concept and then translating this to a workable solution. Different …


Enhanced Risk Analysis-Relative Impact Factorization, Basit Shahzad, Tanveer Afzal, Rizwana Irfan Aug 2005

Enhanced Risk Analysis-Relative Impact Factorization, Basit Shahzad, Tanveer Afzal, Rizwana Irfan

International Conference on Information and Communication Technologies

Software engineering is an area of development which always has the risk factor present and software engineering can hardly be done on some straight line. So, the manager has to handle the dynamically changing circumstances in order to complete the job. The target of development team is to develop the software according to the requirements within specified time. Wide variety of risks I are present that may grab the development effort. A good manager must ensure that all measures have been taken against the risks that may possibly come. This paper focuses on determining the relative impact of risk factors …