The Software Assurance Laboratory (SAL) is a Colorado State University research center devoted to the development of technology to support the assessment and development of high-quality software. Research at the center focuses on methods to specify, design, and implement software with desirable qualities. Work involves methods to assure that software has these qualities and methods to improve the design of existing software. SAL researchers aim to improve a broad spectrum of software quality attributes including reliability, adaptability, safety, security, maintainability, correctness, and fault-tolerance.
Network Security: Developing proactive network defense mechanisms, which can predict hostile attacks and defend against them. Massey, Indrajit Ray
Transaction Security: Developing Transaction systems that can survive hostile attacks. Security Protocols. Indrakshi Ray, Indrajit Ray.
Database Security: Improving the trustwothiness of systems built from untrustworthy software components. Indrakshi Ray, Indrajit Ray.
Security Measurement: Metrics for security vulnerabilities, design tradeoffs involving security. Malaiya, Indrakshi Ray, Georg, Bieman, France.
Distributed Object Systems: Provide fault tolerance in CORBA using object groups. We are concerned with maintenance of backup objects, object groups, group communication, object migration and load balancing. Ghosh.
Modeling and Analysis of Dependability Concerns: Develop techniques for modeling and analyzing security, fault tolerance, availability, and other software dependability concerns during design. France, Georg, Bieman, Ghosh, Indrakshi Ray.
Multi-view Software Evolution: Develop model-based methods to represent and evolve alternative perspectives of an evolving software system, making use of well-defined model and code transformations to satisfy objective change goals. France, Bieman, Ghosh, Ray.
The Precise UML Project (pUML): Develop a formal semantics for the Unified Modeling Language (UML) of the Object Management Group (OMG). France.
Dynamic Architecture Extraction and Display for CORBA Applications:Develop techniques for visualization of distributed applications at run-time for monitoring, control and debugging. Ghosh.
Evaluating Object-Oriented Designs: Develop techniques to quantify design attributes of OO software in terms of architectural structures and patterns, and show that these design attributes are related to maintainability, reusability, testability, and reliability.
The Wide World of Software Design: Develop an open repository of software design information, including design models and source code, to support the classification and scientific evaluation of actual software designs and design methods. Bieman, France.
Testing UML Models: France, Ghosh.
Run Time Fault Injection for Testing Objects: Develop mechanisms for injecting faults into objects to evaluate test data completeness and to increase coverage. Bieman, Ghosh.
Testing Heterogeneous Distributed Component Based Systems. Develop a testing methodology for distributed component-based systems. The methodology uses the description of interfaces of components. Ghosh.
Ultra-High Software Reliability: Develop techniques for achieving and evaluating ultra-high reliability in computational systems. This work includes both reliability modeling and software testing techniques. Malaiya.
Request for additional information can be made to Dr. James Bieman. Requests for copies of papers may be sent to any of the participating faculty. E-mail is preferred.
Computer Science Department Home Page
Last updated March 26, 2014