[R18A0511]
LECTURE NOTES
B.TECH III YEAR – I SEM (R18)
(2021-22)
DEPARTMENT OF COMPUTER
SCIENCE AND ENGINEERING
MALLA REDDY COLLEGE OF ENGINEERING &
TECHNOLOGY
(Autonomous Institution – UGC, Govt. of India)
(Affiliated to JNTUH, Hyderabad, Approved by AICTE - Accredited by NBA & NAAC – ‘A’ Grade - ISO 9001:2015
Certified) Maisammaguda, Dhulapally (Post Via. Hakimpet), Secunderabad – 500100, Telangana State, INDIA.
Software Engineering
, MALLA REDDY COLLEGE OF ENGINEERING AND TECHNOLOGY
L T/P/D C
III Year B.Tech CSE -I SEM 3 -/-/- 3
(R18A0511) SOFTWARE ENGINEERING
Objectives:
The students will be able:
1. To comprehend the various software process models.
2. To understand the types of software requirements and SRS document.
3. To know the different software design and architectural styles.
4. To learn the software testing approaches and metrics used in software development.
5. To know about quality control and risk management.
UNIT - I:
Introduction to Software Engineering: The evolving role of software, Changing Nature of
Software, Software myths.
A Generic view of process: Software engineering- A layered technology, a process framework,
Process patterns, process assessment.
Process models: The waterfall model, Incremental process models, Evolutionary process models,
The Unified process, Agility and Agile Process model, Extreme Programming, Other process models
of Agile Development and Tools
UNIT - II:
Software Requirements: Functional and non-functional requirements, User requirements, System
requirements, Interface specification, the software requirements document.
Requirements engineering process: Feasibility studies, Requirements elicitation and
analysis, Requirements validation, Requirements management.
System models: Context Models, Behavioral models, Data models, Object models,
structured methods. UML Diagrams.
UNIT - III:
Design Engineering: Design process and Design quality, Design concepts, the design model.
Creating an architectural design: Software architecture, Data design, Architectural
styles and patterns, Architectural Design.
Object-Oriented Design: Objects and classes, An Object-Oriented design process, Designevolution.
Performing User interface design: Golden rules, User interface analysis and design, interface
analysis, interface design steps, Design evaluation.
UNIT - IV:
Testing Strategies: A strategic approach to software testing, test strategies for conventional
software, Black-Box and White-Box testing, Validation testing, System testing, the art of Debugging.
Product metrics: Software Quality, Metrics for Analysis Model, Metrics for Design Model,
Metrics for source code, Metrics for testing, Metrics for maintenance.
Metrics for Process and Products: Software Measurement, Metrics for software quality.
Software Engineering
, UNIT - V:
Risk management: Reactive vs. Proactive Risk strategies, software risks, Risk identification,
Risk projection, Risk refinement, RMMM, RMMM Plan.
Quality Management: Quality concepts, Software quality assurance, Software Reviews,
Formal technical reviews, Statistical Software quality Assurance, The Capability Maturity
Model Integration (CMMI), Software reliability, The ISO 9000 quality standards.
TEXT BOOKS:
1. Software Engineering A practitioner’s Approach, Roger S Pressman, 6thedition.
McGraw Hill International Edition.
2. Software Engineering, Ian Sommerville, 7th edition, Pearson education.
REFERENCE BOOKS:
1. Software Engineering, A Precise Approach, Pankaj Jalote, Wiley India, 2010.
2. Software Engineering: A Primer, Waman S Jawadekar, Tata McGraw-Hill, 2008
3. Software Engineering, Principles and Practices, Deepak Jain, Oxford University Press.
4. Software Engineering1: Abstraction and modelling, Diner Bjorner, Springer International
5. edition, 2006.
6. Software Engineering2: Specification of systems and languages, Diner Bjorner,
7. Springer International edition 2006.
8. Software Engineering Principles and Practice, Hans Van Vliet, 3rd edition,
John Wiley & Sons Ltd.
9. Software Engineering3: Domains, Requirements, and Software Design, D. Bjorner,
Springer International Edition.
10. Introduction to Software Engineering, R. J. Leach, CRC Press.
Course Outcomes:
Students will have the ability:
1. To compare and select a process model for a business system.
2. To identify and specify the requirements for the development of an application.
3. To develop and maintain efficient, reliable and cost effective software solutions.
To critically think and evaluate assumptions and arguments
Software Engineering
, MALLA REDDY COLLEGE OF ENGINEERING & TECHNOLOGY
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
INDEX
S. No Topic Page no
Unit
1 Introduction to Software Engineering 5
I
2 Evolving Role of Software 5
I
3 I A Generic view of process 7
4 I Process models 11
5 II Software Requirements 21
6 II Requirements engineering process 24
7 II System models 29
8 III Design Engineering 33
9 III Creating an architectural design 36
10 III Object-Oriented Design 39
11 III Performing User interface design 40
12 IV Testing Strategies 44
13 IV Product metrics 53
14 IV Metrics for Process and Products 56
15 V Risk management 58
16 V Quality Management 61
Software Engineering Page 4