0% found this document useful (0 votes)
5 views

2-General Introduction, Course Outcomes Introduction-04-01-2024

This document provides an introduction to a course on software engineering principles. It outlines the course objectives, expected outcomes, modules to be covered, textbooks, and assessment methods. The course will introduce essential software engineering concepts and impart development skills through various modules covering topics like requirements, design, implementation, testing, maintenance, and project management.

Uploaded by

Basketball
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

2-General Introduction, Course Outcomes Introduction-04-01-2024

This document provides an introduction to a course on software engineering principles. It outlines the course objectives, expected outcomes, modules to be covered, textbooks, and assessment methods. The course will introduce essential software engineering concepts and impart development skills through various modules covering topics like requirements, design, implementation, testing, maintenance, and project management.

Uploaded by

Basketball
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Introduction about the Course

CSI 1007 SOFTWARE ENGINEERING PRINCIPLES

Session #1

D R . B .K A L A AVAT H I
P R O F E SSO R , D EPA R T M E N T O F IO T
S C O P E ,VIT
VELLORE
K A L A AVAT H I.B @ VIT.A C .IN

April 21, 2024


Contact Information
Office Cabin: SJT 615B
Email: [email protected]

Mobile Number: 94425 40803

Open Hours:
Monday: 11:00 am to 12:00 Noon
Wednesday: 11:00 am to 12:00 Noon

April 21, 2024 2


CSI 1007 SOFTWARE
ENGINEERING PRINCIPLES
LTPC
2023

April 21, 2024 3


Objectives
1. To introduce the essential software engineering
concepts involved in developing software products and
components
2. To impart development skills during design,
implementation and testing of reliable software systems
across various disciplines
3. To familiarize engineering practices and standards
used in developing software products and components

April 21, 2024 4


:
Expected Course Outcomes

On completion of this course, students should be able to:


1. Apply the principles of Software engineering methodology
during software development and deployment process.
2. Document various processes like Requirement Engineering,
Design and Testing.
3. Demonstrate an ability to use the techniques and tools
necessary for significant application domains
4. Apply software testing and quality knowledge and engineering
methods for various applications
5. Analyze the effectiveness of managing software projects
through various techniques like Estimations, Scheduling and
Quality Models
6. Apply benchmarking standards in process and in product.
April 21, 2024 5
Modules
Module:1- Introduction
Software Engineering- Need, Importance and its
characteristics - Software Process- Generic process
model-Prescriptive process model-specialized, unified
process-Agile development-Agile Process- Extreme
Programming- Other agile Process models-Software
engineering Knowledge core Principles-Principles that
guide each framework Activity.

April 21, 2024 6


Module:2-Software Requirement
Analysis
Requirements Engineering-Establishing the Groundwork-
Eliciting Requirements- Developing use cases-Building the
requirements model-Negotiating, validating Requirements-
Requirements Analysis-Requirements Modeling Strategies.
Specifying Requirements: functional and non-functional
requirements; specification exercise. Managing the
Requirements Process: methods which provide a structure for
co-operation between different stake holders. Prototyping: The
role of prototyping in requirements techniques for prototyping.
Requirements for Future Technologies: Computer Supported
Co-operative Work (CSCW); networked multi-media systems.

April 21, 2024 7


Module:3- Design

Design concepts and principles - Abstraction -


Refinement - Modularity – Cohesion & coupling,
Architectural design, Detailed Design – Transaction &
Transformation, Refactoring of designs, Object-
oriented Design User-Interface Design; Object
Oriented Design Concepts and Diagrams - Use Case
Diagrams - Class Diagrams - Interaction Diagrams -
State chart Diagrams - Activity Diagrams - Package
Diagrams - Component Diagrams – Deployment
Diagrams

April 21, 2024 8


Module:4-Software Implementation

Structured coding Techniques-Coding Styles-


Standards and Guidelines- Documentation
Guidelines-Modern Programming Language Features:
Type checking-User defined data types- Data
Abstraction-Exception Handling- Concurrency
Mechanism – Seven Steps of implementing software –
Implementation Challenges and its resolution.

April 21, 2024 9


Module:5-Software Testing
TESTING: Introduction; Software Testing
Fundamental; Testing Principles; Testing Levels;
Verification and Validation: Validation Testing,
Validation Test Criteria; Test Plan: Test Documentation;
Test Strategies: Top-Down Testing, Bottom-Up Testing,
Thread testing, Stress testing, Back-to-back testing;
Testing methods and tools: Testing through reviews,
Black-box testing (Functional testing), White box
testing (glass-box testing), Testing software changes;
Additional requirements in testing OO Systems;
Metrics Collection, Computation, and Evaluation; Test
and QA plan; Managing Testing Functions.

April 21, 2024 10


Module:6-Software Maintenance
Software Maintenance, Types of Maintenance,
Structured versus unstructured maintenance –
Maintenance costs – Typical problems with
maintenance and its side-effects – Maintenance
process - Software Configuration Management –
Component Reusability - Overview of Reengineering
& Reverse Engineering- Business Process
Reengineering- Restructuring- Forward Engineering-
Economics of Reengineering.

April 21, 2024 11


Module:7-Project Planning and Risk
Management:
Objectives of Activity planning – Project schedules –
Activities – Sequencing and scheduling – Network
Planning models – Forward Pass & Backward Pass
techniques – Critical path (CRM) method – Risk
identification – Assessment – Monitoring – PERT
technique – Monte Carlo simulation – Resource
Allocation – Creation of critical patterns – Cost
schedules.

Module:8- Recent Trends:

April 21, 2024 12


Text Book(s)
1. Roger Pressman and Bruce Maxim, Software Engineering: A
Practitioner's Approach, 9th Edition, McGraw-Hill, 2020.
Reference Books
1. Ian Sommerville, Software Engineering, 10th Edition,
Addision-Wesley, 2015
2. Pankaj Jalote, An Integrated Approach to Software
Engineering (Texts in ComputerScience),Reprint Springer, 2010
3. William E. Lewis , “Software Testing and Continuous Quality
Improvement”, Third Edition, Auerbach Publications, 2008
4. David Gustafson, Schaum's Outline of Software
Engineering,1st Edition, 2020

April 21, 2024 13


Assessment Methods
CAT1
CAT2
Digital Assignment -1 (Moodle)
Digital Assignment -2(Moodle)
QUIZ -1 (Moodle)
Final Assessment Test (FAT)

You might also like