A Formal Approach for Software Maintenance - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

A Formal Approach for Software Maintenance

Description:

Second-phase Generating new SDL behavior from MSC. Post-phase Merging SDL behaviors ... From the new MSC and the enriched architecture. ... – PowerPoint PPT presentation

Number of Views:84
Avg rating:3.0/5.0
Slides: 26
Provided by: salmosa
Category:

less

Transcript and Presenter's Notes

Title: A Formal Approach for Software Maintenance


1
A Formal Approach for Software Maintenance
  • Umer Waqar, Ferhat Khendek, Daniel Vincent
  • Proceeding of the International Conference on
    Software Maintenance (ICSM 02)
  • 2002. 7. 22
  • Present by Sunae Lee

2
Contents
  • Introduction
  • Background
  • Overview of approach
  • Three phases for approach
  • Enriching SDL architectures
  • Generating new SDL behavior from MSC
  • Merging SDL behaviors
  • Case Study Automatic Teller Machine
  • Conclusion

3
Introduction (1/2)
  • Software systems evolve because user requirements
    change over time.
  • New behavior has to preserve all the old behavior
    in the existing system.
  • Extended transformational model.

4
Introduction (2/2)
  • A formal approach, can, not only be automated but
    also guarantees to enrich the system.
  • This approach effectively shifts maintenance from
    code level to specification level.

SDL (design spec.)
Automated approach for maintenance
Enriched SDL spec.
MSC (capture new requirement)
5
Background (1/4) SDL (Specification and
Description Language)
  • Object-oriented formal language defined by ITU-T
    for specification of complex, real-time
    applications.
  • SDL comprises four main hierarchical levels
  • system, blocks, processes, procedures
  • The Structural View of an SDL System.

6
Background (2/4) SDL (Specification and
Description Language)
  • A simple behavioral specification in SDL.

start
state
input
decision
transition
non-determinism
output
7
Background (3/4) MSC (Message Sequence Chart)
  • A simple specification in MSC.

condition
lifeline of a process instance
messages between process instances
8
Background (4/4) Extension relation
  • Conservative extension
  • The new system can substitute the old one.
  • Prohibition of new non-determinism in the new
    system specification.
  • Process Extension Example

P4 is not an extension of P3.
P2 is an extension of P1.
9
Overview of approach (1/2)
  • Generating enriched SDL specifications.

10
Overview of approach (2/2)
  • Pre-phase - Enriching SDL architectures
  • Second-phase Generating new SDL behavior from
    MSC
  • Post-phase Merging SDL behaviors

Old SDL specification
Pre-phase
Enriched SDL structure
New MSC specification
New MSC specification
Second-phase (use MSC2SDL tool)
New SDL behavior
Enriched SDL structure
Old SDL behavior
Post-phase
Enriched SDL behavior
New SDL behavior
11
Enriching SDL architectures (1/2)
  • Developed algorithms and tool to enrich of SDL
    architecture.
  • Done in an interactive manner with the designer.
  • Old Architecture and New MSC

12
Enriching SDL architectures (2/2)
  • Enriched architecture

13
Generating new SDL behavior from MSC
  • The MSC2SDL tool is used to generate new SDL
    spec.
  • From the new MSC and the enriched architecture.
  • Example new behavior of Bank process generated
    by MSC2SDL

14
Merging SDL behaviors (1/5)
  • Rule 1 (similar transitions)
  • Two similar transitions without any new behavior.

15
Merging SDL behaviors (2/5)
  • Rule 2 (same output signal sequence, different
    next state)
  • The new transition differs from the old
    transition only by the next state.

16
Merging SDL behaviors (3/5)
  • Rule 3 (different output signal sequence, same
    next state)
  • The new transition extends the output sequence of
    the corresponding old transition.

17
Merging SDL behaviors (4/5)
  • Rule 5 (different Input Signal)
  • A new transition appended to the resulting
    specification.

18
Merging SDL behaviors (5/5)
  • Rule 9 (involving ANY)
  • Same input signal as the old non-deterministic
    transition.
  • Output signal sequence exists in the old
    transition but not going to the same state.

19
Case study ATM (1/6)
  • Old ATM architecture

20
Case study ATM (2/6)
  • Behavior of the old ATM and Bank process

21
Case study ATM (3/6)
  • Add deposit functionality to the existing ATM.
  • MSC deposit

22
Case study ATM (4/6)
  • Pre-phase
  • Enriched ATM architecture

23
Case study ATM (5/6)
  • MSC2SDL-phase
  • New behaviors of ATM and Bank generated by MSC2SDL

24
Case study ATM (6/6)
  • Post-phase
  • Enriched ATM and Bank processes

25
Conclusion
  • Introduced an approach for incremental design of
    SDL specifications from MSCs.
  • Not complete. Can only apply some partial
    situation.
  • Suggested 14 rules for merging SDL specifications
    based upon a formally defined extension relation.
  • Doesnt give any verification about rules.
  • Guarantees to preserve old behavior and prevents
    inclusion of new non-determinism in the enriched
    SDL
  • However, a user may want another kind of
    enrichment.
  • Future work may include development of an
    extended specialization.
Write a Comment
User Comments (0)
About PowerShow.com