b.v. patel institute of business management, computer 2015...
TRANSCRIPT
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 1
B.C.A (Semester 4th)
030010405 – Object-Oriented Software Engineering Objectives: To provide concepts, methodologies, techniques and tools essential for system’s analysts and
designers to successfully develop information systems using object-oriented modelling and methodology.
Course Outcomes: Upon completion of the course, students shall be able to
CO1: Comprehend fundamental concepts of object-oriented and methodology & differentiate between traditional and object-oriented approach for development of system.
CO2: Describe software development life cycle models. CO3: Elicitates and analyzed software requirements. CO4: Understand and apply object-oriented system analysis and design. CO5: Apply testing strategies to software project.
Unit Sub
Unit
No. of
Lecture(s)
Topics Reference Chapter/
Additional Reading
Teaching
Methodology
to be used
Evaluation
Parameters
Unit 1 : Introduction to Software Engineering and Object-Oriented Concepts
1.1 2 Software Engineering: Program
vs. software, complexity of
software, characteristics of
software
YS #1 - Page No. 2 – 6
Discussion +
Power Point
Presentation
QUIZ –1
+
UNIT TEST –
1
1.2 2 Object-oriented basic concepts:
classes and object, messages
and attributes, encapsulation,
inheritance, polymorphism,
responsibility and abstraction,
object composition
YS #1 – Page No. 6 – 15
MB #1 – Page No. 2 – 3,
1.3 2
Object-oriented
methodologies: Coad and
Yourdon, Booch, Rumbaugh
and Jacobson methodology
YS #1 - Page No. 16 – 20
1.4
1
Object-oriented modelling YS #1 - Page No. 20,
PJ #3 – Page No. 88
1.5 Traditional approach and
object-oriented approach
YS #1 - Page No. 24
Unit 2 : Software Development Life Cycle Models
2.1 1 Conventional life cycle models YS #2 - Page No. 32 – 33 Discussion+
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 2
2.2 1 Waterfall Model and
Prototyping Model
YS #2 - Page No. 34 – 37,
RM # 2 – Page No. 33 –
34, RM # 2 – Page No. 43,
PJ #2 – Page No. 32 – 36
Power Point
Presentation
UNIT TEST –
1
2.3 1 Iterative Enhancement Model
and Spiral Model
YS #2 - Page No. 37 – 40,
RM # 2 – Page No. 41,
RM # 2 – Page No. 48,
PJ #2 – Page No. 36 – 38
2.4 1 Agile model: Extreme
programming
YS #2 - Page No. 40 – 43
2.5 1 Object-oriented software life
cycle model
YS #2 - Page No. 43 – 44
2.6 1
Fountain model YS #2 - Page No. 44 – 46
2.7 1 Rational unified process YS #2 - Page No. 46 – 54
2.8 1 Selection of software life cycle
model
YS #2 - Page No. 54 – 56
Unit 3 : Software Requirement Elicitation and Analysis
3.1
3
Software requirement YS #3 - Page No. 63 – 65
Power Point
Presentation
UNIT TEST -1
Self Creation
parameter
(SRS
document)
3.2 Overview of requirement
elicitation techniques
YS #3 - Page No. 65 – 71
3.3 1 Initial requirement document YS #3 - Page No. 71 – 72
3.4
2
Use case approach: creating
use case diagram for
requirement, use case
description, scenario diagrams,
scenario matrix
YS #3 - Page No. 73 – 82,
MB #8 – Page No. 147 –
151,
RM # 7 – Page No. 245
Chalk and Talk
3.5 1 Characteristics of good
requirement
YS #3 - Page No. 82 – 86 Power Point
Presentation
3.6 1 Software requirement YS #3 - Page No. 86 – 111,
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 3
specification document RM # 4 – Page No. 114,
PJ #3 – Page No. 107
3.7 1 Requirement change
management
YS #3 - Page No. 111 – 114
Unit 4 : Object-Oriented Analysis
4.1 1 Structured analysis versus
object-oriented analysis
YS #5 - Page No. 174 – 175
Power Point
Presentation
Unit test-2
Self Creation
parameter
(SRS
document)
4.2 1 Types of classes and its
identification
YS #5 - Page No. 175 – 179
4.3 2 Identification of relationship:
Association, aggregation,
multiplicity, composition,
dependency, generalization
YS #5 - Page No. 180 – 184
Chalk and Talk
4.4
1
Modeling relationships YS #5 - Page No. 184 – 186
4.5 Identifying state and behavior:
attributes and operations
YS #5 - Page No. 187 – 189
Unit 5 : Object-Oriented Design
5.1 3 Steps of object-oriented design,
Creating design diagrams:
Interaction diagrams, Sequence
diagrams, Collaboration
diagrams
YS #6 - Page No. 203 –
226,
MB #7 – Page No. 136 –
140,
RM #7 – Page No. 254 -
256
Chalk and Talk
UNIT TEST -2
Self Creation
parameter
(SRS
document)
5.2 1 Refinement of use case
description and classes and
relationships
YS #6 - Page No. 226 – 232
Power Point
Presentation
5.3 1
Identification of operations for
implementation
YS #6 - Page No. 232 – 234
5.4 1 Detailed class diagram and
design document, Generating
test cases from use case
YS #6 - Page No. 234 – 244
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 4
5.5 1 Object-oriented design
principles for improving
software quality
YS #6 - Page No. 244 – 253
UNIT TEST –
2
5.6 2 Moving towards
implementation: activity
diagrams and state chart
diagrams, storing persistent
data in database
YS #7 - Page No. 260 –
280,
MB #5 – Page No. 95 –
101, MB #7 – Page No.
140 – 144
RM # 7 – Page No. 256 –
258
Chalk and Talk
5.7 1 Implementing the classes YS #7 - Page No. 280 – 282 Power Point
Presentation
Unit 6 : Software Testing
6.1 1
Verification and validation YS #9 - Page No. 348 –
349
Power Point
Presentation
UNIT TEST -2
Self Creation
parameter
(SRS
document)
6.2 1 Software verification techniques:
peer reviews, walkthroughs and
inspections, verification tool:
checklist
YS #9 - Page No. 349 –
356
6.3 5
Software validation techniques:
functional testing-boundary
value analysis, equivalence class
testing and decision table-based
testing, structural testing-path
testing, class testing, state based
testing, mutation testing
YS #9 - Page No. 356 –
403,
PJ #10 – Page No. 411,
PJ #10 – Page No. 424
6.4 1 Levels of testing: unit testing,
integration testing, system
testing and acceptance testing
YS #9 - Page No. 403 –
405
6.5 1 Software testing tools: static,
dynamic and process
management tools
YS #9 - Page No. 405 –
407
Text Book:
1. Yogesh Singh, R. Malhotra, Object-oriented Software Engineering, PHI – [YS]
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 5
Reference Book
1. Micheal R Blaha, James R Rumbaugh, Object-Oriented Modeling and Design with UML, Pearson – [MB] 2. Rajib Mall, Fundamentals of Software Engineering, PHI – [RM] 3. Pankaj Jalote, Am integrated Approach to Software Engineering, Narosa – [PJ]
Note : # denotes chapter number.
Course Objectives and Course Outcomes Mapping:
Understand object-oriented concepts and methodology: CO1, CO2 Familiar with object-oriented modeling and design: CO1, CO2, CO3, CO4 Understand tools and techniques to successfully develop information system by system analysts and
designers: CO1, CO2, CO3, CO4, CO5
Course Units and Course Outcomes Mapping:
Unit No.
Unit Course outcome
CO1 CO2 CO3 CO4 CO5
1 Introduction to Software Engineering and Object-Oriented Concepts
2 Software Development Life Cycle Models
3 Software Requirement Elicitation and Analysis
4 Object-Oriented Analysis
5 Object-Oriented Design
6 Software Testing
Course Outcomes and Program Outcome Mapping:
Course Outcomes Program outcome
PO1 PO2 PO3 PO4 PO5 PO6
CO1
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 6
CO2
CO3
CO4
CO5
Modes of Transaction (i.e. Delivery)
Lecture method shall use along with discussion method. It shall be supplemented with appropriate audio-visual
aids.
Activities/Practicum:
The following activities shall be carried out by the students.
1. Students shall learn object-oriented concepts namely Class, objects, inheritance, polymorphism and
encapsulation.
2. Students shall prepare UML diagrams.
3. Prepare SRS document for a system assigned by a teacher.
The following activities shall be carried out by the teacher.
1. Demonstration for designing UML diagrams using Umlet. Concept Map: It is a hierarchical / tree based representation of all topics covered under the course. This gives direct / indirect relationship /associationship among topics as well as subtopics.
Course: Object-Oriented Software Engineering
Object-oriented software
engineering
Introduction to software
engineering and object-
oriented concepts
Software development
life cycle models
Software Requirement
Elicitation and Analysis
Object-oriented
Analysis
discusses
Object-oriented
Design
Software Testing
discusses
discusses
covers
discusses
describe
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 7
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 8
Unit-1: Introduction to software engineering and object-oriented concepts
Introduction to software engineering
and object-oriented concepts
Software engineering
Program Vs.
Software
Object-oriented
concepts
Object-oriented
methodology
discusses
Object-oriented
modeling
Traditional approach and
object-oriented approach
descusses
differentiate
covers
describe
Complexity of
software
Characteristics
of software
Responsibility &
abstraction
Polymorphism
Inheritance
Encapsulation
Messages &
attributes
Classes &
Object
Object
composition
Rumbaugh and
Jacobson
Booch
Coad and
Yourdon
differentiate
discusses
discusses
includes
are
includes
includes
includes
includes
includes
includes
are
are
Unit-2: Software Development Life Cycle Models
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 9
Software Development Life
Cycle Models
Rational Unified
Process model
Agile modelSpiral model
Iterative
Enhancement
model
Prototyping
model
Waterfall modelSelection of software
life cycle model
are
Fountain model
Extreme
programming
discusses
are
are
are
are are
are
are
Unit-3: Software Requirement Elicitation and Analysis
Software Requirement
Elicitation and Analysis
Use case
approach
SRS documentCharacteristics of
good requirement
Initial Requirement
Document
Elicitation
techniques
Software
Requirement
Interviews
discusses
Requirement
Change
Management
Prototyping
FAST
Brainstorming
sessions
Selection of
software life
cycle model
Selection of
software life
cycle model
Selection of
software life cycle
model
Selection of
software life cycle
model
discusses
discusses
discusses
describes
discusses
describes
discu
sses
includ
es
inclu
des
inclu
des
discu
sses
discusses
discusses
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 10
Unit-4: Object Oriented Analysis
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 11
Unit-5: Object-Oriented Design
B.V. Patel Institute of Business Management, Computer Information Technology
2015
Ms. Ronak Gandhi 12
Unit-6: Software Testing
Software Testing
Validation and
Verification
Software Verification
TechniquesLevels of testing
Software testing
tools
Functional
TestingStructural
Testing
Boundary Value
Analysis
Equivalence class
Testing
Decision Table
based Testing
StaticDynamic
Process
Management Tools
Path Testing
Class Testing
State based
Testing
Mutual
Testing
Unit Testing
Integration
Testing
System
Testing
Acceptance
Testing
dis
cuss
es
dis
cusses
discusses
de
scrib
es
incl
udes
inclu
de
s
includes
inclu
de
s
inclu
de
s
inclu
de
s
inclu
de
s
inclu
de
s
incl
udes
inclu
de
s
inclu
de
s
inclu
de
s
inclu
de
s
inclu
de
s
inclu
de
s
incl
udes
-5: Trans
port Layer