02 terms and issues

Post on 19-Mar-2017

41 views 0 download

Transcript of 02 terms and issues

Basic terms and problems

Dreyfus modelExpertProficient

CompetentAdvanced Beginner

Novice

Dreyfus model

Novice

• Wants to achieve a goal, and not particularly interested in learning.• Requires context free rules to follow.• When something unexpected happens will get stuck.

Advanced Beginner

• Beginning to break away from fixed rules.• Can accomplish tasks on own, but still has difficulty troubleshooting.• Wants information fast.

Competent

• Developed a conceptual model of task environment. Able to troubleshoot.• Beginning to solve novel problems. Seeks out and solve problems.• Shows initiative and resourcefulness.• May still have trouble determining which details to focus on when solving a

problem.

Dreyfus model

Proficient

• Needs the big picture.• Able to reflect on approach in order to perform better next time.• Learns from experience of others. , Applies maxims and patterns.

Expert

• Primary source of knowledge and information in a field.• Constantly look for better ways of doing things.• Write books and articles and does the lecture circuit.• Work from intuition.• Knows the difference between irrelevant and important details.

Jim Brosnan process

You want to solve a problem but are unaware that there is knowledge that would help.

You have a sense that there must be something that will help, but you are unaware of where to find it.

You know where it is, but you do not have access to it.

You have access to it, but do not understand how to make it work.

You get it to work, but find out that it is not what you thought.

Order of ignorance

0OI• Lack of ignorance• I (probably) know something

1OI• Lack of knowledge• I don’t know something

2OI• Lack of awareness• I don’t know that I don’t know something

3OI• Lack of process• I don't know a suitably efficient way to find out I don't know that I don't know something

4OI• Meta-ignorance• I don't know about the Five Orders of Ignorance

Order of competence

0OC• Unconscious incompetence• You don’t know that you can’t do it well

1OC• Conscious incompetence• You know you can’t do it well

2OC• Conscious competence• You do it well, and you think about

3OC• Unconscious competence• You do it well, without thinking about it• You’re so successful it’s automatic

Magic numbers

OP1• A constant numerical or text value used to

identify a file format or protocol; for files, see List of file signatures

OP2• Distinctive unique values that are unlikely to

be mistaken for other meanings (e.g., Globally Unique Identifiers)

OP3• Unique values with unexplained meaning or

multiple occurrences which could (preferably) be replaced with named constants

What’s a URL?Schema://login.password@address:port/path/to/resource?queryString#fragment

Schema/protocol name

Indicator of hierarchial URL

(constant)Credentials (optional) Server address

Server port (optional)

Hierarchial Unix path to a resource

QueryString (optional)

Fragment identifier (optional)

Uniform resource identifier

URIURL

LocationURN

Name

Uniform resource identifier

A URL is a URI that identifies a resource and also provides the means of locating the resource by describing the way to access it

A URL is a URI

A URI is not necessarily a URL

URL or URN?ftp://ftp.is.co.za/rfc/rfc1808.txt

• URL:

http://www.ietf.org/rfc/rfc2396.txt • URL:

ldap://[2001:db8::7]/c=GB?objectClass?one • URL:

mailto:John.Doe@example.com • URL:

news:comp.infosystems.www.servers.unix URL: telnet://192.0.2.16:80/ • URL:

urn:oasis:names:specification:docbook:dtd:xml:4.1.2 • URN (not URL):

tel:+1-816-555-1212 (?) • URN (not URL):

Rashomon Don’t miss next slideshow!

Context switch

Estimation

Main problems

Slow developmentQuality issuesFuzzy project status

Slow development

Constant version delivery date delays

We are unable to estimate some tasks

We are unable to hold TCO of documentation• No srs• Crude design document• Outdated STP• Who updates what and where?

Quality issuesEmbarrassing bugs, but not many

Rigid softwareFragile softwareImmobile codeNeedless repetitions

Needless complexityTests issues• Client has no tests• Server has some tests

Fuzzy project status

How much time did we spend?

How much progress did we achieve?

Main problems

Slow developmentQuality issuesFuzzy project status