180 likes | 288 Views
HCI and Software Engineering. Lynne Hall. History (still ongoing…) HCI and Structured Methods. HCI input mainly in Requirements analysis stage Testing Rollout Some methodologies (SSADM 4.0) have specific HCI steps in various stages
E N D
HCI and Software Engineering Lynne Hall
History (still ongoing…)HCI and Structured Methods • HCI input mainly in • Requirements analysis stage • Testing • Rollout • Some methodologies (SSADM 4.0) have specific HCI steps in various stages • Possible to incorporate HCI but often as add-ins to the methodology
The Future…HCI and Object Orientation • Eclectic, flexible methodology • HCI input at many stages • Cyclical incremental software development approach • Many HCI methods incorporated (often with “new” names) • Added-value / Assimilation not add-in / extra • Object - Action Interface Model
Construction Inception Elaboration Transition 1 2 3 ... HCI and Object Orientation Where does HCI fit in? Everywhere...
Inception • HCI focus often present • Inception of modifications • response to user testing • proactive response to user queries / suggestions • Inception of new applications • From HCI literature / research / competition • A way to electronically support a work function
Aims are context dependent • safety-critical systems • industrial and commercial systems • office systems • home and entertainment systems • exploratory and creative systems • Context is dependent on who, why, when, and where
Contextual Profile • Who are your intended users? • Department of an organisation • General population • 7-9 year olds • Why are they using the application? • Part of their job • Recreational activity • Educational
Contextual Profile 2 • Where are they using the application • work-based • home-based • web-based • When does the user use the application • Part of a specific weekly performed task • Whenever they want • In set time periods
Elaboration • Key area for HCI • HCI of prime importance to determine use cases • Requirements Engineering • Competitive Analysis • Environment Analysis • User Profiles • Task Descriptions
Requirements, Constraints, Opportunities and Trade-Offs • When to find out… • Who to ask / Informative Sources • users • stakeholders • electronic / paper information sources • competitive analysis • Other members of the team • Other HCI people
Requirements Engineering • User Characteristics • Task Characteristics • Environment Characteristics • Stakeholder Needs • Documentation Reviews, Interviews, Low Fidelity Prototyping, Observing, etc.
Construction • Series of iterations • Each iteration is based on a use case and involves: • analysis • design • coding • testing • integration
Analysis • Usability Attributes of Use Cases • Different user interfaces • screen • on-line help • manual • Low Fidelity Prototyping, Interviews, Task Analysis, Competitive Analysis
Design • Objects describe the “universe” • Actions the intentions of the “actor” • Interaction style • Dialogue Design / Screen layout • Design of secondary user interfaces • guidelines, standards, low fidelity techniques, user review, usability testing
Coding • High Fidelity Prototyping • Programming • Development of interface objects (graphical) • High Fidelity Prototyping tools, programming languages, graphical development environments, scanned-in artwork etc.
Testing • Testing is vital. • No interface design / code should be built unless you know how to test it • Until the testing is complete, the software is still prototypical • usability test plan, heuristic evaluation, guidelines, usability metrics
Integration • Integrating stand-alone functions into a complete application • Importance of consistency (especially relevant in big projects) • User Testing, Evaluation, Horizontal Prototyping, Consistency checking
Transition • No development to add functionality • Optimising the application • Providing secondary user interfaces • User evaluation, efficiency, accuracy, speed, user manuals, training, usability problem notification procedures