Software Engineering
Are you learning about software engineering? There are lot of chapters and topic to learn. Every chapter has important topics which are covering full syllabus. Read more to learn.
Introduction to Software Engineering
Software Processes
Software Requirements Analysis and Specification
Software Architecture
Planning a Software Project
FunctionOriented Design
Object Oriented Design
Detailed Design
Coding
Testing
- The Problem Domain
- Software is Expensive
- Late and Unreliable
- Maintenance and Rework
- The Software Engineering Challenges
- Scale
- Quality and Productivity
- The Software Engineering Approach
- Phased Development Process
- Managing the Process
- Software Development Life Cycle
- Project Management Methodology
- Project Categorization
- What is management?
- Setting objectives
- The Business Case
- Design Notation and Specification
- Software Process
- Component Software Processes
- Predictability
- Support Testability and Maintainability
- Support Change
- Early Defect Removal
- Process Improvement and Feedback
- Waterfall Model
- Iterative Development
- The Spiral model
- Comparison of Models
- Project Management Process
- The Inspection Process
- Software Configuration Management Process
- Requirements Change Management Process
- Process Management Process
- Software Requirements Analysis
- Software Requirements Specification
- Requirement Process
- Problem Analysis
- Informal Approach
- Data Flow Modeling
- Object-Oriented Modeling
- Prototyping
- Requirements Specification
- Characteristics of an Software Requirement Specification
- Components of an Software Requirements Specification
- Specification Language
- Structure of a Requirements Document
- Functional Specification with Use Cases
- Examples of use cases
- Validation
- Software Architecture
- Architecture Views
- Component and Connector View
- Pipe and Filter
- Shared-Data Style
- Client-Server Style
- Architecture and Design
- Preserving the Integrity of an Architecture
- Deployment View and Performance Analysis
- Documenting Architecture Design
- Evaluating Architectures
- The Architectural Tradeoff Analysis Method
- Function-Oriented Design
- Design Principles
- Problem Partitioning and Hierarchy
- Abstraction
- Top-Down and Bottom-Up Strategies
- Module-Level Concepts
- Specification
- Structured Design Methodology
- Restate the Problem as a Data Flow Diagram
- Identify the Most Abstract Input and Output Data Elements
- First-Level Factoring
- Factoring the Input, Output, and Transform Branches
- Design Heuristics
- Transaction Analysis
- Verification
- Metrics
- Network Metrics
- Stability Metrics
- Information Flow Metrics
- Introduction to Object-Oriented Design
- OO Analysis and OO Design
- OO Concepts
- Structure Charts
- Unified Modeling Language
- Class Diagram
- Sequence and Collaboration Diagrams
- Inheritance and Polymorphism
- A Design Methodology
- Dynamic Modeling
- Functional Modeling
- Internal Classes and Operations
- Optimize and Package
- The Word-Counting Problem
- Rate of Returns Problem
- Metrics
- Testing
- Test Oracles
- Test Cases and Test Criteria
- Psychology of Testing
- Black-Box Testing
- Boundary Value Analysis
- Cause-Effect Graphing
- State-Based Testing
- Mutation Testing
- White-Box Testing
- Testing Process
- Levels of Testing
- Test Case Specifications
- Test Case Execution and Analysis
- Defect Logging and Tracking
- Defect Analysis and Prevention
- Perform Causal Analysis
- Develop and Implement Solutions
- Effective Software Testing
- Unit Testing
- Integration Testing
- Regression Testing
- System Testing
- User Acceptance Testing
- Testing for Agile Software Development
- Auditing Software Testing Process
- Challenges in Testing Web Based Applications
- Software Testing Myths
- Bug Reporting