Trawling for Knowledge - UIC
Transcription
Trawling for Knowledge - UIC
1/28/2016 Trawling for Knowledge and Requirements John T. Bell Department of Computer Science University of Illinois, Chicago based on material from chapter 5, 6, and 7 of “Mastering the Requirements Process”, 3rd e, by Robertson and Robertson. Overview • This material is all about trawling through the business, methodically picking out information to better understand the business. • These techniques are also useful for gathering potential requirements, possibly at the same time. • Rabbit, horse, and elephant projects all need to gather knowledge, though rabbits may not spend a lot of time documenting it. • Understanding the current business should be a quick process. Don’t spend too much time on it. 2 1 1/28/2016 Trawling in Context 3 Summary of Techniques • Business events • Current situation modeling • Apprenticing • Structures & patterns • Interviewing • Essence • Business use case workshops • Creativity workshops • • • • • • • • • • Brainstorming Personas Mind mapping Wikis Scenarios Low-fidelity prototypes High-fidelity prototypes Document archaeology Family therapy Murder Book 4 2 1/28/2016 Recommendation: Carry a pack of blank snow cards while trawling for knowledge: 5 Business Events • Business use cases are the business’s responses to externally initiated business events. • As discussed previously, business events are a useful tool for partitioning the business into manageable chunks. 6 3 1/28/2016 The 4 Views of the Brown Cow Model 7 Current Situation Modeling • Modeling the current situation ( how now ) helps to understand it. • Flaws in the model identify areas where more questions need to be asked. ( Figure out what you don’t know. ) • Verify your understanding. 8 4 1/28/2016 Apprenticing • Work on site as a volunteer / employee, getting trained from current users. • Covers details not brought up in discussions. • Try to learn why tasks are done they way they are – Reasons may be lost or out of date. • a.k.a. Job Shadowing. 9 Business Use Case Workshops • Stakeholders gather to review BUC: 10 5 1/28/2016 Review When writing up a requirement, what is the relationship between customer satisfaction and customer dissatisfaction? A. Customer satisfaction and dissatisfaction are determined via product testing, and are not a part of the requirements documentation process. B. Customer satisfaction indicates how happy the customer will be if the requirement is met, while dissatisfaction indicates how unhappy they will be if the requirement is not met. C. One is the negative of the other. D. They are complimentary numbers which should add to 100%. E. They are synonyms - The two terms can be used interchangably. 11 Mind Mapping 12 6 1/28/2016 Document Archaeology • Archaeology – Learning about people by studying their things. 13 Personas Wrong Right 14 7 1/28/2016 Interviewing • Ask, listen, and feedback your understanding. • Build models ( e.g. activity diagrams, etc. ) and have interviewee correct them. – Ahead of time or on the fly. • Use stakeholders terminology & artifacts. • Prepare questions and/or other materials ahead of time. E.g. scenarios, models, mockups, etc. 16 8 1/28/2016 Quick and Dirty Process Modeling . . . • Useful for rapid communication of understanding. 17 . . . Possibly with post-its and a wall: 18 9 1/28/2016 Brainstorming • Synergy produces ideas. • Wide variety of people. • No judgment, criticism, debate, or filtering. • Write everything down. • Keep it fun & lively. • Seed from dictionary. • Bad ideas inspire good. • Mix, match, & merge. 19 Creativity / Innovation Workshops • Used to generate lots of new ideas. • Suggested approach: 1. 2. 3. 4. 5. 6. Set the scope of the innovation. Partition scope using business use cases. Plan workshop, & techniques to be used. Record everything. Do not attempt to assess. Feed results back to participants afterwards. Incubate. Let the ideas develop over time. 20 10 1/28/2016 Review Which of the following requirements trawling techniques involves looking through a client’s bulletin boards and trash cans to learn more about how the client’s business operates now? A. Apprenticing B. Business Inspection C. Current situation modeling D.Document archaeology E. Interviewing 21 Essence • Working “above the line” on the brown cow model, to determine what is really needed. • “If a requirement contains the means of implementation, then it is a solution, not a requirement.” – Wrong: “The product shall beep and put a flashing message on the screen if a weather station fails to transmit readings.” – Right: “The product shall alert the repair crew when a weather station fails to transmit its readings.” • The analyst should not tie the developers hands. 22 11 1/28/2016 Structures and Patterns • Useful for reusing reqs from past projects. 23 Wikis, Blogs, Discussion Forums • Especially useful for large projects with many far-flung stakeholders. • Most effective with technically savvy stakeholders with enough interest to speak up. – Customers of previous products. – Beta testers. 24 12 1/28/2016 Scenarios • Useful for telling a story of how a business or product operates. • Consider “what if” scenarios to explore if constraints were removed or rules were broken. ( What if there were no gravity? ) • Consider “negative scenarios” to explore case of accidental or intentional misuse of the product. 25 Low-Fidelity Prototypes ( Sketches ) • Focuses on functionality, not appearance. 26 13 1/28/2016 High-Fidelity Prototypes • Generated with SW to look like a finished product. • Useful for modeling the system and for HCI issues. 27 Family Therapy • Useful for getting stakeholders to see others’ views. “Family therapists do not set out to make people agree. Instead, they aim to make it possible for people to hear and get an understanding of other individuals’ positions.” - Roberston & Robertson, Chapter 5 28 14 1/28/2016 The Murder Book • Collect every scrap of paper generated in a big binder ( or more ) for later review. • Alternate: Collect every electronic document in a directory. 29 Choosing the Right Technique Consider: • Stakeholders’ familiarity with the methods. • Geography of stakeholder distribution. • Need to maintain legacy components. • Level of abstraction desired or possible. • Knowledge – Is the domain concrete or abstract? 30 15 1/28/2016 Summary of Techniques • • • • • • • • • Business events Current situation modeling Apprenticing Structures & patterns Interviewing Essence Business use case workshops Creativity workshops Brainstorming • • • • • • • • • Personas Mind mapping Wikis Scenarios Low-fidelity prototypes High-fidelity prototypes Document archaeology Family therapy Murder Book 31 Class Exercise 1. Based on the list from the previous slide, select your top 4 choices, numbered 1 to 4. 2. For each one, write a sentence or two about how you would use it for this term’s project. 3. Compare your list with the rest of your group. 4. Share your most common matches with the class. 32 16 1/28/2016 Opinion Poll Which of these 5 methods would be your top choice? A. Current situation modeling B. Apprenticing C. Interviewing D. Business use case workshops E. Creativity workshops 33 Opinion Poll 2 Which of these 5 methods would be your top choice? A. Brainstorming B. Personas C. Mind mapping D. Wikis E. Scenarios 34 17 1/28/2016 Opinion Poll 3 Which of these 5 methods would be your top choice? A. Low-fidelity prototypes B. High-fidelity prototypes C. Document archaeology D. Family therapy E. Murder Book 35 Review What is the term for an imaginary stakeholder, documented in full detail and given a name and a personality, who represents real stakeholder(s) who cannot provide direct input to the development process? A. B. C. D. E. Mannequin Persona Proxy Representative Surrogate 36 18