Larrondo-Petrie, Maria M.

Relationships
Member of: Graduate College
Person Preferred Name
Larrondo-Petrie, Maria M.
Model
Digital Document
Publisher
Florida Atlantic University
Description
The South Florida Water Management District (SFWMD) established in 1949, is the oldest and largest water management institution in Florida. The Lake Okeechobee Ecosystem Study (LOES) a five-year study, conducted by SFWMD to collect information about water quality and other ecological factors in the Lake Okeechobee area, is one of the many projects that the SFWMD is involved in for the restoration of Florida's ecosystem. The study resulted in a large volume of information being compiled by scientists into files of different formats. Florida Atlantic University (FAU) undertook the task of restructuring the database and designing and implementing the Graphical User Interfaces (GUI) to support this ecological system. As part of an earlier project, an object model was designed to standardize the files that also helped in the creation of a relational database to store the information. A goal of the current project was to design GUIs that could be used without difficulty, by persons that may or may not be database technology familiar. This thesis describes and analyzes the design and implementation of the GUIs. It focuses on the two types of interfaces implemented, namely the Query and Administrative forms. The implementation of the GUIs were completed and tested and deployed at SFWMD.
Model
Digital Document
Publisher
Florida Atlantic University
Description
The goal of this dissertation is to propose an industrial-strength formal model for object-oriented real-time systems that captures real-time constraints using industry standard notations and tools. A light-weight formalization process is proposed that is semi-formal, graphical and easier to read and understand. This process supports formal behavior analysis, verification and validation. It is very effective in early detection of incompleteness and ambiguities in the specifications. The proposed process uses industry standard tools and fits well within stringent industrial schedules. Formal requirements analysis is conducted using High Level Message Sequencing Chart (HMSC) and Message Sequencing Chart (MSC). In the formal analysis phase, the static structures are modeled using Unified Modeling Language (UML) and the constraints are formalized using Object Constraint Language (OCL). System behavior is formally modeled using Specification and Description Language (SDL) during the formal design phase. SDL is used for behavior modeling due to wide commercial availability of SDL-based tools for formal behavior analysis and validation. Transition rules mapping from UML Class Diagrams and Statecharts to SDL models are proposed. SDL models are formally simulated and validated during the formal validation phase. Using the proposed process real-time clock, timer, periodic process, aperiodic process, resource and precedence constraints were formalized. Different types of timers, such as periodic, aperiodic, one-shot, fixed-interval and variable-interval timers are derived using inheritance models. Semaphore wait and signal operations are formalized as part of the resource constraint. Pre-conditions, post-conditions and invariants for the real-time constraints were captured using OCL. Behavior of the proposed models were captured using Statecharts. The proposed mapping rules were used to translate the behavior models to SDL. The SDL models were formally simulated and validated using Telelogic Software Development Tool (SDT). The tools allowed extensive model analysis and helped uncover several design flaws. The real-time constraints were stereotyped and packaged into reusable formal components. These components can be easily imported by applications. Two case studies, Cruise Control System and Bottle Filling System, are included to illustrate the use of the proposed process and the real-time package. The "industrial-strength" of the process was validated by utilizing the proposed process in an industrial project where it was found to accelerate the development process.
Model
Digital Document
Publisher
Florida Atlantic University
Description
Accompanying the potential increase in power offered by parallel computers is an increase in the complexity of program design, implementation, testing and maintenance. It is important to understand the logical complexity of parallel programs in order to support the development of concurrent software. Measures are needed to quantify the components of parallel software complexity and to establish a basis for comparison and analysis of parallel algorithms at various stages of development and implementation. A set of primitive complexity measures is proposed that collectively describe the total complexity of parallel programs. The total complexity is separated into four dimensions or components: requirements, sequential, parallel and communication. Each proposed primitive measure is classified under one of these four areas. Two additional possible dimensions, fault-tolerance and real-time, are discussed. The total complexity measure is expressed as a vector of dimensions; each component is defined as a vector of primitive metrics. The method of quantifying each primitive metric is explained in detail. Those primitive metrics that contribute to the parallel and communications complexity are exercised against ten published summation algorithms and programs, illustrating that architecture has a significant effect on the complexity of parallel programs--even if the same programming language is used. The memory organization and the processor interconnection scheme had no effect on the parallel component, but did affect the communication component. Programming style and language did not have a noticeable effect on either component. The proposed metrics are quantifiable, consistent, and useful in comparing parallel algorithms. Unlike existing parallel metrics, they are general and applicable to different languages, architectures, algorithms, paradigms, programming styles and stages of software development.