Softwaretechnik / Software-Engineering
Lecture 10: Req. Eng. Wrap-Up / Architecture & Design
2017-06-22
- Prof. Dr. Andreas Podelski, Dr. Bernd Westphal
Albert-Ludwigs-Universität Freiburg, Germany
Topic Area Requirements Engineering: Content
– 10 – 2017-06-22 – Sblockcontent – 2/60- Introduction
- Requirements Specification
- Desired Properties
- Kinds of Requirements
- Analysis Techniques
- Documents
- Dictionary, Specification
- Specification Languages
- Natural Language
- Decision Tables
- Syntax, Semantics
- Completeness, Consistency, ...
- Scenarios
- User Stories, Use Cases
- Live Sequence Charts
- Syntax, Semantics
- Definition: Software & SW Specification
- Wrap-Up
Content
– 10 – 2017-06-22 – Scontent – 3/60- LSCs: Automaton Construction
- Excursion: Symbolic Büchi Automata
- LSCs vs. Software
- Methodology
- Requirements Engineering with scenarios
- Strengthening scenarions into requirements
- Requirements Engineering Wrap-Up
Topic Area Architecture & Design
- Vocabulary
- (software) system, component, module, interface
- design, architecture
- Software Modelling
- model
- views & viewpoints, the 4+1 view
- model-driven software engineering
TBA Construction Principle
– 9 – 2017-06-19 – Slscsem – 26/54 “Only” construct the transitions’ labels: = {(q, loop(q), q) | q Q} {(q, prog(q, q), q) | q F q} {(q, exit(q), L) | q Q} q q1 ... qn loop(q) = =:hot loop (q)- Msg(q) LocInv
- hot
- 1in
- hot
- ¬LocInv,•
- prog(q, qn) =
- Msg(q, qn) Cond
Loop Condition
– 9 – 2017-06-19 – Slscsem – 27/54 loop(q) = Msg(q) LocInv hot (q) LocInv cold (q)- Msg(q) = ¬
- strict =
- E!?Msg(L)
- =:strict(q)
- LocInv
- (q) =
- Msg(F) = {E! | (l, E, l) Msg, l F} {E? | (l, E, l) Msg, l F}
- Msg(F1, . . . , Fn) =
Progress Condition
– 9 – 2017-06-19 – Slscsem – 28/54 hot prog(q, qi) = Msg(q, qn) Cond hot (q, qn) LocInv,• hot (qn)- Msg(q, qi) =
- (Msg(qj\q)\Msg(qi\q)) ¬
- strict =
- (E!?Msg(L))\Msg(Fi)
- =:strict(q,qi)
- Cond
- (q, qi) =
- LocInv,•
- (q, qi) =
- l0 l l1, or
- l = l0 0 = •, or
- l = l1 1 = •