Software Engineering Syllabus - BIM (TU)

  • Short Name N/A
  • Course code IT 224
  • Semester Sixth Semester
  • Full Marks 100
  • Pass Marks 45
  • Credit Hrs 3
  • Elective/Compulsary Compulsary

Software Engineering

Chapter wise complete Notes.

Course Description

Course Objectives

This module aims to introduce students with problems in large-scale software production. It should be associated with laboratory experiments to augment the concepts taught in the class.

Course Description

Introduction, software processes, Agile Software development, Requirements Engineering, System modeling, Architectural Design, Design and Implementation, Software testing, Software evolution, Sociotechnical Systems, Dependability and Security, Dependability and Security Specifications

Unit Contents

Course Details

Unit 1: Introduction                                                                                                                                    LH 3

  • Professional software development
  • Software engineering ethics
  • Case studies

Unit 2: Software processes                                                                                                                                                LH 3

  • Software process models
  • Process activities
  • Coping with change
  • The rational unified process

Unit 3: Agile Software development                                                                                                    LH 5

  • Agile methods
  • Plan-driven and agile development
  • Extreme programming
  • Agile project management
  • Scaling agile methods

Unit 4: Requirements engineering                                                                                                    LH 5

  • Functional and non-functional requirements
  • The software requirements document
  • Requirements specification
  • Requirements engineering processes
  • Requirements elicitation and analysis
  • Requirements validation
  • Requirements management

Unit 5: System modeling                                                                                                           LH 4

  • Context models
  • Interaction models
  • Structural models
  • Behavioral models
  • Model-driven engineering

Unit 6: Architectural design                                                                                                      LH 5

  • Architectural design decisions
  • Architectural views
  • Architectural patterns
  • Architectural architectures

Unit 7: Design and implementation                                                                                           LH 6

  • Object oriented design using the UML
  • Design patterns
  • Implementation issues
  • Open source development

Unit 8: Software testing                                                                                                           LH 4

  • Development testing
  • Test-driven development
  • Release testing
  • User testing

Unit 9: Software evolution                                                                                                        LH 3

  • Evolution processes
  • Program evolution dynamics
  • Software maintenance
  • Legacy system management

Unit 10: Sociotechnical systems                                                                                                 LH 3

  • Complex systems
  • Systems engineering
  • System procurement
  • System development
  • System operation

Unit 11: Dependability and security                                                                                          LH 3

  • Dependability properties
  • Availability and reliability
  • Safety
  • Security

Unit 12: Dependability and security specifications                                                                   LH 4

  • Risk-driven requirements specification
  • Safety specification
  • Reliability specification
  • Security specification
  • Formal specification
Text and Reference Books

Text Book

Software engineering, Ian Sommerville, ninth edition

References

A software engineering approach to labVIEW, Jon Conway

Software engineering: A Practitioner’s Approach, Roger Pressman

Software Engineering Best Practices: lessons from successful Projects in the top companies, Capers Jones

Top