1 / 9

SWEN 750 Software Modeling

SWEN 750 Software Modeling. Sessions. Basic concepts Case studies Research papers. What is a Model. Abstraction Reduced representation of a system Highlight important properties From a given viewpoint. What to Model. Requirement (user interface)

deanne
Télécharger la présentation

SWEN 750 Software Modeling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SWEN 750 Software Modeling

  2. Sessions • Basic concepts • Case studies • Research papers

  3. What is a Model • Abstraction • Reduced representation of a system • Highlight important properties • From a given viewpoint

  4. What to Model • Requirement (user interface) • Software Structure, Architecture, Dependencies • Configurations (feature models) • Security features (threat models, attack models)

  5. Modeling Languages and Tools • UML • Use case, Sequential, State, Activity, Class, Component, • OCL • pre-, post-conditions, class invariants • Z • Alloy • First-order logic, set theory • Formal reasoning, automatic analysis

  6. Software Architecture • Components and the connectors (interactions) between them • Design vs. Architecture • Design explicitly addresses functional requirements • Architecture explicitly addresses functional and non-functional requirements such as: • reusability, maintainability, portability, interoperability, testability, efficiency, and fault-tolerance

  7. Design Patterns • What are design patterns? • Templates to organize classes and objects • Language assumptions: OO (small talk, C++) • Many of the patterns related to GUI design • Goals of the design patterns? • Help OO design: decomposing the system into objects to exploit encapsulation, extensibilityand ease of modification, performance, reusability

  8. Model-based Verification • Formal Verification techniques consist of three parts: • Models for systems • Models for property • A verification method

  9. Model-based Testing • Automatic derivation of concrete • test cases from models of the system under testing • Derive all combination of tests associated with the requirements represented in the model to automate both the test design and test execution process

More Related