You are on page 1of 16

Lecture 01, 02

Introduction to Analysis & Design


Difference b/w Structured & OO Analysis & Design
Structured Analysis & Design
Course Objectives

 Understand the
• fundamental concepts of OO paradigm
• the iterative development
• Unified Modeling Language (UML) notation
• models used for OO analysis
• models used for OO design
• concept and use of patterns in OO design
 Analyze, design and implement a small scale project
within a team using UML notation and applying the
GRASP patterns
 Use different tools for OO analysis and modeling
Evaluation Criteria
Item Partial Weight

Quizzes 10%

Midterm(s) 20%

Presentation 10%

Project 20%

Class Activities 20%

Final 20%
Recommended Book
 Applying UML and Patterns: An Introduction to
Object Oriented Analysis & Design and Iterative
Development by Craig Larman, 3rd edition.
Course Contents in Brief
 Introduction to Structured Analysis & Design
 Introduction to Object Oriented Analysis and Design
 Iterative development
 Unified Modeling Language
 Requirements modeling using
 use cases, use case diagrams and scenarios, Sequence Diagram (System
level)
 Domain modeling
 creating domain models from requirements, System Sequence Diagrams
(SSDs), Operation contracts, System layers
 Interaction diagrams
 sequence & collaboration diagrams
 Design Class Diagrams
 Classes, method names, multiobjects, navigability, dependency relationships,
reference attributes & role names
 GRASP patterns and their application
What is Software Construction?

"The general name for detailed design,


coding, unit testing, and related activities - the
collection of activities focused on creating
source code.“

IEEE Std 610.12-1990


System Development Lifecycle
Different phases of system development life cycle
 Feasibility study
 System analysis
 System design Focus of Course OOA & OOD
 Coding
 Testing
 Implementation/Deployment
 Maintenance
What is Analysis & Design?
 Analysis — An investigation of the problem and requirements,
rather than a solution
• Focus on the business problems, i.e., WHAT the system must do in
terms of Data, Processes, and Interfaces
• Example: if a new online trading system is desired, how will it be used?
What are its functions? Who are doing it? What data is involved ? How
are these data and processes linked?

 Design — A conceptual solution that fulfills the requirements


rather than its implementation. Focus on How it will be done
• Example: a description of a database schema, software objects,
methods of objects, relationship between the objects
What is Analysis & Design?
Systems Analysis and Design

 Two common approaches

• Structured Analysis & Design (SAD)

• Object Oriented Analysis & Design (OOAD)


Difference Between Structured and OO Analysis
& Design

Structured Object-Oriented

Methodology SDLC Iterative/Incremental

Focus Processes Objects

Reuse Low High

Suitable for Well-defined projects with Risky large projects with


stable user requirements changing user requirements

11
Difference Between SAD and OOAD

Phase Structured Object-Oriented


Analysis Structuring Requirement Engineering
Requirements •Use Case Model (Uses Cases diagrams & text,
•DFDs Flow of events, Activity diagram)
•Structured English •Object Model
•Decision Table / Tree • Domain model (Conceptual classes,
•ER Analysis their attributes & associations)

Design • DB design • Design elements


• (DB • Design classes: methods, collaboration
normalization) b/w classes
• GUI design • System Architecture
• (forms & reports) • GUI design

12
INTRODUCTION TO STRUCTURED
ANALYSIS & DESIGN
Structured Analysis and Design (SAD)
Analysis Phase
1.Determining system requirements
2.Structuring system process requirements
3.Modeling logical requirements (logical modeling)
4.Structuring system data requirements

Design Phase
1.Database design (DB normalization)
2.Forms and report design (GUI design)
Structured Analysis and Design (SAD)
 Analysis Phase
1.Determine system requirements:
• Interviewing: individuals and/or group, brainstorming, prototyping,
analysis of existing systems etc.

2.Structuring system process requirements


 Data Flow Diagram (DFD) – logical process modeling
• Context diagram
• DFD levels (process decomposition)
DFD Symbols

External Entity is an object outside the


system, with which the system communicates.
Sources and destinations of the system's I/Os

A Process transforms incoming


data flow into outgoing data flow

Data stores are repositories of


data in the system.

Dataflow represents a pipeline


through which packets of
information flow. Label the arrows
with the name of the data that
moves through it.

You might also like