Librería Portfolio Librería Portfolio

Búsqueda avanzada

TIENE EN SU CESTA DE LA COMPRA

0 productos

en total 0,00 €

FOUNDATIONS OF SOFTWARE ENGINEERING
Título:
FOUNDATIONS OF SOFTWARE ENGINEERING
Subtítulo:
Autor:
AHMED, A
Editorial:
CRC PRESS
Año de edición:
2016
Materia
INGENIERIA DEL SOFTWARE - OTROS TEMAS
ISBN:
978-1-4987-3759-3
Páginas:
451
97,50 €

 

Sinopsis

The best way to learn software engineering is by understanding its core and peripheral areas. Foundations of Software Engineering provides in-depth coverage of the areas of software engineering that are essential for becoming proficient in the field. The book devotes a complete chapter to each of the core areas. Several peripheral areas are also explained by assigning a separate chapter to each of them.

Rather than using UML or other formal notations, the content in this book is explained in easy-to-understand language. Basic programming knowledge using an object-oriented language is helpful to understand the material in this book. The knowledge gained from this book can be readily used in other relevant courses or in real-world software development environments.

This textbook educates students in software engineering principles. It covers almost all facets of software engineering, including requirement engineering, system specifications, system modeling, system architecture, system implementation, and system testing. Emphasizing practical issues, such as feasibility studies, this book explains how to add and develop software requirements to evolve software systems.

This book was written after receiving feedback from several professors and software engineers. What resulted is a textbook on software engineering that not only covers the theory of software engineering but also presents real-world insights to aid students in proper implementation.

Students learn key concepts through carefully explained and illustrated theories, as well as concrete examples and a complete case study using Java. Source code is also available on the book's website. The examples and case studies increase in complexity as the book progresses to help students build a practical understanding of the required theories and applications.



Table of Contents

Introduction to Software Engineering

Introduction

Components of a Computer

Building the Software Products

What Is Software Engineering?

Why Software Engineering?

Challenges in Software Engineering

Project Management and Software Engineering

Costs Involved in Software Development

Methodologies Used for Software Development

Some Careers in Software Engineering

Software Industry Size

Code of Ethics

Book Organization

Chapter Summary

Recommended Reading

Software Engineering Methodologies

Introduction

Why a Methodology?

Agile Methodologies

Waterfall Model

Rational Unified Process

Spiral Model

Incremental Iteration Model

eXtreme Programming

Scrum

Methodology for Implementing SaaS Products

Methodology for Implementing COTS Products

A Discussion on the Usage of Software Development Models

Popular Process Standards

Process Standards and Software Engineering Methodologies

Software Process Activities

Chapter Summary

Recommended Reading

Feasibility Study

Introduction

Feasibility Study for Software Projects

Finding the Economic Feasibility of Requirements

Finding the Technical Feasibility of Requirements

Prototyping

Pilot Projects

Chapter Summary

Recommended Reading


Software Requirement Specifications

Introduction

Software Engineering Methodologies and Requirement Management

Implementation of the Requirements 6

Requirement Types

Sources of Requirements

Categories of Users

Software Requirement Life Cycle

Requirement Gathering (Elicitation)

Requirement Analysis

Requirement Specification

Requirement Management

Case Study

Chapter Summary

Recommended Reading


Software High-Level Design and Modeling

Introduction

Methodology Used

How to Reduce Complexity in Software Design

Logical Design for Software Architecture

Architecture Design Patterns

Client-Server Architecture

Web-Based Architecture

Service-Oriented Architecture

Software Component Design Fundamentals

Component Diagrams

Data Flow Diagram

Software Design Patterns

Programming Language Considerations

Types of Programming Languages: A Brief Review

Security

Performance

Case Study

Chapter Summary

Recommended Reading


Software User Interface Design and Construction

Introduction

Graphical User Interface

Graphic Control Elements

Hyper Text Markup Language

Cascading Style Sheets

Client-Side Scripting

Asynchronous JavaScript and XML

Simple (Model-View) User Interface

Model-View-Controller

Case Study

Chapter Summary

Recommended Reading


Software Middle Layer Design and Construction

Introduction

Software Design and Implementation and Software Engineering Methodology

Procedural Programming: A Brief Introduction

Object-Oriented Programming

Basics of Programming Languages

Variables and Variable Types

Operators

Decision Trees and Loops

Methods

Classes

Objects and Object-Oriented Programming Packages

Database Programming

Model-View-Controller Revisited

Refactoring

Client-Side and Server-Side Scripts

Debugging

Case Study

Chapter Summary

Recommended Reading


Database Design and Construction

Introduction

Databases and Software Engineering Methodologies

Database Types

Database Languages

Database Entities

Database Design

Database Management Systems

Object Relational Databases

Case Study

Chapter Summary

Recommended Reading


Software Testing (Verification and Validation)

Introduction

Software Testing and Software Engineering Methodologies

Introduction to Different Types of Software Testing

Introduction to Verification and Validation

Introduction to Levels of Software Testing (Validation)

Verification

Unit Testing

Integration Testing

System Testing

User Acceptance Testing

Other Important Tests

Test Case Design

Test Preparation

Test Life Cycle

Case Study

Chapter Summary

Recommended Reading


Software Release

Introduction

Software Release and Software Engineering Methodology

Integration

Documentation

Release Cycles

User Training

Deployment

Software Migration Strategies

Software Product Release Checklist

Chapter Summary

Recommended Reading

Software Maintenance

Introduction

Software Maintenance and Software Engineering Methodology

Production Environment Maintenance

Production Environment Monitoring

Maintenance Process

Types of Software Maintenance

Software Maintenance Strategies

Reverse Engineering

Chapter Summary

Recommended Reading

Configuration and Version Management

Introduction

Configuration Management and Version Control Concepts

CVS Systems

Chapter Summary

Recommended Reading


Software Project Management

Introduction

Project Management and Software Engineering Methodologies

Project Planning

Project Monitoring and Controlling

Project Team Management

Project Customer Management

Supplier