DOC PREVIEW
UT EE 382V - Empirical Studies of Designers

This preview shows page 1-2-3 out of 9 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

11EE382V: Software Architecture and Design IntentElectrical and Computer EngineeringThe University of Texas at AustinEmpirical Studies of DesignersSeth HollowayDavid DeAngelis2THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Outline Questions High level overview Elevator design problem A model of cognitive processes in software design: An analysis of breakdowns in early design activities by individuals Designing the Design Process: Exploiting Opportunistic Thoughts Questions and comments3THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Question #1What are typical personality traits of gifted designers?4THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Answer #1The Hacker [Designer] Attitude• The world is full of fascinating problems waiting to be solved.• No problem should ever have to be solved twice.• Boredom and drudgery are evil.• Freedom is good.• Attitude is no substitute for competence.25THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Answer #1Bryan Dollery asserts that programmers are creative, artistic people who feel the “flow” of codingPossible link to autism (Asperger’s syndrome)• "I think all tech people are slightly autistic”--Microserfs novelist Douglas Coupland• Richard Stellman (founder of GNU) and Bram Cohen (creator of BitTorrent) both have self-diagnosed Asperger’s syndrome6THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Question #2What benefits would studying designers have?7THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Answer #2 This motivates an approach in which languages and tools are developed based on knowledge gained from empirical studies of programmers.  This knowledge, applied within a tool development process, can lead to better support for programmers and software engineers.  It can result in models of programmers and their tasks. It can result in data to compare different approaches to supporting programmers. 8THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Question #3What are some issues in designing experiments for programmers?39THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Answer #3 Humans are hard to study without using illegal or intrusive means. Many studies have to rely on external monitoring or interviews, however these threaten validity. Programmers being studied are students Not enough programmers are sampled Programmers are too similar in skill, culture, age, experience, background, etc No standard title for software designers, so it is harder to define and thus find “designers” We have determined what they know rather than how they know it10THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Empirical Studies of DesignersThe field seeks to understand designers in an effort to improve the programming experience (increase productivity, ease development, improve accessibility, enforce known-good programming practices)11THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Empirical Studies of DesignersResearch in the field includes• Comparisons of Expert vs. Novice programmers. • Models and strategies of program comprehension. • Models and strategies used when writing programs. • The importance of knowledge representation vs. strategies. 12THE UNIVERSITY OF TEXAS AT AUSTIN© 2006The Elevator ProblemHow would you program a system to efficiently control 2 elevators covering 10 floors?413THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Analysis of Breakdowns“A model of cognitive processes in software design: An analysis of breakdowns in early design activities by individuals” by RaymondeGuindon, Bill Curtis, and Herb Krasner, 1987.14THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Experimental SetupElevator control problemMove n elevators between m floors2 hours to develop logic “thinking aloud”15THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Experimental Setup8 developers narrowed to 3 “best” subjects P6• PhD in Electrical Engineering with more than 10 years of professional experienceP8• MS Software Engineering with 5 years of experienceP3• PhD candidate in Computer Sciences with 3 years of experience16THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Designers’ ApproachesP6• Specialized design schemas• Issue-driven• Generation of simplifying assumptionsP8• Less focused, less certain than P6. Uses a meta-schema to explore problem space at different level of abstraction. Attempts to apply partial solutions universallyP3• Characterized by chaotic generate-test-debug design• Has problems doing mental simulations517THE UNIVERSITY OF TEXAS AT AUSTIN© 2006SolutionsP6• Communicating ring of distributed, independent elevators governed by FSMs (one for individual elevator and one for group).P8• Star architecture communicating through a central server. Designincludes abstract data types, data flow diagrams and pseudocode.P3• Works on a central server system; represents behavior of the system by logical assertions18THE UNIVERSITY OF TEXAS AT AUSTIN© 2006BreakdownsKnowledge-related breakdowns due to• lack of specialized knowledge of similar problems • lack of experience as a designer • lack of domain knowledgeCognitive limitations breakdowns result from• not enough working short-term memory (solution is too large)• unreliable retrieval of information from long-term memoryCombination breakdowns caused by• Lack of specialized knowledge forces developer to use more cognitively-costly designs19THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Key Ideas Breakdowns result from a lack of knowledge The more schemas a designer knows, the quicker and more elegant the design Greater knowledge of possible solutions leads to designs with greater rationale20THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Exploiting Opportunistic Thoughts“Designing the Design Process: Exploiting Opportunistic Thoughts” Raymonde Guindon, 1990.621THE UNIVERSITY OF TEXAS AT AUSTIN© 2006DesignWhat is it? • Transform Spec to high level (semi) formal notation−Subsystems, info flow, data structures, interfaces−Most expensive errors• Everything you can do in advance to make coding easier.22THE UNIVERSITY OF TEXAS AT AUSTIN© 2006DesignWhy is it hard?Ill-Structured Problem• Incomplete, ambiguous specs of goals• No predetermined solution path−a system may require novelty• Integrate several knowledge domains−problem domain, architecture, computer science23THE UNIVERSITY OF TEXAS AT AUSTIN© 2006Top-Down DesignLike breadth first searchOverall system aspects designed


View Full Document

UT EE 382V - Empirical Studies of Designers

Documents in this Course
Load more
Download Empirical Studies of Designers
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Empirical Studies of Designers and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Empirical Studies of Designers 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?