Implementation support IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:4221 4090

Slides:



Advertisements
Similar presentations
implementation support
Advertisements

Map of Human Computer Interaction
A component- and message-based architectural style for GUI software
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Lecture 12 implementation support. Today’s Lecture programming tools  levels of services for programmers windowing systems  core support for separate.
6/11/20151 Multiple Windows Strategies CIS 577 Bruce R. Maxim UM-Dearborn.
Understanding Metamodels. Outline Understanding metamodels Applying reference models Fundamental metamodel for describing software components Content.
Data Management I DBMS Relational Systems. Overview u Introduction u DBMS –components –types u Relational Model –characteristics –implementation u Physical.
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
Data Analysis (and User Interaction) GEOG 463 5/7/04.
Implementation support CSCI324, IACT403, IACT 931, MCS9324 Human Computer Interfaces.
Chapter 2 Introduction to Systems Architecture. Chapter goals Discuss the development of automated computing Describe the general capabilities of a computer.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
Human Computer Interaction Implementation Support.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
What is Concurrent Programming? Maram Bani Younes.
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
Chapter 3.1:Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
The Design Discipline.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
Architectural separation (MVC, arch model, Seeheim).
2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the purpose and various phases of the traditional systems development.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
An Introduction to Software Architecture
4/2/03I-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Software Architecture and Design Readings: Ambler, Chap. 7 (Sections to start.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Gary MarsdenSlide 1University of Cape Town Human-Computer Interaction - 3 Programmer Support Gary Marsden ( ) July 2002.
Implementation support z programming tools y levels of services for programmers z windowing systems y core support for separate and simultaneous user-system.
1 Implementation support chapter 8 programming tools –levels of services for programmers windowing systems –core support for separate and simultaneous.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Methodologies of the SDLC Traditional Approach to SDLC Object-Oriented Approach to SDLC CASE Tools.
Paper written by Flavio Oquendo Presented by Ernesto Medina.
1 Welcome to CSC 301 Web Programming Charles Frank.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Introduction to Microsoft Windows 2000 Integrated support for client/server and peer-to-peer networks Increased reliability, availability, and scalability.
Processes Introduction to Operating Systems: Module 3.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Chapter 2 Introduction to Systems Architecture. Chapter goals Discuss the development of automated computing Describe the general capabilities of a computer.
Design CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2008 Course.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
FOUNDATION IN INFORMATION TECHNOLOGY (CS-T-101) TOPIC : INFORMATION SYSTEM – SOFTWARE.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
Université Toulouse I 1 CADUI' June FUNDP Namur Implementation Techniques for Petri Net Based Specifications of Human-Computer Dialogues.
Department of CSE, KLU 1 Chapter 8 Implementation support.
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
Introduction. System Design Hardware/Software Platform Selection Software Architectures Database Design Human-Computer Interaction (HCI) Interface Object.
Support for the Development of Interactive Systems
Database Development (8 May 2017).
GUI Design and Coding PPT By :Dr. R. Mall.
Chapter 20 Object-Oriented Analysis and Design
implementation support
CSE310 Human-Computer Interaction
Map of Human Computer Interaction
Implementation support
implementation support
implementation support
Design Yaodong Bi.
Map of Human Computer Interaction
Implementation support
Presentation transcript:

Implementation support IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:

Overview zProgramming tools provide levels of services for programmers zWindowing systems as core support for separate and simultaneous user-system threads zProgramming the application and control of dialogue zInteraction toolkits bring programming closer to level of user perception zUser interface management systems help to control relationship between presentation and functionality of objects

Introduction zUp to now, our concern has been slanted away from concerns of the actual programmer. zAdvances in coding have elevated programming from hardware-specific to interaction technique- specific. zLayers of development tools ywindowing systems yinteraction toolkits yuser interface management systems

Elements of windowing systems zDevice independence yprogramming the abstract terminal ydevice drivers yimage models for output and (partially) input xpixels xGraphical Kernel System (GKS) xProgrammers' Hierarchical Interface to Graphics (PHIGS) xPostScript

Elements of windowing systems zResource sharing yachieving simultaneity of user tasks ywindow system supports independent processes yisolation of individual applications

The roles of a windowing system

Architectures of windowing systems z3 possible software architectures yall assume device driver is separate differ in how multiple application management is implemented 1.each application manages all processes everyone worries about synchronization reduces portability of applications 2.management role within kernel of operating system applications tied to operating system 3.management role as separate application maximum portability the client-server architecture

The client-server architecture

The X Window System architecture zpixel imaging model with some pointing mechanism zX protocol defines server-client communication zseparate window manager client enforces policies for input/output: yhow to change input focus ytiled vs. overlapping windows yinter-client data transfer

Programming the application z2 programming paradigms y1. read-evaluation loop yrepeat xread-event(myevent) xcase myevent.type type_1: –do type_1 processing type_2: –do type_2 processing... type_n: –do type_n processing xend case yend repeat

Programming the application z2. notification-based

Using toolkits zInteraction objects yinput and output intrinsically linked ztoolkits provide this level of abstraction yprogramming with interaction objects (or techniques, widgets, gadgets) ypromote consistency and generalisability through similar look and feel yamenable to object-oriented programming

User Interface Management Systems zUIMS add another level above toolkits ytoolkits too difficult for non-programmers yalternatively: xUI development system (UIDS) xUI development environment (UIDE)

User Interface Management Systems zAs a conceptual architecture yprovides separation between application xsemantics and presentation, improving: xportability xreusability xmultiple interfaces xcustomisability yidentifies roles (e.g., Seeheim) xpresentation component xdialogue control xapplication interface model

Implementation of UIMS zTechniques for dialogue controller ymenu networks ygrammar notations ystate transition diagrams yevent languages ydeclarative languages yconstraints ygraphical specification

Implementation of UIMS zThe drift of dialogue control yinternal control (e.g., read-evaluation loop) yexternal control (independent of application semantics or presentation) ypresentation control (e.g., graphical specification)

Summary zLevels of programming support tools zWindowing systems ydevice independence ymultiple tasks

Summary zParadigms for programming the application yread-evaluation loop ynotification-based zToolkits yprogramming interaction objects zUIMS yconceptual architectures for separation ytechniques for expressing dialogue