Chapter 2 Basic Principles Winter 2007, rev. 2008 SEG2101 - Chapter 2 1 Basic Principles • • • • • • • Introduction to the system example Systems Techniques to manage complexity Approaches to behavior description Some description approaches The methodology presented here The SOON notation Winter 2007, rev. 2008 SEG2101 - Chapter 2 2 2.1: Introduction to the System Example • Access Control System (AC-System) • Access point: controlled by local station, physically distributed to where the services are needed • Local station: control unit, a door lock mechanism, one or two panels, each contains a card reader, a display unit, and a keypad • Central station: keeps information about the users, their access rights, their cards, and their secret PINs, performs authentication and authorization. Winter 2007, rev. 2008 SEG2101 - Chapter 2 3 Panel and Card Winter 2007, rev. 2008 SEG2101 - Chapter 2 4 System Structure Winter 2007, rev. 2008 SEG2101 - Chapter 2 5 2.2: Systems • • • • What is a system? Behavior Structure Real time systems Winter 2007, rev. 2008 SEG2101 - Chapter 2 6 What is a System? • A system is part of real world that a person or group of persons during some time interval and for some purpose choose to regard as a whole, consisting of interrelated components, each component characterized by properties that are selected as being relevant to the purpose. • A system is a purposeful collection of interrelated components that work together to achieve some objective. Winter 2007, rev. 2008 SEG2101 - Chapter 2 7 What is a System (2) • A system is part of the real world. • What constitutes a system is a matter of definition. • Each component of a system may also be regarded as a system. • A system is not just any unordered collection of components. • A system has purpose. Winter 2007, rev. 2008 SEG2101 - Chapter 2 8 System Hierarchy Town Street Building Winter 2007, rev. 2008 Heating system Power system Water system Security system Lighting system Waste system SEG2101 - Chapter 2 9 A Simple Intruder Alarm System Door sensors Movement sensors Alarm contr oller Siren Winter 2007, rev. 2008 Voice synthesizer SEG2101 - Chapter 2 Telephone caller External control centre 10 System Description • Two purposes – To describe the functional behavior so that it can be fully understood – To describe the realization so that the system may be produced • System vs system description Winter 2007, rev. 2008 SEG2101 - Chapter 2 11 System and System Description Winter 2007, rev. 2008 SEG2101 - Chapter 2 12 Behavior • The behavior of a system is the development of states and state transitions generated by actions of the system during the time interval in which it is studied. • Behavior is a dynamic development over time. • Actually occurring in real world. • Approximation: behavior consists of actions that change state (value) of variables. Winter 2007, rev. 2008 SEG2101 - Chapter 2 13 A Segment of Behavior Winter 2007, rev. 2008 SEG2101 - Chapter 2 14 Structure • The structure of a system is the aspects of the system which stay invariant during the time interval in which it is studied. • Structure is the way things hold together for some time. • pp 30-31 Winter 2007, rev. 2008 SEG2101 - Chapter 2 15 Real Time Systems • A system is a real time system if it has a role with time constraints. • A real-time system is a system that is required to react to stimuli from the environment within time intervals dictated by the environment. Winter 2007, rev. 2008 SEG2101 - Chapter 2 16 A Simple Fluid Control System (real-time) Interface Pipe Input flow reading Flow meter Processing Valve Output valve angle Time Computer Winter 2007, rev. 2008 SEG2101 - Chapter 2 17 A Grain-Roasting Plant (real-time) Bin Furnace Fuel Tank grain Pipe fuel Winter 2007, rev. 2008 SEG2101 - Chapter 2 18 A Process Control System (real-time) Process Control Computer Valve Chemicals and Materials Temperature Transducer Stirrer Finished Products PLANT Winter 2007, rev. 2008 SEG2101 - Chapter 2 19 2.3: Techniques to Manage Complexity • • • • Abstraction Projection Aggregation and partition Generalization and specialization Winter 2007, rev. 2008 SEG2101 - Chapter 2 20 Abstraction • To ignore some aspects of a phenomenon in order to describe (and understand) others more clearly. • Opposite of concrete or physical • The abstractions should be clear and precise, lead to efficient implementation, and support the continuing development and reuse. Winter 2007, rev. 2008 SEG2101 - Chapter 2 21 Projection • In projections we look at the system from different angles. • A projection is a description of a system as it is observed at subset of its interfaces. • Only the observable interfaces are visible, while the others are hidden. Winter 2007, rev. 2008 SEG2101 - Chapter 2 22 Aggregation and Partitioning (I) • All non-trivial systems are composed from components. • The process of lumping components together to form a whole is called aggregation. • The opposite process of decomposing a whole into parts is called partitioning. Winter 2007, rev. 2008 SEG2101 - Chapter 2 23 Aggregation and Partitioning (II) Winter 2007, rev. 2008 SEG2101 - Chapter 2 24 Generalization and Specialization • In the real world there are huge amounts of similar subjects. • Rather than describing and understanding all individuals in full detail, we may describe and understand them in terms of similarity. • Type are conceptual entities that we use to structure our descriptions and thoughts. • Individual or subtype is an instance of a type. Winter 2007, rev. 2008 SEG2101 - Chapter 2 25 A Generalization Hierarchy Employee Ma nager Programmer budgetsControlled dateAppointed project progLanguage Project Ma nag er projects Winter 2007, rev. 2008 De pt. Ma nager dept SEG2101 - Chapter 2 Strategic Ma nag er responsibilities 26 Type and Subtype Winter 2007, rev. 2008 SEG2101 - Chapter 2 27 Inheritance and Specialization Winter 2007, rev. 2008 SEG2101 - Chapter 2 28 2.4: Behavior Description: the Problem • The quality of a real-time system is determined to a very large extent by its behavior. • Behavior is the most difficult system aspect to describe, due to its dynamic and transient nature. • How can we represent a dynamic and possibly infinite behavior in a static and finite way? Winter 2007, rev. 2008 SEG2101 - Chapter 2 29 Behavior Description: Example Winter 2007, rev. 2008 SEG2101 - Chapter 2 30 Behavior Description: Focus • State-oriented – focus on states and action instances – each state is represented by a node – each action instance is represented by a branch • Action-oriented – focus on action types and variables – states need not be described at all – the states may be found by analyzing the actions Winter 2007, rev. 2008 SEG2101 - Chapter 2 31 2.5: Some Description Approaches • • • • • Abstract description Entity relationship description SOON notation Data flow diagrams Finite state machine Winter 2007, rev. 2008 SEG2101 - Chapter 2 32 Abstract Description • Many different approaches to abstract system description • Conflict between the need to formalize and the need to understand • The abstract description methods that have had the strongest penetration so for have been those that emphasize the needs of human audience. Winter 2007, rev. 2008 SEG2101 - Chapter 2 33 Entity Relationship Description Winter 2007, rev. 2008 SEG2101 - Chapter 2 34 Entity Relationship Diagram Legend Winter 2007, rev. 2008 SEG2101 - Chapter 2 35 Another Entity Relationship Diagram Winter 2007, rev. 2008 SEG2101 - Chapter 2 36 SOON Notation (used in book by Braek) Winter 2007, rev. 2008 SEG2101 - Chapter 2 37 Type Definition The SOON notation has a clear separation between types and instances it allows us to represent individuals and types explicitly and not implicitly as in ER diagrams. Winter 2007, rev. 2008 SEG2101 - Chapter 2 38 UML Class Diagram Winter 2007, rev. 2008 SEG2101 - Chapter 2 39 Data Flow Diagrams Winter 2007, rev. 2008 SEG2101 - Chapter 2 40 UML Activity Diagram (related to Dataflow Diagrams) Winter 2007, rev. 2008 SEG2101 - Chapter 2 41 Use Case Maps A notation (with roots in Ottawa) which is semantically similar to Activity Diagrams. Here is the same example: Warehouse Ship Order Office [ Order rejected ] Receive Order [ Order accepted ] Close Order Fill Order Send Invoice Acccept Payment Client Make Payment Winter 2007, rev. 2008 SEG2101 - Chapter 2 42 Concepts describing requirements • Each Use Case is a scenario – Actions done by actors in some given order • Action: Activity / Responsibility • Actor: Swimlane / Component • Order: sequence, alternatives, concurrency, arbitrary control flows (similar to Petri nets) • Abstraction: refinement of activity / Plug-in • Data-Flow: Object flow / not in UCMs. Question: what type of data is exchanged (an extension of control flow) – Input assertions for input data flow – Output assertions for output data flow – Conditions for alternatives (also in UCMs) Winter 2007, rev. 2008 SEG2101 - Chapter 2 43 Finite State Machine Winter 2007, rev. 2008 SEG2101 - Chapter 2 44 FSM • • • • A finite set of inputs, I: A finite set of outputs, O; A finite set of state, S; A next state function, FS: SIS ; • An output function, FO: SIO* ; • A designated initial state, Initial. Winter 2007, rev. 2008 SEG2101 - Chapter 2 45 2.6: The Methodology Presented Here Winter 2007, rev. 2008 SEG2101 - Chapter 2 46 Summaries of Notations Winter 2007, rev. 2008 SEG2101 - Chapter 2 47 2.7: The SOON Notation • SISU Object-Oriented Notation • Used to describe structures where SDL is not appropriate • Less formal and does not enforce SDL semantics Winter 2007, rev. 2008 SEG2101 - Chapter 2 48 SOON Symbols Winter 2007, rev. 2008 SEG2101 - Chapter 2 49 SOON Syntax Winter 2007, rev. 2008 SEG2101 - Chapter 2 50
© Copyright 2026 Paperzz