620 likes | 631 Views
Joint Application Design & Participatory Design. SENG 613 - Software Engineering Life Cycle (Software Requirements II) Kobe Davis, Lance Titchkosky, & Paul Werbicki. Ever experienced this?. Presentation Agenda. User Involvement Background on the Importance of Group Sessions
E N D
Joint Application Design &Participatory Design SENG 613 - Software Engineering Life Cycle(Software Requirements II) Kobe Davis, Lance Titchkosky, & Paul Werbicki SENG 613 - Software Life Cycles
Ever experienced this? SENG 613 - Software Life Cycles
Presentation Agenda • User Involvement • Background on the Importance of Group Sessions • Exercise 1 – Two Truths and One Lie • Introduction to JAD • Introduction to PD • Comparison – JAD and PD • Comparison to Other Methods • Exercise 2 – Management Guide • Exercise 3 – JAD Session • Discussion SENG 613 - Software Life Cycles
User Involvement • The success of a system is proportional to the degree of user involvement • This is seen as axiomatic (obvious) in the IT community • There is little empirical proof of this truism • The notion of user involvement intrigues IT researchers since it address the coming together of complex social factors SENG 613 - Software Life Cycles
User Involvement (cont’d) • User involvement methodologies differ in the degree to which the user participates • Three documented styles of user involvement: • Consultative design – design and decision making left to IT • Representative design – selected user representatives involved in design and decision making • Consensus design – responsibility for system development assigned to users who are continually involved throughout the design process SENG 613 - Software Life Cycles
Three main styles differ in engagement and influence of users There is no strict mapping between these styles and other methodologies (ex. Soft Systems Methodology, socio-technical design, critical systems thinking) Spectrum of user involvement shows differentiated styles and their relation to JAD and PD (Carmel, 1993): User Involvement (cont’d) SENG 613 - Software Life Cycles
User Involvement (cont’d) • Our focus is to outline Joint Application Design (JAD) and Participatory Design (PD) as practical implementations of user involvement methodologies • Attempt to apply abstract notions of user involvement to practical implementations • Discuss which methods and techniques may be used to get users involved SENG 613 - Software Life Cycles
Increasing recognition of importance of group session approaches to requirements capture and analysis Group Sessions SENG 613 - Software Life Cycles
Group Sessions - Definition • # of people coming together in a meeting situation • Agenda • Chairperson/facilitator • Participants should listen effectively, speak freely, be empowered to participate in process and outcome of meeting • Should result in an agreed and documented outcome SENG 613 - Software Life Cycles
Group Sessions - Description • Sharing of workspace • Communication between group members • Sharing of information • Coordination and control of shared objects • Decision making • Organization and common understanding of the work process SENG 613 - Software Life Cycles
Group Sessions – Roles • Project Sponsor • Project Leader • Facilitator • Record Keeper (Scribe) • Time Keeper • Clients (Users) • Observers • Specialists SENG 613 - Software Life Cycles
Group Sessions – Project Sponsor • Owns the business process • Support is critical to project success SENG 613 - Software Life Cycles
Group Sessions – Project Leader • Make or break project • Committed to project success • Need to be enthusiastic and objective • Sensitive to political issues • Draw out opinions of group • Not allow any single person to dominate SENG 613 - Software Life Cycles
Group Sessions – Facilitator • Common ‘core’ of skills and behaviors • Used by group workers, teachers, managers, therapists, coordinator • Concerned with assisting other group members in performing their collective task as a group • May be internal manager or outside professional SENG 613 - Software Life Cycles
Group Sessions – Facilitator • Initially important in bringing everyone together getting things started • Then, sits back and ‘facilitates’ the meeting • Wrap-up, becomes important again in helping to conclude the session SENG 613 - Software Life Cycles
Group Sessions – Record Keeper (Scribe) • Takes comprehensive notes • Edits and produces a concise summary • Role can be shared by various team members (note taker/point taker) SENG 613 - Software Life Cycles
Group Sessions – Time Keeper • Keeps meeting running on time • Helps group use time wisely • Makes sure meetings begin/end on time • Helps keep meeting on time for each agenda topic • Reminds group to end discussion in order to summarize and create action plan SENG 613 - Software Life Cycles
Group Sessions – Client/Users • This is their system • Understand how system is used in real world • Help group understand all the tasks handled by system • Correct any misconceptions • Search for oversights • Supply details SENG 613 - Software Life Cycles
Group Sessions - Observer • Interested in project, but do not participate in the group sessions (Pigs and Chickens, SCRUM) A chicken and a pig are together when the chicken says, "Let's start a restaurant!". The pig thinks it over and says, "What would we call this restaurant?".The chicken says, "Ham n' Eggs!".The pig says, "No thanks, I'd be committed, but you'd only be involved!". SENG 613 - Software Life Cycles
Group Sessions – Specialist • Specific knowledge in an area of the product • May be an outside person • Up to the facilitator to recognize the need for a specialist and arrange to have them attend SENG 613 - Software Life Cycles
Exercise 1 – Two Truths and One Lie To start the Exercise 1 power-point click on the link below: Exercise 1 - Two Truths and One Lie Press ‘Esc’ when finished. SENG 613 - Software Life Cycles
Exercise 1 – Two Truths and a Lie • Why use an icebreaker? • Good introductory icebreaker for smaller groups • Team building exercise to get everyone talking • Helps to set expectation of involvement by all users participating in the session • Group Sessions are all about social interaction SENG 613 - Software Life Cycles
Joint Application Design SENG 613 - Software Life Cycles
Introduction to JAD • Originated by Chuck Morris and Tony Crawford of IBM in 1977 • Developed completely outside the academic world • Can be viewed as both a technique and a methodology • Started to gain popularity in the 1980’s SENG 613 - Software Life Cycles
What is JAD? • “JAD is a management process which helps IS work effectively with users to development IT solutions that really work” [Utexas] • JAD has 4 basic building blocks • Facilitation • Agenda • Documentation • Group Dynamic [Utaxas]: http://www.utexas.edu/hr/is/pubs/jad.html SENG 613 - Software Life Cycles
JAD Sessions • JAD sessions are structured meetings in which the following people participate: • Sponsor • Business Users • System Analysts • Important Question to Ask • Do I have all the affected customers/areas represented? SENG 613 - Software Life Cycles
JAD project definition Research on user requirement Preparation for the JAD session Conducting and facilitating the JAD session itself Predicting and obtaining approval of the final document Phases of JAD SENG 613 - Software Life Cycles
Phase 1: JAD Project Definition From: http://sern.ucalgary.ca/~paulson/SENG613/slides/seng613-jad.ppt SENG 613 - Software Life Cycles
Phase 2:Research From: http://sern.ucalgary.ca/~paulson/SENG613/slides/seng613-jad.ppt SENG 613 - Software Life Cycles
Phase 2A: Become familiar with the system • Meet with business people • Observe • Review • Discuss • Meet with IS • Technical advice • Discuss SENG 613 - Software Life Cycles
Phase 2B: Creating data and process model • Keep modeling practices at a high level • The models will be posted in the JAD workroom for use during the session • Data Model • Capture the flow of data • Process Model • Capture the business process SENG 613 - Software Life Cycles
Phase 2C: Session Agenda • The following information should be included in the agenda: • Executive Sponsor Opening Remark • Introduction and Administration • Analysis Process Overview • Management Guidelines • Analysis Topics • Action Items • Summary and Closing Remarks SENG 613 - Software Life Cycles
Phase 3:Preparation From: http://sern.ucalgary.ca/~paulson/SENG613/slides/seng613-jad.ppt SENG 613 - Software Life Cycles
Phase 3A: Pre-session meeting • Orientation Interview • Session leader, workshop leader • Clarification workbook material • Material preparation • Draft workbook to evaluate and revise concepts • Assemble as handout and give out at the meeting • Solution Guide SENG 613 - Software Life Cycles
Phase 3B: Visual Aids • Flip Charts • Magnetics • Overhead Projectors • Electronic White Boards • Computer Projection Units • Tape/Video Recorder SENG 613 - Software Life Cycles
Phase 3C: JAD Session Room From: http://www.utdallas.edu/~sraghu/mis6308/Fall20023.ppt SENG 613 - Software Life Cycles
Phase 4:The Session From: http://sern.ucalgary.ca/~paulson/SENG613/slides/seng613-jad.ppt SENG 613 - Software Life Cycles
Phase 5:The Final Document From: http://sern.ucalgary.ca/~paulson/SENG613/slides/seng613-jad.ppt SENG 613 - Software Life Cycles
Participatory Design SENG 613 - Software Life Cycles
Participatory Design - Introduction • Another group approach • Accentuates social context of the workplace • Workers actively engaged in designing the systems they will use SENG 613 - Software Life Cycles
Participatory Design - History • Developed in the late 1970’s by Pelle Ehn and Morten Kyng in Scandinavia • Proliferated to other European countries SENG 613 - Software Life Cycles
Participatory Design • Based around a union mentality • Workers should be given better tools as opposed to having their work automated • Users are best qualified to help improve their work and work life • A user’s perceptions and feelings about technology are just as important as technical specifications • IT can only be appropriately addressed within the context of the workplace SENG 613 - Software Life Cycles
Participatory Design • Workplace democracy • Worker participation • Direct and effective in design activities • Democratic decision making • Design should be done with users • Mutual learning in design group SENG 613 - Software Life Cycles
PD’s use in North America • PD is still in its infancy in North America • Main reasons being: • To idealistic • Lacks a set method or model • Biased towards worker • Facilitators rely only on experience SENG 613 - Software Life Cycles
Participatory Design - Workshop • Developers, business representatives and users work together to design a solution • Most effective early in design process (requirements) when ideas are less constrained by existing code/infrastructure SENG 613 - Software Life Cycles
Participatory Design - Workshop • Attendees • At least two representative users • A business representative • A developer • A facilitator SENG 613 - Software Life Cycles
Participatory Design – Workshop • Sample Agenda • Introductions • Usability presentation • Objectives and expectations • Identify issues • Design goals • Paper prototyping • Combine designs • Review expectations and objectives • Document/circulate outcomes SENG 613 - Software Life Cycles
Comparison of JAD and PD • Who are the users and when are they involved? • JAD is weighted towards the requirements phase but continuous over the whole SLC • PD stresses continuous involvement in forms like cooperative prototyping • Both JAD and PD support user involvement of all affected parties • PD focuses on lower-level operational users, often excluding management from the process SENG 613 - Software Life Cycles
Facilitators and their roles • In JAD a facilitator controls the meeting totally • In PD the facilitator collaborates with the group promoting independent activity • In PD a facilitator is called a ‘designer’ and their role is both as a facilitator and technical advisor SENG 613 - Software Life Cycles
Structure of Meetings • JAD is a very structured approach • JAD provides step-by-step plans much like a cookbook on how to run a JAD session • PD specifically avoids providing any step-by-step plans • Designers should improvise and focus on the aspects of designing SENG 613 - Software Life Cycles