Page 4 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 4

SYLLABUS
                                           Principles of Software Engineering


            Objectives:    •  To enable the student to understand software development process.
                        •  To enable the student to learn various software engineering approaches.
                        •  To enable the student to implement various software testing techniques.
                        •  To enable the student to prepare software requirement specification documents.
                        •  To enable the student to learn various verification and validation techniques.
                        •  To enable the Student to practice software engineering concepts using UML.
            COURSE CONTENTS:

              S. No.                                            Topics
               1.    Introduction: Concept of Software Engineering. Software Engineering Challenges & Approach.
               2.    Software Processes & models: Processes and Models, Characteristics of Software Model, Waterfall, Prototype,
                     Iterative, Time Boxing. Comparison.
               3.    Software Requirements: Problem Analysis, DataFlow, Object Oriented Modelling, Prototyping.  Software
                     Requirement Specification Document: SRS, Characteristics, Components, Specification Language, Structure of
                     Document.
               4.    Introduction to Validation, Metrics: Function Point & Quality Metrics. Software Architecture: Architecture
                     Views, Architecture Styles:Client/Server, Shared Data.
               5.    Software Project Planning: Process Planning, Effort Estimation, COCOMO Model, Project Scheduling and
                     Staffing. Intro to Software Configuration Management: Quality Plan, Risk Management, Project Monitoring.
               6.    Functional Design: Principles, Abstraction, Modularity, Top Down, Bottom Up Approach. Coupling, Cohesion.
                     Structure Charts, Data Flow Diagrams, Design Heuristics.
               7.    Intro to Verification: Meaning, Metrics: Network, Stability, Information Flow.
               8.    Detailed Design: Process Design Language. Logic/Algorithm Design.  Verification of Logic/Algorithm Design.
                     Metrics: Cyclomatic Complexity, Data Bindings, Cohesion Metric.
               9.    Coding: Common Errors, Structured Programming, Programming Practices, Coding standards. Coding Process:
                     Incremental, Test Driven, Pair Programming. Refactoring: Meaning and Example.  Verification, Metrics: Size &
                     Complexity
               10.   Testing: Fundamentals, Error, Fault, Failure, Test Oracles, Test Cases & Criteria. Black Box: Equivalence Class
                     Partitioning, Boundary Value Analysis. White Box: Control Flow Based, Data Flow Based Testing Process: Levels
                     of Testing, Test Plan, Test Case Specifications, Execution and Analysis. Logging and Tracking.Metrics: Failure
                     Data and Parameter Estimation.
   1   2   3   4   5   6   7   8   9