1 Formal Notations and Tools for addressing both Safety and Usability concerns for Interactive Systems Philippe Palanque LIIHS-IRIT University Paul Sabatier.

Slides:



Advertisements
Similar presentations
FDA Human Factors of Medical Devices
Advertisements

2009 – E. Félix Security DSL Toward model-based security engineering: developing a security analysis DSML Véronique Normand, Edith Félix, Thales Research.
SWEN 5130 Requirements EngineeringSlide 1 Software Prototyping u Animating and demonstrating system requirements.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
Ch.6: Requirements Gathering, Storyboarding and Prototyping
Lifecycle models For more info on these models – see text
HCI in the software process Chapter 6
What is Software Design?. Systems Development Life- Cycle Planning Analysis Design Implementation Design.
LIFE CYCLE MODELS FORMAL TRANSFORMATION
SECOND MIDTERM REVIEW CS 580 Human Computer Interaction.
Alternate Software Development Methodologies
Slide 10.1 CHAPTER 10 REQUIREMENTS PHASE. Slide 10.2 Overview l Requirements elicitation l Requirements analysis l Rapid prototyping l Human factors l.
CH02: Modeling the process and life cycle Process of developing software (organization and discipline in the activities) contribute to the quality of the.
CISB213 Human Computer Interaction Introduction and Overview.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
CPSC 481 Foundations and Principles of Human Computer Interaction
Design Activities in Usability Engineering laura leventhal and julie barnes.
Requirements Analysis 8. 1 Storyboarding b508.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Human.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development.
The Process of Interaction Design. What is Interaction Design? It is a process: — a goal-directed problem solving activity informed by intended use, target.
Software Engineering Incorporating Interface Design Into Software Engineering.
Course Wrap-Up IS 485, Professor Matt Thatcher. 2 C.J. Minard ( )
4. Interaction Design Overview 4.1. Ergonomics 4.2. Designing complex interactive systems Situated design Collaborative design: a multidisciplinary.
James Tam CPSC 481 Foundations and Principles of Human Computer Interaction James Tam.
4. Interaction Design Overview 4.1. Ergonomics 4.2. Designing complex interactive systems Situated design Collaborative design: a multidisciplinary.
Course Instructor: Aisha Azeem
Software Engineering Tools and Methods Presented by: Mohammad Enamur Rashid( ) Mohammad Rashim Uddin( ) Masud Ur Rahman( )
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
Requirements Analysis
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Animating and.
Introduction to Software Engineering
SVG OPEN 2005 Combining SVG and models of interaction to build highly interactive user interfaces Stéphane Chatty, Alexandre Lemort, Stéphane Sire {Chattty,
Chapter 11: Software Prototyping Omar Meqdadi SE 273 Lecture 11 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Software Architecture in Practice Architectural description (The reduced version)
Human Computer Interaction
INTERACTION DESIGN PROCESS Textbook: S. Heim, The Resonant Interface: HCI Foundations for Interaction Design [Chapter 3] Addison-Wesley, 2007 February.
Chapter 7 Interactive Design and Prototyping Human Performance Engineering Robert W. Bailey, Ph.D. Third Edition.
Development of Methodologies for Independent Verification and Validation of Neural Networks NAG OSMA-F001-UNCLASS Methods and Procedures.
Design Process … and some design inspiration. Course ReCap To make you notice interfaces, good and bad – You’ll never look at doors the same way again.
Software Prototyping Rapid software development to validate requirements.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
Adaptive User Interface Modelling for Web-environments T – Antti Martikainen
Prof. James A. Landay Richard Davis Kate Everitt University of Washington Autumn 2004 UW Undergraduate HCI Projects A CSE 490jl Overview December 9, 2004.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Université Toulouse I 1 CADUI' June FUNDP Namur Implementation Techniques for Petri Net Based Specifications of Human-Computer Dialogues.
1 Week 5 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
CS 310 Ch 4: Software Processes Software process: a set of activities that lead to a software system specification design and implementation validation.
Prototyping in the software process
Software Prototyping.
Topic for Presentaion-2
HCI in the software process
Software Prototyping Animating and demonstrating system requirements.
Model-Driven Analysis Frameworks for Embedded Systems
Fundamentals of Human Computer Interaction (HCI)
HCI in the software process
Map of Human Computer Interaction
HCI in the software process
SOFTWARE ENGINEERING LECTURE 2
Human Computer Interaction Lecture 14 HCI in Software Process
Rapid software development
An Introduction to Software Engineering
Principles of HCI Design
UML Design for an Automated Registration System
Presentation transcript:

1 Formal Notations and Tools for addressing both Safety and Usability concerns for Interactive Systems Philippe Palanque LIIHS-IRIT University Paul Sabatier Toulouse - France

2 Overview of LIIHS-IRIT (1) Research themes Software Engineering for Human-Computer Interaction Formal description techniques and tools Visual notations More dealing with modeling power than with usability of notations Application domains Air traffic control Military systems (command & control systems) Web applications

3 Overview of LIIHS-IRIT (2) LIIHS 6 tenured people mainly HCI (CS and human factors) 5 PhD students IRIT about 400 people (mainly in CS) Current projects RTN ADVISES (Analysis Design and Validation of Interactive Safety-critical Error-tolerant Systems) 4 years (starting 11/2002) MISCC (Multimodal Interactive Systems for Command and Control) 3 years starting 01/2003 SPIDER Web (Specification and Prototyping for user Interface Design, Engineering and Re-engineering for the Web ) started July 2002 (2 years)

4 We are what we publish ;-) Human-Computer Interaction BCS HCI, DSVIS, EHCI, HCI Aeronautics, INTERACT, Interacting with Computers Objects Technology OOPSLA, ECOOP, DOA Formal Methods ATPN (Petri Net conference), FMOODS Visual Languages Int. Journal on Visual Languages and Computing Model-Based Approaches CADUI, TAMODIA, IEEE Rapid System Prototyping Web Applications Human Factors and the Web

5 Main Results Relevant to EUD-Net PetShop A formal notation: ICOs An interactive editor: PetShop User-centered design methods Linking tasks, scenarios, system and user models Design rationale (not presented here) Vilage (work with S. Chatty at CENA) A notation: Whizz An editor: Whizz'ed

6 WidgetEventService PlaceType PlanesPlaneLabeClickuserAssume AssumedPl anes PlaneButtonClick userOpenMenu 3)Activation ObCS Element Feature Rendering method Place Planes token entered p.show() 4)Rendering 2)Behaviour 1)Presentation

7 PetShop Highly interactive tool support for the ICO notation Formal methods can be usable (and useful beyond n! calculation) “Shortening the Path from Specification to Prototype” … to practically nothing Model-Based The specification model is embedded and interpreted at run-time WYMIWYR (what you model is what you run) to reduce gaps in interpretation (Norman's model) No “Modes” : no “automation surprises” The model is editable and interpretable at any time Allows for interactive prototyping of new interaction scenarios

8 Requirements Specification Architecture design Detailed design Unitary tests Implementation and test Maintenance Validation Coding Preliminary needs Prototype User's evaluation no adequate ? yes Requirements Final System Requirements Formal specifications Hi-fidelity prototype Software Architecture & verification PetShop

9 User Centered Design Methods Mapping Input Task model Scenario CTTE Formal Description of the System High-fidelity prototyping PetShop

10 VILAGE (1) Initially developed for Air Traffic Controllers Interactive prototyping of highly interactive applications (post-WIMP) Build and test prototypes in a modeless way

11 VILAGE (1) A data flow model A set of basic building bricks Strongly typed connection Event listeners Tempo Segment Trajectoire POINT

12 VILAGE (3) Editing Zone Simulation Zone Tool Palete Dialogue Zone

13 Safety Critical Interactive Systems Safety Critical Systems Software Engineers System centered Reliability Safety requirements (certification) Formal specification Verification / Proof Waterfall model / structured Archaic interaction techniques Interactive Systems Usability experts User centered Usability Human factors Task analysis & modeling Evaluation Iterative process / Prototyping Novel Interaction techniques

14 What are we aiming at ? Kind of applications (one application, every kind of applications) Kind of User Interfaces (basic, complex) Kind of users (skills, expertise in the domain, …) Spreadsheets are really good for building a fairly reduced kind of application, basic UI and by a significant amount of users L. Lamport "Automaton is a formal description technique dedicated to the specification of stacks