Engineering Research Costs Time Resources initial focus on complexity and ease of use developing for users beyond ourselves designing something we've never designed need to fill the gaps between activities Unintentional Self Genius Activity Focused Experienced Focused
CS degree from UC Davis, full time developer RACHEL web designer/developer, prefers JavaScript/Node, no degree but strong developer ANDY iOS developer, "unicorn" designer and developer, self- taught, moonlighting on his own projects JESSICA self-proclaimed geek, likes to script things together using Python, hobbyist hacker
Software Engineering Body of Knowledge (SWEBOK) by IEEE Computer Society (2004) Customer Requirements Requirements Specification Functional Specification Design Specification Validation Review Verification Study the requirements Clarify the requirements Write the software Test the software Validate against requirements Review with customer Define new requirements Software Development Life Cycle
“care” in the organization • Bring non-technical people closer to the code • Bring technical people closer to the user • Research, research, research • Iterate, iterate, iterate