Perpetual Requirements Engineering

This dissertation attempts to make a contribution within the fields of distributed systems, security, and formal verification. We provide a way to formally assess the impact of a given change in three different contexts. We have developed a logic based on Lewiss Counterfactual Logic. First we show h...

Full description

Bibliographic Details
Main Author: Peralta, Manuel Alfonso
Other Authors: Sabliov, Christina
Format: Others
Language:en
Published: LSU 2012
Subjects:
Online Access:http://etd.lsu.edu/docs/available/etd-10242012-153450/
id ndltd-LSU-oai-etd.lsu.edu-etd-10242012-153450
record_format oai_dc
spelling ndltd-LSU-oai-etd.lsu.edu-etd-10242012-1534502013-01-07T22:54:13Z Perpetual Requirements Engineering Peralta, Manuel Alfonso Computer Science This dissertation attempts to make a contribution within the fields of distributed systems, security, and formal verification. We provide a way to formally assess the impact of a given change in three different contexts. We have developed a logic based on Lewiss Counterfactual Logic. First we show how our approach is applied to a standard sequential programming setting. Then, we show how a modified version of the logic can be used in the context of reactive systems and sensor networks. Last but not least we show how this logic can be used in the context of security systems. Traditionally, change impact analysis has been viewed as an area in traditional software engineering. Software artifacts (source code, usually) are modified in response to a change in user requirements. Aside from making sure that the changes are inherently correct (testing and verification), programmers (software engineers) need to make sure that the introduced changes are coherent with those parts of the systems that were not affected by the artifact modification. The latter is generally achieved by establishing a dependency relation between software artifacts. In rough lines, the process of change management consists of projecting the transitive closure of the this dependency relation based on the set of artifacts that have actually changed and assessing how the related artifacts changed. The latter description of the traditional change management process generally occurs after the affected artifacts are changed. Undesired secondary effects are usually found during the testing phase after the changes have been incorporated. In cases when there is certain level of criticality, there is always a division between production and development environments. Change management (either automatic, tool driven, or completely manually done) can introduce extraneous defects into any of the changed software life-cycle artifacts. The testing phase tries to eradicate a relatively large portion of the undesired defects introduced by change. However, traditional testing techniques are limited by their coverage strength. Therefore, even when maximum coverage is guaranteed there is always the non-zero probability of having secondary effects prior to a change. Sabliov, Christina Busch, Konstantin Karki, Bijaya Mukhopadhyay, Supratik Keiser, Harmut LSU 2012-10-31 text application/pdf http://etd.lsu.edu/docs/available/etd-10242012-153450/ http://etd.lsu.edu/docs/available/etd-10242012-153450/ en unrestricted I hereby certify that, if appropriate, I have obtained and attached herein a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dissertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to LSU or its agents the non-exclusive license to archive and make accessible, under the conditions specified below and in appropriate University policies, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report.
collection NDLTD
language en
format Others
sources NDLTD
topic Computer Science
spellingShingle Computer Science
Peralta, Manuel Alfonso
Perpetual Requirements Engineering
description This dissertation attempts to make a contribution within the fields of distributed systems, security, and formal verification. We provide a way to formally assess the impact of a given change in three different contexts. We have developed a logic based on Lewiss Counterfactual Logic. First we show how our approach is applied to a standard sequential programming setting. Then, we show how a modified version of the logic can be used in the context of reactive systems and sensor networks. Last but not least we show how this logic can be used in the context of security systems. Traditionally, change impact analysis has been viewed as an area in traditional software engineering. Software artifacts (source code, usually) are modified in response to a change in user requirements. Aside from making sure that the changes are inherently correct (testing and verification), programmers (software engineers) need to make sure that the introduced changes are coherent with those parts of the systems that were not affected by the artifact modification. The latter is generally achieved by establishing a dependency relation between software artifacts. In rough lines, the process of change management consists of projecting the transitive closure of the this dependency relation based on the set of artifacts that have actually changed and assessing how the related artifacts changed. The latter description of the traditional change management process generally occurs after the affected artifacts are changed. Undesired secondary effects are usually found during the testing phase after the changes have been incorporated. In cases when there is certain level of criticality, there is always a division between production and development environments. Change management (either automatic, tool driven, or completely manually done) can introduce extraneous defects into any of the changed software life-cycle artifacts. The testing phase tries to eradicate a relatively large portion of the undesired defects introduced by change. However, traditional testing techniques are limited by their coverage strength. Therefore, even when maximum coverage is guaranteed there is always the non-zero probability of having secondary effects prior to a change.
author2 Sabliov, Christina
author_facet Sabliov, Christina
Peralta, Manuel Alfonso
author Peralta, Manuel Alfonso
author_sort Peralta, Manuel Alfonso
title Perpetual Requirements Engineering
title_short Perpetual Requirements Engineering
title_full Perpetual Requirements Engineering
title_fullStr Perpetual Requirements Engineering
title_full_unstemmed Perpetual Requirements Engineering
title_sort perpetual requirements engineering
publisher LSU
publishDate 2012
url http://etd.lsu.edu/docs/available/etd-10242012-153450/
work_keys_str_mv AT peraltamanuelalfonso perpetualrequirementsengineering
_version_ 1716478243342647296