0
SE-381
Software Engineering
BEIT-V
Lecture no. 27
(Object Oriented Analysis / Design,
and Class Diagrams)
Function Oriented Versus Object
Oriented Analysis / Design
• Function Oriented
– Functions that are to be
performed by the...
Elicitation of Objects and
Methods
• There are three well-used approaches:
– Abbot’s Textual Analysis (later developed
by ...
Textual Analysis
• Some Important Steps
1. Read the problem
2. Mark all nouns and verbs; Nouns will point to
Objects, Clas...
An Example – Cyberspace Invaders
A panel displays a defender and an alien. The alien
moves sideways. When it hits a wall, ...
Some Guidelines
Part of Speech Model Concept Example
Proper Noun Instance SSA/D by
Yourdon
Improper Noun Class/Obj/Role St...
Having Verb Composition Fan has wings
Adjective Attribute Value Ball is green
Adjective
Phrase
Association The Customer
wi...
2. Underline all the nouns
A panel displays a defender and an alien. The alien
moves sideways. When it hits a wall, it rev...
3. List of Nouns without Duplicates
• Initial Pass – Potential Objects
– Panel, defender, alien, wall, bomb, mouse, laser
...
Class Diagrams
– Class diagrams are backbone of all OO
Methods
– These are too rich and are overwhelming
to use
– While dr...
– When working with Software, concentrate on
Specification models,
– When illustrating implementation techniques, draw
imp...
Some References
– Martin Fowler and Kendall Scott (2000);
UML distilled, 2nd Ed, Addison Wesley,
Reading, Ch-4 Class Diagr...
Object Oriented SDLC Model
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Se 381 -  lec 27 - 12 jun05 - ooa and ood and class diagrams
Upcoming SlideShare
Loading in...5
×

Se 381 - lec 27 - 12 jun05 - ooa and ood and class diagrams

341

Published on

Software Engineering, Lectures

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
341
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Se 381 - lec 27 - 12 jun05 - ooa and ood and class diagrams"

  1. 1. SE-381 Software Engineering BEIT-V Lecture no. 27 (Object Oriented Analysis / Design, and Class Diagrams)
  2. 2. Function Oriented Versus Object Oriented Analysis / Design • Function Oriented – Functions that are to be performed by the system are identified – Data on which these functions are to be performed are identified – Functions and Data have M;N mapping – Every Effort is made to make a modular program to get a maintainable system But … • Object Oriented – Relatively new approach – Real life system is studied and Objects and Classes are identified – Their attributes or data are worked out, and methods, operations or services these objects provide are identified – Attributes and Methods are encapsulated in the form of Classes, Objects or components – Relationships between these components highlighted, to get a highly maintainable system
  3. 3. Elicitation of Objects and Methods • There are three well-used approaches: – Abbot’s Textual Analysis (later developed by Garaham et al) – Grady Booch’s Method • Extension of DFDs to identify Objects and the bubbles identifying the Methods or services provided by the Objects – Peter Coad’s Pattern System
  4. 4. Textual Analysis • Some Important Steps 1. Read the problem 2. Mark all nouns and verbs; Nouns will point to Objects, Classes and Attributes, whereas the Verbs will point to Methods, Services being provided by Objects/Classes and their relationships 3. List all possible nouns, leaving the duplicates and aliases 4. Review the list, add if anything need to be added by virtue of Solution or Problem domain 5. Categorize what is Class, Object or an Attribute
  5. 5. An Example – Cyberspace Invaders A panel displays a defender and an alien. The alien moves sideways. When it hits a wall, it reverses its direction. The alien randomly launches a bomb that moves vertically downwards. If a bomb hits the defender, the user loses and the game is over. The defender moves left or right according to mouse movements, when the mouse is clicked, the defender launches a laser that moves upwards. If a laser hits the alien, the user wins and the game is over. A Button is provided to start a new game.
  6. 6. Some Guidelines Part of Speech Model Concept Example Proper Noun Instance SSA/D by Yourdon Improper Noun Class/Obj/Role Student, Teacher Doing Verb Operation Buy Being Verb Classification Is a horse, is a book
  7. 7. Having Verb Composition Fan has wings Adjective Attribute Value Ball is green Adjective Phrase Association The Customer with children Operation The Customer who bought the book
  8. 8. 2. Underline all the nouns A panel displays a defender and an alien. The alien moves sideways. When it hits a wall, it reverses its direction. The alien randomly launches a bomb that moves vertically downwards. If a bomb hits the defender, the user loses and the game is over. The defender moves left or right according to mouse movements, when the mouse is clicked, the defender launches a laser that moves upwards. If a laser hits the alien, the user wins and the game is over. A Button is provided to start a new game.
  9. 9. 3. List of Nouns without Duplicates • Initial Pass – Potential Objects – Panel, defender, alien, wall, bomb, mouse, laser • Translation of Objects into Classes – panel translates into the Panel class, available in the library. Similarly defender and alien translate into classes Defender and Alien respectively. The noun wall need not be implemented as a class because it can be simply accommodated as a detail within the class Alien. The noun bomb translates into class Bomb. The noun mouse need not to be implemented, instead mouse clicks will be handled by Panel or Defender Classes. Hence we get to the following list of non-library classes – Game, Defender, Alien, Laser, Bomb
  10. 10. Class Diagrams – Class diagrams are backbone of all OO Methods – These are too rich and are overwhelming to use – While drawing Class diagrams • Don’t try to use all the notations available to you, start with simple stuff – classes, associations, attributes, generalization and constraints. • Fit the perspective from which you are drawing the model to the stage of the project – For Analysis draw Conceptual Models
  11. 11. – When working with Software, concentrate on Specification models, – When illustrating implementation techniques, draw implementation model • Don’t draw models for everything; instead, concentrate on the key areas. Better have few diagrams that you use and keep them up to date, than to have many obsolete models • The biggest danger with Class Diagrams it that you can bogged down in implementation details for too early. To combat this, focus on the conceptual and specification perspectives.
  12. 12. Some References – Martin Fowler and Kendall Scott (2000); UML distilled, 2nd Ed, Addison Wesley, Reading, Ch-4 Class Diagrams pp: 49-66 – Risk Assessment examples - IEEE Std 1074-1995 – Win Win Spiral Model • http://sunset.usc.edu/classes/cs5777a_98/lectu res/04 • http://www.sea.uni- linz.ac.at/systtechnik/lehranstaltungen/st_old_srv/introwinwin/
  13. 13. Object Oriented SDLC Model
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×