Software Engineering

by
Edition: 9th
Format: Hardcover
Pub. Date: 2010-03-03
Publisher(s): Pearson
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $186.80

Rent Textbook

Select for Price
There was a problem. Please try again later.

New Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Customer Reviews

A valuable resource  July 31, 2011
by
Rating StarRating StarRating StarRating StarRating Star

This book's twenty-six chapters cover four major topics: introductory material, dependability and security, advanced software techniques, and project management. This textbook helped me a lot in my study. Book was received before expected date which was good and the quality was excellent. Above and beyond all expectations.






Software Engineering: 4 out of 5 stars based on 1 user reviews.

Summary

Intended for a sophomore/junior level course in software engineering.

The ninth edition of Software Engineering presents a broad perspective of software engineering, focusing on the processes and techniques fundamental to the creation of reliable, software systems. Increased coverage of agile methods and software reuse, along with coverage of 'traditional' plan-driven software engineering, gives readers the most up-to-date view of the field currently available. Practical case studies, a full set of easy-to-access supplements, and extensive web resources make teaching the course easier than ever.

The book is now structured into four parts:

1: Introduction to Software Engineering

2: Dependability and Security

3: Advanced Software Engineering

4: Software Engineering Management

Author Biography

Ian Sommerville is a full Professor of Software Engineering at the University of St. Andrews in Scotland, where he teaches courses in advanced software engineering and critical systems engineering. His research interest lies in complex, dependable systems.

Ian Somerville is the recipient of the 2011 ACM SIGSOFT Influential Educator Award. This honor is in recognition of the tremendous and positive influence that his Software Engineering  textbook and companion educational aids have had on undergraduate  software-engineering education, as well as his textbooks on Requirements Engineering, and achievements in establishing the SICSA Graduate Academy.  

Table of Contents

Contents
Part 1 Introduction to Software Engineering
Chapter 1: Introduction
1.1 Professional software development
1.2 Software engineering ethics
1.3 Case studies
Chapter 2: Software processes
2.1 Software process models
2.2 Process activities
2.3 Coping with change
2.4 The Rational Unified Process
Chapter 3: Agile software development
3.1 Agile methods
3.2 Plan-driven and agile development
3.3 Extreme programming
3.4 Agile project management
3.5 Scaling agile methods
Chapter 4: Requirements engineering
4.1 Functional and non-functional requirements
4.2 The software requirements document
4.3 Requirements specification
4.4 Requirements engineering processes
4.5 Requirements elicitation and analysis
4.6 Requirements validation
4.7 Requirements management
Chapter 5: System modeling
5.1 Context models
5.2 Interaction models
5.3 Structural models
5.4 Behavioral models
5.5 Model-driven engineering
Chapter 6: Architectural design
6.1 Architectural design decisions
6.2 Architectural views
6.3 Architectural patterns
6.4 Application architectures
Chapter 7: Design and Implementation
7.1 Object-oriented design using the UML
7.2 Design patterns
7.3 Implementation issues
7.4 Open source development
Chapter 8: Software testing
8.1 Development testing
8.2 Test-driven development
8.3 Release testing
8.4 User testing
Chapter 9: Software Evolution
9.1 Evolution processes
9.2 Program evolution dynamics
9.3 Software maintenance
9.4 Legacy system management
Part 2 Dependability and Security
Chapter 10: Socio-technical Systems
10.1 Complex systems
10.2 Systems engineering
10.3 System procurement
10.4 System development
10.5 System operation
Chapter 11: Dependability and Security
11.1 Dependability properties
11.2 Availability and reliability
11.3 Safety
11.4 Security
Chapter 12: Dependability and Security Specification
12.1 Risk-driven requirements specification
12.2 Safety specification
12.3 Reliability specification
12.4 Security specification
12.5 Formal specification
Chapter 13: Dependability Engineering
13.1 Redundancy and diversity
13.2 Dependable processes
13.3 Dependable systems architectures
13.4 Dependable programming
Chapter 14: Security Engineering
14.1 Security risk management
14.2 Design for security
14.3 System survivability
Chapter 15: Dependability and Security Assurance
15.1 Static analysis
15.2 Reliability testing
15.3 Security testing
15.4 Process assurance
15.5 Safety and dependability cases
Part 3 Advanced Software Engineering
Chapter 16: Software Reuse
16.1 The reuse landscape
16.2 Application frameworks
16.3 Software product lines
16.4 COTS product reuse
Chapter 17: Component-based Software Engineering
17.1 Components and component models
17.2 CBSE processes
17.3 Component composition
Chapter 18: Distributed Software Engineering
18.1 Distributed systems issues
18.2 Client—server computing
18.3 Architectural patterns for distributed systems
18.4 Software as a service
Chapter 19: Service-oriented Architecture
19.1 Services as reusable components
19.2 Service engineering
19.3 Software development with services
Chapter 20: Embedded Systems
20.1 Embedded systems design
20.2 Architectural patterns
20.3 Timing analysis
20.4 Real-time operating systems
Chapter 21: Aspect-oriented software engineering
21.1 The separation of concerns
21.2 Aspects, join points and pointcuts
21.3 Software engineering with aspects
Part 4 Software management
Chapter 22: Project management
22.1 Risk management
22.2 Managing people
22.3 Teamwork
Chapter 23: Project planning
23.1 Software pricing
23.2 Plan-driven development
23.3 Project scheduling
23.4 Agile planning
23.5 Estimation techniques
Chapter 24: Quality management
24.1 Software quality
24.2 Software standards
24.3 Reviews and inspections
24.4 Software measurement and metrics
Chapter 25: Configuration management
25.1 Change management
25.2 Version management
25.3 System building
25.4 Release management
Chapter 26: Process improvement
26.1 The process improvement process
26.2 Process measurement
26.3 Process analysis
26.4 Process change
26.5 The CMMI process improvement framework

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.