Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

28
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1

Transcript of Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Page 1: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Structured Vs. Object Oriented Analysis and Design

SAD Vs. OOAD

1

Page 2: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Software process model

2

Requirements Specification

Design and Implementation Validation Evolution

Page 3: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Modeling

A model is an abstract view of a system

We create a model to gain better understanding of an entity, for example a model of a plane is a small plane.

When the entity is software, the model takes a different form.

3

Page 4: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

A software Model

A software model must be capable of representing : the information that the software

transforms, the functions that enable the

transformation to occur, and the behavior of the system as the

transformation takes place.

4

Page 5: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Structured Analysis Vs. Object Oriented Modeling

1-Behavioural Models: Data processing models that show how data is processed as it moves through the system (Data Flow Diagram -DFD and Entity Relation diagram- ER).

Will be covered in this course

2- OR Object Models: Use case diagrams and Class diagram. Focus on Objects rather than data or process

Covered in previous course

5

Page 6: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Object Oriented Analysis and Design

OOAD

6

Page 7: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Commonly used UML diagram types

1. Activity diagrams, which show the activities involved in a process or in data processing .

2. Use case diagrams, which show the interactions between a system and its environment.

3. Sequence diagrams, which show interactions between actors and the system and between system components.

4. Class diagrams, which show the object classes in the system and the associations between these classes.

5. State diagrams, which show how the system reacts to internal and external events.

7

Page 8: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

1- Context Model for ATM

8

Auto-tellersystem

Securitysystem

Maintenancesystem

Accountdatabase

Usagedatabase

Branchaccountingsystem

Branchcountersystem

Auto-tellersystem

Securitysystem

Maintenancesystem

Accountdatabase

Usagedatabase

Branchaccountingsystem

Branchcountersystem

Context models show what lies outside the system boundaries.

Page 9: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

2- Interaction models A- Use case

A use case in the MHC-PMS

9

Page 10: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

2- Interaction modelsB- Sequence diagrams

Sequence diagrams are part of the UML and are used to model the interactions between the actors and the objects within a system.

A sequence diagram shows the sequence of interactions that take place during a particular use case or use case instance.

The objects and actors involved are listed along the top of the diagram, with a dotted line drawn vertically from these.

Interactions between objects are indicated by annotated arrows.

10

Page 11: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex: Sequence diagram for View patient information

11

Page 12: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

3- Structural modelsA- Class diagrams

An association is a link between classes that indicates that there is some relationship between these classes.

When you are developing models during the early stages of the software engineering process, think of objects represent something in the real world, such as a patient, a prescription, doctor, etc.

12

Page 13: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex: Classes and associations in the MHC-PMS

13

Page 14: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex:The Consultation class

14

Page 15: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

4- Behavioral models

Behavioral models are models of the dynamic behavior of a system as it is executing. They show what happens or what is supposed to happen when a system responds to a stimulus from its environment.

15

Page 16: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

4- Behavioral modelsA- Data-driven modeling – Activity diagram

Many business systems are data-processing systems that are primarily driven by data. They are controlled by the data input to the system, with relatively little external event processing.

Data-driven models show the sequence of actions involved in processing input data and generating an associated output.

They are particularly useful during the analysis of requirements as they can be used to show end-to-end processing in a system.

16

Page 17: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Data-driven modeling

Data flow diagrams (DFDs) may be used to model the system’s data processing.

These show the processing steps as data flows through a system.

UML does not support DFDs . UML use activity diagram instead.

17

Page 18: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex: An activity model of the insulin pump’s operation

18

Page 19: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

4- Behavioral models B- Event-driven modeling - State diagram

Event-driven modeling shows how a system responds to external and internal events.

19

Page 20: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex: State diagram of a microwave oven

20

Page 21: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Structures Analysis and Design

SAD

21

Page 22: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Ex: DFD

22

Context diagram shows the system boundaries, external entities that interact with the system, and major information flows between entities and the system.

Page 23: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Structures Analysis Vs. Object Oriented

23

Page 24: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

Comparison

24

Object Oriented Structured

Incremental/Iterative SDLC Methodology

Object Process Focus

Emerging Mature and wide spread Maturity

Large projects with changing requirements

Well defined projects with stable user requirements

Suitable for

Page 25: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

25

Page 26: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

We can always use a tool to draw any model

26

Page 27: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

What is CASE?

27

CASE (Computer Aided Software Engineering)

Programs used to support software process activities such as system modeling, debugging, and testing

Some CASE tools include automatic code generation from diagrams.

Page 28: Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD 1.

References

http://www.slideshare.net/mksaad/structure-vs-object-oriented-analysis-and-design

Sommerville, Ian ,“Software Engineering”, 9th edition, PEARSON

28