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

NPTEL

Software Engineering

NPTEL and Indian Institute of Technology, Kharagpur via YouTube

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it

COURSE OUTLINE: Large-scale software development poses special challenges. This course targets to expose the students to the challenges of large scale software development and would expose the students as to how to overcome those. Starting with basic life cycle model concepts, it would discuss requirements, specification, design, and testing issues. The concepts will be illustrated with appropriate examples.

Syllabus

Lecture 01: Introduction- I.
Lecture 02: Introduction- II.
Lecture 03: Introduction- III.
Lecture 04: Introduction- IV.
Lecture 05: Introduction- V.
Lecture 06: Life Cycle Model.
Lecture 07: Life Cycle Model (Contd.).
Lecture 08: Waterfall Model.
Lecture 09: Waterfall Derivatives.
Lecture 10: Incremental Model.
Lecture 11: Evolutionary Model.
Lecture 12: Agile Model.
Lecture 13: Extreme Programming and Scrum.
Lecture 14: Scrum.
Lecture 15: Introduction to requirement specification.
Lecture 16: Requirement gathering and analysis.
Lecture 17: Functional requirements.
Lecture 18: Representation of complex programming logic.
Lecture 19: Design Fundamentals.
Lecture 20: Modular Design.
Lecture 21: Classification of Cohesion.
Lecture 22: Classification of Coupling.
Lecture 23: Introduction to structured analysis and structured design.
Lecture 24: Basics of Data Flow Diagrams (DFD).
Lecture 25: Developing DFD Model.
Lecture 26: Examples of DFD Model development.
Lecture 27: DFD Model - More Examples.
Lecture 28: Essentials of Structure Chart.
Lecture 29: Structure Chart Development.
Lecture 30: Structured Design Examples.
Lecture 31: Use Case Modelling.
Lecture 32: Factoring Use Cases.
Lecture 33: Overview of Class diagram.
Lecture 34: Inheritance relationship.
Lecture 35: Association relationship.
Lecture 36: Aggregation/ Composition and dependency relations.
Lecture 37: Interation Modelling.
Lecture 38: Development of Sequence diagrams.
Lecture 39: State-Machine diagram.
Lecture 40: An Object-Oriented design process.
Lecture 41: Domain Analysis.
Lecture 42: Examples of object-oriented design.
Lecture 43: Basic concepts in Testing-I.
Lecture 44: Basic concepts in Testing-II.
Lecture 45: Basic concepts in Testing-III.
Lecture 46: Unit testing strategies-I.
Lecture 47: Unit testing strategies-II.
Lecture 48: Equivalance Class Testing-I.
Lecture 49: Equivalance Class Testing-II.
Lecture 50: Special Value Testing.
Lecture 51: Combinatorial Testing.
Lecture 52: Decision Table Testing.
Lecture 53: Cause effect graphing.
Lecture 54: Pairwise Testing.
Lecture 55: White box Testing.
Lecture 56: Condition Testing.
Lecture 57: MC/DC Coverage.
Lecture 58: MC/DC Testing.
Lecture 59: Path Testing.
Lecture 60: Dataflow and Mutation Testing.

Taught by

IIT Kharagpur July 2018

Tags

Reviews

4.6 rating, based on 126 Class Central reviews

Start your review of Software Engineering

  • Excellent teacher and excellent course I am happy with the course the teacher Explained well.jgskydkydkhdkgxkgxkhdlhdoydkhdkgxmbxkhxkgdoydkhdmvxmvxkgxkgdiydoydkhxmvxkhfluroyd glhfljvncjckhd. Mbljcphcmbcb n ncigogdmbnnc
  • One of the most detailed, simplified and absolute courses i have ever enrooled on.
    having red few stuff anout SE, watching the prof visibly explaing some of the terms i found myterious when reading make the learning process very seamless and easy to grasp.
    I am always looking forward to the subsequent lesson
  • That the amazing course, learn manything, totally different background but learn overall software engineering subject this helpful from me
  • NIYOBUGINGO JONATHAN
    This Software Engineering course from NPTEL is very helpful for understanding the fundamentals of software development. The lectures explain important topics like software design, development processes, testing, and project management in a clear and structured way. The examples used in the videos make it easier to understand how software engineering concepts are applied in real projects. It is a good course for beginners and students who want to strengthen their knowledge of software engineering.
  • Profile image for Devansh
    Devansh
    Best and help full for me All reviews begin with bibliographic information: the author’s name, the book’s full title, place of publication, publisher, edition, date, pagination, and cost, if known.
    In no more than two paragraphs, introduce the book. Give your initial appraisal of the work, including your key observation on the text. This key observation will be your thesis. Try not to begin with a flat statement such as “This book is interesting.” Begin with an anecdote, a challenging quotation, or a key observation
  • Sarbeswar Barik
    The Software Engineering course offered by NPTEL through YouTube is very useful for understanding the fundamentals of software development. It covers important topics such as the software development life cycle, requirement analysis, design, coding, testing, and maintenance. The lectures are explained in a simple and clear manner, making it easy for beginners to follow. The flexibility of learning through YouTube helps students revise topics anytime. The course also includes assignments that improve understanding and problem-solving skills. However, some topics are more theoretical, so practical practice is needed. Overall, it is a helpful course for students preparing for exams and interviews.
  • Abdelali Khirmich
    good
    but the english oe is good i do that onky for the certificate i dont know if i will get it
    but its ok i will see another platform ]
  • Profile image for Prem
    Prem
    It's amazing course. I'm very enjoying this course.The Software Engineering course provides a strong foundation in understanding how real-world software is planned, developed, tested, and maintained. It covers important concepts such as software development life cycle, requirement analysis, design models, testing techniques, and project management. The course helps students learn how to work in teams, follow proper documentation, and build reliable and scalable software systems. Practical examples and case studies make the concepts easier to understand and apply. Overall, this course improves problem-solving skills and prepares students for professional roles in the software industry.
  • Profile image for ARAVINDAN S VH13149
    ARAVINDAN S VH13149
    Clear, practical, and well-structured course that builds real-world software engineering skills with hands-on projects and solid explanations.
  • Profile image for Salsabila Nazihah
    Salsabila Nazihah
    I don't know what to say but the point is it's very good and helpful and yeah it took me 4 hours and that's a long time for me and yeah it's very helpful thank you very much!!
  • Profile image for Vishal Kumar
    Vishal Kumar
    This is an excellent resource for understanding the fundamental principles and practical aspects of software development. It covers the complete software development life cycle, including requirements analysis, design, coding, testing, and maintenance. The course is well-structured, with clear explanations and real-world examples that make complex topics easier to grasp. The instructors, often professors from top IITs, explain concepts in a logical and engaging way. The quizzes and assignments help reinforce learning and test understanding effectively. Overall, this course is highly recommended for students and professionals who want to build a strong foundation in software engineering and improve their project development skills.
  • Our software engineering teacher is highly knowledgeable, dedicated, and passionate about the subject. They explain complex topics clearly, making it easier for students to understand difficult programming concepts and real-world applications. Their teaching style is interactive, encouraging questions, discussions, and hands-on learning. They provide timely feedback on assignments and always motivate us to improve our coding and problem-solving skills. The teacher also connects theory with practical industry examples, helping us see the value of what we learn. Overall, their guidance, patience, and commitment have made the software engineering course both engaging and deeply rewarding for all students.

  • Presentation should be more informative with animated slides. And this is very basic and traditional concepts. You must provide latest and modern concepts.
  • Nisha C
    Good I really like it. It taught me many lessons outcomes which are quite pretty much helpful in real world
  • Afonso Finda
    Foi muito proveitoso O curso de Engenharia de Software sendo que é uma formação voltada para o desenvolvimento, gestão e manutenção de sistemas e aplicações computacionais, combinando fundamentos teóricos da ciência da computação com práticas de engenharia voltadas à qualidade, eficiência e escalabilidade de software
  • Patel Smitkumar Vinubhai
    Course accha he par certificate nahimila. But of course good he or silhnw ko bhi bahut kuch milta he or sir complete explain Karte he jo Asani se samajaa jaye
  • Kundan Kumar

    "I'm thoroughly enjoying this software engineering online class! The instructor is knowledgeable and engaging, breaking down complex concepts into easily digestible chunks. The course materials are comprehensive, and the online platform is user-friendly. I've gained a solid understanding of software development principles, design patterns, and testing methodologies. The flexibility of online learning allows me to balance my studies with other commitments. I appreciate the opportunities for discussion and feedback from peers and instructors. Overall, this class has exceeded my expectations, and I highly recommend it to anyone interested in software engineering!"
  • Profile image for Shivam Chauhan
    Shivam Chauhan
    1
    I recently completed a course on Coursera, and I must say it was a highly enriching experience. The course content was well-structured, covering a broad range of topics while maintaining a good balance between theory and practical application. The…
  • OJAMBO JOSEPH
    This software engineering course was a game-changer for me! The instructor's expertise and real-world examples made complex concepts easy to grasp. I loved the hands-on projects and collaborative learning environment. The course covered everything from design patterns to agile methodologies, giving me a solid foundation in software engineering. The support team was responsive and helpful. I highly recommend this course to anyone looking to boost their skills in software development. It's perfect for beginners and experienced developers alike. Five stars isn't enough .I would give it ten stars if I could!"
  • Anamika Prajapati
    It is very high level course. I am a student of AIML , so form my experience this course is very good and I have learned many skills form this course.

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.