Compositional IS Development Framework Application Domain Application Domain Pre-existing...

7
Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods Extended for CD (ontologies) OAD Methods Diagrammatic Notation Diagrammatic Notation Specification in metamodel Specification in metamodel reuse of reverse engineering workproducrs reuse of OAD workproducrs Compositional Design Semantics & Metamodel underlying semantics underlying semantics

Transcript of Compositional IS Development Framework Application Domain Application Domain Pre-existing...

Page 1: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Compositional IS Development FrameworkCompositional IS Development Framework

ApplicationDomain

ApplicationDomain

Pre-existingcomponents,

legacy systems

Extended for CD(ontologies)

OADMethods

Extended for CD(ontologies)

OADMethods

DiagrammaticNotation

DiagrammaticNotation

Specificationin metamodel

Specificationin metamodel

reuse of reverseengineering workproducrs

reuse of OAD workproducrs

Compositional Design Semantics &Metamodel

underlyingsemantics

underlyingsemantics

Page 2: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Formal MethodsFormal Methods

Formal methods are mathematically based techniques for describing system properties; have an underlying theoretical model against which a description can be verified.

Model-based specifications use typed set theory and sets as formally defined mathematical entities. VDM, Z, RSL, AMN are well known model-oriented [sequential] languages.

Communicating Sequential Processes (CSP), Calculus of Communicating Systems (CCS) and Petri Nets are different model-oriented concurrent methods.

Larch is an algebraic sequential language.

Formal methods are mathematically based techniques for describing system properties; have an underlying theoretical model against which a description can be verified.

Model-based specifications use typed set theory and sets as formally defined mathematical entities. VDM, Z, RSL, AMN are well known model-oriented [sequential] languages.

Communicating Sequential Processes (CSP), Calculus of Communicating Systems (CCS) and Petri Nets are different model-oriented concurrent methods.

Larch is an algebraic sequential language.

Page 3: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Difficulties with formal methodsDifficulties with formal methods

Methodological and tool support still is not sufficient Conceptual grammars of formal tools require familiarity

with discrete mathematics and symbolic logic Inappropriate tool for communicating with the end user

during the earlier requirements elicitation and confirmation stages

Formal languages may not be an ideal for exploring and discovering the problem structure during the problem refinement process at the early stages of problem solving

Management is generally conservative and unwilling to use new techniques whose benefits are not yet established.

Methodological and tool support still is not sufficient Conceptual grammars of formal tools require familiarity

with discrete mathematics and symbolic logic Inappropriate tool for communicating with the end user

during the earlier requirements elicitation and confirmation stages

Formal languages may not be an ideal for exploring and discovering the problem structure during the problem refinement process at the early stages of problem solving

Management is generally conservative and unwilling to use new techniques whose benefits are not yet established.

Page 4: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Strategies of incorporating formal methodsStrategies of incorporating formal methods

Direct: moving directly natural language specifications to a fully developed set of formal specifications

Transitional: through intermediate representations in semi-formal notation

Transitional process can be partitioned into sequential and parallel successive refinement approaches.

Formalization support: unassisted or computer-based Four generic strategies are identified: direct unassisted,

direct computer-assisted, transitional unassisted, and transitional computer assisted.

Transitional strategies can be further classified into transitional sequential and transitional parallel

Direct: moving directly natural language specifications to a fully developed set of formal specifications

Transitional: through intermediate representations in semi-formal notation

Transitional process can be partitioned into sequential and parallel successive refinement approaches.

Formalization support: unassisted or computer-based Four generic strategies are identified: direct unassisted,

direct computer-assisted, transitional unassisted, and transitional computer assisted.

Transitional strategies can be further classified into transitional sequential and transitional parallel

Page 5: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Strategies evaluationStrategies evaluation

Direct Unassisted Strategy. Requirements engineer should combine thorough knowledge of the application domain and an ability to formalize the problem in its entirety; close collaboration between the user and the requirements engineer is necessary. Small, well-structured domains where users are

mathematically sophisticated enough to understand and validate the formally stated specifications. Prototypical situations.

Direct Computer-Assisted Strategy. Usually computer assistance takes a form of knowledge-based support for eliciting, discovering and creating the formal specification. Scaling up of this strategy to real-world applications would require a large amount of work.

Direct Unassisted Strategy. Requirements engineer should combine thorough knowledge of the application domain and an ability to formalize the problem in its entirety; close collaboration between the user and the requirements engineer is necessary. Small, well-structured domains where users are

mathematically sophisticated enough to understand and validate the formally stated specifications. Prototypical situations.

Direct Computer-Assisted Strategy. Usually computer assistance takes a form of knowledge-based support for eliciting, discovering and creating the formal specification. Scaling up of this strategy to real-world applications would require a large amount of work.

Page 6: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Strategies evaluation (2)Strategies evaluation (2)

Transitional Unassisted Strategy. Relies entirely on the formal language skills of the requirements engineer to translate between semi-formal and formal requirement specifications. Cognitive science conclusions: semi-formal representation suits better to exploring and discovering the problem structure.

Transitional sequential approach is feasible in those situations where detailed and complete requirements are either previously known or are easily discovered

Transitional Computer-Assisted Strategy: has advantage to move back and forth between semi-formal and formal specifications.

Transitional Unassisted Strategy. Relies entirely on the formal language skills of the requirements engineer to translate between semi-formal and formal requirement specifications. Cognitive science conclusions: semi-formal representation suits better to exploring and discovering the problem structure.

Transitional sequential approach is feasible in those situations where detailed and complete requirements are either previously known or are easily discovered

Transitional Computer-Assisted Strategy: has advantage to move back and forth between semi-formal and formal specifications.

Page 7: Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.

Strategy for compositional developmentStrategy for compositional development

Transitional strategy: semi-formal specification canonical object model and purely formal, mathematical AMN facilities.

Computer-assistance is based on a mapping of canonical specifications into the formal ones.

The strategy is transitional parallel: specifications obtained as the semi-formal on various stages can be mapped into formal specifications for their verification, getting proper feedback, correcting and improving of the original ones.

For a top-down, bottom-up process it is allowed parallel appearance of multiple refinement layers with synchronized semi-formal and formal specifications influencing each other.

Transitional strategy: semi-formal specification canonical object model and purely formal, mathematical AMN facilities.

Computer-assistance is based on a mapping of canonical specifications into the formal ones.

The strategy is transitional parallel: specifications obtained as the semi-formal on various stages can be mapped into formal specifications for their verification, getting proper feedback, correcting and improving of the original ones.

For a top-down, bottom-up process it is allowed parallel appearance of multiple refinement layers with synchronized semi-formal and formal specifications influencing each other.