Object Oriented Design I-Software Engineering-Lecture Slides, Slides of Software Engineering

Software Engineering one of core subject in Computer Science. This lecture was delived by Dr. Shrya Gopal at Bengal Engineering and Science University as one of lecture from lecture series on course. This lecture includes: Object-oriented, Design, Requirement, Document, Collection, Parameters, Job, Monitoring, Functionality, Database, Waterfall, Model, Language

Typology: Slides

2011/2012

Uploaded on 08/26/2012

parveen
parveen 🇮🇳

4.6

(9)

88 documents

1 / 29

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS 501: Software Engineering
Fall 2000
Lecture 11
Object-Oriented Design I
docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d

Partial preview of the text

Download Object Oriented Design I-Software Engineering-Lecture Slides and more Slides Software Engineering in PDF only on Docsity!

CS 501: Software Engineering

Fall 2000

Lecture 11

Object-Oriented Design I

docsity.com

Administration

  • Preparation for presentation

-- Recitation Section, Monday October 2 -- Not all members of team need be present

  • Fall Programming Contest for this year will be on October 14th, organized by the ACSU and David Kempe.

http://www.cs.cornell.edu/kempe/contest/default.html

docsity.com

What is in a Requirements Document?

Remember

  • The requirements document specifies the functionality that you plan to deliver to the client
  • It must be comprehensive and detailed. Everything must be written out -- no hand waving!

The requirements document is likely to be several times as long as Assignment 1.

docsity.com

Assignment 2 -- Individual Parts

One approach:

With your document, include a list of who contributed what part to the Requirements study, e.g.,

Person A

Requirements analysis for database design (member of team of 3), wrote Section 3.1 of document, worked with client to identify software needs.

Person B

Prepared visual aids for presentation, edited entire document, specified the security needs and wrote Section 4.2. docsity.com

Useful Texts

Grady Booch, James Rumbaugh, Ivar Jacobson, The Unified Modeling Language. Addison-Wesley 1999.

Grady Booch, Object-Oriented Analysis and Design with Applications , second edition. Benjamin/Cummings 1994.

Rob Pooley, Perdita Stevens, Using UML Software Engineering with Objects and Components. Addison-Wesley

docsity.com

The Importance of Modeling

  • A model is a simplification of reality.
  • We build models so that we can better understand the system we are developing.
  • We build models of complex system because we cannot comprehend such a system in its entirety.

Models can be informal or formal. The more complex the project the more valuable a formal model becomes.

BRJ

docsity.com

The Unified Modeling Language

UML is a standard language for modeling software systems.

  • Serves as a bridge between the requirements specification and the implementation.
  • Provides a means to specify and document the design of a software system.
  • Is process and programming language independent.
  • Is particularly suited to object-oriented program development.

docsity.com

Notation: Classes

Window origin size open() close() move() display()

name

attributes

operations

A class is a description of a set of objects that share the same attributes, operations, relationships and semantics.

docsity.com

Notation: Collaboration & Use Case

Place order

A use case is a description of a set of sequence of actions that a system performs that yields an observable result.

Chain of responsibility

A collaboration defines an interaction, i.e., a society of roles and other elements that work together to provide some cooperative behavior.

docsity.com

Notation: Active Class

EventManager eventlist suspend() flush()

An active class is a class whose objects own one or more processes or threads and therefore can initiate control activity.

docsity.com

Notation: Behavioral Things:

Messages & States

display

An interaction is a behavior that comprises a set of messages exchanged among a set of objects within a particular context to accomplish a specific purpose.

Waiting

A state machine is a behavior that specifies the sequence of states an object or an interaction goes through during its lifetime in response to events. docsity.com

Notation: Grouping and Annotation

A package is a general-purpose mechanism for organizing elements into groups.

Business rules

return copy of self

A note is a symbol for rendering constraints and comments attached to an element or a collection of elements. docsity.com

Notation: Relationships (continued)

A generalization is a specialization/generalization relationship is which objects of the specialized element (child) are substitutable for objects of the generalized element (parent).

child parent

A realization is a semantic relationship between classifiers, wherein one classifier specifies a contract that another classifier guarantees to carry out. docsity.com

Diagrams in UML

A diagram is the graphical representation of a set of elements, usually rendered as a connected graph of vertices (things) and arcs (relationships).

  • Class diagram shows a set of classes, interfaces, and collaborations with their relationships.
  • Object diagram shows a set of objects and their relationships.
  • Use case diagram shows a set of use cases and actors (a special kind of class) and their relationships.

docsity.com