17
September 23, 2019 Sam Siewert CS415 Human Computer Interaction Lecture 15 Block Diagram Design Examples

CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

September 23, 2019 Sam Siewert

CS415Human Computer Interaction

Lecture 15 – Block Diagram Design Examples

Page 2: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Design Elements for Proof-of-ConceptTop N Capability Oriented Requirements– State and Explain– Hold Q&A and Ask for Reviewer Input on Completeness, Errors

and Omissions

Single Page High Level Block Diagram of Software System– Show End-to-End Elements and Dataflow– Source to Sink (Top Left Corner to Bottom Right)

SA/SD - CFD/DFD, Flow Charts, State Machines or Other Design Models

Proof-of-Concept or Mock-Up and HCI Evaluation

Sam Siewert 2

Page 3: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Top Level Design Examples

STS-85 Payload(Flown 1997, U. of Colorado)

Sam Siewert

3

Page 4: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Payload Operations Requirements1. The Embedded System shall Operate 3 Instruments (LASIT, SXEE, FARUS) According to a

Scheduled Observing Plan of the Sun within STS Imposed Viewing and Operation Constraints2. The Health & Status of Each Instrument shall be Reported to the Ground Continuously at no

less than 1 Hz3. Science Data Collected by Each Instrument shall be Streamed to the Ground While an

Instrument is Observing4. Observing Plan Updates must be Uplinked from the Ground Systems as Command(s) with

Response5. Commands to Operate Instruments Interactively must be Uplinked from the Ground and Status

Indication Response Will be Provided6. The Embedded System must Interface to Low-Rate Uplink and Downlink interfaces on STS for

Command/Response, and H&S Telemetry Streaming7. The Ground Software at GSFC must Interface to the ACCESS LRDU8. Telemetry must be Stored in a Time-stamped Database9. A HMI GUI must Display H&S Telemetry at GSFC and Provide a Command/Response Interface10. GSFC Ground Systems must Host a Planning and Operations Rules and Constraints Database

and Engine11. GSFC Ground Systems must Host H&S Telemetry Monitoring to Detect Anomalous Behavior to

Generate Alerts for the HMI/GUI12. A Data Bridge Between GSFC Ground Systems and CU Boulder must Provide a

Command/Response and H&S Telemetry Network Interface13. CU Boulder Ground Systems must Interface an Automated Planning and Scheduling Software

Application and Allow it to Generate Uplink Commands to Modify or Replace the Current Embedded System Observing Plan

14. The CU Boulder Ground Systems must Provide and HMI/GUI for H&S Telemetry, Command/Response and Automated Planning and Scheduling

15. A CU Boulder to NASA JPL Data Bridge must Provide H&S Telemetry for Beacon Monitoring to NASA JPL for Display on a High Level Status HMI/GUI Sam Siewert 4Constraint related to requirement

Page 5: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

System Block DiagramSimple Interfacing between Major Hardware and Software Elements (Components or Subsystems) with User Interaction ShownE.g. CU Boulder Space Grant DATA-CHASER Mission (STS-85)

Sam Siewert 5

Page 6: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Software End-to-End System

Sam Siewert 6

Page 7: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

System of Systems Block DiagramComplex Systems that are Systems of Systems or Integration of Subsystems that can also stand alone (E.g. Drone Net)E.g. IEEE SOSE (Drone Net IEEE Aerospace - presentation, paper)

Sam Siewert 7

Page 8: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Application Block DiagramHardware shows standard platform(s), Software, and User InteractionLabel Interface Dataflow and ProtocolsE.g. Contacts App on AOS

Sam Siewert 8

Android App

AOS v X.Y

NDK

Smart Phone

SQLite AndroidDebug Bridge

Debugger

AppHCI

Java & C++AOS methods

SQL ADB(USB)

Page 9: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Internet

Chat Room Client Server DiagramClients Connect over well-known Secure Chat PortConnection is made and re-mapped to new port-pairEach Client port is served via “select” multiplexing and/or by threaded sessions on server

Sam Siewert 9

Client App 1Secure Chat Room

Server

EncryptedTCP Connect

Client App 10 EncryptedTCP Connect

Secure ChatPort

Log

Log

SystemLog

Page 10: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Block Diagram ResourcesThere is no standard for Block Diagrams

Traditional Engineering Diagram that is Interdisciplinary

SysML - An Extension to UML for Systems

http://www.omgsysml.org/

https://en.wikipedia.org/wiki/Block_diagram

Sam Siewert 10

Page 11: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Detailed Design Examples

SA/SDStructured Analysis and Design

Sam Siewert

11

Page 12: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Traditional SA/SD – Useful, But Not OOData Flow Diagrams –Data [Messages] Between Processes and is Transformed - Related Control Flow Diagrams

Entity Relationship Diagrams – Lacks Operations, but Defines Entities [Objects] and Relationships

State Machines [used in UML, but Typically for Each Process in DFD]

Flow-Charts, Control Flow Graphs – Detailed Procedural Design [Interaction, Logic] Sam Siewert 12

Stores, Flows, Processes, External Entities

http://en.wikipedia.org/wiki/Finite-state_machine

http://en.wikipedia.org/wiki/Data_flow_diagram

http://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model

http://en.wikipedia.org/wiki/Flowchart

Page 13: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

Flowchart - SA/SDFlowcharts

ISO 5807:1985

Procedural

Flowgorithm

Code2flow

Martincarlisle

Sam Siewert 13https://en.wikipedia.org/wiki/Flowchart

Page 14: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

DFD - Data Flow DiagramDeMarco, Tom. "Structure analysis and system specification." Pioneers and Their Contributions to Software Engineering. Springer, Berlin, Heidelberg, 1979. 255-288.

Data transformation

Smart Draw DFD

https://www.draw.io/

Sam Siewert 14

https://en.wikipedia.org/wiki/Data_flow_diagram

DFD - Easy to Understand,Natural for Transformation Architectures,Simple notation,Function (Process) abstraction,Can be leveled (DFDs compose Functionor Process at a higher level)

Page 15: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

ERD - Entity Relationship Diagram[Database Schemas]

Chen, Peter Pin-Shan. "The entity-relationship model —toward a unified view of data." Readings in artificial intelligence and databases. 1988. 98-111.

Smart Draw ERD

https://erdplus.com

MySQL Workbench - CS317

Navicat alternative to Workbench

Sam Siewert 15

https://www.smartdraw.com/entity-relationship-diagram/https://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model

Page 16: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

State Machine (Extended Finite SM)Mealy Machine– Most common

Moore Machine– Alternate notation

State Charts Real-Time Event Driven State Machines

SDL - Extended Finite State MachineAADL, TASTE

Sam Siewert 16

https://en.wikipedia.org/wiki/Moore_machinehttps://en.wikipedia.org/wiki/Mealy_machine

https://en.wikipedia.org/wiki/Specification_and_Description_Language

Page 17: CS415 Human Computer Interactionmercury.pr.erau.edu/~siewerts/...15-Block-Diagram... · CS415 Human Computer Interaction Lecture 15 – Block Diagram Design Examples. Design Elements

UML (Quick Reference, Visual Paradigm)About-UML, SE310 OverviewState with Use Cases and CRC for Classes4 Main Behavioral (UC, OIM sequence, Activity, State)4 Main Structural (Class, Object, Package, Deployment)

Sam Siewert 17

4 3

1

2

1

3

2

4