
Software Engineer's Pocket Book
- 1st Edition - July 25, 1994
- Imprint: Newnes
- Author: Michael Tooley
- Language: English
- Paperback ISBN:9 7 8 - 1 - 4 8 3 1 - 0 8 5 5 - 1
- eBook ISBN:9 7 8 - 1 - 4 8 3 1 - 0 2 2 1 - 4
Software Engineer's Pocket Book provides a concise discussion on various aspects of software engineering. The book is comprised of six chapters that tackle various areas of… Read more

Purchase options

Institutional subscription on ScienceDirect
Request a sales quoteSoftware Engineer's Pocket Book provides a concise discussion on various aspects of software engineering. The book is comprised of six chapters that tackle various areas of concerns in software engineering. Chapter 1 discusses software development, and Chapter 2 covers programming languages. Chapter 3 deals with operating systems. The book also tackles discrete mathematics and numerical computation. Data structures and algorithms are also explained. The text will be of great use to individuals involved in the specification, design, development, implementation, testing, maintenance, and quality assurance of software.
PrefaceAcknowledgments1 Software Development 1.1 Introduction 1.2 The Software Development Life Cycle Technical Model Management Models 1.3 Selection of Stages and Methods Selection of Stages Choice of Development Approach Choosing Descriptions Choosing Methods 1.4 Software Development from the Project Management Viewpoint The Waterfall Model Classical Life Cycle Phases Software Development Activities Matrix of Phases and Activities Baselines, Reviews and the V-Diagram 1.5 Requirements Analysis Requirers, Facilitators and Implementors Requirements Specification 1.6 Methods for Architectural Design HOOD MASCOT Structured Analysis/Structured Design (SA/SD) Jackson System Development (JSD) Structured System Analysis and Design Method (SSADM) 1.7 Testing and the software life cycle Testing and Requirements Analysis Test Planning Testing and System Design Testing and Detailed Design Testing and Programming Testing and Integration System and Acceptance Testing Testing and Maintenance 1.8 Software Maintenance Program Comprehension 1.9 Tools and Workbenches GSA Programmer's Workbench Test Coverage Monitor Source Compare Tools File Compare Tools Translator Tools Reformatter Tools Data Name Standardizer Tool Restructuring Tools Source Code Analyzer Cross-Reference Tool Documentation and Metrics Analyzer Data Manipulation Tool 1.10 Configuration Management 1.11 Quality Quality Assurance Quality Management Systems (QMSs) Quality Control Structured Walkthroughs Refining the QMS Fagan Inspections 1.12 Risk Management and Choice of Process 1.13 References and Bibliography2 Programming Languages 2.1 Introduction 2.2 Computer Architecture Basic Von-Neuman Machine Execution Cycle Instruction Sets CISC and RISC 2.3 CPU Characteristics Variable Length versus Fixed Length Co-Processors User/Supervisor Modes 2.4 Instruction Classification Arithmetic Instructions Logical Instructions Program Flow Control Instructions Machine Control and I/O Instructions 2.5 Processor Hardware Design Hard-wiring Microcoding 2.6 Data Types and Internal Representation Bytes/Characters Integers Addresses Logical Variables Floating Point/Real Numbers General Data Structures 2.7 Addressing Logical versus Physical Addressing 2.8 Logical Addressing Logical Addressing Methods Modes Long/Short Jumps and Calls Relocatability and Position Independent Code Code/Data Areas Re-entrancy 2.9 Physical Addressing Memory Sizes Bus Widths Boundaries Paging Cache Memory Read/Write/Execute Protection 2.10 Input/Output Privileged Instructions and Protection Addressing Devices Interrupts and Polling Direct Memory Access Traps Pipe-lining/Instruction Caching 2.11 Other Architectures 2.12 Assemblers and Macro-Assemblers Basic Assembler Interfacing with High-Level Language Modules Assembly Time Arithmetic and Logic for Addresses and Data Conditional Assembly Macros 2.13 Inter-Module Communication 2.14 High-Level Languages Fortran Machine Independence 2.15 Abstract Fata Types Arithmetic Types Character Data Types Boolean Data Types Derived and User-Defined Types Pointer Types Union Types Aggregate Types Set Types Lists Strings Arrays Tables Record Types 2.16 Control Constructs Parallel Flow Branching Loop Constructs Blocks Procedures Functions and Subroutines Modules 2.17 References and Bibliography3 Operating Systems 3.1 Introduction 3.2 Basic Concepts of Operating Systems 3.3 Simple, Single-User Operating Systems Memory Management in Simple Systems Disc and File Organization and Management 3.4 Multiprogramming Operating Systems Memory Management in Multiprogramming Systems Storage and File Organization and Management Sharing Processor Time Serialization, Concurrency and the Prevention of Deadlock Interprocess Communication 3.5 Multiprocessing and Distributed Systems 3.6 Accessing System Services 3.7 References and Bibliography4 Discrete Mathematics 4.1 Introduction 4.2 Logic Propositions and Predicates Logical Connectives 4.3 Set Theory Free and Bound Set Operators Set Relations Cardinality Power Sets Cartesian Product Labeled Cartesian Products Notation 4.4 Functions Function Composition Functions of More than One Argument Properties of Functions Disjoint Union Sequences Concatenation 4.5 Relations Properties of Relations Equivalence Relations Equivalence Classes Partial Orders 4.5 Algebras 4.6 Mathematical Models and Specification Languages Z VDM 4.7 References and Bibliography5 Numerical Computation 5.1 Introduction 5.2 Floating-Point Arithmetic Machine Floating-Point Arithmetic Portability of Floating-Point Arithmetic Floating-Point Arithmetic and Formal Specification 5.3 Floating-Point Programming Techniques Some Tricks of the Trade Alternatives to Floating-Point Arithmetic Error Control Error Analysis 5.4 References and Bibliography6 Data Structures and Algorithms 6.1 Introduction 6.2 Analysis Techniques Machine Models and Complexity Measures Asymptotic Analysis Analysis Based on Recurrence Relations Analysis of Lower Bounds 6.3 Design of Efficient Data Structures and Algorithms Dictionaries Static Case Dynamic Case Priority Queues 6.4 References and BibliographyAppendix A — Standards Standards Introduction Timing of Standards Certification Standards Bodies ISO, IEC and International Standardization Standardization in the UK Standardization in the USA Military StandardsAppendix B — AbbreviationsIndex
- Edition: 1
- Published: July 25, 1994
- No. of pages (eBook): 248
- Imprint: Newnes
- Language: English
- Paperback ISBN: 9781483108551
- eBook ISBN: 9781483102214
Read Software Engineer's Pocket Book on ScienceDirect