Software Engineering Syllabus

COURSE OBJECTIVES

The system analysis and design is the backbone of Application software development. After studying the subject the students will be able to develop and design the system according to given requirements.

It involves various steps in analysis and design of the system. It includes the knowledge of preparing project systematically. It is important to know about various aspects of the system analysis and design so that the students will be able to understand the responsibilities while designing and implementing the project.

COURSE OUTCOMES

After successful completion of this course, the student will be able to:

  • CO1: Understand the basic concepts of software development.
  • CO2: Classify life cycle models and their comparison.
  • CO3: Will be able to write the SRS for the given problem and project planning estimation techniques.
  • CO4: Explain various software design strategies.
  • CO5: Explain about different testing methods, need for testing.

COURSE CONTENT

Unit 1: Introduction to Software Engineering

System Concepts: Types of systems : (open, closed, static and dynamic systems), Basics of Software Engineering : Need for Software Engineering – Definition, Programs v/s Software Products, Software Characteristics.

Unit 2: Software Life Cycle Models

Requirement of Life Cycle Model, Classic Waterfall Model, Prototyping Model, Evolutionary Model, Spiral Model, Introduction to agile methodology.

Practical Exercise:

  1. Perform comparative analysis of various Models.

Unit 3: Software Planning, Requirement Analysis and Specification (10 Periods)

Requirement gathering and Analysis, Software Requirement Specifications (SRS), Characteristics of good SRS., Metrics for Project Size Estimation- LOC (Lines of Code), Function Point Metric, Project estimation Techniques- Using COCOMO Model, Responsibilities of Software Project Manager.

Practical Exercise:

  1. Develop a SRS on a given topic/project/problem.

Unit 4: Software Design and Implementation (8 Periods)

Characteristics and features of good Software Design Cohesion and Coupling, Software design Approaches- Function Oriented Design (Data flow diagrams, Data dictionary, Decision Trees and tables), Object Oriented Design, Structured Coding Techniques, Coding Styles, and documentation

Practical Exercise:

  1. Develop DFD Model (level 0 and level 1 DFD) of the problem.

Unit 5: Software Testing and Maintenance (8 Periods)

Concept of Testing, Unit Testing, Black Box Testing, White Box Testing, alpha, beta testing, Integration testing, System testing, Testing type cycle (V-Model), Verification v/s Validations, Configuration management, Overview of test cases.

Leave a Comment