A Concise Introduction to Software Engineering

Software engineering is an integral part of studies in computer science and consequently foundational knowledge is critical to all students in the field. This text focuses on the essential elements, providing readers with the basic skills and introductory

  • PDF / 4,139,982 Bytes
  • 280 Pages / 504 x 666 pts Page_size
  • 116 Downloads / 416 Views

DOWNLOAD

REPORT


Undergraduate Topics in Computer Science (UTiCS) delivers high-quality instructional content for undergraduates studying in all areas of computing and information science. From core foundational and theoretical material to final-year topics and applications, UTiCS books take a fresh, concise, and modern approach and are ideal for self-study or for a one- or two-semester course. The texts are all authored by established experts in their fields, reviewed by an international advisory board, and contain numerous examples and problems. Many include fully worked solutions.

For other titles published in this series, go to http://www.springer.com/series/7592

Pankaj Jalote

A Concise Introduction to Software Engineering

123

Pankaj Jalote, Btech, MS, PhD Department of Computer Science and Engineering IIT Delhi, India Series editor ยด Ian Mackie, Ecole Polytechnique, France and University of Sussex, UK Advisory board Samson Abramsky, University of Oxford, UK Chris Hankin, Imperial College London, UK Dexter Kozen, Cornell University, USA Andrew Pitts, University of Cambridge, UK Hanne Riis Nielson, Technical University of Denmark, Denmark Steven Skiena, Stony Brook University, USA Iain Stewart, University of Durham, UK David Zhang, The Hong Kong Polytechnic University, Hong Kong

Undergraduate Topics in Computer Science ISSN: 1863-7310 ISBN: 978-1-84800-301-9 e-ISBN: 978-1-84800-302-6 DOI: 10.1007/978-1-84800-302-6 British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library Library of Congress Control Number: 2008933221 c Springer-Verlag London Limited 2008  Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licenses issued by the Copyright Licensing Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers. The use of registered names, trademarks, etc., in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use. The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made. Printed on acid-free paper Springer Science+Business Media springer.com

Preface

An introductory course on Software Engineering remains one of the hardest subjects to teach largely because of the wide range of topics the area encompasses. I have believed for some time that we often tend to teach too many concepts and topics in an introductory course resulting in shallow knowledge and little insight on application of these concepts. And S