Fundamentals of software engineering/ Rajib Mall.

By: Mall, RajibMaterial type: TextTextPublication details: New Delhi : PHI Learnings , 2010Edition: 3rd edDescription: xxii, 441 p. illISBN: 9788120338197Subject(s): Computer Science | Software Engineering | Logics and Meanings of ProgramsDDC classification: 005.1
Contents:
1. INTRODUCTION--1.1 The Software Engineering Discipline Its Evolution and Impact--1.1.1 Evolution of an Art into an Engineering Discipline--1.1.2 A Solution to the Software Crisis--1.2 Software Development Projects--1.2.1 Programs versus Products--1.2.2 Types of Soft%vare Development Projects--1.2.3 Software Projects being Undertaken by Indian Companies--1.3 What is Wrong with the Exploratory Style of Software Development?--1.3.1 Perceived Problem Complexity: An Interpretation Based on Human Cognition -- --Mechanism--1.3.2 Principles Deployed by Software Engineering to Overcome Human Cognitive Limitations--1.3.3 Why Study Software Engineering?--1.4 Emergence of Software Engineering--1.4.1 Early Computer Programming--1.4.2 High-Level Language Programming--1.4.3 Control Flow-Based Design--1.4.4 Data Structure-Oriented Design--1.4.5 Data Flow-Oriented Design--1.4.6 Object-Oriented Design--1.4.7 What Next?--1.4.8 Other Developments--1.5 Notable Changes in Software Development Practices--1.6 Computer Systems Engineering--2. SOFTWARB LIFE CYCLE MODELS--2.1 Why Use a Life Cycle Model?--2.1.1 Why Dociiment a Life Cycle Model?--2.1.2 Phase Entry and Exit Criteria--2.2 Classical Waterfall Model--2.2.1 Phases of Classical Waterfall Model.--2.2.2 Shortcomings of the Classical WaterfEtll Model.--2.2.3 Is the Classical-Waterfall Model Useful at All?--2.3 Iterative Waterfall Model--2.3.1 Phase Containment of Errors ....--2.3.2 Shortcomings of the Iterative Waterfall Model..--2.4 Prototyping Model--2.5 Evolutionary Model-- 2.5.1 Life Cycle Activities ....--2.6 Spiral Model--2.6.1 Bisk Handling in Spiral Model--2.6.2 Phases of the Spiral Model--2.6.3 Pros and Cons of the Spiral Model--2.6.4 Spiral Model as a Meta Model--2.7 Comparison of Different Life Cycle Models .--2.7.1 Selecting an Appropriate Life Cycle Model for a Project.--8. SOFTWARE PROJECT MANAGEMENT--3.1 Responsibilities of a Software Project Manager--3.1.1 Job Responsibilities of a Software Project Manager.--3.1.2 Skills Necessary for Software Project Management...--3.2 Project Planning--3.2.1 The SPMP Document--3.3 Metrics for Project Size Estimation--3.3.1 Lines of Code (LOC)--3.3.2 Function Point Metric--3.4 Project Estimation Techniques--3.4.1 Empirical Estimation Technique--3.4.2 Heuristic Tedmiques--3.4.3 Analytical Estimation Tedmiques --3.5 Empiricd Estimation Techniques--3.5.1 Expert Judgement Technique--3.5.2 Delphi Cost Estimation--3.6 COCOMO—A Heuristic Estimation Technique--3.6.1 Basic COCOMO Model ,--3.6.2 Intermediate COCOMO .--3.6.3 Complete COCOMO--3.6.4 COCOMO 2 ..:--3.7 Halstead's Software Science—An Analytical Technique.--3.7.1 Length and Vocabulary--3.7.2 Program Volume--3.7.3 Potential Minimum Volume--3.7.4 Effort and Time--3.7.5 Length Estimation--3.8 Staffing Level Estimation r.--3.8.1 Norden's Work--3.8.2 Putnam's Work--3.8.3 Effect of Schedule Change on Cost--3.8.4 Jensen's Model--3.9 Scheduling--3.9.1 Work Breakdown Structure--3.9.2 Activity Networks and Critical Path Method-- 3.9.3 Gantt Charts--3.9.4 PERT Charts--3.9.5 Project Monitoring and Control--3.10 Organization and Team Structures--3.10.1 Organization Structure--3.10.2 Team Structure--3.11 Staffing--3.11.1 Who is a Good Software Engineer? .--3.12 Risk Management--3.12.1 Risk Identification--3.12.2 Risk Assessment--3.12.3 Risk Containment--3.13 Software Configuration Management--3.13.1 Necessity of Software Configuration Management--3.13.2 Configuration Management Activities--3.13.3 Source Code Control System (SCCS) and RCS--3.14 Miscellaneous Plans--4. REQUIREMENTS ANALYSIS AND SPECIFICATION --4.1 Requirements Gathering and Analysis--4.1.1 Requirements Gathering--4.1.2 Requirements Analysis--4.2 Software Requirements Specification (SRS)--4.2.1 Characteristics of a Good SRS Document--4!2.2 Examples of Bad SRS Documents--4.2.3 Important Categories of Customer Requirements--4.2.4 Functional Requirements--4.2.5 How to Identify the Functional Requirements?--4.2.6 How to Document the Functional Requirements?--4.2.7 Traceability--4.2.8 Organization of the SRS Document--4.2.9 Techniques for Representing Complex Logic..,--4.3 Formal System Specification--4.3.1 What is a Formal Technique?--4.3.2 Model versus Property-Oriented Methods--4.3.3 Operational Semantics--4.3.4 Merits and Limitations of Formal Methods ...--4.4 Axiomatic Specification--4.5 Algebraic Specification--4.5.1 Properties of Algebraic Specifications .--4.5.2 Auxiliary Functions--4.5.3 Structured Specification--4.5.4 Pros and Cons of Algebraic Specifications ....--4.6 Executable Specification and 4GL SOFTWARE DESIGN--5.1 Outcome of a Design Process--5.1.1 Classification of Design Activities,--5.1.2 Classification of Design Methodologies--5.1.3 Analysis versus Design--5.2 How can We Characterize a Good Software Design? .--5.3 Cohesion and Coupling--5.3.1 Coupling--5.3.2 Cohesion--5.3.3 Functional Independence--5.3.4 Classification of Cohesiveness--5.3.5 Classification of CoupUng--5.4 Layered Arrangement of Modules--5.5 Approaches to Software Design--5.5.1 Function-Oriented Design--5.5.2 Object-Oriented Design--5.6 Object-Oriented versus Function-Oriented Design Approaches--5.6.1 Automated Fire-Alarm System—Customer Requirements--5.6.2 Function-Oriented Approach---5.6.3 Object-Oriented Approach--6. FUNCTION-ORIENTED SOFTWARE DESIGN.--6.1 Overview of SA/SD Methodology--6.2 Structured Analysis--6.3 Data Flow Diagrams (DFDs)--6.3.1 Primitive Symbols Used for Constructing DFDs--6.3.2 Some Important Concepts Associated with Constructing DFD Models--6.3.3 Developing the DFD Model of a System.--6.3.4 Shortcomings of the DFD Model--6.4 Extending DFD Technique to Make it Applicable to Real-Time Systems--6.5 Structmred Design--6.5.1 Flow Chart versus Structure Chart--6.5.2 Transformation of a DFD Model into Structmre Uhart --6.5.3 Transform Analysis ..--6.5.4 Transaction Analysis--6.6 Detailed Design--6.7 Design Review--7. OBJECT MODELLING USING UML.--7.1 Overview of Basic Object-Orientation Concepts .--7.1.1 Basic Mechanisms--7.1.2 Key Concepts--7.1.3 Related Technical Terms--7.1.4 Advantages of OOD--7.2 Unified Modelling Language (UML)..--7.3 UML Diagrams ...--7.4 Use Case Model..--7.4.1 Representation of Use Cases--7.4.2 Why Develop the Use Case Diagram?..--7.4.3 How to Identify the Use Cases of a System?--7.4.4 Essential versus Real Use Case--7.4.5 Factoring of Connnonality among Use Cases--7.4.6 Use Case Packaging--7.5 Class Diagrams--7.6 Interaction Diagrams .--7.7 Activity Diagrams--7.8 State Chart Diagram .--7.9 Postscript--7.9.1 Package and Deployment Diagrams .--7.9.2 UML 2.0--8. OBJECT-ORIENTED SOFTWARE DEVELOPMENT--8.1 Patterns--8.1.1 Basic Pattern Concepts--8.1.2 Types of Patterns--8.1.3 More Pattern Concepts--8.2 Some Common Design Patterns--8.2.1 Expert--8.2.2 Creator--8.2.3 Facade Pattern--8.2.4 Model View Separation Patterns--8.2.5 Observer Pattern--8.2.6 Model-View-Controller (MVC) Pattern--8.2.7 Publish-Subscribe Pattern--8.2.8 Intermediary (or Proxy) Pattern--8.3 An Object-Oriented Analysis and Design Methodology--8.3.1 The Unified Process--.3.2 Overview of the OOAD Methodology ..--8.3.3 Use Case Model Development--8.3.4 Domain Modelling--8.3.5 Identification of Entity Objects--8.3.6 Booch's Object Identification Method..--8.4 Interaction Modelling.--8.4.1 CRC Cards.--8.5 Applications of the Analysis and Design Process .--8.6 OOD Goodness Criteria--9. USER INTERFACE DESIGN--9.1 Characteristics of a Good User Interface--9.2 Basic Concepts--9.2.1 User Guidance and Online Help--9.2.2 Mode-based versus Modeless Interface--9.2.3 Graphical User Interface (GUI) vs. Text-based User Interface--9.3 Types of User Interfaces--9.3.1 Command Language-based Interface--9.3.2 Menu-based Interface--9.3.3 Direct Manipulation Interfaces-- 9.4 Fundamentals of Component-based GUI Development..--9.4.1 Window System--9.4.2 Types of Widgets--9.4.3 An Overview of X-Window/MOTIF--9.4.4 X Architecture--9.4.5 Visual Programming--9.4.6 Size Measurement of a Component-based GUI--9.5 A User Interface Design Methodology--9.5.1 Imphcations of Human Cognition Capabilities on User Interface Design--9.5.2 A GUI Design Methodology--9.5.3 Task and Object Modelling--9.5.4 Selecting a Metaphor--9.5.5 Interaction Design and Rough Layout--9.5.6 User Interface Inspection--10. CODING AND TESTING--10.1 Coding--10.1.1 Coding Standards and Guidelines--10.2 Code Review --10.2.1 Code Walkthrough--10.2.2 Code Inspection--10.2.3 Clean Room Testing--10.3 Software Docmnentation--10.3.1 Internal Docmnentation--10.3.2 External Documentation--10.3.3 Gmming's Fog Index--10.4 Testing--10.4.1 Basic Concepts and Terminologies--10.4.2 Why Design Test Oases?--10.5 Testing in the Large versus Testing in the Small.--10.6 Unit Testing--10.6.1 Driver and Stub Modules--10.7 Black-Box Testing--10.7.1 Equivalence Class Partitioning.--10.7.2 Boimdary Value Analysis--10.7.3 Summary of the Black-Box Test Suite Design Approach--10.8 White-Box Testing--10.8.1 Basic Concepts--10.8.2 Statement Coverage--10.8.3 Branch Coverage--10.8.4 Condition Coverage--10.8.5 Path Coverage--10.8.6 McCabe's Cyclomatic Complexity Metric--10.8.7 Data Flow-based Testing--10.8.8 Mutation Testing--10.9 Debugging--10.9.1 Debugging Approaches--10.9.2 Debugging Guidelines--10.10 Program Analysis Tools--10.10.1 Static Analysis Tools--10.10.2 Dynamic Analysis Tools .--10.11 Integration Testing--10.11.1 Phased versus Incremental Integration Testing--10.12 Testing Object-Oriented Programs--10.12.1 What is a Suitable Unit for Testing Object-Oriented Programs?--10.12.2 Do Various Object-Orientation Concepts Make Testing Easy?--10.12.3 Why are Traditional Techniques Considered Unsatisfactory for Testing Object-Oriented Programs?--10.12.4 Grey-Box Testing of Object-Oriented Programs ..--10.12.5 Integration Testing of Object-Oriented Programs--10.13 System Testing--10.13.1 Performance Testing .--10.13.2 Error Seeding--10.14 Some General Issues Associated with Testing--10.14.1 Test Documentation.--10.14.2 Regression Testing ...--11. SOFTWARE RELIABILITY AND QUALITY MANAGEMENT--11.1 Software Reliability--11.1.1 Hardware versus Software Reliability--11.1.2 Reliability Metrics--11.1.3 Reliability Growth Modelling..--11.2 Statistical Testing--11.3 Software Quality--11.4 Software Quality Management System.--11.4.1 Evolution of Quality Systems..--11.4.2 Product Metrics versus --Process Metrics--11.5 ISO 9000--11.5.1 What is ISO 9000 Certification?--11.5.2 ISO 9000 for Software Industry--11.5.3 Why Get ISO 9000 Certification?--11.5.4 How to Get ISO 9000 Certification? .--11.5.5 Siuninary of ISO 9001 Requirements--11.5.6 Salient Features of ISO 9001 Reqmrements--11.5.7 ISO 9000-2000--11.5.8 Shortcomings of ISO 9000 Certification--11.6 SEI Capability Maturity Model--11.6.1 Comparison between ISO 9000 Certification and SEI/CMM--11.6.2 Is SEI CMM Applicable to Small Organizations? --11.6.3 CMMI--11.7 Personal Software Process (PSP)--11.8 Six Sigma--12. COMPUTER AIDED SOFTWARE ENGINEERING .--12.1 Case and its Scope--12.2 Case Environment--12.2.1 Benefits of CASE--12.3 CASE Support in Software Life Cycle...--12.3.1 Prototyping Support--12.3.2 Structured Analysis and Design--12.3.3 Code Generation--12.3.4 Test Case Generator--12.4 Other Characteristics of CASE Tools-- 12.4.1 Hardware and Environmental Requirements--12.4.2 Docmnentation Support--12.4.3 Project Management--12.4.4 External Interface--12.4.5 Reverse Engineering Support--12.4.6 Data Dictionary Interface--12.4.7 Tutorial and Help--12.5 Towards Second Generation CASE Tool --12.6 Architecture of a CASE Environment--13. SOFTWARE MAINTENANCE--13.1 Characteristics of Software Maintenance--13.1.1 Types of Software Maintenance--13.1.2 Characteristics of Software Evolution--13.1.3 Special Problems Associated with Software Maintenance--13.2 Software Reverse Engineering--13.3 Software Maintenance Process Models--13.4 Estimation of Maintenance Cost--14. SOFTWARE REUSE--14.1 What can be Reused?--14.2 Why Almost no Reuse so Far?--14.3 Basic Issues in any Reuse Program -- 14.4 A Reuse Approach--14.4.1 Domain Analysis--14.4.2 Component Classification--14.4.3 Searching--14.4.4 Repository Maintenance--14.4.5 Reuse without Modifications--14.5 Reuse at Organization Level--14.5.1 Current State of Reuse--15. EMERGING TRENDS--15.1 Client-Server Software--15.1.1 Advantages of Client-Server Software --15.1.2 Disadvantages of Client-Server Software--15.1.3 Client-Server Architectures ..--15.1.4 COKBA--15.1.5 --DCOM--15.2 Service-Oriented Architecture (SOA)--15.3 Software £is a Service (SaaS)
Tags from this library: No tags from this library for this title. Log in to add tags.
Star ratings
    Average rating: 0.0 (0 votes)
Holdings
Item type Current library Call number Status Date due Barcode Item holds
General Books General Books Central Library, Sikkim University
General Book Section
005.1 MAL/F (Browse shelf(Opens below)) Available P24450
Total holds: 0

1. INTRODUCTION--1.1 The Software Engineering Discipline Its Evolution and Impact--1.1.1 Evolution of an Art into an Engineering Discipline--1.1.2 A Solution to the Software Crisis--1.2 Software Development Projects--1.2.1 Programs versus Products--1.2.2 Types of Soft%vare Development Projects--1.2.3 Software Projects being Undertaken by Indian Companies--1.3 What is Wrong with the Exploratory Style of Software Development?--1.3.1 Perceived Problem Complexity: An Interpretation Based on Human Cognition -- --Mechanism--1.3.2 Principles Deployed by Software Engineering to Overcome Human Cognitive Limitations--1.3.3 Why Study Software Engineering?--1.4 Emergence of Software Engineering--1.4.1 Early Computer Programming--1.4.2 High-Level Language Programming--1.4.3 Control Flow-Based Design--1.4.4 Data Structure-Oriented Design--1.4.5 Data Flow-Oriented Design--1.4.6 Object-Oriented Design--1.4.7 What Next?--1.4.8 Other Developments--1.5 Notable Changes in Software Development Practices--1.6 Computer Systems Engineering--2. SOFTWARB LIFE CYCLE MODELS--2.1 Why Use a Life Cycle Model?--2.1.1 Why Dociiment a Life Cycle Model?--2.1.2 Phase Entry and Exit Criteria--2.2 Classical Waterfall Model--2.2.1 Phases of Classical Waterfall Model.--2.2.2 Shortcomings of the Classical WaterfEtll Model.--2.2.3 Is the Classical-Waterfall Model Useful at All?--2.3 Iterative Waterfall Model--2.3.1 Phase Containment of Errors ....--2.3.2 Shortcomings of the Iterative Waterfall Model..--2.4 Prototyping Model--2.5 Evolutionary Model-- 2.5.1 Life Cycle Activities ....--2.6 Spiral Model--2.6.1 Bisk Handling in Spiral Model--2.6.2 Phases of the Spiral Model--2.6.3 Pros and Cons of the Spiral Model--2.6.4 Spiral Model as a Meta Model--2.7 Comparison of Different Life Cycle Models .--2.7.1 Selecting an Appropriate Life Cycle Model for a Project.--8. SOFTWARE PROJECT MANAGEMENT--3.1 Responsibilities of a Software Project Manager--3.1.1 Job Responsibilities of a Software Project Manager.--3.1.2 Skills Necessary for Software Project Management...--3.2 Project Planning--3.2.1 The SPMP Document--3.3 Metrics for Project Size Estimation--3.3.1 Lines of Code (LOC)--3.3.2 Function Point Metric--3.4 Project Estimation Techniques--3.4.1 Empirical Estimation Technique--3.4.2 Heuristic Tedmiques--3.4.3 Analytical Estimation Tedmiques --3.5 Empiricd Estimation Techniques--3.5.1 Expert Judgement Technique--3.5.2 Delphi Cost Estimation--3.6 COCOMO—A Heuristic Estimation Technique--3.6.1 Basic COCOMO Model ,--3.6.2 Intermediate COCOMO .--3.6.3 Complete COCOMO--3.6.4 COCOMO 2 ..:--3.7 Halstead's Software Science—An Analytical Technique.--3.7.1 Length and Vocabulary--3.7.2 Program Volume--3.7.3 Potential Minimum Volume--3.7.4 Effort and Time--3.7.5 Length Estimation--3.8 Staffing Level Estimation r.--3.8.1 Norden's Work--3.8.2 Putnam's Work--3.8.3 Effect of Schedule Change on Cost--3.8.4 Jensen's Model--3.9 Scheduling--3.9.1 Work Breakdown Structure--3.9.2 Activity Networks and Critical Path Method-- 3.9.3 Gantt Charts--3.9.4 PERT Charts--3.9.5 Project Monitoring and Control--3.10 Organization and Team Structures--3.10.1 Organization Structure--3.10.2 Team Structure--3.11 Staffing--3.11.1 Who is a Good Software Engineer? .--3.12 Risk Management--3.12.1 Risk Identification--3.12.2 Risk Assessment--3.12.3 Risk Containment--3.13 Software Configuration Management--3.13.1 Necessity of Software Configuration Management--3.13.2 Configuration Management Activities--3.13.3 Source Code Control System (SCCS) and RCS--3.14 Miscellaneous Plans--4. REQUIREMENTS ANALYSIS AND SPECIFICATION --4.1 Requirements Gathering and Analysis--4.1.1 Requirements Gathering--4.1.2 Requirements Analysis--4.2 Software Requirements Specification (SRS)--4.2.1 Characteristics of a Good SRS Document--4!2.2 Examples of Bad SRS Documents--4.2.3 Important Categories of Customer Requirements--4.2.4 Functional Requirements--4.2.5 How to Identify the Functional Requirements?--4.2.6 How to Document the Functional Requirements?--4.2.7 Traceability--4.2.8 Organization of the SRS Document--4.2.9 Techniques for Representing Complex Logic..,--4.3 Formal System Specification--4.3.1 What is a Formal Technique?--4.3.2 Model versus Property-Oriented Methods--4.3.3 Operational Semantics--4.3.4 Merits and Limitations of Formal Methods ...--4.4 Axiomatic Specification--4.5 Algebraic Specification--4.5.1 Properties of Algebraic Specifications .--4.5.2 Auxiliary Functions--4.5.3 Structured Specification--4.5.4 Pros and Cons of Algebraic Specifications ....--4.6 Executable Specification and 4GL SOFTWARE DESIGN--5.1 Outcome of a Design Process--5.1.1 Classification of Design Activities,--5.1.2 Classification of Design Methodologies--5.1.3 Analysis versus Design--5.2 How can We Characterize a Good Software Design? .--5.3 Cohesion and Coupling--5.3.1 Coupling--5.3.2 Cohesion--5.3.3 Functional Independence--5.3.4 Classification of Cohesiveness--5.3.5 Classification of CoupUng--5.4 Layered Arrangement of Modules--5.5 Approaches to Software Design--5.5.1 Function-Oriented Design--5.5.2 Object-Oriented Design--5.6 Object-Oriented versus Function-Oriented Design Approaches--5.6.1 Automated Fire-Alarm System—Customer Requirements--5.6.2 Function-Oriented Approach---5.6.3 Object-Oriented Approach--6. FUNCTION-ORIENTED SOFTWARE DESIGN.--6.1 Overview of SA/SD Methodology--6.2 Structured Analysis--6.3 Data Flow Diagrams (DFDs)--6.3.1 Primitive Symbols Used for Constructing DFDs--6.3.2 Some Important Concepts Associated with Constructing DFD Models--6.3.3 Developing the DFD Model of a System.--6.3.4 Shortcomings of the DFD Model--6.4 Extending DFD Technique to Make it Applicable to Real-Time Systems--6.5 Structmred Design--6.5.1 Flow Chart versus Structure Chart--6.5.2 Transformation of a DFD Model into Structmre Uhart --6.5.3 Transform Analysis ..--6.5.4 Transaction Analysis--6.6 Detailed Design--6.7 Design Review--7. OBJECT MODELLING USING UML.--7.1 Overview of Basic Object-Orientation Concepts .--7.1.1 Basic Mechanisms--7.1.2 Key Concepts--7.1.3 Related Technical Terms--7.1.4 Advantages of OOD--7.2 Unified Modelling Language (UML)..--7.3 UML Diagrams ...--7.4 Use Case Model..--7.4.1 Representation of Use Cases--7.4.2 Why Develop the Use Case Diagram?..--7.4.3 How to Identify the Use Cases of a System?--7.4.4 Essential versus Real Use Case--7.4.5 Factoring of Connnonality among Use Cases--7.4.6 Use Case Packaging--7.5 Class Diagrams--7.6 Interaction Diagrams .--7.7 Activity Diagrams--7.8 State Chart Diagram .--7.9 Postscript--7.9.1 Package and Deployment Diagrams .--7.9.2 UML 2.0--8. OBJECT-ORIENTED SOFTWARE DEVELOPMENT--8.1 Patterns--8.1.1 Basic Pattern Concepts--8.1.2 Types of Patterns--8.1.3 More Pattern Concepts--8.2 Some Common Design Patterns--8.2.1 Expert--8.2.2 Creator--8.2.3 Facade Pattern--8.2.4 Model View Separation Patterns--8.2.5 Observer Pattern--8.2.6 Model-View-Controller (MVC) Pattern--8.2.7 Publish-Subscribe Pattern--8.2.8 Intermediary (or Proxy) Pattern--8.3 An Object-Oriented Analysis and Design Methodology--8.3.1 The Unified Process--.3.2 Overview of the OOAD Methodology ..--8.3.3 Use Case Model Development--8.3.4 Domain Modelling--8.3.5 Identification of Entity Objects--8.3.6 Booch's Object Identification Method..--8.4 Interaction Modelling.--8.4.1 CRC Cards.--8.5 Applications of the Analysis and Design Process .--8.6 OOD Goodness Criteria--9. USER INTERFACE DESIGN--9.1 Characteristics of a Good User Interface--9.2 Basic Concepts--9.2.1 User Guidance and Online Help--9.2.2 Mode-based versus Modeless Interface--9.2.3 Graphical User Interface (GUI) vs. Text-based User Interface--9.3 Types of User Interfaces--9.3.1 Command Language-based Interface--9.3.2 Menu-based Interface--9.3.3 Direct Manipulation Interfaces-- 9.4 Fundamentals of Component-based GUI Development..--9.4.1 Window System--9.4.2 Types of Widgets--9.4.3 An Overview of X-Window/MOTIF--9.4.4 X Architecture--9.4.5 Visual Programming--9.4.6 Size Measurement of a Component-based GUI--9.5 A User Interface Design Methodology--9.5.1 Imphcations of Human Cognition Capabilities on User Interface Design--9.5.2 A GUI Design Methodology--9.5.3 Task and Object Modelling--9.5.4 Selecting a Metaphor--9.5.5 Interaction Design and Rough Layout--9.5.6 User Interface Inspection--10. CODING AND TESTING--10.1 Coding--10.1.1 Coding Standards and Guidelines--10.2 Code Review --10.2.1 Code Walkthrough--10.2.2 Code Inspection--10.2.3 Clean Room Testing--10.3 Software Docmnentation--10.3.1 Internal Docmnentation--10.3.2 External Documentation--10.3.3 Gmming's Fog Index--10.4 Testing--10.4.1 Basic Concepts and Terminologies--10.4.2 Why Design Test Oases?--10.5 Testing in the Large versus Testing in the Small.--10.6 Unit Testing--10.6.1 Driver and Stub Modules--10.7 Black-Box Testing--10.7.1 Equivalence Class Partitioning.--10.7.2 Boimdary Value Analysis--10.7.3 Summary of the Black-Box Test Suite Design Approach--10.8 White-Box Testing--10.8.1 Basic Concepts--10.8.2 Statement Coverage--10.8.3 Branch Coverage--10.8.4 Condition Coverage--10.8.5 Path Coverage--10.8.6 McCabe's Cyclomatic Complexity Metric--10.8.7 Data Flow-based Testing--10.8.8 Mutation Testing--10.9 Debugging--10.9.1 Debugging Approaches--10.9.2 Debugging Guidelines--10.10 Program Analysis Tools--10.10.1 Static Analysis Tools--10.10.2 Dynamic Analysis Tools .--10.11 Integration Testing--10.11.1 Phased versus Incremental Integration Testing--10.12 Testing Object-Oriented Programs--10.12.1 What is a Suitable Unit for Testing Object-Oriented Programs?--10.12.2 Do Various Object-Orientation Concepts Make Testing Easy?--10.12.3 Why are Traditional Techniques Considered Unsatisfactory for Testing Object-Oriented Programs?--10.12.4 Grey-Box Testing of Object-Oriented Programs ..--10.12.5 Integration Testing of Object-Oriented Programs--10.13 System Testing--10.13.1 Performance Testing .--10.13.2 Error Seeding--10.14 Some General Issues Associated with Testing--10.14.1 Test Documentation.--10.14.2 Regression Testing ...--11. SOFTWARE RELIABILITY AND QUALITY MANAGEMENT--11.1 Software Reliability--11.1.1 Hardware versus Software Reliability--11.1.2 Reliability Metrics--11.1.3 Reliability Growth Modelling..--11.2 Statistical Testing--11.3 Software Quality--11.4 Software Quality Management System.--11.4.1 Evolution of Quality Systems..--11.4.2 Product Metrics versus --Process Metrics--11.5 ISO 9000--11.5.1 What is ISO 9000 Certification?--11.5.2 ISO 9000 for Software Industry--11.5.3 Why Get ISO 9000 Certification?--11.5.4 How to Get ISO 9000 Certification? .--11.5.5 Siuninary of ISO 9001 Requirements--11.5.6 Salient Features of ISO 9001 Reqmrements--11.5.7 ISO 9000-2000--11.5.8 Shortcomings of ISO 9000 Certification--11.6 SEI Capability Maturity Model--11.6.1 Comparison between ISO 9000 Certification and SEI/CMM--11.6.2 Is SEI CMM Applicable to Small Organizations? --11.6.3 CMMI--11.7 Personal Software Process (PSP)--11.8 Six Sigma--12. COMPUTER AIDED SOFTWARE ENGINEERING .--12.1 Case and its Scope--12.2 Case Environment--12.2.1 Benefits of CASE--12.3 CASE Support in Software Life Cycle...--12.3.1 Prototyping Support--12.3.2 Structured Analysis and Design--12.3.3 Code Generation--12.3.4 Test Case Generator--12.4 Other Characteristics of CASE Tools-- 12.4.1 Hardware and Environmental Requirements--12.4.2 Docmnentation Support--12.4.3 Project Management--12.4.4 External Interface--12.4.5 Reverse Engineering Support--12.4.6 Data Dictionary Interface--12.4.7 Tutorial and Help--12.5 Towards Second Generation CASE Tool --12.6 Architecture of a CASE Environment--13. SOFTWARE MAINTENANCE--13.1 Characteristics of Software Maintenance--13.1.1 Types of Software Maintenance--13.1.2 Characteristics of Software Evolution--13.1.3 Special Problems Associated with Software Maintenance--13.2 Software Reverse Engineering--13.3 Software Maintenance Process Models--13.4 Estimation of Maintenance Cost--14. SOFTWARE REUSE--14.1 What can be Reused?--14.2 Why Almost no Reuse so Far?--14.3 Basic Issues in any Reuse Program -- 14.4 A Reuse Approach--14.4.1 Domain Analysis--14.4.2 Component Classification--14.4.3 Searching--14.4.4 Repository Maintenance--14.4.5 Reuse without Modifications--14.5 Reuse at Organization Level--14.5.1 Current State of Reuse--15. EMERGING TRENDS--15.1 Client-Server Software--15.1.1 Advantages of Client-Server Software --15.1.2 Disadvantages of Client-Server Software--15.1.3 Client-Server Architectures ..--15.1.4 COKBA--15.1.5 --DCOM--15.2 Service-Oriented Architecture (SOA)--15.3 Software £is a Service (SaaS)

There are no comments on this title.

to post a comment.
SIKKIM UNIVERSITY
University Portal | Contact Librarian | Library Portal

Powered by Koha