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

Software Engineering Commons™

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

Theses and Dissertations

Discipline
Institution
Keyword
Publication Year

Articles 61 - 90 of 144

Full-Text Articles in Software Engineering

Metamorphism As A Software Protection For Non-Malicious Code, Thomas E. Dube Mar 2006

Metamorphism As A Software Protection For Non-Malicious Code, Thomas E. Dube

Theses and Dissertations

Most organizations are aware that threats from trusted insiders pose a great risk to their organization and are very difficult to protect against. Auditing is recognized as an effective technique to detect malicious insider activities. However, current auditing methods are typically applied with a one-size-fits-all approach and may not be an appropriate mitigation strategy, especially towards insider threats. This research develops a 4-step methodology for designing a customized auditing template for a Microsoft Windows XP operating system. Two tailoring methods are presented which evaluate both by category and by configuration. Also developed are various metrics and weighting factors as a …


Toward The Static Detection Of Deadlock In Java Software, Jose E. Fadul Mar 2006

Toward The Static Detection Of Deadlock In Java Software, Jose E. Fadul

Theses and Dissertations

Concurrency is the source of many real-world software reliability and security problems. Concurrency defects are difficult to detect because they defy conventional software testing techniques due to their non-local and non-deterministic nature. We focus on one important aspect of this problem: static detection of the possibility of deadlock - a situation in which two or more processes are prevented from continuing while each waits for resources to be freed by the continuation of the other. This thesis proposes a flow-insensitive interprocedural static analysis that detects the possibility that a program can deadlock at runtime. Our analysis proceeds in two steps. …


Mindshare: A Collaborative Peer-To-Peer System For Small Groups, Gareth Charles Farrington May 2005

Mindshare: A Collaborative Peer-To-Peer System For Small Groups, Gareth Charles Farrington

Theses and Dissertations

We present Mindshare, a system for small group collaboration using Peer to Peer networking technology. This paper details the motivation behind its design, how it benefits users and details of its construction and operation. The solution focuses on the needs of small collaborating groups with limited computing experience and resources. Mindshare allows the group to share an unlimited number of files and visualize them in unified hierarchical file system. Mindshare synchronizes the files between users without user input. Its robust design allows files to be shared even when the owner is offline and allows users to work with files from …


On The Effects Of Device Mobility Upon Resource-Sharing In A Simulated Wireless Grid Network, Arris Ray Jun 2004

On The Effects Of Device Mobility Upon Resource-Sharing In A Simulated Wireless Grid Network, Arris Ray

Theses and Dissertations

The primary aim of modern computer networks is to permit simplified sharing of resources (e.g., files and data) or to provide access to remote resources (e.g., printers or remote file-systems). Grid networks aim to provide a more sophisticated framework for securely sharing, selecting and/or aggregating a wide-variety of remote resources, whether logical (e.g., files and data) or physical (e.g., remote sensors, processing power or disk storage space). Provided that circuit design continues to improve at the relatively steady pace that it has for the past decade, in addition to standard desktop systems, miniature and mobile devices will soon become substantially …


Quantifying Software Maintainability On Re-Engineered Translation Of Fortran To C++ Code, Zane Grey Tomlinson Jr. Jun 2004

Quantifying Software Maintainability On Re-Engineered Translation Of Fortran To C++ Code, Zane Grey Tomlinson Jr.

Theses and Dissertations

Due to the expanding existence of old software, legacy systems, and obsolete platforms with many industries, software re-engineering has become a widespread methodology that assists engineers and software practitioners with translating inflexible, unsupportable legacy software into maintainable software. Many companies today are investing in a variety of re-engineering techniques such as translation of source code to new code structures and target platforms to ensure future software maintenance can be performed in an efficient and effective manner. With sound re-engineering principles, the application of these techniques leverage the knowledge and previous engineering endeavors to mitigate risks and provide adequate performance to …


Software Development Outsourcing Decision Support Tool With Neural Network Learning, James D. Newberry Mar 2004

Software Development Outsourcing Decision Support Tool With Neural Network Learning, James D. Newberry

Theses and Dissertations

The Air Force (AF) needs an evolving software tool for guiding decision makers through the complexities of software outsourcing. Previous research identified specific outsourcing strategies and linked them to goals and consequences through a variety of relationship rules. These strategies and relationship rules were inserted into a decision support tool. Since that time, more historical data and outsourcing literature has been collected thus necessitating an update to such a tool. As the number of software outsourcing projects are completed, the AF must capture the outsourcing decision experiences which guided the projects and their outcomes. In order to efficiently incorporate this …


Kiosk Engine: A Platform Independent Solution For Multimedia Kiosks, Manish Satish Shah May 2003

Kiosk Engine: A Platform Independent Solution For Multimedia Kiosks, Manish Satish Shah

Theses and Dissertations

In today's fast paced life saving time is the first priority of every business organization and presenting information visually is a highly desirable and the easiest way to impressively communicate to people. For that purpose, there are interactive devices called kiosks, which display multimedia data on a display and are quite often attached to other input/output hardware like keyboard, mouse, printer, etc. Most of today's kiosks are custom made and are designed for specific set of target platform. The task of creating a kiosk can turn out to be difficult and fairly time consuming. The aim of this thesis is …


Pair Programming To Facilitate The Training Of Newly-Hired Programmers, Mark Anthony Poff May 2003

Pair Programming To Facilitate The Training Of Newly-Hired Programmers, Mark Anthony Poff

Theses and Dissertations

Pair programming is touted by some software professionals as a style which allows developers to produce superior code in less time, and with fewer defects, than code produced by individuals. However, the acclaim for the pair methodology is not universal; some see it was a waste of effort which produces marginal improvements. Reported experiments which obtain quantitative results have typically been performed in an educational environment, and may not reflect actual workplace conditions. This thesis reports on an experiment using pair programing in an industrial setting. Its goal is to determine if this programming style can be used to increase …


Migration From A Waterfall/Non Sei Cmm Compliant Process To A Rup/Sei Cmm Compliant Process, Chad Amos Chamberlin May 2003

Migration From A Waterfall/Non Sei Cmm Compliant Process To A Rup/Sei Cmm Compliant Process, Chad Amos Chamberlin

Theses and Dissertations

Software Life Cycle processes play a key role in the successful development of software products. Software processes continue to evolve as the field of software development progresses toward being a true engineering discipline. This theses has two objectives: (1) To apply software engineering knowledge gained during the pursuit of this degree toward the design and development of a complete, Software Engineering Institute (SEI) Capability Maturity Model (CMM) compliant process for the design phase of the software lifecycle. (2) To evaluate a Waterfall Lifecycle Model vs. an Iterative Lifecycle Model and compare SEI CM compliant processes to non-SEI CM compliant process …


The Generalizability Of Private Sector Research On Software Project Management In Two Usaf Organizations: An Exploratory Study, Michael R. Garman Mar 2003

The Generalizability Of Private Sector Research On Software Project Management In Two Usaf Organizations: An Exploratory Study, Michael R. Garman

Theses and Dissertations

Project managers typically set three success criteria for their projects: meet specifications, be on time, and be on budget. However, software projects frequently fail to meet these criteria. Software engineers, acquisition officers, and project managers have all studied this issue and made recommendations for achieving success. But most of this research in peer reviewed journals has focused on the private sector. Researchers have also identified software acquisitions as one of the major differences between the private sector and public sector MIS. This indicates that the elements for a successful software project in the public sector may be different from the …


Inquisitive Pattern Recognition, Amy L. Magnus Mar 2003

Inquisitive Pattern Recognition, Amy L. Magnus

Theses and Dissertations

The Department of Defense and the Department of the Air Force have funded automatic target recognition for several decades with varied success. The foundation of automatic target recognition is based upon pattern recognition. In this work, we present new pattern recognition concepts specifically in the area of classification and propose new techniques that will allow one to determine when a classifier is being arrogant. Clearly arrogance in classification is an undesirable attribute. A human is being arrogant when their expressed conviction in a decision overstates their actual experience in making similar decisions. Likewise given an input feature vector, we say …


Visual Execution Analysis For Multiagent Systems, Chong Kil Aug 2002

Visual Execution Analysis For Multiagent Systems, Chong Kil

Theses and Dissertations

Multiagent systems have become increasingly important in developing complex software systems. Multiagent systems introduce collective intelligence and provide benefits such as flexibility, scalability, decentralization, and increased reliability. A software agent is a high-level software abstraction that is capable of performing given tasks in an environment without human intervention. Although multiagent systems provide a convenient and powerful way to organize complex software systems, developing such system is very complicated. To help manage this complexity this research develops a methodology and technique for analyzing, monitoring and troubleshooting multiagent systems execution. This is accomplished by visualizing a multiagent system at multiple levels of …


Suitability Of Unidata Metapps For Incorporation In Platform-Independent User-Customized Aviation Weather Products Generation Software, Harmen P. Visser Mar 2002

Suitability Of Unidata Metapps For Incorporation In Platform-Independent User-Customized Aviation Weather Products Generation Software, Harmen P. Visser

Theses and Dissertations

The Air Force Combat Climatology Center (AFCCC) is tasked to provide long-range seasonal forecasts for worldwide locations. Currently, the best long-range temperature forecasts the weather community has are the climatological standard normals. This study creates a stepping-stone into the solution of long-range forecasting by finding a process to predict temperatures better than those using climatological standard normals or simple frequency distributions of occurrences. Northern Hemispheric teleconnection indices and the standardized Southern Oscillation index are statistically compared to three-month summed Heating Degree Days (HDDs) and Cooling Degree Days (CDDs) at 14 U.S. locations. First, linear regression was accomplished. The results showed …


A Flexible Framework For Collaborative Visualization Applications Using Java Spaces, Sean C. Butler Mar 2001

A Flexible Framework For Collaborative Visualization Applications Using Java Spaces, Sean C. Butler

Theses and Dissertations

The complexity of modern tasks is rising along with the level of technology. Two techniques commonly used to deal with complexity are collaboration and information visualization. Recently, computer networks have arisen as a powerful means of collaboration, and many new technologies are being developed to better utilize them. Among the newer, more promising of these technologies is Sun Microsystems' JavaSpaces ™, a high-level network programming API. This thesis describes a tool for developing collaborative visualization software using JavaSpaces-an application framework and accompanying toolkit. In addition to a detailed description of the framework, the thesis also describes an application implemented using …


Software Domain Model Integration Methodology For Formal Specifications, Joel C. Nonnweiler Mar 2001

Software Domain Model Integration Methodology For Formal Specifications, Joel C. Nonnweiler

Theses and Dissertations

Using formal methods to create automatic code generation systems is one of the goals of Knowledge Based Software Engineering (KBSE) groups. The research of the Air Force Institute of Technology KBSE group has focused on the utilization of formal languages to represent domain model knowledge within this process. The code generation process centers around correctness preserving transformations that convert domain models from their analysis representations through design to the resulting implementation code. The diversity of the software systems that can be developed in this manner is limited only by the availability of suitable domain models. Therefore it should be possible …


Selecting A Software Engineering Methodology Using Multiobjective Decision Analysis, Scott A. O'Malley Mar 2001

Selecting A Software Engineering Methodology Using Multiobjective Decision Analysis, Scott A. O'Malley

Theses and Dissertations

With the emergence of agent-oriented software engineering methodologies, software developers have a new set of tools to solve complex software requirements. One problem software developers face is to determine which methodology is the best approach to take to developing a solution. A number of factors go into the decision process. This thesis defines a decision making process that can be used by a software engineer to determine whether or not a software engineering approach is an appropriate system development strategy. This decision analysis process allows the software engineer to classify and evaluate a set of methodologies while specifically considering the …


Transforming Analysis Models Into Design Models For The Multiagent Engineering Systems (Mase) Methodology, Clint H. Sparkman Mar 2001

Transforming Analysis Models Into Design Models For The Multiagent Engineering Systems (Mase) Methodology, Clint H. Sparkman

Theses and Dissertations

Agent technology has received much attention in the last few years because of the advantages that multiagent systems have in complex, distributed environments. For multiagent systems are to be effective, they must be reliable, robust, and secure. AFIT's Agent Research Group has developed a complete lifecycle methodology, called Multiagent Systems Engineering (MaSE), for analyzing, designing, and developing heterogeneous multiagent systems. However, developing multiagent systems is a complicated process, and there is no guarantee that the resulting system meets the initial requirements and will operate reliably with the desired behavior. The purpose of this research was to develop a semi-automated formal …


Design And Specification Of Dynamic, Mobile And Reconfigurable Multiagent Systems, Athie L. Self Mar 2001

Design And Specification Of Dynamic, Mobile And Reconfigurable Multiagent Systems, Athie L. Self

Theses and Dissertations

Multiagent Systems use the power of collaborative software agents to solve complex distributed problems. There are many Agent-Oriented Software Engineering (AOSE) methodologies available to assist system designers to create multiagent systems. However, none of these methodologies can specify agents with dynamic properties such as cloning, mobility or agent instantiation. This thesis starts the process to bridge the gap between AOSE methodologies and dynamic agent platforms by incorporating mobility into the current Multiagent Systems Engineering (MaSE) methodology. Mobility was specified within all components composing a mobile agent class. An agent component was also created that integrated the behavior of the components …


Validation And Verification Of Formal Specifications In Object-Oriented Software Engineering, Steven A. Thomson Sep 2000

Validation And Verification Of Formal Specifications In Object-Oriented Software Engineering, Steven A. Thomson

Theses and Dissertations

The use of formal specifications allows for a software system to be defined with stringent mathematical semantics and syntax via such tools as propositional calculus and set theory. There are many perceived benefits garnered from formal specifications, such as a thorough and in-depth understanding of the domain and system being specified and a reduction in user requirement ambiguity. Probably the greatest benefit of formal specifications, and that which is least capitalized upon, is that mathematical proof procedures can be used to test and prove internal consistency and syntactic correctness in an effort to ensure comprehensive validation and verification (V&V). The …


Distributed Object System Engineering For Terminal Aerodrome Forecast Validation And Metrics Processing, James S. Douglas Mar 2000

Distributed Object System Engineering For Terminal Aerodrome Forecast Validation And Metrics Processing, James S. Douglas

Theses and Dissertations

Distributed object systems are a very complex intertwining of heterogeneous hardware, software, and operating systems coupled with communication networks of varying protocols and capacities. Distributed components offer improved performance through parallel processing, improved expansion and scalability opportunities through modularity, improved availability through replication, and improved resource sharing and interoperability through interconnection. This research provides a distributed system design methodology to validate terminal forecasts and gather metrics for the Air Force Weather Agency. Proven principles such as component reuse and architectural development are applied through the use of parameterized types and design patterns. A client/server measurement model is developed to show …


A Formal Methodology And Technique For Verifying Communication Protocols In A Multi-Agent Environment, Timothy H. Lacey Mar 2000

A Formal Methodology And Technique For Verifying Communication Protocols In A Multi-Agent Environment, Timothy H. Lacey

Theses and Dissertations

As network bandwidth increases, distributed applications are becoming increasingly prevalent. Systems using these applications are very complicated to build and must be dependable. Software agents are ideal for breaking complicated problems into manageable subtasks. Agent conversations, a series of messages passed between agents, are the cornerstone of multi-agent systems and must be deemed correct before being placed into service. The purpose of this research was to develop a formal methodology and technique to verify that the communication protocols defined in a multi-agent environment were valid. This was accomplished by examining agent conversations before deploying the system. An additional goal of …


Formal Object State Model Transformations For Automated Agent System Synthesis, David W. Marsh Mar 2000

Formal Object State Model Transformations For Automated Agent System Synthesis, David W. Marsh

Theses and Dissertations

Automated agent system synthesis is the process of generating code from a requirements specification with appropriate inputs from the software engineer. Object-oriented (OO) specifications are frequently used to model intelligent software agent systems and software requirements in general; formal representations capture precisely the intentions of the specifier. Portions of OO specifications can be classified as the structural, functional, and state (or dynamic) models; major strides have been taken in the development of transformations for creating code from formal OO specifications, specifically the structural and functional aspects, and are captured within the AFIT Wide-Spectrum Object Modeling Environment (AWSOME). This research creates …


Implementation Of Speech Recognition Software For Text Processing: An Exploratory Analysis, Sean P. Abell Dec 1999

Implementation Of Speech Recognition Software For Text Processing: An Exploratory Analysis, Sean P. Abell

Theses and Dissertations

The rationale behind implementing new information technologies is often to gain productivity improvements associated with the substitution of machinery for labor. However, the literature shows little direct evidence of a positive relationship between information technology investment and subsequent productivity benefits. This thesis reports on the examination into the productivity implications of implementing speech recognition software in a text processing environment. More specifically, research was conducted to compare text processing speeds and error rates using speech recognition software versus the keyboard and mouse. Of interest was the time required to input and proofread text processing tasks as well as the number …


Formal Representation And Application Of Software Design Information, Thomas M. Schorsch Sep 1999

Formal Representation And Application Of Software Design Information, Thomas M. Schorsch

Theses and Dissertations

Formal methods for developing software use mathematical frameworks to specify, develop and verify software systems, especially safety critical systems where error free software is a necessity. A transformation system is a formal method that refines a requirement specification into an implementation by successively adding design decisions in the form of precisely verified design information. Current algebraic representations of design information (specifications, morphisms, and interpretations) and methods for applying algebraic specification design information (diagram refinement) cannot correctly represent and apply design information involving higher level design information. This investigation develops innovative methods for constructing and refining structured algebraic requirement specifications, as …


An Interactive Tool For Refining Software Specifications From A Formal Domain Model, Gary L. Anderson Mar 1999

An Interactive Tool For Refining Software Specifications From A Formal Domain Model, Gary L. Anderson

Theses and Dissertations

This work examines the process for refining a software specification from a formal object-oriented domain model. This process was implemented with interactive software to demonstrate the feasibility and benefits of automating what has been a tedious and often error-prone manual task. The refinement process operates within the framework of a larger Knowledge-Based Software Engineering system. A generic object-oriented representation is used to store a domain model, which allows the specification tool to access, select, and manipulate the required objects to form a customized specification. The specification is also stored as an object-oriented model, which in turn can be accessed by …


Transforming Aggregate Object-Oriented Formal Specifications To Code, John A. Kissack Mar 1999

Transforming Aggregate Object-Oriented Formal Specifications To Code, John A. Kissack

Theses and Dissertations

The feasibility of a transformational formal-based software engineering tool has been the focus of AFIT research for several years. Until now, the main research emphasis has been placed on the individual components that would comprise such a transformational system; therefore, this research demonstrates how a representative collection of aggregate objects would be transformed from specification to code. The research focused on critical integration issues associated with a formal-based software transformation system, such as the source specification, the problem space architecture, design architecture, design transforms, and target software transforms. Software is critical in today's Air Force, yet its specification, design, and …


A Web-Based Prototype For Afit Edplan Administration, Tien-Chen Lee Dec 1998

A Web-Based Prototype For Afit Edplan Administration, Tien-Chen Lee

Theses and Dissertations

This document details the design, development, and evaluation of a prototype course registration and reporting system for the students and faculty of the United States Air Force Institute of Technology. The web-based system provides HTML-based client interfaces and Active Server Page server processes for interaction with the relational databases used to manage course and personnel data. The system prototype was developed following the "Engineering Software Components for Web-Database Access" methodology of Dipiro. A survey of modern web-based database access techniques is first provided and Dipiro's methodology is reviewed as background. The remainder of the document details the application of the …


Development Of An Operations Research Software Package For Army Divisions, Blane C. Wilson Dec 1998

Development Of An Operations Research Software Package For Army Divisions, Blane C. Wilson

Theses and Dissertations

There exists great potential for applying operations research techniques to solve specific problems in the areas of operations, installation support, and training at the Army division level. Because of the operational tempo of today's active-duty and reserve component units, command must focus on accomplishing the daily missions. Also, due their limited knowledge of the field, planners may not be aware of how operations research can be used to enhance planning and operations. Time, training funds, resources, safety, personnel, and equipment are all critical factors in this process. Operations research techniques could be used to improve division-level operations by saving time, …


An Investigation Into The Use Of Software Product Metrics For Cobol Systems, Richard E. Boone Nov 1997

An Investigation Into The Use Of Software Product Metrics For Cobol Systems, Richard E. Boone

Theses and Dissertations

This thesis investigated several hypotheses that specific product measures could be used to predict later software lifecycle process or product measures. It collected software product and process measures from four consecutive major releases of a large Cobol legacy system (400K LOC). The types of product measures used were size and specific complexity measures. A statistical software package was used to calculate sample correlation coefficients between the measures. A 95% confidence interval was computed for each sample correlation coefficient that showed a strong or moderate linear correlation. The maintenance process measures provided were manhours used for each program changed or added, …


Extracting Functionally Equivalent Object-Oriented Designs From Legacy Imperative Code, Ricky E. Sward Sep 1997

Extracting Functionally Equivalent Object-Oriented Designs From Legacy Imperative Code, Ricky E. Sward

Theses and Dissertations

This research defines a methodology for automatically extracting functionally equivalent object-oriented designs from legacy imperative programs. The Parameter-Based Object Identification (PBOI) methodology is based on fundamental ideas that relate programs written in imperative languages such as C or COBOL to objects and classes written in object-oriented languages such as Ada 95 or C ++. Transformations have been developed that formalize the PBOI methodology and a formal proof is provided showing the extracted object-oriented design is functionally equivalent to the legacy imperative system. To focus the task of re-engineering, generic models of imperative programming languages and object-oriented programming languages have been …