Software Engineering for Students presents a range of current techniques and tools for people who have experienced the pleasures of writing programs and who want to see how things change in the scale up to large programs and software systems. The students' familiarity with programming gives them relevant background and the confidence to grasp the fundamentals of this subject. The book starts by explaining the challenges that large software projects present, moving on to cover the current principles, techniques and tools that are used in software development throughout the industrialised world.
Software engineering is about the creation of large pieces of software that consist of
thousands of lines of code and involve many person months of human effort.
One of the attractions of software engineering is that there is no one single best
method for doing it, but instead a whole variety of different approaches. Consequently
the software engineer needs a knowledge of many different techniques and tools. This
diversity is one of the delights of software engineering, and this book celebrates this by
presenting the range of current techniques and tools.
We shall see that some software engineering methods are well-defined while others
are ill-defined. And the processes of software development are always under debate.