Cargando…

Beginning software engineering /

Build better software with essential software engineering techniques Beginning Software Engineering teaches you the practical, hands-on skills needed to design and build robust, efficient, and consistently reliable software. Using jargon-free English, this book uses numerous case studies to demonstr...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Stephens, Rod, 1961- (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Indianapolis, IN : John Wiley & Sons, [2015]
Colección:Programmer to programmer.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • BEGINNING Software Engineering; CONTENTS; INTRODUCTION; PART I: SOFTWARE ENGINEERING STEP-BY-STEP; CHAPTER 1: SOFTWARE ENGINEERING FROM 20,000 FEET; Requirements Gathering; High-Level Design; Low-Level Design; Development; Testing; Deployment; Maintenance; Wrap-up; Everything All at Once; Summary; CHAPTER 2: BEFORE THE BEGINNING; Document Management; Historical Documents; E-mail; Code; Code Documentation; Application Documentation; Summary; CHAPTER 3: PROJECT MANAGEMENT; Executive Support; Project Management; PERT Charts; Critical Path Methods; Gantt Charts; Scheduling Software.
  • Predicting TimesGet Experience; Break Unknown Tasks into Simpler Pieces; Look for Similarities; Expect the Unexpected; Track Progress; Risk Management; Summary; CHAPTER 4: REQUIREMENT GATHERING; Requirements Defined; Clear; Unambiguous; Consistent; Prioritized; Verifiable; Words to Avoid; Requirement Categories; Audience-Oriented Requirements; Business Requirements; User Requirements; Functional Requirements; Nonfunctional Requirements; Implementation Requirements; FURPS; FURPS+; Common Requirements; Gathering Requirements; Listen to Customers (and Users); Use the Five Ws (and One H); Who.
  • WhatWhen; Where; Why; How; Study Users; Refining Requirements; Copy Existing Systems; Clairvoyance; Brainstorm; Recording Requirements; UML; User Stories; Use Cases; Prototypes; Requirements Specification; Validation and Verification; Changing Requirements; Summary; CHAPTER 5: HIGH-LEVEL DESIGN; The Big Picture; What to Specify; Security; Hardware; User Interface; Internal Interfaces; External Interfaces; Architecture; Monolithic; Client/Server; Component-Based; Service-Oriented; Data-Centric; Event-Driven; Rule-Based; Distributed; Mix and Match; Reports; Other Outputs; Database; Audit Trails.
  • User AccessDatabase Maintenance; Configuration Data; Data Flows and States; Training; UML; Structure Diagrams; Behavior Diagrams; Activity Diagrams; Use Case Diagram; State Machine Diagram; Interaction Diagrams; Sequence Diagram; Communication Diagram; Timing Diagram; Interaction Overview Diagram; Summary; CHAPTER 6: LOW-LEVEL DESIGN; OO Design; Identifying Classes; Building Inheritance Hierarchies; Refinement; Generalization; Hierarchy Warning Signs; Object Composition; Database Design; Relational Databases; First Normal Form; Second Normal Form; Third Normal Form.
  • Higher Levels of NormalizationSummary; CHAPTER 7: DEVELOPMENT; Use the Right Tools; Hardware; Network; Development Environment; Source Code Control; Profilers; Static Analysis Tools; Testing Tools; Source Code Formatters; Refactoring Tools; Training; Selecting Algorithms; Effective; Efficient; Predictable; Simple; Prepackaged; Top-Down Design; Programming Tips and Tricks; Be Alert; Write for People, Not the Computer; Comment First; Write Self-Documenting Code; Keep It Small; Stay Focused; Avoid Side Effects; Validate Results; Practice Offensive Programming; Use Exceptions.