CSC 385 :: Final Exam Study Guide -...

14
1 CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate of the Midterm, various quizzes and notes on things we have studied since the Midterm. It is a study guide and not an exact, or even complete, listing of everything that will (or could) be on the Exam. There is some redundancy reflecting the fact that certain topics can be tested from various approaches. (1-3) Identify the testing protocol described: 1. Employ a regular design-develop-test cycle with frequent deliverables. Tesler-Atkinson 2. Identify performance characteristics, distill into performance tasks, test distilled tasks. Verplank 3. Interact closely with clients in participatory design fashion; employ guided fantasy. Tesler-Mott (4-6) Identify these computing related disasters: 4. Prior to updating an earlier version of the software, specifications failed to call for tests on new trajectory data. Ariane 5 rocket explosion 5. Complexity of software system coupled with auto-complete feature contributes to disaster. American Airlines Flight 965 6. Deployment of software system to new and different setting fails to trigger analysis of requirements of new setting. Patriot Missile disaste (1-3) Identify the element of the Triad of Design Logic described: 1. Complete, perfect, finished; adult, of full age, mature; brought to its end, wanting nothing necessary for completeness. teleios

Transcript of CSC 385 :: Final Exam Study Guide -...

Page 1: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

1

CSC 385 :: Final Exam Study Guide May 8, 2012

Note: This is a conglomerate of the Midterm, various quizzes and notes on things

we have studied since the Midterm. It is a study guide and not an exact, or even

complete, listing of everything that will (or could) be on the Exam. There is some

redundancy reflecting the fact that certain topics can be tested from various

approaches.

(1-3) Identify the testing protocol described:

1. Employ a regular design-develop-test cycle with frequent deliverables. Tesler-Atkinson

2. Identify performance characteristics, distill into performance tasks, test

distilled tasks. Verplank

3. Interact closely with clients in participatory design fashion; employ

guided fantasy. Tesler-Mott

(4-6) Identify these computing related disasters:

4. Prior to updating an earlier version of the software, specifications failed

to call for tests on new trajectory data. Ariane 5 rocket explosion

5. Complexity of software system coupled with auto-complete feature

contributes to disaster. American Airlines Flight 965

6. Deployment of software system to new and different setting fails to

trigger analysis of requirements of new setting. Patriot Missile disaste

(1-3) Identify the element of the Triad of Design Logic described:

1. Complete, perfect, finished; adult, of full age, mature; brought to its

end, wanting nothing necessary for completeness. teleios

Page 2: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

2

2. Logic, reason, conceptualization, idea, concept, order, unifying

principle, ordering principle, creative thought.

logos

3. purpose, goal, end-goal, consummation. telos

(4-5) For the GenPerms program . .

4. What is its Big-O category with respect to run time? O(N!)

5. . . . with respect to space? O(N2)

6. For both the Patriot Missile disaster and the Ariane 5 rocket explosion,

the root cause lay in the _____ phase of the software development life

cycle. maintenance

7. If Tx represents the set of fractions which terminate in base x , what is

the relationship between the sets T2

and T10

?

T2

T10

8,9. In the Interactivity Diagram any connection between Designer and

Client must go through which two nodes? affordances & constraints

10. List the three components of the V3 Principle.

veni, vidi, vici

1-5. List five of the Gestalt Principles of Perception

Closure

Common Fate

Figure-Ground Relationship

Good Continuation

Law of Praegnanz

Proximity

Page 3: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

3

Similarity

Uniform Connectedness

1. Name three Turing Award recipients.

Here’s the link – who among these did we talk about this semester?

2-7. Label the nodes of the Interactivity Diagram:

Here is a quote from the NY Times: A professor of sociology at the University of Minnesota today buttressed previous findings that the most important determinant of job satisfaction is ''work autonomy,'' or the degree to which employees feel they can make their own decisions and influence what happens on the job.

1-3. Bruce Tognazzini, in his First Principles of Interaction Design, states:

“The computer, the interface, and the task environment all "belong" to the user” and people “feel most comfortable in an environment that is neither confining nor infinite.” Briefly discuss how this relates to the NYT article.

4-6. Briefly discuss how the above two items related to the Interactivity

Diagram.

Page 4: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

4

1-8. List the 8 main Big-O complexity classes in ascending order of

complexity and give the names by which they are known.

Standard Categories

O(1) :: constant

O(log n) :: logarithmic

O(n) :: linear

O(n log n) :: linearithmic

O(nk) :: polynomial

O(bn) :: exponential

O(n!) :: factorial

O(nn) :: polyexponential

9. What is the complexity class of the GenPerms program in terms of

time?

O(n!)

10. What is the complexity class of the GenPerms program in terms of

space?

Page 5: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

5

O(n2)

11. If the GenPerms program runs for 30 seconds on the input string

abcdefghij, how long will it run on input of abcdefghijklmnopqrst? x/30 = 20!/10!

x = 30*(20!/10!) = 20113277184000 sec = 232792560 days = 637,787.8years

12. If Tx represents the set of fractions which terminate in base x , what

is the relationship between T2

and T10

?

T2

T10

13. What is the relationship between T15

and T35

?

T15

T35

14. What is the relationship between T15

and T32

?

T15

T32

=

15. State Cooper’s definition of persona.

Hypothetical archetype of actual users

(16-18) Two of the functions below have tractability problems, if used

for the RSA encryption algorithm. For each that does, identify the

nature of the problem.

16.

def powmodA(base,expt,modulus): val = 1 for i in range(expt): val = (val * base) % modulus

return val

TIME

17.

def powmodB(base,expt,modulus): accum = 1

Page 6: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

6

while expt > 0: if expt % 2 > 0: accum = (accum * base) % modulus expt = expt/2 base = (base * base) % modulus return accum

GOOD

18.

def powmodC(base,expt,modulus): val = 1 for i in range(expt): val = val * base return val % modulus

SPACE

19. Explain the distinction between tractable in theory and tractable in

practice. Use the powmod algorithms to illustrate. powmodA is tractable in theory because its run time is linear. In practice,

however, for security very large numbers must be used for base, exponent and modulus making even a linear algorithm too slow.

20. Because of Moore’s Law the time will soon come when we no longer

have to be concerned about complexity classes. True or false? Briefly

explain. Moore’s Law addresses only exponential or better algorithms. Factorial and

polyexponential algorithms are only slightly affected.

Matching (Answer Bank) Questions

The answers to #21 to #50 are found in the Answer Bank. Write the letter

of the correct answer.

(21-23) Identify the testing protocol described:

21. Identify performance characteristics, distill into performance tasks, test

distilled tasks.

Verplank

Page 7: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

7

22. Interact closely with clients in participatory design fashion; employ

guided fantasy.

Tesler-Mott

23. Employ a regular design-develop-test cycle with frequent deliverables

and extensive user testing.

Tesler-Atkinson

(24-26) Identify these computing related disasters:

24. Prior to updating an earlier version of the software, specifications

failed to call for tests on new trajectory data.

Ariane 5 rocket explosion

25. Complexity of software system coupled with auto-complete feature

contributes to disaster.

American Airlines Flight 965

26. Deployment of software system to new and different setting fails to

trigger analysis of requirements of new setting.

Patriot Missile disaster

(27-29) Identify the element of the Triad of Design Logic described:

27. Purpose, end, goal, result, aim, end-goal, consummation; goal of an

action intentionally taken.

telos

28. The unifying idea or principle; reason, idea, conceptualization, logic,

concept, order, ordering principle, creative thought.

logos

29. Complete, perfect, finished; adult, of full age, mature; brought to its

end, wanting nothing necessary for completeness; developed into a

consummating completion.

Page 8: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

8

teleios

(30-32) Identify the component of the V3 Principle described:

30. Deliberate, focused selective observation to ferret out the critical

factors that must be understood.

vidi

31. The time has come to forge a solution.

vici

32. Involves deep immersion in the deployment environment.

veni

33. What is Charles Eames’ definition of design?

Design is a plan for arranging elements to accomplish a particular purpose.

(34 – 37) In his interview on design with Madame Amic, Eames gave the following

replies. (Choose answers from the Answer Bank).

34.

Question: Is design an expression of art?

Answer: The design is an expression of the purpose

35.

Question: What are the boundaries of design?

Answer: What are the boundaries of problems?

36.

Question: Does the creation of design admit constraint?

Answer: Design depends largely on constraints.

37.

Question: Does design obey laws?

Page 9: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

9

Answer: Aren’t constraints enough?

(38 – 45) Identify the FIP Principle being described:

38. There are limits on data to be collected; what is collected must be by fair and

lawful means.

Limited Collection Principle

39. Data controller is held accountable for complying with FIP Principles.

Accountability Principle

40. Individual must be informed whether there is information about him/her and what

information there is; individual must be able to challenge denial of access to that

information and the information itself.

Participation Principle

41. There must be public knowledge of existence of data, kind and purpose of data,

and identity of data controller.

Openness Principle

42. Reasonable security measures must be taken by data controller.

Security Principle

43. Information collected is not to be disclosed nor used for other than stated

purpose.

Use Limitation Principle

44. Purpose of collection must be stated and use must be limited to stated purpose.

Purpose Principle

45. Information collected/stored must be relevant, accurate, complete and up to date.

Quality Principle

46-50. What are the five essential components of Lawrence Snyder’s definition of

privacy? The right of people to

choose freely under what circumstances and to what

extent they will reveal themselves to others.

51-52. What is the P2P Principle? What implications does it have for the computer

Page 10: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

10

scientist?

The P2P Principle

The software developer is a computer science professional

More often than not, the client using the software is also a professional, albeit in a

different field

Therefore, the designer/client relationship is a P2P (professional to professional)

relationship

Short Essay Questions

I. Discuss the Engelbart’s concept of augmenting the human

intellect, his Center for Augmentation Research, and “the Mother

of All Demos.” How do they relate to each other and how does

this related to the current CS/IT world?

A good portion of the answer occurs on Jan. 26. Also Jan.

24. High powered electronic aids to augment human intellect

@ SRI Most CSers – make computer smart; Engelbart – how to make humans

smarter

Real time graphical control Introduced::

Mouse Video conferencing

Teleconferencing Hypertext

Word processing Hypermedia

Object addressing & dynamic file linking Bootstrapping

Collaborative real time editor Demo=ed NLS = oN Line System

Fall Joint Computer Conference @ Conv. Ctr, SF Bill English – co-author & princ. Engineer

Funded by NASA & DARPA

90% thought he was crackpot Still have not mastered all these things working together

Lack of principled architecture Boss flew to DC – confronted Bob Taylor – why fund him?

Page 11: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

11

Alan Kay – jury still out on how long – and whether – people are actually going

to understand this.

II. Discuss the Patriot Missile disaster and the Ariane 5 rocket

explosion. Compare and contrast them in terms of root cause,

point of failure, software life cycle, and any other relevant factors. Patriot Missile – 1991 1st Gulf War

Failed to intercept incoming SCUD

28 killed, 99 wounded 4th qtrmaster unit – Greensburg, PA

Off by .34 sec. leads to off by more than ½ mile Ariane 5 – 1996 rocket exploded

Decade of devlpmt – cost $7 billion – payload ½ billion 39 seconds after launch

Data conversion from 64-bit floating point to 16-bit integer Root cause – during maintenance phase of Software Life Cycle – failure

to redo analysis phase fully Patriot – repurposing, deployment from mobile to stationary

Ariane 5 – upgrade, new and radically different trajectory Point of failure

Patriot – unable to handle accumulation of round-off error

Ariane 5 – incommensurable data conversion

III. Among the principles found in UPOD is control. Discuss

this principle. Be sure to show its relation to creativity,

productivity, autonomy and job satisfaction. Also, show how it

serves as a focal point for other UPOD principles. How does a

software designer take all this into account? In all of the above, be

specific.

Day’s Notes:

April 19

April 17

April 10

UPOD principles & control

Page 12: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

12

IV. Discuss the role of space and time, as experienced by the

client (user) of a software system. Include in your discussion the

major points in Mead & Pacione’s paper, the concept of mental

model space, the concept of embodied cognition and recent results

from experimental psychology, principles of art/architecture which

relate to design of space, and the role of rhythm for creativity and

productivity (e.g., what is eurhytmia & dysrhythmia; what design

factors influence these?).

Day’s Notes:

April 3

April 10

April 17

April 19

Notes on design

Spatial features of good design: Features of Good Design

Balance

Color

Contrast

Depth

Dominance

Emphasis

Function

Harmony

Interest

Pliability

Proportion (& golden proportions)

Repetition

Rhythm

Sequence

Simplicity

Space

Symmetry

Page 13: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

13

Theme

Unity

Variety

V. Discuss the concept complete computer scientist. To become a

complete computer scientist:

what skills should one master,

what knowledge should a person possess,

what life-habits should one cultivate,

what ethical principles should one internalize,

what wisdom and understanding should one attain to, and

what goals should one strive for?

Feel free to express your own thoughts on this subject.

Any and all topics we covered this semester are relevant.

VI. What is the V3 Principle? Explain and give some

illustrations, especially as V3 relates to the testing models we

studied.

V3 = Veni, Vidi, Vici

Veni – I came go to where the user lives & works Notice: Testing is implied in the going and applies from this point forward. Vidi – I saw careful, comprehensive, targeted and systematic observation is critical to identifying what is needed (requirements analysis) Vici – I conquered forge a design that is appropriate to the identified needs (see goals of user, below)

Page 14: CSC 385 :: Final Exam Study Guide - …faculty.kutztown.edu/rieksts/385/study/spring12/Exam-Study.pdf · CSC 385 :: Final Exam Study Guide May 8, 2012 Note: This is a conglomerate

14

Key points: Veni - "I came" - designer must go to the user in their environment Vidi - "I saw" - designer must see, watch, observe the user in action;

determine the problems with the artifact

Vici - "I conquered" - designer must conquer (i.e., solve) those problems Tim Mott - engaged in participatory design with users; with Larry Tesler used

guided fantasy with editors from Ginn; observed problems dealing with documents; solved problems with Office Schematic (became desktop

metaphor) Larry Tesler - in addition to work with Tim Mott, performed user testing on Lisa

interface design & passed test results on to Bill Atkinson; observed problem with menu hierarchies; solved problem with "must be appatent: and "no

modes" principles Bill Atkinson - used Tesler's test results; created ruffling menus at top of

screen; declares that designers must watch users & get "stream of consciousness" feedback

Bill Verplank - designed 5 specific mouse tests to measure performance results of various mouse designs