Information Technology Reference
In-Depth Information
software modules to help pinpoint areas of potential instability. Without a full
understanding and analysis of the complexity of a project, it is impossible to reach
the desired end goals.
1.2 The Software Engineering Project
1.2.1 Defining the Software Engineering Project
The software engineering project is an undertaking that consumes resources in
order to produce a software product. The end product described here includes not
only the program itself, but all of the documentation, distributions and packaging
associated with that program. A software engineering project is driven by the same
resources that drive any product development project: time, money and people.
Depending on the size of an individual project, the required volume of these three
resources can become very large, and at times may seem cumbersome. The
potential mismanagement of such myriad resources can be extremely costly, and in
some cases may lead to the cancellation of the project. The concept of the software
engineering project puts the principals behind software engineering into practice to
ensure an efficient and successful development process. To aid in this process, the
software engineering project in divided into phases that are optimized to achieve
unified project progression; some projects may also be divided into smaller sub-
projects. This compartmentalization breaks a large, and seemingly overwhelming,
project down into more manageable sections, and it can allow for a more effective
utilization of resources. All software engineering undertakings have the potential
for mistakes and mismanagement, but proper project organization and manage-
ment can work to eliminate mishandling and reduce the risk of a failed or can-
celled project (Sommerville 2004 ).
1.2.2 Who is Involved in a Software Engineering Project?
As stated earlier, software engineering is much more than just programming.
Similarly, the people involved in a software engineering project are not limited to
computer programmers. Rather, the wide range of responsibilities that might be
required throughout the project calls for a diversity of skills from any number of
fields (Bruegge and Dutoit 2004 ). The concept of a software engineering project
classifies all of the individuals involved in the development process as stake-
holders. This includes everyone from management, down to the actual clients
themselves. There are no limits on the type of software engineering projects that
might be requested by a client, and this potential diversity dictates that skills from
any conceivable profession could be needed as a part of a software development
Search WWH ::




Custom Search