F27SB2 Software Development 2 Lecture 1: Introduction.

Slides:



Advertisements
Similar presentations
Computer Parts There are many parts that work together to make a computer work.
Advertisements

Windows Basics An Introduction to the Windows Operating System.
COMPUTER INTERFACES.
Designing a Graphical User Interface (GUI) 10 IST – Topic 6.
 An operating system (OS) is a set of computer programs that allow the user to perform basic tasks like copying, moving, saving and printing files. 
Essential Introduction to Computers
Computer Basics 1 Computer Basic 1 includes two lessons:
COMPUTER CONCEPTS Computer Information Systems. COURSE COMPETENCIES Explain the functions of computer system components. Describe the information processing.
1 The Five Parts of an Information System
User Interface Design: Methods of Interaction. Accepted design principles Interface design needs to consider the following issues: 1. Visual clarity 2.
Ch 7 & 8 Interaction Styles page 1 CS 368 Designing the Interaction Interaction Design The look and feel (appearance and behavior) of interaction objects.
Graphical User Interface (GUI) Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
MCT260-Operating Systems I Operating Systems I Interfaces to Operating Systems.
Other Interaction Styles: Direct Manipulation, Haptic, Multimedia, Multimodal, Virtual Reality, Video Games Dr.s Barnes and Leventhal.
Course: Introduction to Computers
 At the end of this class, students are able to  Describe definition of input devices clearly  List out the examples of input devices  Describe.
Present by : Juan José Foronda
04/05/031 Computer Input and Output Dairne Jesperson Charles Darwin University.
The Operating System. Operating Systems (F) What you need to know about –operating system as a program; –directory/folder.
Computer for Health Sciences
Introduction To Computers
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
CS 0004 –Lecture 1 Wednesday, Jan 5 th, 2011 Roxana Gheorghiu.
INTRODUCTION TO COMPUTING
2-3 note. 2 Peripheral Devices “Peripheral devices” are hardware plugged into ports or connected to a computer wirelessly. These devices can be for input,
Introduction to computers.. What Is A Computer A computer is a multi-tasking device that performs mathematical and logical computations A computer can.
11.10 Human Computer Interface www. ICT-Teacher.com.
Unit 1_9 Human Computer Interface. Why have an Interface? The user needs to issue instructions Problem diagnosis The Computer needs to tell the user what.
Operating Systems. Without an operating system your computer would be useless! A computer contains an Operating System on its Hard Drive. This is loaded.
Chapter 1 Introduction to Computers and C++ Programming Goals: To introduce the fundamental hardware and software components of a computer system To introduce.
Visual C++ Programming: Concepts and Projects
Computer A computer is an electronic machine that takes information, processes it,and stores it. Computers are made up of hardware ( monitor, tower, keyboard,
Output Design. Output design  Output can be: Displayed on a screen/VDU/monitor. Printed on paper as hard copy. Sound.
Computer Components.
Lesson 1: Learning About Computer Basics. 2 Concept 1.1 Computer Basics What can you do with a computer? –Write a letter –Make a picture –Find maps and.
1 The Five Parts of an Information System
© Paradigm Publishing Inc. 4-1 OPERATING SYSTEMS.
Computing Science 1P Lecture 17: Friday 23 rd February Simon Gay Department of Computing Science University of Glasgow 2006/07.
Foundation year Lec.3: Computer SoftwareLec.3: Computer Software Lecturer: Dalia Mirghani Year: 2014/2015.
OPERATING SYSTEM - program that is loaded into the computer and coordinates all the activities among computer hardware devices. -controls the hardware.
Win OS & Hardware. Input Getting data into the computer.
ELEMENTS OF A COMPUTER SYSTEM HARDWARE SOFTWARE PEOPLEWARE DATA.
There are many parts that work together to make a computer work. System Unit Computer Parts.
Different Types of HCI CLI Menu Driven GUI NLI
USER INTERFACE DESIGN (UID). Introduction & Overview The interface is the way to communicate with a product Everything we interact with an interface Eg.
Computer Parts There are many parts that work together to make a computer work.
7th Meeting TYPE and CLICK. Keyboard Keyboard, as a medium of interaction between user and machine. Is a board consisting of the keys to type a sentence.
Styles of User Interface. Learning Objectives: By the end of this topic you should be able to: describe the characteristics of different styles of user.
In computing, an input device is a piece of computer hardware equipment used to provide data and control signals to an information processing system such.
INFORMATION SYSTEM – SOFTWARE TOPIC: GRAPHICAL USER INTERFACE.
Computer Parts and Functions. How A Computer Works.
Operating System Concepts Three User Interfaces Command-line Job-Control Language (JCL) Graphical User Interface (GUI)
Chapter 4 Software. Introduction Program: is a set of sequence instructions that tell the computer what to do. Software: is a collection of programs,
Introduction To Computers
Software Interfaces. Learning Objectives Describe the characteristics of different types of user interfaces. Discuss the types of user interfaces which.
Introduction  Program: Set of sequence instruction that tell the computer what to do.  Software: A collection of programs, data, and information. 
Introduction to Computing Slides By ADEELA MUSTAFA.
Systems and User Interface Software. Types of Operating System  Single User  Multi User  Multi-tasking  Batch Processing  Interactive  Real Time.
Input Devices.
Computer Information Systems
Human Computer Interaction (HCI)
11.10 Human Computer Interface
Event-driven programming
Unit 2 User Interface Design.
Course: Introduction to Computers
GRAPHICAL USER INTERFACE
Event loops 17-Jan-19.
Chapter 1:Types and Components of Computer
Presentation transcript:

F27SB2 Software Development 2 Lecture 1: Introduction

Form follows function in artefacts, useful to distinguish – form what something looks like – function what something does e.g. MP3 player & mobile phone - same forms & different functions e.g. motorcycle & bicycle - different forms and same functions

Form follows function can change form without changing function – e.g. new model of car can change function without changing form – e.g. use screwdriver to open tin form follows function – i.e. how things look should reflect what they do – Louis Sullivan, US Architect, – modern movement

Form follows function e.g. doors – plate ==> push – handle ==> pull e.g. cooker hob – knobs & burners – layout of knobs should match position of burners useful guideline for designing computer systems how things look on screen should suggest what effects they have when selected

Syntax and semantics in language, useful to distinguish – syntax structure/representation sequences of words/symbols represented as sounds, marks on paper, pixels on screen – semantics meaning how structured symbol sequences refer to things in reality

Syntax and semantics e.g. print squares from 1 to 10 – BASIC 5 FOR I = 1 TO PRINT I*I 15 NEXT I – Java int i; for(i=1;i<=10;i++) screen.println(i*i); different syntax & same semantics

Syntax and semantics e.g. 111 – three in Roman – seven in binary - 1*4+1*2+1*1 – one hundred & eleven in decimal - 1*100+1*10+1*1 same syntax and different semantics

Implementation and interface in computer systems, useful to distinguish between: – implementation underlying behaviour – interface how user initiates underlying behaviour two common styles of interface – text-based - command line – windows-based - WIMP

Implementation and interface in programming – implementation methods that affect data structures – interface how user interacts with methods

Implementation and interface important to separate interface and implementation may want to change implementation without changing interface – e.g. change data representations/algorithms to make program more efficient may want to change interface without changing implementation – e.g. replace text-based interface to program with windows-based interface

From user to program hardware – peripherals e.g. keyboard/mouse & screen – computer e.g. CPU/memory display keyboard computer mouse

From user to program operating system – software running on computer – detects hardware changes via computer to read input – causes hardware changes via computer to write output display keyboard computer operating system mouse

From user to program program – software running on computer – controlled by operating system – requests input from operating system – sends output to operating system display keyboard computer operating system program mouse

Command line interface e.g. Windows: DOS window e.g. Linux: terminal window keyboard ==> input screen ==> output text is sole means of communication between user and program

Command line interface typical read/process/write cycle program – asks operating system for input – pauses display keyboard computer operating system program

Command line interface user – types on keyboard display keyboard computer operating system program

Command line interface user – types on keyboard computer – detects electronic signals display keyboard computer operating system program

Command line interface user – types on keyboard computer – detects electronic signals operating system – identifies key presses display keyboard computer operating system program

Command line interface user – types on keyboard computer – detects electronic signals operating system – identifies key presses – sends details to program display keyboard computer operating system program

Command line interface program – interprets key presses display keyboard computer operating system program

Command line interface program – interprets key presses – sends outputs to operating system display keyboard computer operating system program

Command line interface program – interprets key presses – sends outputs to operating system operating system – initiates hardware signals from computer display keyboard computer operating system program

Command line interface program – interprets key presses – sends outputs to operating system operating system – initiates hardware signals from computer computer – displays outputs on screen note that program pauses until user enters input display keyboard computer operating system program

Command line interface user does not know what to do unless told by program program should use textual prompts to: – request inputs – describe appropriate forms for inputs – provide error information – describe output

Command line interface e.g. find sum of 10 numbers between 0 and 100 int sum=0; int next; for(int i=0;i<10;i++) { next=Integer.parseInt(keyboard.readLine()) while(next 100) next=Integer.parseInt(keyboard.readLine()); sum=sum+next; } display.println(sum);

Command line interface user is not told – what the program does – when to enter a number – what sort of number to enter – when the entered number is inappropriate – what the output represents

Command line interface int i; int sum=0; int next; display.println(Find sum of 10 integers between 0 & 100); for(i=0;i<10;i++) { display.print(Enter integer +i+ > ); display.flush(); next=Integer.parseInt(keyboard.readLine()) while(next 100) { display.println(Integer not between 0 & 100); display.print(Enter integer +i+ > ); display.flush(); next=Integer.parseInt(keyboard.readLine()); } sum=sum+next; } display.println(Sum is: +sum);

Command line interface Note: – interface has changed – implementation has not changed

WIMP Windows/Icons/Mice/Pointers contemporary interface style supplanting command line developed at Xerox PARC in 1970s first taken up by Apple for Lisa & Macintosh developed by Microsoft for Windows incorporated into X Windows interface for UNIX now ubiquitous

Window autonomous area on screen communicates with operating system to enable interaction through physical devices contains graphical areas/objects for interaction user sees window not program operating system mediates interaction between – user and window – window and program

Icon symbolic representation on screen graphical picture indicating purpose associated with program activity select icon ==> initiate activity window maps icon to activity

Icon icon choice fundamental to effective interfaces use symbols that reflect purpose – e.g. word processor text formatting use familiar metaphor – e.g. CD/DVD controls to stop/start/pause action

Mouse & pointer movable physical device associated by operating system with graphical pointer on screen user – moves mouse hardware – generates signals

Mouse & pointer operating system – detects mouse movements – moves pointer on screen – determines which window pointer is pointing to – tells window that pointer is inside it window – stops what its doing – determines which area/object pointer is pointing at note that mouse activity interrupts program

Mouse & pointer mouse & pointer mediate between physical and virtual activities user not conscious of moving mouse think theyre moving pointer...

Mouse buttons send identifying signals to operating system when pressed user – presses mouse button to initiate activity through area/object under pointer hardware – generates signal

Buttons operating system – detects signal – tells appropriate window activity is being initiated by the mouse which button was pressed window – stops what its doing – determines which area/object pointer is indicating – initiates associated activity

User illusion users focus on – intention behind system use – interaction with icons on screen users do not distinguish – hardware from software – operating system from window – window from program

User illusion user see system as integrated whole through window not conscious of physical/virtual boundaries user thinks virtual world is real e.g. getting lost in cyberspace e.g. treating a game as real

User illusion computer use like driving a car car becomes extension of body driver: – wants to get to destination – most aware of: road conditions/traffic/signals/engine noise – least aware of: clutch/gears/accelerator/brake

Interface programming how to create user illusion? separate interface from implementation given methods/functionality – design screen layout to optimise interaction through WIMP – associate WIMP actions with appropriate methods in underlying program

Interface programming were going to: – look at programs with simple implementations – focus on: interface design integration with implementation important to ensure that interface reflects implementation interface should provide hints to user about what will happen