1 A U Interface Analysis Professor J. Alberto Espinosa Business Requirements Analysis ITEC-455...
-
date post
20-Dec-2015 -
Category
Documents
-
view
228 -
download
1
Transcript of 1 A U Interface Analysis Professor J. Alberto Espinosa Business Requirements Analysis ITEC-455...
1
AUInterface Analysis
Professor J. Alberto Espinosa
Business Requirements AnalysisITEC-455 Spring 2010
3
Interface
“The place at which independent and often unrelated systems meet and act on or communicate with each other” – Webster dictionary
Software
Network
Software
Hardware UserSystem
4
ATM System
Customer
Bank Manager
ATM Service Rep
Customer Accounts System
Withdraws Funds
Makes Deposits
Manages Account
Inquires CustomerActivity
Monitors ATMStatus
Replenishes Cash
Upload CustomerTransaction
Data
Use Case Diagram without Interfaces
5
ATM System
Customer
Bank Manager
ATM Service Rep
Customer Accounts System
Withdraws Funds
Makes Deposits
Manages Account
Inquires CustomerActivity
Monitors ATMStatus
Replenishes Cash
Upload CustomerTransaction
Data
WithdrawalInterface
Deposit Interface
AccountManagement
Interface
Customer ActivityInquiry Interface
ATM StatusMonitor Interface
CashReplenishment
Interface
CustomerAccounts System
Interface
Use Case Diagram with InterfacesEx.1: 1 Interface per each Actor-UC Interaction
UML Symbolfor Interface
6
ATM System
Customer
Bank Manager
ATM Service Rep
Customer Accounts System
Withdraws Funds
Makes Deposits
Manages Account
Inquires CustomerActivity
Monitors ATM Status
Replenishes Cash
Upload CustomerTransaction Data
Customer Interface
Customer Activity Inquiry Interface
ATM Status Monitor Interface
Cash Replenishment
Interface
Customer Accounts System
Interface
Use Case Diagram with InterfacesEx.2: 1 Interface for 1 Actor’s Interaction with all UC’s
7
ATM System
Customer
Bank Manager
ATM Service Rep
Customer Accounts System
Withdraws Funds
Makes Deposits
Manages Account
Inquires CustomerActivity
Monitors ATM Status
Replenishes Cash
Upload CustomerTransaction Data
Withdrawal Interface
Deposit Interface
Account Management
Interface
Customer Activity Inquiry Interface
Cash Replenishment
Interface
Customer Accounts System
Interface
ATM Monitoring Interface
Use Case Diagram with InterfacesEx.3: 1 Interface for any Actor Interaction with 1 UC
8
If the actor is a user: The interface specification describes how the
user interacts with the system – i.e., the “user interface” (UI) – the “human-computer interaction” (HCI)
If the actor is an external system: The interface specification describes how the
system interacts with that external system actor – i.e., the “application program interface” (API)
9
ATM System
Customer
Bank Manager
ATM Service Rep
Customer Accounts System
Withdraws Funds
Makes Deposits
Manages Account
Inquires CustomerActivity
Monitors ATMStatus
Replenishes Cash
Upload CustomerTransaction
Data
WithdrawalInterface
Deposit Interface
AccountManagement
Interface
Customer ActivityInquiry Interface
ATM StatusMonitor Interface
CashReplenishment
Interface
CustomerAccounts System
Interface
First Step: Identify All InterfacesUser Interfaces (UI) and System or
Application Program Interfaces (API)
UI
UI
UI
UI
UI
UI
API
10
Next: List all Interfaces
Interface Name Actor Type
Funds Withdrawal User UI
Funds Deposit User UI
Account Management User UI
Customer Activity Inquiry User UI
ATM Status Monitor User UI
Cash Replenishment User UI
Customer Accounts System System API
11
Each Interface Needs to Have:• A name (e.g., Customer Interface)• A type (e.g., UI, API)• A set of “operation signatures” (for UI and API)
indicating:– which data to “get” from the actor with the operation
(i.e., Get UserId, Name, etc.)– Which data to “return” to the actor when the operation
is complete
• A “storyboard” (for UI only): visual illustration of the sequence of screen designs to complete these operations
12
Example of Operation Signatures: Funds Withdrawal Interface
• Get data from card magnetic tapeGet pass code from customer
• Get customer transaction selection(user selects withdrawal)
• Get account type for withdrawal• Get amount to withdraw• Return cash and confirmation message• Return new balance after withdrawal, or• Return error message to customer• Return thank you message to customer
13
A User Interface Involves:
• Inputs (Get) into the system by the user, e.g.: Data entry into the system Query information from the system Voice command or input , etc.
• Outputs (Return) from the system to the user, e.g.: A result display A printed output Voice or sound output
14
Diagramming the Interface: with “Storyboards”
• User interfaces can be diagrammed as “storyboards”
• A storyboard is a series of drawings that depict how the system looks at the start of the operation and after each significant change to the look of the interface
• Is like a sequence of screenshots that follows the use case execution sequence
17
Ergonomics
“Ergonomics (or human factors) is the scientific discipline concerned with the understanding of the interactions among humans and other elements of a system”
Disciplines: physical, cognitive and organizational ergonomics
International Ergonomics Association
18
Usability
Derives from the industrial engineering field of “Ergonomics” – how to design things so they are easy to use.
It refers to the “quality of a user's experience when interacting with a product or system … and how well users can learn and use a product to achieve their goals and how satisfied they are with that process ... people who use the product can do so quickly and easily to accomplish their tasks” – usability.gov
Other references: http://www.usernomics.com/usability.html
19
User Interface Design
Also referred to as “Human Computer Interaction” (HCI) – is what the usability specialists do to build systems that are easy to use.
HCI also derives from the field of “Ergonomics”, which is now being called “Human Factors” which incorporate cognitive ergonomics and interaction with digital/virtual systems (not just physical).
Other references:
Cornell: http://ergo.human.cornell.edu/ahtutorials/interface.html
Virginia Tech: http://www.edtech.vt.edu/edtech/id/interface/
Carnegie Mellon: http://www.usernomics.com/user-interface-design.html
20
Application Program Interface (API)
• Is a specification that describes how other systems or applications can interact with a system
• For example, if you wish to develop Windows or iPhone applications, you need to learn the Windows or iPhone API
• In a use case model an external system actor’s interaction with our system requires an API
• If our system will interact with an external system (arrow pointing out), we need to know the external system’s API
• If the external system will interact with our system (arrow pointing in), the external system programmers need to know our system’s API
Google Earth API
Google Maps API
21
In Sum: What to Include in an Interface Analysis Specification:
• A list of all the interfaces between actors and use cases
• For each interface (any actor – user or external system):– Indicate whether the actor is a user (human actor) or an external
system– Prepare a list of operation signatures detailing all the data that is
passed to/from the system before each operation and the data that is returned from/to the system after each operation
• For users (human actors only):– Indicate when/if operations are taking place for data input, display
outputs or printed outputs– Prepare a storyboard for all screen input/output displays and printouts– Analysis of the visual UI for all screen input/output displays and printouts
• For external system actors (only):– Indicate when/if operations are taking place to input or output data
from/to the system– Analysis of the system API