Comp 523, Software Engineering:
Essay 2
Assigned:
3 April 2008
Due:
10 April 2008
There are a lot of definitions of
software engineering. Most definitions, however, are variants of "the application of a disciplined approach
to the task of building and maintaining software." I would
like to propose a slight amendment to the definition for this
essay. I would suggest that software
engineering is the application of a disciplined approach to manage the risks associated with the
task of building and maintaining software. You are to
write an essay explaining this definition.
Specifically, you are to look at the risks associated with software
development and how software engineering processes address this
problem. Address the specific use of the work "manage" as opposed
to a stronger word (such as "eliminate"). This can be a very
large topic and I do not expect your essay to be comprehensive.
What I do expect is that the essay will be persuasive and will give
concrete examples. Your essay should include an argument that
there is validity of this definition in the breadth of risks addressed
as well as some in depth discussion about specific risks and how they
are
addressed.
When talking about risks, I expect you to not only identify the risk,
but also explain why it is a real risk. (I would skip the
invasion by aliens.) Explaining why it is a risk sets up the
discussion on how to manage it.
When discussing how software engineering addresses these risks, you can
talk generally about software engineering principles, but you should
also use concrete example of processes or models that are used.
Remember to use appropriate references. As always, this
assignment is
open book, notes and discussion; the final document itself,
however, must be done individually. Please pledge your paper.
Please turn in the essay both electronically (email) and in paper by
the beginning of class.