Syllabus UNIT I- The Software Process Introduction to Software Engineering - Ethics in Software Engineering - Software Process– Software Engineering Practice – Software Process Models: Waterfall Models – Incremental – Evolutionary and Unified Process model – Comparison Study of Software Process Models – Agile Process and Models UNIT II- Requirements Analysis And Specification Requirement Gathering and Analysis, Software Requirement Specification: Users of SRS, Characteristics of Good & Bad SRS, Important Categories of Customer Requirements, Documenting Functional Requirements, Traceability, Organization of SRS, Techniques for Representing Complex Logics, Feasibility Study, Case Study: Software Requirements Specification (SRS) for Application Project . UNIT III- Software Design Overview of the Design Process, Characteristics of Good Software Design, Cohesion and Coupling, Layered Arrangements of Modules, Approaches to Software Design, Function Oriented Software Design: Data Flow Diagram, Transformation of DFD model into structure chart, Object Modelling Using UML: UML Diagrams, Use Case Model, Class diagrams, Interaction Diagrams, Activities Diagrams, State Chart Diagram UNIT IV – Software Coding and Testing Coding, Code Review, Software Documentation, Testing, Unit Testing, Black-box testing, White-box testing, Debugging, Program Analysis Tools, Integration Testing, Testing Object-Oriented Programs, System Testing UNIT V – Project Management Software project management complexities- Responsibilities of a Software Project Manager, Project Planning, Metrics for Project Size Estimation, Project Estimation Techniques, Empirical Estimation Techniques, COCOMO Estimation Technique, Staffing Estimation, Scheduling, Organization and Team Structures, Staffing, Risk Management, Configuration Management 3