Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

CEC

Software Enginering

CEC via Swayam

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Software engineering is a detailed study of engineering to the design, development and maintenance of software. Software engineering was introduced to address the issues of low-quality software projects. The outcome of software engineering is an efficient and reliable software product. The candidates would learn about different process models, analysis and documentation of software requirement system. They will learn on different software analysis and design models and techniques. They will also learn on software project management fundamentals and various testing, debugging and validation techniques of software development.

Syllabus


Course Layout

Week

Topics & Subtopics

Unit Mapping

01 – Foundations

• Introduction to Software Engineering

• Overview of Software Processes

• Software Development Life Cycle (SDLC)

• Traditional Models – Waterfall, Iterative, Spiral

• Alternative Techniques – Rapid Application Development (RAD)

• Agile Development Models – Scrum Framework

• Extreme Programming (XP)

Unit I

02 – Process Models & Requirements

• Comparative Analysis of SDLC Models

• Product Discovery and Backlog Refinement

• Requirements Engineering Process

• Software Requirements Specification (SRS)

• Formal System Specification / Executable Specification

• Requirements Validation and Traceability

Units I & III

03 – Project Planning

• Responsibilities of a Software Project Manager

• Software Project Planning Techniques

• Project Size Metrics and Estimation Methods

• Function Point Analysis (FPA) – Basic Concepts

• Introduction to COCOMO Estimation Models

Unit II

04 – Scheduling & Risk Management

• COCOMO Models – Basic, Intermediate, Complete

• Scheduling Concepts – CPM & PERT

• Network Analysis Diagrams

• Risk Management – Identification, Assessment, Mitigation

Unit II

05 – Modelling & Design Concepts

• Translating Requirement Models into Design Models

• Elements of Software Modelling and Design

• Design Process and Design Concepts

• Principles of Modular Design

• Cohesion and Coupling

Unit IV

06 – Design Notations & Tools

• Design Notations: DFD, Flowcharts, Decision Tables

• Creating and Interpreting Data Flow Diagrams

• Analysis Modelling – Elements of Analysis Model

• Architectural Mapping using Data Flow

Unit IV

07 – DevOps Integration

• DevOps – Core Elements and Lifecycle

• Adoption of DevOps in Software Projects

• Overview of DevOps Tools and Practices

Unit IV

08 – Coding Standards & Code Review

• Coding Standards and Guidelines

• Code Review Techniques

Unit V

09 – Software Testing Fundamentals

• Testing Basics and Objectives

• Black-Box and White-Box Testing

• Integration and System Testing

Unit V

10 – Maintenance Concepts

• Characteristics of Software Maintenance

• Software Maintenance Process Models

• Software Reverse Engineering

• Estimation of Maintenance Cost

Unit V

11 – Reviews & Inspections

• Reviews, Walkthroughs, and Inspections

• Managing Changing Requirements

• Requirements Traceability and Validation Review

Unit III

12 – Course Integration & Case Study

• Case Studies on Process Model Choices
• Case Studies on Design Approaches

• Case Studies on Software Review Techniques

• Case Studies on Conducting Feasibility Studies

All Units (Integration)


Taught by

Prof. R.Baskaran, Professor of Computer Science and Engineering

Reviews

Start your review of Software Enginering

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.