By Timothy C. Lethbridge
and Robert
Laganière
This page gives the timings of the videos of lectures about object
oriented software engineering. It shows when each topic is introduced, so
you can quickly skip to that topic by fast-forwarding or rewinding the
video.
Buy a DVD-ROM of this material
on-line from DVClass
- Lecture 1 (click here to get information
about viewing the video itself)
- 0:00:20 Chapter 1, Introduction to
the book's web site www.lloseng.com
- 0:00:28 Chapter 1, The web site's
links to software
engineering web
sites at www.lloseng.com/weblinks.html
- 0:01:10 Chapter 1, The Factguru glossary at
www.factguru.com/oose
- 0:04:00 Chapter 1, Getting answers to
exercises at
www.lloseng.com/exerciselist.html
- 0:05:20 Chapter 1, slide 1 Main title page
for Chapter 1
- 0:05:40 Chapter 1, slide 2 1.1 The nature
of software
- 0:10:20 Chapter 1, slide 3 The nature of
software continued
- 0:14:30 Chapter 1, slide 4 The nature of
software ... Conclusions
- 0:17:10 Chapter 1, slide 5 Types of
software ... custom/generic/embeddeed
- 0:19:10 Chapter 1, slide 6 Types of
software chart
- 0:20:45 Chapter 1, slide 7 ... real time
vs. data processing software
- 0:23:00 Chapter 1, slide 8 1.2 What is
software engineering (definition)
- 0:26:10 Chapter 1, slide 9 ... systematic
development and evolution
- 0:32:30 Chapter 1, slide 10 ... cost time
and other constraints
- 0:34:50 Chapter 1, slide 11 1.3 Software
Engineering and the Engineering Profession
- 0:41:15 Chapter 1, slide 12 1.4
Stakeholders
- 0:43:45 Chapter 1, slide 13 1.5 Software
quality
- 0:47:30 Chapter 1, slide 14 Software
quality
and stakeholders
- 0:48:40 Chapter 1, slide 15 Software
quality
- conflict/objectives/optimizing
- 0:51:40 Chapter 1, slide 16 Internal
quality criteria
- 0:52:10 Chapter 1, slide 17 Short term vs.
long term quality
- 0:53:15 Chapter 1, slide 18 1.6 Software
engineering projects
- 0:54:30 Chapter 1, slide 19 Software
engineering projects ... green field
- 0:54:45 Chapter 1, slide 20 Software
engineering projects ... Frameworks
- 0:55:35 Chapter 1, slide 21 1.7 Activities
common to software projects
- 0:55:50 Chapter 1, slide 22 Activites ...
Design
- 0:56:12 Chapter 1, slide 23 Activities ...
modelling etc.
- 0:57:30 Chapter 1, slide 24 1.9 The Eight
Themes of the Book
- Lecture 2 (click here to get information
about viewing the video itself)
- 0:00:30 Chapter 2, slide 1 Introductory
slide
- 0:01:15 Chapter 2, slide 2 2.1 What is
Object Orientation?
- 0:05:50 Chapter 2, slide 3 OO Paradigm
- 0:06:55 Chapter 2, slide 4 A view of the
Two paradigms
- 0:08:40 Chapter 2, slide 5 2.2 Cllases and
Objects
- 0:10:20 Chapter 2, slide 6 Objects
- 0:11:55 Chapter 2, slide 7 Classes
- 0:13:30 Chapter 2, slide 8 Is Something a
Class or an Instance?
- 0:18:25 Chapter 2, slide 9 Naming classes
- 0:27:10 Chapter 2, slide 10 2.3 Instance
Variables
- 0:30:20 Chapter 2, slide 11 Variables vs.
Objects
- 0:33:55 Chapter 2, slide 12 Class
variables
- 0:37:05 Chapter 2, slide 13 2.4 Methods,
Operations and Polymorphism
- 0:38:15 Chapter 2, slide 14 Methods,
Operations and Polymorphism
- 0:38:55 Chapter 2, slide 15 Polymorphism
- 0:42:15 Chapter 2, slide 16 2.5 Organizing
Classes into Inheritance Hierarchies
- 0:42:40 Chapter 2, slide 17 An Example
Inheritance Hierarchy
- 0:46:10 Chapter 2, slide 18 The Isa Rule
- 0:48:50 Chapter 2, slide 19 A possible
inheritance hierarchy of mathematical objects
- 0:51:40 Chapter 2, slide 20 Make sure all
Inherited Features Make Sense in Subclasses
- 0:57:40 Chapter 2, slide 21 2.6
Inheritance . Polymorphism and Variables
- Lecture 3 (click here to get information
about viewing the video itself)
- 0:00:05 Chapter 2, slide 21 2.6
Inheritance, Polymorphism and Variables
- 0:03:00 Chapter 2, slide 22 Some
Operations on the Shape Example
- 0:03:33 Chapter 2, slide 23 Abstract
Classes and Methods
- 0:08:45 Chapter 2, slide 24 Overriding
- 0:19:40 Chapter 2, slide 25 Immutable
objects
- 0:24:30 Chapter 2, slide 26 How a decision
is made about which method to run
- 0:29:00 Chapter 2, slide 27 Dynamic
binding
- 0:40:30 Chapter 2, slide 28 2.7 Concepts
that Define Object Orientation
- 0:44:15 Chapter 2, slide 29 Other Key
Concepts
- 0:52:55 Chapter 2, slide 30 The Basics of
Java
- 0:58:30 Chapter 2, slide 31 Java
documentation
- 1:00:05 Chapter 2, slide 32 Overview of
Java
- 1:00:55 Chapter 2, slide 33 Characters and
Strings
- 1:05:20 Chapter 2, slide 34 Arrays and
Collections
- 1:09:20 Chapter 2, slide 35 Casting
- 1:11:33 Chapter 2, slide 36 Exceptions
- 1:12:36 Chapter 2, slide 37 Interfaces
- Lecture 4 (click here to get information
about viewing the video itself)
- 0:00:15 Chapter 2, slide 33 Characters and
Strings Review
- 0:00:40 Chapter 2, slide 34 Arrays and
Collections Review
- 0:01:25 Chapter 2, slide 35 Casting Review
- 0:02:25 Chapter 2, slide 36 Exceptions
Review
- 0:03:20 Chapter 2, slide 37 Interfaces
Review
- 0:06:40 Chapter 2, slide 38 Packages and
importing
- 0:11:15 Chapter 2, slide 39 Access control
- 0:18:15 Chapter 2, slide 40 Threads and
concurrency
- 0:23:50 Chapter 2, slide 41 Programming
Style Guidelines
- 0:25:05 Chapter 2, slide 42 Programming
style .. Commenting and organizing
- 0:27:35 Chapter 2, slide 43 Programming
style .. Avoiding duplication
- 0:29:00 Chapter 2, slide 44 Programming
style .. OO principles etc.
- 0:30:45 Chapter 2, slide 45 2.10
Difficulties and Risks in Object-Oriented Programming
- 0:33:25 Chapter 3, slide 1 Chapter 3 -
Introductory slide
- 0:34:00 Chapter 3, slide 2 3.1 Building on
the Experience of Others
- 0:36:45 Chapter 3, slide 3 3.2 Reusability
and Reuse in SE
- 0:40:40 Chapter 3, slide 4 A vicious cycle
- 0:41:25 Chapter 3, slide 5 3.3 Frameworks:
Reusable Subsystems
- 0:44:00 Chapter 3, slide 6 Frameworks to
promote reuse - slots and hooks
- 0:48:00 Chapter 3, slide 7 Object-oriented
frameworks
- 0:49:00 Chapter 3, slide 8 Examples of
frameworks
- 0:52:00 Chapter 3, slide 9 Types of
frameworks: Horizontal and vertical
- 0:53:10 Chapter 3, slide 10 3.4 The
Client-Server Architecture
- 0:57:15 Chapter 3, slide 11 Sequence of
activities in a client-server system
- 1:04:10 Chapter 3, slide 12 A server
program communicating with two client programs
- 1:06:00 Chapter 3, slide 13 Alternatives
to the client server architecture
- 1:07:50 Chapter 3, slide 14 Advantages of
client-server systems
- Lecture 5 (click here to get information
about viewing the video itself)
- 0:00:20 Chapter 3, slide 12 A server
program communicating with two client programs - Review
- 0:00:50 Chapter 3, slide 13 Alternatives
to the client server architecture - Review
- 0:01:25 Chapter 3, slide 14 Advantages of
client-server systems - Review
- 0:03:15 Chapter 3, slide 15 Examples of
client-server systems
- 0:10:20 Chapter 3, slide 16 Activities of
a server
- 0:13:00 Chapter 3, slide 17 Activities of
a client
- 0:19:25 Chapter 3, slide 18 Threads in a
client-server system
- 0:27:25 Chapter 3, slide 19 Thin- versus
fact-client systems
- 0:34:00 Chapter 3, slide 20 Communications
protocols
- 0:40:55 Chapter 3, slide 21 Tasks to
perform to develop client-server applications
- 0:46:00 Chapter 3, slide 22 3.5 Technology
Needed to Build Client-Server Systems
- 0:57:15 Chapter 3, slide 23 Establishing a
connection in Java
- 1:04:50 Chapter 3, slide 24 Exchanging
information in Java
- 1:06:35 Chapter 3, slide 25 Sending and
receiving messages
- Lecture 6 (click here to get information
about viewing the video itself)
- 0:00:48 Chapter 3, slide 26 3.6 The Object
Client-Server Framework
- 0:03:45 Chapter 3, slide 27 Using OCSF
- 0:08:32 Chapter 3, slide 28 3.7 The Client
Side
- 0:11:50 Chapter 3, slide 29 The public
interface of AbstractClient
- 0:17:15 Chapter 3, slide 30 The callback
methods of AbstractClient
- 0:23:08 Chapter 3, slide 31 Using
AbstractClient
- 0:28:33 Chapter 3, slide 32 Internals of
AbstractClient
- 0:31:35 Chapter 3, slide 33 3.8 The Server
Side
- 0:32:33 Chapter 3, slide 34 The public
interface of AbstractServer
methods of AbstractServer
- 0:48:20 Chapter 3, slide 36 The public
interface of ConnectionToClient
- 0:55:55 Chapter 3, slide 37 Using
AbstractServer and ConnectionToClient
- 1:06:58 Chapter 3, slide 38 Internals of
AbstractServer and ConnectionToClient
- 1:13:27 Chapter 3, slide 39 3.11 An
Instant Messaging Application: SimpleChat
- Lecture 7 (click here to get information
about viewing the video itself)
- 0:00:35 Chapter 3, slide 39 3.11 An
Instant Messaging Application: SimpleChat
- 0:02:00 Chapter 3, slide 40 The server
- 0:40:30 Chapter 3, slide 41 Key code in
EchoServer
- 0:05:15 Chapter 3, slide 42 The client
- 0:06:46 Chapter 3, slide 42 .
- 0:09:15 Chapter 3, slide 43 Key code in
ChatClient (handleMessageFromClientUI)
- 0:14:45 Chapter 3, slide 44 Key code in
ChatClient - Continued (handleMessageFromServer)
- 0:15:15 Chapter 3, slide 39 Review of
slide 39 again - overview of SimpleChat
- 0:18:00 Chapter 3, slide 45 3.12 Risks
when reusing technology
- 0:22:20 Chapter 3, slide 46 Risks when
developing reusable technology (investment uncertainty; not-invented-here
syndrome)
- 0:24:34 Chapter 3, slide 47 Risk when
developing reusable technology - continued (competition and divergence)
- 0:27:25 Chapter 3, slide 48 Risks when
adopting a client-server approach
- 0:32:45 Chapter 4, slide 1 Chapter 4 -
Requirements - Introductory slide
- 0:34:22 Chapter 4, slide 2 4.1 Domain
Analysis
- 0:39:05 Chapter 4, slide 3 Domain Analysis
document
- 0:47:15 Chapter 4, slide 4 4.2 The
Starting Point for Software Projects
- 0:50:38 Chapter 4, slide 5 4.3 Defining
the Problem and the Scope
- 0:54:10 Chapter 4, slide 6 Defining the
Scope
- 0:59:00 Chapter 4, slide 7 4.4 What is a
Requirement?
- 1:03:10 Chapter 4, slide 8 4.5 Types of
Requirements
- 1:04:00 Chapter 4, slide 9 Functional
Requirements
- 1:09:25 Chapter 4, slide 10 Non-functional
requirements (Quality requirements)
- Lecture 8 (click here to get information
about viewing the video itself)
- 0:00:20 Chapter 4, slide 9 Functional
Requirements (Review)
- 0:01:04 Chapter 4, slide 10 Non-functional
requirements (Quality requirements - Review)
- 0:02:12 Chapter 4, slide 11 Non-functional
requirements (Environment and technology; project plan)
- 0:06:00 Chapter 4, slide 12 4.6 Some
Techniques for Gathering and Analysing Requirements (Observation and
Interviewing)
- 0:07:10 Chapter 4, slide 12 Š
- 0:21:35 Chapter 4, slide 13 Gathering and
Analysing Requirements (Brainstorming)
- 0:32:25 Chapter 4, slide 14 Gathering and
Analysing Requirements (Prototyping)
- 0:37:05 Chapter 4, slide 15 Gathering and
Analysing Requirements (Basics of Use Cases)
- 0:41:28 Chapter 4, slide 16 4.7 Types of
Requirements Document
- 0:44:52 Chapter 4, slide 17 Level of
details required in a requirements document
- 0:50:39 Chapter 4, slide 18 4.8 Reviewing
Requirements
- 0:56:15 Chapter 4, slide 19 Requirements
documents (Organization and traceability)
- 0:58:12 Chapter 4, slide 20 Requirements
document (Suggested sections)
- 0:59:50 BOOK, Sec 4.11 bottom
of p. 141 SimpleChat Requirements Problem Statement
- 1:01:02 BOOK, Sec 4.11 top of
p. 142 SimpleChat Background Information - Rationale
- 1:01:41 BOOK, Sec 4.11 bottom
of p. 142 SimpleChat Background Information - Options considered
- 1:02:37 BOOK, Sec 4.11 bottom
of p. 143 SimpleChat Environment and System Models
- 1:03:18 BOOK, Sec 4.11 top of
p. 144 SimpleChat Functional Requirements - #block command
- 1:03:38 BOOK, Sec 4.11 middle
of p. 145 SimpleChat Functional Requirements - Operation
- 1:04:55 BOOK, Sec 4.10 bottom
of p. 141 GANA Non-Functional Requirements
- 1:07:30 Chapter 4, slide 21 4.9 Managing
Changing Requirements
- 1:11:05 Chapter 4, slide 22 4.13
Difficulties and Risks in Domain and Requirements Analysis
- Lecture 9 (click here to get information
about viewing the video itself)
- 0:00:05 Chapter 5, slide 1 Chapter 5 -
Introductory slide
- 0:00:53 Chapter 5, slide 2 5.1 What is
UML?
- 0:05:55 Chapter 5, slide 3 UML diagrams
- 0:08:20 Chapter 5, slide 4 UML features
- 0:11:50 Chapter 5, slide 5 What
constitutes a good model?
- 0:15:45 Chapter 5, slide 6 5.2 Essentials
of UML Class Diagrams
- 0:16:55 Chapter 5, slide 7 Classes
- 0:22:27 Chapter 5, slide 8 5.3
Associations and Multiplicity
- 0:35:25 Chapter 5, slide 9 Labellling
associations
- 0:39:40 Chapter 5, slide 10 Analyzing and
validating associations (many-to-one)
- 0:41:22 Chapter 5, slide 11 Analyzing and
validating associations (many-to-many)
- 0:43:43 Chapter 5, slide 12 Analyzing and
validating associations (one-to-one)
- 0:46:05 Chapter 5, slide 13 Analyzing and
validating associations (Avoiding unnecessary one-to-one)
- 0:47:25 Chapter 5, slide 14 A more complex
example (that will become an association class)
- 0:50:48 Chapter 5, slide 15 Association
classes
- 0:56:25 Chapter 5, slide 16 Reflexive
associations
- 1:00:48 Chapter 5, slide 17 Directionality
in associations
- 1:03:32 Chapter 5, slide 18 5.4
Generalization
- 1:06:00 Chapter 5, slide 19 Avoiding
unnecessary generalizations
- Lecture 10 (click here to get
information
about viewing the video itself)
- 0:00:20 Chapter 5, slide 18 5.4
Generalization
- 0:00:35 Chapter 5, slide 19 Avoiding
unnecessary generalizations
- 0:04:17 Chapter 5, slide 20 Handling
multiple discriminators - creating higher-level generalization
- 0:07:20 Chapter 5, slide 21 Handling
multiple discriminators - using multiple inheritance
- 0:08:50 Chapter 5, slide 22 Avoiding
having instances change class
- 0:11:35 Chapter 5, slide 23 5.5 Instance
diagrams
- 0:15:25 Chapter 5, slide 24 Associations
versus generalizations in instance diagrams
- 0:18:42 Chapter 5, slide 25 5.6 More
Advanced Features: Aggregation
- 0:21:05 Chapter 5, slide 26 When to use
aggregation
- 0:23:20 Chapter 5, slide 27 Composition
- 0:28:55 Chapter 5, slide 28 Aggregation
hierarchy
- 0:30:40 Chapter 5, slide 29 Propagation
- 0:33:00 Chapter 5, slide 30 Interfaces
- 0:35:56 Chapter 5, slide 31 Notes and
descriptive text
- 0:37:24 Chapter 5, slide 32 Object
Constraint Language (OCL)
- 0:39:45 Chapter 5, slide 33 OCL statements
- 0:40:56 Chapter 5, slide 34 An example:
constraints on Polygons
- 0:56:33 Chapter 5, slide 35 5.7 Detailed
Example: A Clas Diagram for Genealogy
- 1:02:30 Chapter 5, slide 36 Genealogy
example: Possible solutions
- 1:09:42 Chapter 5, slide 37 5.8 The
Process of Developing Class Diagrams
- 1:11:27 Chapter 5, slide 38 System domain
model vs. System model
- 1:11:54 Chapter 5, slide 39 Suggested
sequence of activities
- Lecture 11 (click here to get
information
about viewing the video itself)
- 0:01:30 Chapter 5, slide x1 Text of Bank
Account Management System from text page 448
- 0:06:40 Chapter 5, slide x2 Potentially
good classes, and definitely bad classes
- 0:19:20 Chapter 5, slide x3 Draft Class
Diagram with classes Client and Account, and their association
- 0:20:15 Chapter 5, slide x2 again Revisit:
Problem statement
- 0:26:03 Chapter 5, slide x4 Draft Class
Diagram with Account attributes and subclasses
- 0:27:52 Chapter 5, slide x2 again Revisit:
Problem statement
- 0:39:05 Chapter 5, slide x5 Draft Class
Diagram with CreditCard and attributes of Account subclasses
- 0:39:20 Chapter 5, slide x6 Problem
statement - checking off what we have done (Classes, associations,
attributes, generalizations)
- 0:44:10 Chapter 5, slide x7 Looking at
what we know about Employees
- 0:46:16 Chapter 5, slide x8 Draft Class
Diagram with Branch and Employee
- 0:52:03 Chapter 5, slide x9 Looking at
what we know about Branches
- 0:56:31 Chapter 5, slide x10 Draft Class
Diagram with OrganizationalUnit
- 0:57:25 Chapter 5, slide x11 Problem
statement after adding OrganizationalUnit (Classes, associations,
attributes, generalizations)
- 0:58:24 Chapter 5, slide x12 Thinking
about how to deal with privileges
- 1:00:50 Chapter 5, slide x13 Draft Class
Diagram with AccountType
- 1:01:35 Chapter 5, slide x14 Bank Account
System Class diagram with final touches
- 1:02:55 Chapter 5, slide 39 Suggested
sequence of activities
- 1:03:24 Chapter 5, slide 40 Identifying
classes
- 1:05:15 Chapter 5, slide 41 A simple
technique for discovering domain classes
- 1:07:05 Chapter 5, slide 42 Identifying
associations and attributes
- 1:08:13 Chapter 5, slide 43 Tips about
identifying and specifying valid associations
- 1:09:40 Chapter 5, slide 44 Actions versus
associations
- 1:11:32 Chapter 5, slide 45 Identifying
attributes
- 1:12:05 Chapter 5, slide 46 Tips about
identifying and specifying valid attributes (avoiding duplicate
attributes)
- 1:13:53 Chapter 5, slide 47 An example
(attributes and associations): Airline system
- Lecture 12 (click here to get
information
about viewing the video itself)
- 0:00:32 Chapter 5, slide 47 Airline
example (attributes and associations)
- 0:05:17 Chapter 5, slide 48 Identifying
generalizations and interfaces
- 0:09:22 Chapter 5, slide 49 Airline
example (generalization)
- 0:12:29 Chapter 5, slide 50 Allocating
responsibilities to classes
- 0:16:48 Chapter 5, slide 51 Categories of
responsibilities
- 0:22:12 Chapter 5, slide 52 Airline
example (responsibilities)
- 0:26:00 Chapter 5, slide 53 Prototyping a
class diagram on paper
- 0:26:56 Chapter 5, slide 54 Identifying
operations
- 0:27:59 Chapter 5, slide 55 Airline
example (class collaboration)
- 0:30:22 Chapter 5, slide 56 Class
collaboration Œa¹ - Making a bi-directional link betwen existing objects
- 0:35:28 Chapter 5, slide 57 Class
collaboration Œb' - Creating an object and linking it to an existing
object
- 0:37:22 Chapter 5, slide 58 Class
collaboration Œc' - Creating an association class, given two existing
objects
- 0:43:15 Chapter 5, slide 59 Class
collaboration Œd' - Changing the destination of a link
- 0:45:28 Chapter 5, slide 60 Class
collaboration Œe' - Searching for an associated instance
- 0:47:38 Chapter 5, slide 61 5.9
Implementing Class Diagrams in Java
- 0:49:46 Chapter 5, slide 62 Example:
SpecificFlight instance variables
- 0:51:47 Chapter 5, slide 63 Example:
SpecificFlight constructor
- 0:52:27 Chapter 5, slide 64 Example:
RegularFlight code for addSpecificFlight
- 0:55:52 Chapter 6, slide 1 Introductory
slide
- 0:56:07 Chapter 6, slide 2 6.1
Introduction to Patterns
- 0:59:25 Chapter 6, slide 3 Pattern
description: Suggested headings, plus discussion of the patterns community
and patterns vs. patents
- 1:04:15 Chapter 6, slide 4 6.2 The
Abstraction-Occurrence Pattern
- 1:04:42 Chapter 6, slide 5
Abstraction-Occurrence: Diagram
- 1:08:22 Chapter 6, slide 4
Abstraction-Occurrence: revisit of the description
- 1:09:45 Chapter 6, slide 6
Abstraction-Occurrence: Antipatterns
- Lecture 13 (click here to get
information
about viewing the video itself)
- 0:00:20 Chapter 6, slide 5
Abstraction-Occurrence - Solution (review)
- 0:00:40 Chapter 6, slide 6
Abstraction-Occurrence - Antipatterns (review)
- 0:01:08 Chapter 6, slide 7
Abstraction-Occurrence - Square variant
- 0:05:10 Chapter 6, slide 8 6.3 The General
Hierarchy Pattern (Composite)
- 0:08:22 Chapter 6, slide 9 General
Hierarchy - Solution
- 0:16:45 Chapter 6, slide 10 General
Hierarchy - Antipattern
- 0:19:03 Chapter 6, slide 11 6.4 The
Player-Role Pattern - context and problem
- 0:23:05 Chapter 6, slide 12 Player-Role -
Forces and solution
- 0:25:40 Chapter 6, slide 13 Player-Role -
Animal example
- 0:32:25 Chapter 6, slide 14 Player-Role -
Student attendance
- 0:33:55 Chapter 6, slide 15 Player-Role -
Antipatterns
- 0:34:55 Chapter 6, slide 16 6.5 The
Singleton Pattern
- 0:39:05 Chapter 6, slide 17 Singleton -
Solution
- 0:44:15 Chapter 6, slide 18 6.6 The
Observer Pattern
- 0:47:05 Chapter 6, slide 19 Observer -
Solution
- 0:57:05 Chapter 6, slide 20 Observer -
Antipatterns
- 0:58:25 Chapter 6, slide 21 6.7 The
Delegation Pattern
- 1:00:25 Chapter 6, slide 22 Delegation -
Solution diagram and Stack example
- 1:04:35 Chapter 6, slide 23 Delegation -
Airline example
- 1:06:50 Chapter 6, slide 24 Delegation -
Antipatterns + discussion of the Law Of Demeter (only accessing
neighbours)
- Lecture 14 (click here to get
information
about viewing the video itself)
- 0:01:20 Chapter 6, slide 25 6.8 The
Adapter pattern
- 0:03:28 Chapter 6, slide 26 Adapter -
solution
- 0:05:53 Chapter 6, slide 27 Adapter -
ThreeDShape and Torus example
- 0:09:20 Chapter 6, slide 28 6.9 The Façade
Pattern
- 0:11:23 Chapter 6, slide 29 Façade -
Solution and Airline example
- 0:16:00 Chapter 6, slide 30 6.10 The
Immutable Pattern
- 0:21:32 Chapter 6, slide 31 6.11 The
Read-only Interface Pattern
- 0:23:45 Chapter 6, slide 32 Read-only
Interface - Solution
- 0:29:35 Chapter 6, slide 33 Read-only
Interface - Person example
- 0:32:05 Chapter 6, slide 34 Read-only
Interface - Antipatterns
- 0:35:52 Chapter 6, slide 35 6.12 The Proxy
Pattern
- 0:39:20 Chapter 6, slide 36 Proxy -
solution
- 0:43:53 Chapter 6, slide 37 Proxy - List
and Student examples
- 0:48:47 Chapter 6, slide 38 6.13 Detailed
Example: The Observable layer of OCSF
- 0:57:40 Chapter 6, slide 39 The Observable
layert of OCSF - Details of ObservableClient and ObservableServer
- 0:58:39 Chapter 6, slide 40 Using the
Observable layer
- 0:59:50 Chapter 6, slide 41 6.14
Difficulties and Risks When Working With Patterns
- 1:00:45 Chapter 6, slide 42 Difficulties
and Risks When Working With Patterns - Continued
- 1:02:25 Chapter 7, slide 1 Chapter 7 -
Focusing on Users and Their Tasks - Introductory Slide
- 1:05:45 Chapter 7, slide 2 User Centered
Design
- 1:08:53 Chapter 7, slide 3 The Importance
of Focusing on Users
- 1:13:50 Chapter 7, slide 4 7.2
Characteristics of Users
- Lecture 15 (click here to get
information
about viewing the video itself)
- 0:00:17 Chapter 7, slide 5 7.3 Developing
Use-Case Models of Systems
- 0:01:40 Chapter 7, slide 6 Use cases -
General Rules
- 0:04:38 Chapter 7, slide 7 Scenarios -
Instances of a use case
- 0:06:14 Chapter 7, slide 8 How to Describe
a Single Use Case
- 0:09:23 Chapter 7, slide 9 Use Case
Diagrams
- 0:11:18 Chapter 7, slide 10 Extensions -
Handling optional or exceptional cases
- 0:13:55 Chapter 7, slide 11
Generalizations
- 0:14:21 Chapter 7, slide 12 Inclusions -
Representing common lower-level tasks
- 0:15:24 Chapter 7, slide 13 Example of
Generalization, Extension and Inclusion
- 0:19:15 Chapter 7, slide 14 Example
Description of a Use Case - Open file
- 0:21:23 Chapter 7, slide 15 Example
(continued) - Open file by typing name
- 0:23:35 Chapter 7, slide 16 Example
(continued) - Open file by browsing
- 0:24:17 Chapter 7, slide 17 Example
(continued) - Attempt to open file that does not exist
- 0:25:26 Chapter 7, slide 18 Example
(continued) Browse for file (inclusion)
- 0:27:56 Chapter 7, slide 19 The Modeling
Process: Choosing Use Cases on Which to Focus
- 0:31:30 Chapter 7, slide 20 The Benefits
of Basing Software Development on Use Cases
- 0:34:40 Chapter 7, slide 21 Use Cases Must
Not be Seen as a Panacea
- 0:36:34 Chapter 7, slide 22 7.4 Basics of
User Interface Design
- 0:43:26 Chapter 7, slide 23 Usability vs.
Utility
- 0:48:40 Chapter 7, slide 24 Aspects of
Usability: Learnability, efficiency of use, error handling and
acceptability
- 0:53:52 Chapter 7, slide 25 Different
Learning Curves
- 0:58:34 Chapter 7, slide 26 Some basic
Terminology of User Interface Design: Dialog, affordance, mode, etc.
- 1:05:07 Chapter 7, slide 27 6.5 Usability
Principles: Test with users; do use case analysis; simplicity
- 1:08:28 Chapter 7, slide 28 Usability
Principles: Visibility; feedback
- 1:11:40 Chapter 7, slide 29 Usability
Principles: Undo-ability; response time
- 1:15:25 Chapter 7, slide 30 Usability
Principles: Understandable encoding; lack of clutter
- 1:15:59 Chapter 7, slide 31 Usability
Principles: Individual differences; provide help
- 1:17:07 Chapter 7, slide 32 Usability
Principles: Consistency
- Lecture 16 (click here to get
information
about viewing the video itself)
- 0:00:17 Chapter 7, slide 33 Some encoding
techniques (text, icons, colour etc.)
- 0:03:10 Chapter 7, slides 34 and 35
Example (bad and better UI)
- 0:10:58 Chapter 7, slide 36 7.6 Evaluating
User Interfaces - Heuristic evaluation
- 0:13:42 Chapter 7, slide 37 Evaluating
User Interfaces - Observation of users
- 0:18:38 Chapter 7, slide 38 7.7
Implementing a Simple GUI in Java
- 0:20:30 Chapter 7, slide 39 Example code -
class ClientGUI
- 0:22:12 Chapter 7, slide 40 Example code -
ClientGui constructor
- 0:22:35 Chapter 7, slide 41 Example code -
actionListeners
- 0:24:27 Chapter 7, slide 42 7.8
Difficulties and Risks in Use Case Modelling and UI Design: users differ;
expect change
- 0:31:29 Chapter 7, slide 43 Difficulties
and Risks in Use Case Modelling and UI Design: Volume of work;
underestimating expertise
- 0:34:17 Chapter 8, slide 1 Chapter 8 -
Modelling Interactions and Behaviour - Introductory Slide
- 0:35:17 Chapter 8, slide 2 8.1 Interaction
Diagrams
- 0:36:52 Chapter 8, slide 3 Interactions
and Messages
- 0:37:59 Chapter 8, slide 4 Elements Found
in Interaction Diagrams
- 0:38:10 Chapter 8, slide 5 Creating
Interaction Diagrams
- 0:38:37 Chapter 8, slide 6 Sequence
Diagrams - Course and Registration example
- 0:46:12 Chapter 8, slide 7 Sequence
Diagrams - review of features
- 0:46:31 Chapter 8, slide 8 Sequence
Diagrams ? same example, more details
- 0:52:03 Chapter 8, slide 9 Sequence
Diagrams ? an example with replicated messages
- 0:55:52 Chapter 8, slide 10 Sequence
Diagrams ? an example with object deletion
- 0:57:45 Chapter 8, slide 11 Collaboration
Diagrams ? Course and Registration example
- 1:00:52 Chapter 8, slide 12 Collaboration
Diagrams - review of features
- 1:01:22 Chapter 8, slide 13 Collaboration
Diagrams ? same example, more details
- 1:04:45 Chapter 8, slide 14 Communication
Links - over associations
- 1:05:50 Chapter 8, slide 15 Other
communication links - local or parameter
- 1:06:37 Chapter 8, slide 16 Other
communication links - global and network
- 1:07:11 Chapter 8, slide 17 How to Choose
Between Using a Sequence or Collaboration Diagram - Sequence diagrams
- 1:08:45 Chapter 8, slide 18 How to Choose
Between Using a Sequence or Collaboration Diagram - Collaboration diagrams
- 1:11:07 Chapter 8, slide 19 Collaboration
Diagrams and Patterns
- Lecture 17 (click here to get
information
about viewing the video itself)
- 0:00:26 Chapter 8, slide 20 8.2 State
Diagrams
- 0:02:26 Chapter 8, slide 21 State Diagrams
- An Example: Tic-tac-toe / Noughts and Crosses
- 0:05:08 Chapter 8, slide 22 States -
Review of Concept
- 0:06:10 Chapter 8, slide 23 Transitions
- 0:07:30 Chapter 8, slide 24 State Diagrams
- an Example of Transitions with Time-outs and Conditions - Traffic Lights
- 0:17:23 Chapter 8, slide 25 State Diagrams
- an Example with Conditional Transitions - CourseSection Class
- 0:25:26 Chapter 8, slide 26 Activities in
State Diagrams
- 0:26:25 Chapter 8, slide 27 State Diagram
- An Example with Activity - Simple Jukebox
- 0:27:55 Chapter 8, slide 28 Actions in
State Diagrams
- 0:29:03 Chapter 8, slide 29 State Diagram
- An Example with Actions - Garage Door Opener
- 0:35:00 Chapter 8, slide 30 State Diagrams
- Another Example - Part of a Tape Recorder
- 0:37:55 Chapter 8, slide 31 Nested
Substates and Guard Conditions - A Car's Automatic Transmission
- 0:51:03 Chapter 8, slide 32 State Diagram
- An Example with Substates - CourseSection Class Again
- 0:53:33 Chapter 8, slide 33 8.3 Activity
Diagrams
- 0:55:24 Chapter 8, slide 34 Activity
Diagrams - An Example - Course Registration
- 1:00:14 Chapter 8, slide 35 Representing
Concurrency: Forks, Joins and Rendezvous
- 1:01:06 Chapter 8, slide 36 Representing
Concurrency - Continued
- 1:02:12 Chapter 8, slide 37 Swimlanes
- 1:02:35 Chapter 8, slide 38 Activity
Diagrams - An Example With Swimlanes
- 1:05:45 Chapter 8, slide 39 8.4
Implementing Classes Based on Interaction and State Diagrams - When to Use
Them
- 1:09:01 Chapter 8, slide 40 Example
Implementation: The CourseSection Class
- 1:11:30 Chapter 8, slide 41 Example
Implementation: The CourseSection Class - Continued
- 1:12:48 Chapter 8, slide 42 Example
Implementation: The CourseSection Class - Review of the Class Diagram
- 1:13:39 Chapter 8, slide 43 Example
Implementation: The CourseSection Class - Continued
- 1:14:30 Chapter 8, slide 44 Example
Implementation: The CourseSection Class - Constructor
- 1:16:03 Chapter 8, slide 45 Example
Implementation: The CourseSection Class - OpenRegistration Method
- 1:16:25 Chapter 8, slide 46 Example
Implementation: The CourseSection Class - CloseRegistration Method
- 1:16:38 Chapter 8, slide 47 Example
Implementation: The CourseSection Class - RequestToRegister Method
- 1:16:55 Chapter 8, slide 48 Example
Implementation: The CourseSection Class - Continued
- 1:17:07 Chapter 8, slide 49 8.5
Difficulties and Risks in Modelling Interactions and Behaviour
- Lecture 18 (click here to get
information
about viewing the video itself)
- 0:00:10 Chapter 9, slide 1 Chapter 9 -
Architecting and Designing Software - Introductory Slide
- 0:00:55 Chapter 9, slide 2 9.1 The Process
of Design
- 0:02:20 Chapter 9, slide 3 Design as a
Series of Decisions
- 0:04:33 Chapter 9, slide 4 Making
Decisions
- 0:06:26 Chapter 9, slide 5 Design Space
- 0:08:03 Chapter 9, slide 6 Component -
Definition
- 0:10:20 Chapter 9, slide 7 Module -
Definition
- 0:12:07 Chapter 9, slide 8 System -
Definition
- 0:15:45 Chapter 9, slide 9 UML Class
Diagram of System Parts
- 0:18:58 Chapter 9, slide 10 Top-Down and
Bottom-Up Design
- 0:19:41 Chapter 9, slide 11 Top-Down and
Bottom-Up Design - Continued
- 0:21:39 Chapter 9, slide 12 Different
Aspects of Design
- 0:24:37 Chapter 9, slide 13 9.2 Principles
Leading to Good Design - Overall Goals
- 0:26:40 Chapter 9, slide 14 Design
Principle 1: Divide and Conquer
- 0:29:18 Chapter 9, slide 15 Ways of
Dividing a Software System
- 0:31:19 Chapter 9, slide 16 Design
Principle 2: Increase Cohesion Where Possible
- 0:33:23 Chapter 9, slide 17 Functional
Cohesion
- 0:37:47 Chapter 9, slide 18 Layer Cohesion
- 0:39:32 Chapter 9, slide 19 Examples of
the Use of Layers
- 0:46:15 Chapter 9, slide 20
Communicational Cohesion
- 0:48:39 Chapter 9, slide 21 Sequential
Cohesion
- 0:50:36 Chapter 9, slide 22 Procedural
Cohesion
- 0:52:25 Chapter 9, slide 23 Temporal
Cohesion
- 0:55:24 Chapter 9, slide 24 Utility
Cohesion
- 0:58:30 Chapter 9, slide 25 Design
Principle 3: Reduce Coupling Where Possible
- 1:03:51 Chapter 9, slide 26 Content
Coupling
- 1:06:09 Chapter 9, slide 27 Example of
Content Coupling
- 1:08:33 Chapter 9, slide 28 Common
Coupling
- 1:12:36 Chapter 9, slide 29 Control
Coupling
- 1:15:21 Chapter 9, slide 30 Example of
Control Coupling
- 1:15:36 Chapter 9, slide 31 Stamp Coupling
- 1:16:17 Chapter 9, slide 32 Example of
Stamp Coupling - Using Simple Data Types to Avoid It
- Lecture 19 (click here to get
information
about viewing the video itself)
- 0:00:39 Chapter 9, slide 26 Content
Coupling - Review
- 0:00:53 Chapter 9, slide 28 Common
Coupling - Review
- 0:01:08 Chapter 9, slide 29 Control
Coupling - Review
- 0:01:57 Chapter 9, slide 31 Stamp Coupling
- 0:02:35 Chapter 9, slide 32 Example of
Stamp Coupling - Using Simple Data Types to Avoid It
- 0:04:00 Chapter 9, slide 33 Example of
Stamp Coupling - Using an Interface to Avoid It
- 0:06:22 Chapter 9, slide 34 Data Coupling
- 0:08:15 Chapter 9, slide 35 Routine Call
Coupling
- 0:10:11 Chapter 9, slide 36 Type Use
Coupling
- 0:12:00 Chapter 9, slide 37 Inclusion or
Import Coupling
- 0:15:57 Chapter 9, slide 38 External
Coupling
- 0:18:22 Chapter 9, slide 39 Design
Principle 4: Keep the Level of Abstraction as High as Possible
- 0:19:35 Chapter 9, slide 40 Abstraction
and Classes
- 0:20:01 Chapter 9, slide 41 Design
Principle 5: Increase Reusability Where Possible
- 0:21:49 Chapter 9, slide 42 Design
Principle 6: Reuse Existing Designs and Code Where Possible
- 0:25:28 Chapter 9, slide 43 Design
Principle 7: Design for Flexibility
- 0:28:27 Chapter 9, slide 44 Design
Principle 8: Anticipate Obsolescence
- 0:36:12 Chapter 9, slide 45 Design
Principle 9: Design for Portability
- 0:37:34 Chapter 9, slide 46 Design
Principle 10: Design for Testability
- 0:40:17 Chapter 9, slide 47 Design
Principle 11: Design Defensively
- 0:43:55 Chapter 9, slide 48 Design by
Contract
- 0:47:08 Chapter 9, slide 49 9.3 Techniques
for Making Good Design Decisions
- 0:50:20 Chapter 9, slide 50 Example
Priorities and Objectives
- 0:53:12 Chapter 9, slide 51 Example
Evaluation of Alternatives
- 0:55:34 Chapter 9, slide 52 Using
Cost-Benefit Analysis to Choose Among Alternatives
- 0:58:52 Chapter 9, slide 53 9.4 Software
Architecture
- 1:00:00 Chapter 9, slide 54 The Importance
of Software Architecture
- 1:01:24 Chapter 9, slide 55 Contents of a
Good Architectural Model
- 1:03:10 Chapter 9, slide 56 Design Stable
Architecture
- 1:03:42 Chapter 9, slide 57 Developing an
Architectural Model
- 1:05:20 Chapter 9, slide 58 Developing an
Architectural Model - Continued
- 1:06:16 Chapter 9, slide 59 Describing an
Architecture Using UML
- 1:06:30 Chapter 9, slide 60 Package
Diagrams
- 1:07:38 Chapter 9, slide 61 Subsystem
Diagrams
- 1:08:45 Chapter 9, slide 62 Component
Diagrams
- 1:09:41 Chapter 9, slide 63 Deployment
Diagrams
- 1:10:44 Chapter 9, slide 64 9.5
Architectural Patterns
- 1:11:22 Chapter 9, slide 65 The
Multi-Layer Architectural Pattern
- 1:11:50 Chapter 9, slide 66 Example of
Multi-Layer Systems - Layer Cohesion Revisited
- 1:12:31 Chapter 9, slide 67 The
Multi-Layer Architecture - Design Principles
- 1:13:05 Chapter 9, slide 68 The
Multi-Layer Architecture - Design Principles Continued
- 1:13:50 Chapter 9, slide 69 The
Client-Server and Other Distributed Architectural patterns
- 1:15:02 Chapter 9, slide 70 An Example of
a Distributed System
- 1:15:48 Chapter 9, slide 71 The
Distributed Architecture - Design Principles
- 1:15:59 Chapter 9, slide 73 The Broker
Architectural Pattern
- 1:16:55 Chapter 9, slide 74 Example of a
Broker System
- 1:18:40 Chapter 9, slide 75 The Broker
Architecture - Design Principles
- 1:19:00 Chapter 9, slide 76 The
Transaction-Processing Architectural Pattern
- 1:19:28 Chapter 9, slide 77 Example of a
Transaction-Processing System - Airline Reservations
- Lecture 20 (click here to get
information
about viewing the video itself)
- 0:00:20 Chapter 9, slide 65 The
Multi-Layer Architectural Pattern - Review
- 0:00:30 Chapter 9, slide 70 An Example of
a Distributed System - Review
- 0:00:36 Chapter 9, slide 74 The Broker
Architectural Pattern - Review
- 0:01:03 Chapter 9, slide 77 The
Transaction-Processing Architectural Pattern - Review
- 0:01:37 Chapter 9, slide 79 The
Pipe-and-Filter Architectural Pattern
- 0:03:00 Chapter 9, slide 80 Example of a
Pipe-and-Filter System - Sound Processing
- 0:07:40 Chapter 9, slide 79 The
Pipe-and-Filter Architectural Pattern - Revisited
- 0:08:48 Chapter 9, slide 81 The
Pipe-and-Filter Architecture - Design Principles
- 0:09:33 Chapter 9, slide 82 The
Pipe-and-Filter Architecture - Design Principles Continued
- 0:10:07 Chapter 9, slide 83 The
Model-View-Controller (MVC) Architectural Pattern
- 0:12:19 Chapter 9, slide 84 Example of the
MVC Architecture for a User Interface
- 0:17:28 Chapter 9, slide 85 The MVC
Architecture - Design Principles
- 0:18:42 Chapter 9, slide 86 9.6 Writing a
Good Design Document
- 0:20:45 Chapter 9, slide 87 Structure of a
Design Document
- 0:23:06 Chapter 9, slide 88 When Writing
the Document: Some General Rules about What to Exclude
- 0:25:47 Chapter 9, slide 89 9.7 Design of
a Feature of the SimpleChat System:
- 0:28:37 Chapter 9, slide 90 Design Example
- Issues
- 0:30:32 Chapter 9, slide 91 Design Example
- Details - Client Side
- 0:30:50 Chapter 9, slide 92 Design Example
- Details - Server Side
- 0:31:05 Chapter 9, slide 93 Design Example
- Details - Continued
- 0:31:15 Chapter 9, slide 94 Design Example
- Details - Conclusion
- 0:31:27 Chapter 9, slide 95 9.8
Difficulties and Risks in Design: Skill Required
- 0:32:54 Chapter 9, slide 96 Difficulties
and Risks in Design: Maintenance Effort Required
- 0:33:25 Chapter 10, slide 1 Chapter 10:
Testing and Inspecting to Ensure High Quality - Introductory Slide
- 0:34:54 Chapter 10, slide 2 10.1 Basic
Definitions
- 0:41:45 Chapter 10, slide 3 10.2 Effective
and Efficient Testing
- 0:43:54 Chapter 10, slide 4 Black-Box
Testing
- 0:45:19 Chapter 10, slide 5 Glass-Box
Testing (White-Box or Structural Testing)
- 0:48:43 Chapter 10, slide 6 Equivalence
Classes
- 0:53:34 Chapter 10, slide 7 Examples of
Equivalence Classes
- 0:58:42 Chapter 10, slide 8 Combinations
of Equivalence Classes
- 1:01:20 Chapter 10, slide 9 Example
Equivalence Class Combinations
- 1:05:47 Chapter 10, slide 10 Testing at
Boundaries of Equivalence Classes
- 1:07:28 Chapter 10, slide 11 Detecting
Specific Categories of Defects
- 1:07:51 Chapter 10, slide 12 10.3 Defects
in Ordinary Algorithms
- 1:09:20 Chapter 10, slide 13 Example of
Incorrect Logical Conditions Defect
- 1:14:28 Chapter 10, slide 14 Defects in
Ordinary Algorithms: Performing a Calculation in the Wrong Part of a
Control Construct
- 1:17:10 Chapter 10, slide 15 Example of
Performing a Calculation in the Wrong Part of a Control Construct
- 1:18:05 Chapter 10, slide 16 Defects in
Ordinary Algorithms: Not Terminating a Loop or Recursion
- 1:19:19 Chapter 10, slide 17 Defects in
Ordinary Algorithms: Not Setting Up the Correct Preconditions
- 1:19:58 Chapter 10, slide 18 Defects in
Ordinary Algorithms: Not Handling Null Conditions
- Lecture 21 (click here to get
information about viewing the video itself)
- 0:00:24 Chapter 10, slide 18 Defects in
Ordinary Algorithms: Not Handling Null Conditions
- 0:02:02 Chapter 10, slide 19 Defects in
Ordinary Algorithms: Not Handling Singleton or Non-Singleton Conditions
- 0:02:17 Chapter 10, slide 20 Defects in
Ordinary Algorithms: Off-By-One Errors
- 0:05:15 Chapter 10, slide 21 Example of an
Off-by-One Defect: Starting at an Index of 1 instead of 0
- 0:06:54 Chapter 10, slide 22 Defects in
Ordinary Algorithms: Operator Precedence Errors
- 0:08:32 Chapter 10, slide 23 Defects in
Ordinary Algorithms: Use of Inappropriate Standard Algorithms
- 0:09:43 Chapter 10, slide 24 Example of
Inappropriate Standard Algorithms: Sorting and Searching
- 0:13:48 Chapter 10, slide 25 10.4 Defects
in Numerical Algorithms: Not Using Enough Bits or Digits
- 0:16:08 Chapter 10, slide 26 Defects in
Numerical Algorithms: Not Using Enough Places After the Decimal Point or
Significant Figures
- 0:19:28 Chapter 10, slide 27 Defects in
Numerical Algorithms: Ordering Operations Poorly so Errors Build Up
- 0:22:34 Chapter 10, slide 28 Defects in
Numerical Algorithms: Assuming a Floating Point Value will be Exactly
Equal to Some Other value
- 0:24:25 Chapter 10, slide 29 Example of
Defect in Testing Floating-Point Value Equality
- 0:26:05 Chapter 10, slide 30 10.5 Defects
in Timing and Co-Ordination: Deadlock and Livelock
- 0:29:26 Chapter 10, slide 31 Defects in
Timing and Co-Ordination: Deadlock and Livelock - Testing Strategies
- 0:31:31 Chapter 10, slide 32 Example of
Deadlock: UML Sequence Diagram
- 0:34:17 Chapter 10, slide 33 Defects in
Timing and Co-Ordination: Critical Races
- 0:36:23 Chapter 10, slide 34 Example of a
Critical Race
- 0:39:04 Chapter 10, slide 35 Semaphores
and Synchronization
- 0:40:02 Chapter 10, slide 36 Example of a
Synchronized Method
- 0:41:52 Chapter 10, slide 37 10.6 Defects
in Handling Stress and Unusual Situations: Insufficient Throughput or
Response Time
- 0:47:07 Chapter 10, slide 38 Defects in
Handling Stress and Unusual Situations: Incompatibility with Specific
Configurations of Hardware or Software
- 0:49:18 Chapter 10, slide 39 Defects in
Handling Stress and Unusual Situations: Defects in Handling Peak Loads or
Missing Resources
- 0:52:53 Chapter 10, slide 40 Defects in
Handling Stress and Unusual Situations: Inappropriate Management of
Resources (e.g. Memory Leaks)
- 0:56:34 Chapter 10, slide 41 Defects in
Handling Stress and Unusual Situations: Defects in the Process of
Recovering from a Crash
- 0:59:06 Chapter 10, slide 42 10.7
Documentation Defects
- 1:00:17 Chapter 10, slide 43 10.8 Writing
Formal Test Cases and Test Plans
- 1:01:56 Chapter 10, slide 44 Test Plans
- 1:03:37 Chapter 10, slide 45 Information
to Include in a Formal Test Case
- 1:04:47 Chapter 10, slide 46 Levels of
Importance of Test Cases
- 1:06:33 Chapter 10, slide 47 Determining
Test Cases by Enumerating Attributes
- 1:07:47 Chapter 10, slide 48 10.9
Strategies for Testing Large Systems
- 1:10:46 Chapter 10, slide 49 Top Down
Testing
- 1:11:16 Chapter 10, slide 50 Bottom-Up
Testing
- 1:11:30 Chapter 10, slide 51 Sandwich
Testing
- 1:15:09 Chapter 10, slide 52 Vertical
Strategies for Incremental Integration Testing
- 1:15:57 Chapter 10, slide 53 The
Test-Fix-Test Cycle
- 1:17:16 Chapter 10, slide 54 The Ripple
Effect
- 1:17:49 Chapter 10, slide 55 Regression
Testing
- 1:20:00 Chapter 10, slide 56 Deciding When
to Stop Testing
- Lecture 22 (click here to get
information about viewing the video itself)
- 0:00:39 Chapter 10, slide 57 The Roles of
People Involved in Testing
- 0:01:54 Chapter 10, slide 58 Testing
Performed by Users and Clients: Alpha, Beta and Acceptance Testing
- 0:04:35 Chapter 10, slide 59 10.10
Inspections
- 0:05:49 Chapter 10, slide 60 Roles on
Inspection Teams
- 0:07:55 Chapter 10, slide 61 Principles of
Inspecting: Choosing Teams and Preparing
- 0:09:10 Chapter 10, slide 62 Principles of
Inspecting: An Efficient Process
- 0:10:32 Chapter 10, slide 63 Principles of
Inspecting: Limiting Inspection Time and Reinspecting
- 0:11:02 Chapter 10, slide 64 A Peer-Review
Process
- 0:12:34 Chapter 10, slide 65 Conducting
and Inspection Meeting
- 0:15:21 Chapter 10, slide 66 Inspection
Compared to Testing
- 0:18:03 Chapter 10, slide 67 Testing or
Inspecting, Which Comes First?
- 0:19:19 Chapter 10, slide 68 10.11 Quality
Assurance in General
- 0:20:51 Chapter 10, slide 69 Measure
Quality and Strive for Continual Improvement
- 0:23:41 Chapter 10, slide 70 Post-Mortem
Analysis
- 0:24:45 Chapter 10, slide 71 Process
Standards: PSP, TSP, CMM and ISO 9000-2
- 0:29:27 Chapter 10, slide 79 10.13
Difficulties and Risks in Quality Assurance - Missing things and the
conflict with meeting deadlines
- 0:32:35 Chapter 10, slide 80 Difficulties
and Risks in Quality Assurance - people have different abilities
- 0:35:01 Chapter 11, slide 1 Managing the
Software Process - Introductory Slide
- 0:35:25 Chapter 11, slide 2 11.1 What is
Project Management?
- 0:36:25 Chapter 11, slide 3 What is
Project Management - continued
- 0:38:00 Chapter 11, slide 4 11.2 Software
Process Models
- 0:38:48 Chapter 11, slide 5 The
Opportunistic Approach - A Bad Approach
- 0:39:39 Chapter 11, slide 6 The
Opportunistic Approach - Continued
- 0:40:30 Chapter 11, slide 7 The Waterfall
Model
- 0:42:25 Chapter 11, slide 8 The Waterfall
Model - Positive Features
- 0:43:12 Chapter 11, slide 9 Limitations on
the Waterfall Model
- 0:45:03 Chapter 11, slide 10 The
Phased-Release Model
- 0:45:57 Chapter 11, slide 11 The
Phased-Release Model - New Ideas
- 0:47:05 Chapter 11, slide 12 The Spiral
Model
- 0:48:26 Chapter 11, slide 13 The Spiral
Model - New Ideas
- 0:48:40 Chapter 11, slide 14 The
Evolutionary Model
- 0:49:30 Chapter 11, slide 15 The
Evolutionary Model - New Ideas
- 0:50:49 Chapter 11, slide 16 The
Concurrent Engineering Model
- 0:51:45 Chapter 11, slide 17 The
Concurrent Engineering Model - New Ideas
- 0:53:02 Chapter 11, slide 18 Choosing a
Process Model
- 0:53:33 Chapter 11, slide 19 Reengineering
- 0:54:27 Chapter 11, slide 20 11.3 Cost
Estimation: Elapsed Time vs. Development Effort
- 0:57:59 Chapter 11, slide 21 Principles of
Effective Cost Estimation 1: Divide and Conquer
- 0:58:51 Chapter 11, slide 22 Principles of
Effective Cost Estimation 2: Include all Activities
- 0:59:38 Chapter 11, slide 23 Principles of
Effective Cost Estimation 3: Base Estimates on Experience
- 1:00:23 Chapter 11, slide 24 Algorithmic
Models
- 1:03:48 Chapter 11, slide 25 Algorithmic
Models - continued
- 1:04:57 Chapter 11, slide 26 Principles of
Effective Cost Estimation 4: Account for Differences
- 1:08:23 Chapter 11, slide 27 Principles of
Effective Cost Estimation 5: Anticipate Worst Case
- 1:10:24 Chapter 11, slide 28 Principles of
Effective Cost Estimation 6: Combine Independent Estimates
- 1:11:09 Chapter 11, slide 29 Principles of
Effective Cost Estimation 7: Revise and Refine as Work Progresses
- 1:11:57 Chapter 11, slide 30 11.4 Building
Software Engineering Teams
- 1:12:15 Chapter 11, slide 31 Software
Engineering Teams: Egoless Team
- 1:12:42 Chapter 11, slide 30 Slide 30
again
- 1:13:01 Chapter 11, slide 33 Software
Engineering Teams: Chief-Programmer
- 1:13:32 Chapter 11, slide 30 Slide 30
again
- 1:13:45 Chapter 11, slide 32 Software
Engineering Teams: Hierarchical
- 1:14:25 Chapter 11, slide 34 Choosing an
Effective Size for a Team
- 1:15:47 Chapter 11, slide 37 PERT Charts
- 1:16:09 Chapter 11, slide 38 Example of a
PERT Chart
- 1:18:04 Chapter 11, slide 39 Gantt Charts
- 1:18:25 Chapter 11, slide 40 Example of a
Gantt Chart
Back to the video page.
Back to the book's main page
|