Buy Software Engineering by Michael E. Bernstein - Bookswagon
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology > Computer programming / software engineering > Software Engineering: Modern Approaches
Software Engineering: Modern Approaches

Software Engineering: Modern Approaches


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

  • Presenting the most comprehensive and practical introduction to the principles of software engineering and how to apply them, this updated edition follows an object-oriented perspective
  • Includes new and expanded material on agile and emerging methods, metrics, quality assurance security, real-world case studies, refactoring, test-driving development, and testing
  • Case studies help readers learn the importance of quality factors, appropriate design, and project management techniques


Table of Contents:
CONTENTS

Preface

The Issue of Scale

This Edition Compared with the First

How Instructors Can Use This Book

Acknowledgments

PART I           INTRODUCTION TO SOFTWARE ENGINEERING

Chapter 1         The Goals and Terminology of Software Engineering

  1. What is Software Engineering
  2. Why Software Engineering Is Critical: Software Disasters
  3. Why Software Fails and Succeeds
  4. Software Engineering Activities
  5. Software Engineering Principles
  6. Ethics in Software Engineering
  7. Case Studies
  8. Summary
  9. Exercises

Bibliography

Chapter 2         Introduction to Quality and Metrics in Software Engineering

2.1       The Meaning of Software Quality

2.2       Defects in Software

2.3       Verification and Validation

2.4       Planning for Quality

2.5       Metrics

2.6       Summary

2.7       Exercises

Bibliography

PART II          SOFTWARE PROCESS

Chapter 3         Software Process

3.1       The Activities of Software Process

3.2       Software Process Models

3.3       Case Study: Student Team Guidance

3.4       Summary

3.5       Exercises

Bibliography

Chapter 4         Agile Software Processes

4.1       Agile History and Agile Manifesto

4.2       Agile Principles

4.3       Agile Methods

4.4       Agile Processes

4.5       Integrating Agile with Non-Agile Processes

4.6       Summary

4.7       Exercises

Bibliography

Chapter 5         Quality in the Software Process

5.1       Principles of Managing Quality

5.2       Managing Quality in Agile Processes

5.3       Quality Planning

5.4       Inspections

5.5       QA Reviews and Audits

5.6       Defect Management

5.7       Process Improvement and Process Metrics

5.8       Organization-Level Quality and the CMMI

5.9       Case Study

5.10     Summary

5.11     Exercises

Bibliography

Chapter 6         Software Configuration Management

6.1       Software Configuration Management Goals

6.2       SCM Activities

6.3       Configuration Management Plans

6.4       Configuration Management Systems

6.5       Case Study: Encounter Video Game

6.6       Case Study: Eclipse

6.7       Student Team Guidance: Configuration Management

6.8       Summary

6.9       Exercises

Bibliography

PART III                    PROJECT MANAGEMENT

Chapter 7         Principles of Software Project Management I: Organization, Tools, and Risk Management

7.1       Software Project Organization

7.2       Team Size

7.3       Geographically Distributed Development

7.4       The Team Software Process

7.5       Software Project Tools and Techniques

7.6       Risk Management

7.7       Student Team Guidance: Organizing the Software Project’s Management

7.8       Summary

7.9       Exercises

Bibliography

Chapter 8         Principles of Software Project Management II: Estimation, Scheduling, and Planning

8.1       Cost Estimation

8.2       Scheduling

8.3       The Software Project Management Plan

8.4       Case Study: Encounter Project Management Plan

8.5       Case Study: Project Management in Eclipse

8.6       Case Study: Project Management for OpenOffice

8.7       Case Study: Student Team Guidance

8.8       Summary

8.9       Exercises

Bibliography

Chapter 9         Quality and Metrics in Project Management

9.1       Cultivating and Planning Internal Quality

9.2       Project Metrics

9.3       Using Metrics for Improvement

9.4       Software Verification and Validation Plan

9.5       Case Study: Software Verification and Validation Plan for Encounter

9.6       Summary

9.7       Exercises

Bibliography

PART IV         REQUIREMENTS ANALYSIS

Chapter 10       Principles of Requirements Analysis

10.1     The Value of Requirements Analysis

10.2     Sources of Requirements

10.3     High-level vs. Detailed Requirements

10.4     Types of Requirements

10.5     Nonfunctional Requirements

10.6     Documenting Requirements

10.7     Traceability

10.8     Agile Methods and Requirements

10.9     Updating the Project to Reflect Requirements Analysis

10.10   Summary

10.11   Exercises

Bibliography

Chapter 11       Analyzing High-Level Requirements

11.1     Examples of Customer Wants

11.2     Stakeholder Vision

11.3     The Interview and Documentation Process

11.4     Writing an Overview

11.5     Describing Main Functions and Used Cases

11.6     Agile Methods for High-Level Requirements

11.7     Specifying User Interfaces: High Level

11.8     Security Requirements

11.9     Using Diagrams for High-Level Requirements

11.10   Case Study: High-Level Software Requirements Specifications (SRS) for the Encounter Video Game

11.11   Case Study: High-Level Requirements for Eclipse

11.12   Case Study: High-Level Requirements for OpenOffice

11.13   Summary

11.14   Exercises

Bibliography

Chapter 12       Analyzing Detailed Requirements

12.1     The Meaning of Detailed Requirements

12.2     Organizing Detailed Requirements

12.3     User Interfaces: Detailed Requirements

12.4     Detailed Security Requirements

12.5     Error Conditions

12.6     Traceability of Detailed Requirements

12.7     Using Detailed Requirements to Manage Projects

12.8     Prioritizing Requirements

12.9     Associating Requirements with Tests

12.10   Agile Methods for Detailed Requirements

12.11   Using Tools and the Web for Requirements Analysis

12.12   The Effects on Projects of the Detailed Requirements Process

12.13   Student Project Guide: Requirements for the Encounter Case Study

12.14   Case Study: Detailed Requirements for the Encounter Video Game

12.15   Summary

12.16   Exercises

Bibliography

Chapter 13       Quality and Metrics in Requirements Analysis

13.1     Quality of Requirements for Agile Projects

13.2     Accessibility of Requirements

13.3     Comprehensiveness of Requirements

13.4     Understandability of Requirements

13.5     Un-ambiguity of Requirements

13.6     Consistency of Requirements

13.7     Prioritization of Requirements

13.8     Security and High-Level Requirements

13.9     Self-Completeness of Requirements

13.10   Testability of Requirements

13.11   Traceability of Requirements

13.12   Metrics for Requirements Analysis

13.13   Inspecting Detailed Requirements

13.14   Summary

13.15   Exercises

Chapter 14       Online Chapter - Formal and Emerging Methods in Requirements Analysis as follows: An Introduction

14.1     Provable Requirements Method

14.2     Introduction to Formal Methods

14.3     Mathematical Preliminaries

14.4     The Z-Specification Language

14.5     The B Language System

14.6     Trade-offs for Using a B-like system

14.7     Summary

14.8     Exercises

Bibliography

PART V          SOFTWARE DESIGN

Chapter 15       Principles of Software Design

15.1     The Goals of Software Design

15.2     Integrating Design Models

15.3     Frameworks

15.4     IEEE Standards for Expressing Designs

15.6     Summary

15.7     Exercises

Chapter 16       The Unified Modeling Language

16.1     Classes in UML

16.2     Class Relationships in UML

16.3     Multiplicity

16.4     Inheritance

16.5     Sequence Diagrams

16.6     State Diagrams

16.7     Activity Diagrams

16.8     Data Flow Models

16.9     A Design Example with UML

16.10   Summary

16.11   Exercises

Bibliography

Chapter 17       Software Design Patterns

17.1     Examples of a Recurring Design Purpose

17.2     An Introduction to Design Patterns

17.3     Summary of Design Patterns by Type: Creational, Structural, and Behavioral

17.4     Characteristics of Design Patterns: Viewpoints, Roles, and Levels

17.5     Selected Creational Design Patterns

17.6     Selected Structural Design Patterns

17.7     Selected Behavioral Design Patterns

17.8     Design Pattern Forms: Delegation and Recursion

17.9     Summary

17.10   Exercises

Bibliography

Chapter 18       Software Architecture

18.1     A Categorization of Architectures

18.2     Software Architecture Alternatives and Their Class Models

18.3     Trading Off Architecture Alternatives

18.4     Tools for Architectures

18.5     IEEE Standards for Expressing Designs

18.6     Effects of Architecture Selection on the Project Plan

18.7     Case Study: Preparing to Design Encounter (Student Project Guide continued)

18.8     Case Study: Software Design Document for the Role-Playing Video Game Framework

18.9     Case Study: Software Design Document for Encounter (Uses the Framework)

18.10   Case Study: Architecture of Eclipse

18.11   Case Study: OpenOffice Architecture

18.12   Summary

18.13   Exercises

Bibliography

Chapter 19       Detailed Design

19.1     Relating Use Cases, Architecture, and Detailed Design

19.2     A Typical Road Map for the “Detailed Design” Process

19.3     Object-Oriented Design Principles

19.4     Designing against Interfaces

19.5     Specifying Classes, Functions, and Algorithms

19.6     Reusing Components

19.7     Sequence and Data Flow Diagrams for Detailed Design

19.8     Detailed Design and Agile Processes

19.9     Design in the Unified Development Process

19.10   IEEE Standard 890 for Detailed Design

19.11   Updating a Project with Detailed Design

19.12   Case Study: Detailed Design of Encounter

19.13   Case Study: Detailed Design of Eclipse

19.14   Summary

19.15   Exercises

Bibliography

Chapter 20       Design Quality and Metrics

20.1     Degree of Understandability, Cohesion, and Coupling

20.2     Degree of Sufficiency as a Quality Goal

20.3     Degree of Robustness as a Quality Goal

20.4     Degree of Flexibility as a Design Quality Goal

20.5     Degree of Reusability as a Design Quality Goal

20.6     Degree of Time Efficiency as a Design Quality Measure

20.7     Degree of Space Efficiency as a Design Quality Measure

20.8     Degree of Reliability as a Design Quality Measure

20.9     Degree of Security as a Design Quality Measure

20.10   Assessing Quality in Architecture Selection

20.11   Assessing the Quality of Detailed Designs

20.12   Summary

20.13   Exercises

Bibliography

Chapter 21       Online Chapter - Advanced and Emerging Methods in Software Design

21.1     Designing in a Distributed Environment

21.2     Introduction to Aspect-Oriented Programming

21.3     Designing for Security with UMLsec

21.4     Model-Driven Architectures

21.5     The Formal Design Process in B

21.6     Summary

21.7     Exercises

Bibliography

PART VI         IMPLEMENTATION

Chapter 22       Principles of Implementation

22.1     Agile and Non-Agile Approaches to Implementation

22.2     Choosing a Programming Language

22.3     Identifying Classes

22.4     Defining Methods

22.5     Implementation Practices

22.6     Defensive Programming

22.7     Coding Standards

22.8     Comments

22.9     Tools and Environments for Programming

22.10   Case Study: Encounter Implementation

22.11   Case Study: Eclipse

22.12   Case Study: OpenOffice 

22.13   Student Team Guidance for Implementation

22.14   Summary

22.15   Code Listings Referred to in This Chapter

22.16   Exercises

Bibliography

Chapter 23       Quality and Metrics in Implementation

23.1     Quality of Implementation

23.2     Code Inspections

23.3     Summary

23.4     Exercises

Chapter 24       Refactoring

24.1     Big Refactorings

24.2     Composing Methods

24.3     Moving Features between Objects 

24.4     Organizing Data

24.5     Generalization

24.6     Introducing Modules

24.7     Refactoring in Projects

24.8     Summary

24.9     Exercises

Bibliography

PART VII       TESTING AND MAINTENANCE

Chapter 25       Introduction to Software Testing

25.1     Testing Early and Often; and the Agile Connection

25.2     Retesting: Regression Testing

25.3     Black Box and White Box Testing

25.4     Unit Testing vs. Post-Unit Testing

25.5     Testing Object-Oriented Implementations

25.6     Documenting Tests

25.7     Test Planning

25.8     Testing Test Suites by Fault Injection

25.9     Summary

25.10   Exercises

Chapter 26       Unit Testing

26.1     The Sources of Units for Unit Testing

26.2     Unit Test Methods

26.3     Testing Methods

26.4     Test-Driven Development

26.5     Case Study: Encounter Video Game

26.6     Summary

26.7     Exercises

Bibliography

Chapter 27       Module and Integration Testing

27.1     Stubs and Drivers

27.2     Testing a Class

27.3     Integration

27.4     Daily Builds

27.5     Interface Testing

27.6     Module Integration

27.7     Case Study: Class Test for Encounter

27.8     Case Study: Encounter Integration Plan

27.9     Summary

27.10   Exercises

Bibliography

Chapter 28       Testing at the System Level

28.1     Functional Testing

28.2     Nonfunctional Testing

28.3     Testing with Lightweight Requirements

28.4     Testing Shortly Before Release

28.5     Case Study: Encounter Software Test Documentation

28.6     Case Study: Eclipse

28.7     Case Study: OpenOffice

28.8     Summary

28.9     Exercises

Bibliography

Chapter 29       Software Maintenance

29.1     Types of Software Maintenance

29.2     Issues of Software Maintenance

29.3     Maintenance Process

29.4     IEEE Maintenance Standards

29.5     Software Evolution

29.6     Maintenance Metrics

29.7     Case Studies

29.8     Summary

29.9     Exercises

Bibliography

Glossary

Index


Best Sellers


Product Details
  • ISBN-13: 9781118072172
  • Publisher: John Wiley & Sons Inc
  • Publisher Imprint: John Wiley & Sons Inc
  • Edition: Revised edition
  • No of Pages: 800
  • ISBN-10: 1118072170
  • Publisher Date: 03 Jan 2011
  • Binding: Digital (delivered electronically)
  • Language: English
  • Sub Title: Modern Approaches


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Software Engineering: Modern Approaches
John Wiley & Sons Inc -
Software Engineering: Modern Approaches
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Software Engineering: Modern Approaches

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    Fresh on the Shelf


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!