Software engineering is the study of engineering principles and their application to the development of software systems. — adapted from Wikipedia, 2012
Consider the following questions.
- What characteristics should software-engineered systems have?
- What skills do software engineers need to have?
- Do you approach software development as an artist, a scientist, or an engineer?
“The major problems of our work are not so much technological as sociological in nature.” — DeMarco & Lister, Peopleware, 1987.
For DeMarco and Lister, “our work” refers to software project management. Consider the following questions.
- Do you agree or disagree with this claim?
- Name one great software success and one great software failure. Explain what was so great and/or terrible about them.
Consider these questions about people and teams.
For each of the big-five personality dimensions, identify the optimal value, if any, of that dimension for software engineering.
- Consider Brunt’s Constructive and Destructive Group Behaviors (from the guide) and identify:
- One constructive thing you can contribute to your team.
- One destructive thing you most need to guard against.
What was Postman’s first idea and do you agree with it?
Pick a good project idea from lab 1, and identify one cost that it might have.