Mall R. Fundamentals of software engineering 5ed 2018
- Type:
- Other > E-books
- Files:
- 1
- Size:
- 71.6 MiB (75080247 Bytes)
- Uploaded:
- 2021-09-22 12:26:48 GMT
- By:
- andryold1
- Seeders:
- 0
- Leechers:
- 3
- Comments
- 0
- Info Hash: 8809D2556F93C45201537A43951F541A70BE40E1
(Problems with magnets links are fixed by upgrading your torrent client!)
Textbook in PDF format Preface Preface to the First Edition Introduction Evolution—From an Art Form to an Engineering Discipline Evolution of an Art into an Engineering Discipline Evolution Pattern for Engineering Disciplines A Solution to the Software Crisis Software Development Projects Programs versus Products Types of Software Development Projects Software Projects Being Undertaken by Indian Companies Exploratory Style of Software Development Perceived Problem Complexity: An Interpretation Based on Human Cognition Mechanism Principles Deployed by Software Engineering to Overcome Human Cognitive Limitations Emergence of Software Engineering Early Computer Programming High-level Language Programming Control Flow-based Design Data Structure-oriented Design Data Flow-oriented Design Object-oriented Design What Next Other Developments Notable Changes in Software Development Practices Computer Systems Engineering Summary Exercises Software Life Cycle Models A Few Basic Concepts Waterfall Model and Its Extensions Classical Waterfall Model Iterative Waterfall Model V-Model Prototyping Model Incremental Development Model Evolutionary Model Rapid Application Development (RAD Working of RAD Applicability of RAD Model Comparison of RAD with Other Models Agile Development Models Essential Idea behind Agile Models Agile versus Other Models Extreme Programming Model Scrum Lean Software Development Spiral Model Phases of the Spiral Model A Comparison of Different Life Cycle Models Selecting an Appropriate Life Cycle Model for a Project Summary Exercises Software Project Management Software Project Management Complexities Responsibilities of a Software Project Manager Job Responsibilities for Managing Software Projects Skills Necessary for Managing Software Projects Project Planning Sliding Window Planning The SPMP Document of Project Planning Metrics for Project Size Estimation Lines of Code (LOC Function Point (FP) Metric Project Estimation Techniques Empirical Estimation Techniques Heuristic Techniques Analytical Estimation Techniques Empirical Estimation Techniques Expert Judgement Delphi Cost Estimation COCOMO—A Heuristic Estimation Technique Basic COCOMO Model Intermediate COCOMO Complete COCOMO COCOMO Halstead’s Software Science—An Analytical Technique Length and Vocabulary Program Volume Potential Minimum Volume Effort and Time Length Estimation Staffing Level Estimation Norden’s Work Putnam’s Work Jensen’s Model 0 Scheduling 0 Work Breakdown Structure 0 Activity Networks 0 Critical Path Method (CPM 0 PERT Charts 0 Gantt Charts Organisation and Team Structures Organisation Structure Team Structure Staffing Risk Management Risk Management Approaches Risk Identification Risk Assessment Risk Mitigation Boehm’s Top 0 Risks and Counter Measures Software Configuration Management Necessity of Software Configuration Management Configuration Management Activities Summary Exercises Requirements Analysis and Specification Requirements Gathering and Analysis Requirements Gathering Requirements Analysis Software Requirements Specification (SRS Users of SRS Document Why Spend Time and Resource to Develop an SRS Document Characteristics of a Good SRS Document Attributes of Bad SRS Documents Important Categories of Customer Requirements Functional Requirements How to Identify the Functional Requirements How to Document the Functional Requirements Traceability 0 Organisation of the SRS Document Techniques for Representing Complex Logic Formal System Specification What is a Formal Technique Operational Semantics Axiomatic Specification Algebraic Specification Auxiliary Functions Structured Specification Executable Specification And GL Summary Exercises Software Design Overview of the Design Process Outcome of the Design Process Classification of Design Activities Classification of Design Methodologies How to Characterise a Good Software Design Understandability of a Design: A Major Concern Cohesion and Coupling Classification of Cohesiveness Classification of Coupling Layered Arrangement of Modules Approaches to Software Design Function-oriented Design Object-oriented Design Summary Exercises Function-Oriented Software Design Overview of SA/SD Methodology Structured Analysis Data Flow Diagrams (DFDs Developing the DFD Model of a System Context Diagram Level DFD Extending DFD Technique to make it Applicable to Real-time Systems Structured Design Transformation of a DFD Model into Structure Chart Detailed Design Design Review Summary Exercises Object Modelling Using UML Basic Object-Orientation Concepts Basic Concepts Class Relationships How to Identify Class Relationships Other Key Concepts Related Technical Terms Advantages and Disadvantages of OOD Unified Modelling Language (UML Origin of UML Evolution of UML UML Diagrams Use Case Model Representation of Use Cases Why Develop the Use Case Diagram How to Identify the Use Cases of a System Essential Use Case versus Real Use Case Factoring of Commonality among Use Cases Use Case Packaging Class Diagrams Interaction Diagrams Activity Diagram State Chart Diagram Postscript Package, Component, and Deployment Diagrams UML 0 Summary Exercises Object-Oriented Software Development Introduction to Patterns Basic Pattern Concepts Types of Patterns More Pattern Concepts Some Common Design Patterns An Object-Oriented Analysis and Design (OOAD) Methodology Unified Process Overview of the OOAD Methodology Use Case Model Development Domain Modelling Identification of Entity Objects Booch’s Object Identification Method Interaction Modelling Class-Responsibility-Collaborator (CRC) Cards Applications of the Analysis and Design Process OOD Goodness Criteria Summary Exercises User Interface Design Characteristics of a Good User Interface Basic Concepts User Guidance and On-line Help Mode-based versus Modeless Interface Graphical User Interface (GUI) versus Text-based User Interface Types of User Interfaces Command Language-based Interface Menu-based Interface Direct Manipulation Interfaces Fundamentals of Component-based GUI Development Window System Types of Widgets An Overview of X-Window/MOTIF X Architecture Size Measurement of a Component-based GUI A User Interface Design Methodology Implications of Human Cognition Capabilities on User Interface Design A GUI Design Methodology Summary Exercises 0 Coding and Testing 0 Coding 0 Coding Standards and Guidelines 0 Code Review 0 Code Walkthrough 0 Code Inspection 0 Cleanroom Technique 0 Software Documentation 0 Internal Documentation 0 External Documentation 0 Testing 0 Basic Concepts and Terminologies 0 Testing Activities 0 Why Design Test Cases 0 Testing in the Large versus Testing in the Small 0 Tests as Bug Filters 0 Unit Testing 0 Black-Box Testing 0 Equivalence Class Partitioning 0 Boundary Value Analysis 0 Summary of the Black-box Test Suite Design Approach 0 White-Box Testing 0 Basic Concepts 0 Statement Coverage 0 Branch Coverage 0 Condition Coverage 0 Condition and Decision Coverage 0 Multiple Condition Coverage 0 Multiple Condition/Decision Coverage (MC/DC 0 Path Coverage 0 McCabe’s Cyclomatic Complexity Metric 00 Data Flow-based Testing 0 Mutation Testing 0 Debugging 0 Debugging Approaches 0 Debugging Guidelines 0 Program Analysis Tools 0 Static Analysis Tools 0 Dynamic Analysis Tools 00 Integration Testing 00 Phased versus Incremental Integration Testing 0 Testing Object-Oriented Programs 0 What is a Suitable Unit for Testing Object-oriented Programs 0 Do Various Object-orientation Features Make Testing Easy 0 Why are Traditional Techniques Considered Not Satisfactory for Testing Object-oriented Programs 0 Grey-Box Testing of Object-oriented Programs 0 Integration Testing of Object-oriented Programs 0 System Testing 0 Smoke Testing 0 Performance Testing 0 Error Seeding 0 Some General Issues Associated with Testing Summary Exercises Software Reliability and Quality Management Software Reliability Hardware versus Software Reliability Reliability Metrics of Software Products Reliability Growth Modelling Statistical Testing Steps in Statistical Testing Software Quality Software Quality Models Software Quality Management System Evolution of Quality Systems Product Metrics versus Process Metrics ISO 000 What is ISO 000 Certification ISO 000 for Software Industry Why Get ISO 000 Certification How to Get ISO 000 Certification Summary of ISO 00 Requirements Salient Features of ISO 00 Requirements ISO 000-000 Shortcomings of ISO 000 Certification SEI Capability Maturity Model Comparison between ISO 000 Certification and SEI/CMM Is SEI CMM Applicable to Small Organisations Capability Maturity Model Integration (CMMI Few Other Important Quality Standards Six Sigma Summary Exercises Computer Aided Software Engineering CASE and Its Scope CASE Environment Benefits of CASE CASE Support in Software Life Cycle Prototyping Support Structured Analysis and Design Code Generation Test Case Generator Other Characteristics of CASE Tools Hardware and Environmental Requirements Documentation Support Project Management External Interface Reverse Engineering Support Data Dictionary Interface Tutorial and Help Towards Second Generation CASE Tool Architecture of a CASE Environment Summary Exercises Software Maintenance Characteristics of Software Maintenance Characteristics of Software Evolution Special Problems Associated with Software Maintenance Software Reverse Engineering Software Maintenance Process Models Estimation of Maintenance Cost Summary Exercises Software Reuse What can be Reused Why Almost no Reuse So Far Basic Issues in any Reuse Program A Reuse Approach Domain Analysis Component Classification Searching Repository Maintenance Reuse without Modifications Reuse at Organisation Level Current State of Reuse Summary Exercises Emerging Trends Client-Server Software Client-Server Architectures CORBA CORBA Reference Model CORBA ORB Architecture CORBA Implementations Software Development in CORBA COM/DCOM COM DCOM Service-Oriented Architecture (SOA Service-oriented Architecture (SOA): Nitty-Gritty Software as a Service (SaaS Summary Exercises References Index Back cover
Mall R. Fundamentals of software engineering 5ed 2018.pdf | 71.6 MiB |