SlideShare a Scribd company logo
1 of 44
Analysis Modeling
Departemen Ilmu Komputer IPB
2009




                           Pressman 5th Ed. 2001 - Chapter 12
                           Analysis Modelling
Analysis Modeling:
         Where to Begin?
   A statement of scope can be acquired from:
    ◦ the FAST (Facilitated Application Specification
      Technique) working document
    ◦ A set of use-cases
   the statement of scope must be “parsed” to
    extract data, function and behavioral domain
    information




                                      Pressman 5th Ed. 2001 - Chapter 12
                                      Analysis Modelling
Statement of Scope
    a relatively brief description of
     the system to be built
     ◦ indicates data that are input and
       output and basic functionality
     ◦ indicates conditional processing (at
       a high level)
     ◦ implies certain constraints and
       limitations
                               Pressman 5th Ed. 2001 - Chapter 12
                               Analysis Modelling
Identifying Objects
and Operations
    define “objects” by underlining all nouns
     in the written statement of scope
       producers/consumers of data
       places where data are stored
       “composite” data items
    define “operations” by double
     underlining all active verbs
       processes relevant to the application
       data transformations
    consider other “services” that will be
     required by the objects


                                       Pressman 5th Ed. 2001 - Chapter 12
                                       Analysis Modelling
Data Modeling
and
Entity Relationship (E-R)
Diagramming



                     Pressman 5th Ed. 2001 - Chapter 12
                     Analysis Modelling
Why Data Modeling?
   examines data objects
    independently of processing
   focuses attention on the data
    domain
   creates a model at the
    customer’s level of abstraction
   indicates how data objects relate
    to one another
                         Pressman 5th Ed. 2001 - Chapter 12
                         Analysis Modelling
What is a Data Object?
Object —something that is described by a set
of attributes (data items) and that will be
manipulated within the software (system)
    each instance of an object (e.g., a book)
    can be identified uniquely (e.g., ISBN #)
    each plays a necessary role in the system
    i.e., the system could not function without
    access to instances of the object
    each is described by attributes that are
    themselves data items


                                  Pressman 5th Ed. 2001 - Chapter 12
                                  Analysis Modelling
Typical Objects
   external entities (printer, user, sensor)
   things (e.g, reports, displays, signals)
   occurrences or events (e.g., interrupt, alarm)
   roles (e.g., manager, engineer, salesperson)
   organizational units (e.g., division, team)
   places (e.g., manufacturing floor)
   structures (e.g., employee record)




                                 Pressman 5th Ed. 2001 - Chapter 12
                                 Analysis Modelling
Data Objects and Attributes
A data object contains a set of attributes that
act as an aspect, quality, character-istic, or
descriptor of the object
            object: automobile
            attributes:
               make
               model
               body type
               price
               options code


                                Pressman 5th Ed. 2001 - Chapter 12
                                Analysis Modelling
What is a Relationship?
relationship —indicates “connectedness”;
 a "fact" that must be "remembered"
  by the system and cannot or is not computed
  or derived mechanically
     several instances of a
      relationship can exist
     objects can be related in many
      different ways
                              Pressman 5th Ed. 2001 - Chapter 12
                              Analysis Modelling
ERD Notation
One common form:
             (0, m)
 object 1             relationship            object 2
                                     (1, 1)

                                                   attribute
 Another common form:

  object 1            relationship
                                               object 2
             (0, m)                  (1, 1)




                                      Pressman 5th Ed. 2001 - Chapter 12
                                      Analysis Modelling
Building an ERD

  Level 1—model all data objects (entities)
   and their “connections” to one another
  Level 2—model all entities and
   relationships
  Level 3—model all entities, relationships,
   and the attributes that provide further
   depth



                               Pressman 5th Ed. 2001 - Chapter 12
                               Analysis Modelling
The ERD: An Example
                                             request
Customer                 places              for service
             (1,1)                   (1,m)
                                                   (1,1)
 standard                                    generates (1,n)         work
task table                                                           order
(1,1)                                                        (1,1)        (1,1)
 selected             work        (1,w)      consists
    from  (1,w)       tasks                     of
                                  (1,i)
                     materials                  lists




                                                 Pressman 5th Ed. 2001 - Chapter 12
                                                 Analysis Modelling
Creating a Flow Model




                Pressman 5th Ed. 2001 - Chapter 12
                Analysis Modelling
The Flow Model
    Every computer-based system is an
    information transform ....


                computer
    input        based            output
                 system




                            Pressman 5th Ed. 2001 - Chapter 12
                            Analysis Modelling
Flow Modeling Notation

            external entity


            process


            data flow

            data store


                      Pressman 5th Ed. 2001 - Chapter 12
                      Analysis Modelling
External Entity
   A producer or consumer of data

  Examples: a person, a device, a sensor
  Another example: computer-based
  system
  Data must always originate somewhere
  and must always be sent to something


                            Pressman 5th Ed. 2001 - Chapter 12
                            Analysis Modelling
Process
      A data transformer (changes input
      to output)

   Examples: compute taxes, determine area,
   format report, display graph
   Data must always be processed in some
   way to achieve system function



                              Pressman 5th Ed. 2001 - Chapter 12
                              Analysis Modelling
Data Flow

   Data flows through a system, begins
   as input and is transformed into output.
       base
                 compute
                             area
                 triangle
     height         area




                             Pressman 5th Ed. 2001 - Chapter 12
                             Analysis Modelling
Data Stores
          Data is often stored for later use.

             sensor #
                                       sensor #, type,
                         look-up       location, age
                          sensor
  report required          data
                                          type,
                    sensor number         location, age

                                    sensor data



                                         Pressman 5th Ed. 2001 - Chapter 12
                                         Analysis Modelling
Data Flow Diagramming:
Guidelines
    all icons must be labeled with
     meaningful names
    the DFD evolves through a number of
     levels of detail
    always begin with a context level
     diagram (also called level 0)
    always show external entities at level 0
    always label data flow arrows
    do not represent procedural logic 2001 - Chapter 12
                                Pressman 5th Ed.
                                   Analysis Modelling
Constructing a DFD—I
   review ERD to isolate data
    objects and grammatical parse to
    determine “operations”
   determine external entities
    (producers and consumers of
    data)
   create a level 0 DFD



                        Pressman 5th Ed. 2001 - Chapter 12
                        Analysis Modelling
Level 0 DFD Example

           processing
 user        request                 requested
                           digital     video
                           video       signal
                                                   monitor
                         processor
  video
 source      NTSC
          video signal




                                        Pressman 5th Ed. 2001 - Chapter 12
                                        Analysis Modelling
Constructing a DFD—II
    write a narrative describing the
     transform
    parse to determine next level transforms
    “balance” the flow to maintain data flow
     continuity
    develop a level 1 DFD
    use a 1:5 (approx.) expansion ratio


                               Pressman 5th Ed. 2001 - Chapter 12
                               Analysis Modelling
The Data Flow Hierarchy
               a                     b
      x                  P                    y       level 0




                                                               level 1
  a            c        p2
      p1
                                 f

           d                         p4           5        b
                   p3        e            g


                                          Pressman 5th Ed. 2001 - Chapter 12
                                          Analysis Modelling
Flow Modeling Notes
   each bubble is refined until it does
    just one thing
   the expansion ratio decreases as the
    number of levels increase
   most systems require between 3 and
    7 levels for an adequate flow model
   a single data flow item (arrow) may be
    expanded as levels increase (data
    dictionary provides information)
                             Pressman 5th Ed. 2001 - Chapter 12
                             Analysis Modelling
DFDs: A Look Ahead


analysis model
                       Maps into
             design model




                            Pressman 5th Ed. 2001 - Chapter 12
                            Analysis Modelling
Behavioral Modeling
and Process Specification




                  Pressman 5th Ed. 2001 - Chapter 12
                  Analysis Modelling
Behavioral Modeling

          events                    behavior
Outside
                   Application
 world




                         Pressman 5th Ed. 2001 - Chapter 12
                         Analysis Modelling
The States of a System
      state—a set of observable circum-
       stances that characterizes the
       behavior of a system at a given time
      state transition—the movement from
       one state to another
      event—an occurrence that causes the
       system to exhibit some predictable
       form of behavior
      action—process that occurs as a
       consequence of making aPressman 5th Ed. 2001 - Chapter 12
                                 transition
                                        Analysis Modelling
Behavioral Modeling

 make a list of the different states of a
  system (How does the system
  behave?)
 indicate how the system makes a
  transition from one state to another
  (How does the system change state?)
    ◦ indicate event
    ◦ indicate action
   draw a state transition diagram
                            Pressman 5th Ed. 2001 - Chapter 12
                            Analysis Modelling
State Transition Diagram
Notation

       state

               event causing transition
                 action that occurs

     new state



                               Pressman 5th Ed. 2001 - Chapter 12
                               Analysis Modelling
State Transition Diagram
      full and start
invoke manage-copying      reading
                           operator
                          commands
                                               full
                                        invoke read-op-input
                      copies done
                  invoke read-op-input

       making copies                      reloading paper
                              empty
                         invoke reload paper
           jammed
    invoke problem-diagnosis
                                             not jammed
                        problem state    invoke read-op-input



                                           Pressman 5th Ed. 2001 - Chapter 12
                                           Analysis Modelling
The Control Model
the control flow diagram is "superimposed" on the DFD
and shows events that control the processes noted in
the DFD
control flows—events and control items—are noted by
dashed arrows
a vertical bar implies an input to or output from a control
spec (CSPEC) — a separate specification that
describes how control is handled
a dashed arrow entering a vertical bar is an input to the
CSPEC

a dashed arrow leaving a process implies a data
condition

a dashed arrow entering a process implies a control
input read directly by the process
control flows do not physically activate/deactivate the
processes—this is done via the CSPEC
                                       Pressman 5th Ed. 2001 - Chapter 12
                                       Analysis Modelling
Control Flow Diagram
                                      copies done
                     beeper on/off                         full
          read
         operator
          input                  manage
                                                           problem
                                 copying                     light
                    start


empty
                             reload              create
                            process               user
                                                displays

             perform
             problem
            diagnosis


                               display panel enabled

jammed

                                            Pressman 5th Ed. 2001 - Chapter 12
                                            Analysis Modelling
Control Specification (CSPEC)
The CSPEC can be:
    state transition diagram
    (sequential spec)

     state transition table    combinatorial spec
     decision tables

     activation tables




                               Pressman 5th Ed. 2001 - Chapter 12
                               Analysis Modelling
Process Specification (PSPEC)
                bubble


       PSPEC
            narrative
            pseudocode (PDL)
            equations
            tables
             diagrams and/or charts



                             Pressman 5th Ed. 2001 - Chapter 12
                             Analysis Modelling
A Design Note



    PSPEC   one or more ” components"
             in the software design




                    Pressman 5th Ed. 2001 - Chapter 12
                    Analysis Modelling
Creating Mini-Specs




             Software
             Specification




                         Pressman 5th Ed. 2001 - Chapter 12
                         Analysis Modelling
The Data Dictionary
a quasi-formal grammar for describing the content
of data that the software will process and create

a notation for describing control data and the
values that control data can take, e.g., "on," or "off"

a repository that also contains "where-used" / "how
used" information

a notation that can be represented manually, but is
best developed using CASE tools


                                   Pressman 5th Ed. 2001 - Chapter 12
                                   Analysis Modelling
Building a Data Dictionary
Name:           the primary name of the composite data item

Aliases:        other names for the data item

Where used: data transforms (processes) that use the
            composite data item

How used:       the role of the data item (input, output,
               temporary storage, etc.)

Description:   a notation for representing content (presented
               on next slide)

Format:        specific information about data types, pre-set
               values (if known)


                                         Pressman 5th Ed. 2001 - Chapter 12
                                         Analysis Modelling
Data Dictionary Notation
 Notation              Meaning

        =           is composed of

        +                and

    [       ]          either-or

            n
     { }            n repetitions of

    ( ... )          optional data

* ... text ...*   delimits a comment

                             Pressman 5th Ed. 2001 - Chapter 12
                             Analysis Modelling
Data Dictionary Example
                           integrated
      telephone number        office               system output
                             phone
                             system



  Build the re quire me nts dictiona ry:
       Name:             telephone number

       Aliases:          phone number, number

       Where/How         read-phone-number (input)
       used:             display-phone-number (output)
                         analyze-long-distance-calls (input)

       Description:      telephone no. = [ local extension | outside no. | 0 ]
                         outside no. = 9 + [ service code | domestic no. ]
                         service code = [ 211 | 411 | 611 | 911 ]
                         domestic no. = ( ( 0 ) + area code ) + local number
                         area code = *three numeral designator*

       Format:           alphanumeric data




                                                 Pressman 5th Ed. 2001 - Chapter 12
                                                 Analysis Modelling
Writing the Software Specification
               Everyone knew exactly
               what had to be done
               until someone wrote it
               down!




                         Pressman 5th Ed. 2001 - Chapter 12
                         Analysis Modelling

More Related Content

What's hot

OO Development 6 - Software Design
OO Development 6 - Software DesignOO Development 6 - Software Design
OO Development 6 - Software DesignRandy Connolly
 
dataflowdiagram2 121005140736-phpapp01
dataflowdiagram2 121005140736-phpapp01dataflowdiagram2 121005140736-phpapp01
dataflowdiagram2 121005140736-phpapp01Shashi soni
 
4. class diagrams using uml
4. class diagrams using uml4. class diagrams using uml
4. class diagrams using umlAPU
 
Structured system analysis
Structured system analysisStructured system analysis
Structured system analysislearnt
 
07 si(systems analysis and design )
07 si(systems analysis and design )07 si(systems analysis and design )
07 si(systems analysis and design )Nurdin Al-Azies
 
The Object-Oriented Approach to Requirements
The Object-Oriented Approach to RequirementsThe Object-Oriented Approach to Requirements
The Object-Oriented Approach to RequirementsHenhen Lukmana
 
Data and functional modeling
Data and functional modelingData and functional modeling
Data and functional modelingSlideshare
 
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptx
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptxSE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptx
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptxAmr E. Mohamed
 
06 ooad uml-07
06 ooad uml-0706 ooad uml-07
06 ooad uml-07Niit Care
 
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 Information Systems Analysis and Design Overview of OOAD, UML, and RUP Information Systems Analysis and Design Overview of OOAD, UML, and RUP
Information Systems Analysis and Design Overview of OOAD, UML, and RUPDang Tuan
 
02 ooad uml-02
02 ooad uml-0202 ooad uml-02
02 ooad uml-02Niit Care
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System RequirementsAsjad Raza
 
M03 2 Behavioral Diagrams
M03 2 Behavioral DiagramsM03 2 Behavioral Diagrams
M03 2 Behavioral DiagramsDang Tuan
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01Niit Care
 
6. activity diagrams
6. activity diagrams6. activity diagrams
6. activity diagramsAPU
 
Modelling System Requirements: Events & Things
Modelling System Requirements: Events & ThingsModelling System Requirements: Events & Things
Modelling System Requirements: Events & Thingswmomoni
 
Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)Manoj Reddy
 
The Traditional Approach to Requirement
The Traditional Approach to RequirementThe Traditional Approach to Requirement
The Traditional Approach to RequirementHenhen Lukmana
 

What's hot (20)

OO Development 6 - Software Design
OO Development 6 - Software DesignOO Development 6 - Software Design
OO Development 6 - Software Design
 
dataflowdiagram2 121005140736-phpapp01
dataflowdiagram2 121005140736-phpapp01dataflowdiagram2 121005140736-phpapp01
dataflowdiagram2 121005140736-phpapp01
 
4. class diagrams using uml
4. class diagrams using uml4. class diagrams using uml
4. class diagrams using uml
 
Structured system analysis
Structured system analysisStructured system analysis
Structured system analysis
 
Bridge
BridgeBridge
Bridge
 
07 si(systems analysis and design )
07 si(systems analysis and design )07 si(systems analysis and design )
07 si(systems analysis and design )
 
The Object-Oriented Approach to Requirements
The Object-Oriented Approach to RequirementsThe Object-Oriented Approach to Requirements
The Object-Oriented Approach to Requirements
 
Data and functional modeling
Data and functional modelingData and functional modeling
Data and functional modeling
 
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptx
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptxSE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptx
SE2018_Lec 14_ Process Modeling and Data Flow Diagram.pptx
 
06 ooad uml-07
06 ooad uml-0706 ooad uml-07
06 ooad uml-07
 
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 Information Systems Analysis and Design Overview of OOAD, UML, and RUP Information Systems Analysis and Design Overview of OOAD, UML, and RUP
Information Systems Analysis and Design Overview of OOAD, UML, and RUP
 
02 ooad uml-02
02 ooad uml-0202 ooad uml-02
02 ooad uml-02
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System Requirements
 
M03 2 Behavioral Diagrams
M03 2 Behavioral DiagramsM03 2 Behavioral Diagrams
M03 2 Behavioral Diagrams
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01
 
6. activity diagrams
6. activity diagrams6. activity diagrams
6. activity diagrams
 
Modelling System Requirements: Events & Things
Modelling System Requirements: Events & ThingsModelling System Requirements: Events & Things
Modelling System Requirements: Events & Things
 
Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
 
The Traditional Approach to Requirement
The Traditional Approach to RequirementThe Traditional Approach to Requirement
The Traditional Approach to Requirement
 
Ooad
OoadOoad
Ooad
 

Similar to Pertemuan 4-analysis-modelling

Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineeringMuhammadTalha436
 
System Modelling.ppt
System Modelling.pptSystem Modelling.ppt
System Modelling.pptAnishNarayan4
 
Entity Framework v1 and v2
Entity Framework v1 and v2Entity Framework v1 and v2
Entity Framework v1 and v2Eric Nelson
 
Modeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and FunctionalModeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and FunctionalRajani Bhandari
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behaviorIIUI
 
Machine Learning as service
Machine Learning as serviceMachine Learning as service
Machine Learning as serviceNihal Mehdi
 
Database management systems cs403 power point slides lecture 06
Database management systems   cs403 power point slides lecture 06Database management systems   cs403 power point slides lecture 06
Database management systems cs403 power point slides lecture 06Md.Abu Sayed
 
HCI 3e - Ch 17: Models of the system
HCI 3e - Ch 17:  Models of the systemHCI 3e - Ch 17:  Models of the system
HCI 3e - Ch 17: Models of the systemAlan Dix
 
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorialMike Marin
 
6.SE_Requirements Modeling.ppt
6.SE_Requirements Modeling.ppt6.SE_Requirements Modeling.ppt
6.SE_Requirements Modeling.pptHaiderAli252366
 
Dfd over flowcharts
Dfd over flowcharts Dfd over flowcharts
Dfd over flowcharts Ashwathy Nair
 
Chapter 7 Design Architecture and Methodology1.docx
Chapter 7 Design Architecture and Methodology1.docxChapter 7 Design Architecture and Methodology1.docx
Chapter 7 Design Architecture and Methodology1.docxmccormicknadine86
 
DBMS Lecture 06.ppt
DBMS Lecture 06.pptDBMS Lecture 06.ppt
DBMS Lecture 06.pptMSHARAJ
 
OOAD_Chapter_02.pdf
OOAD_Chapter_02.pdfOOAD_Chapter_02.pdf
OOAD_Chapter_02.pdfZahidAkon2
 

Similar to Pertemuan 4-analysis-modelling (20)

Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
 
Ch08
Ch08Ch08
Ch08
 
Ch08
Ch08Ch08
Ch08
 
System Modelling.ppt
System Modelling.pptSystem Modelling.ppt
System Modelling.ppt
 
03 requirement engineering_process
03 requirement engineering_process03 requirement engineering_process
03 requirement engineering_process
 
uml.pptx
uml.pptxuml.pptx
uml.pptx
 
Entity Framework v1 and v2
Entity Framework v1 and v2Entity Framework v1 and v2
Entity Framework v1 and v2
 
Modeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and FunctionalModeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and Functional
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behavior
 
Machine Learning as service
Machine Learning as serviceMachine Learning as service
Machine Learning as service
 
Slides chapter 11
Slides chapter 11Slides chapter 11
Slides chapter 11
 
Database management systems cs403 power point slides lecture 06
Database management systems   cs403 power point slides lecture 06Database management systems   cs403 power point slides lecture 06
Database management systems cs403 power point slides lecture 06
 
HCI 3e - Ch 17: Models of the system
HCI 3e - Ch 17:  Models of the systemHCI 3e - Ch 17:  Models of the system
HCI 3e - Ch 17: Models of the system
 
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial
2005 10-11 mm (seoul, korea - bpm korea forum) xpdl2 tutorial
 
Chap1
Chap1Chap1
Chap1
 
6.SE_Requirements Modeling.ppt
6.SE_Requirements Modeling.ppt6.SE_Requirements Modeling.ppt
6.SE_Requirements Modeling.ppt
 
Dfd over flowcharts
Dfd over flowcharts Dfd over flowcharts
Dfd over flowcharts
 
Chapter 7 Design Architecture and Methodology1.docx
Chapter 7 Design Architecture and Methodology1.docxChapter 7 Design Architecture and Methodology1.docx
Chapter 7 Design Architecture and Methodology1.docx
 
DBMS Lecture 06.ppt
DBMS Lecture 06.pptDBMS Lecture 06.ppt
DBMS Lecture 06.ppt
 
OOAD_Chapter_02.pdf
OOAD_Chapter_02.pdfOOAD_Chapter_02.pdf
OOAD_Chapter_02.pdf
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Pertemuan 4-analysis-modelling

  • 1. Analysis Modeling Departemen Ilmu Komputer IPB 2009 Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 2. Analysis Modeling: Where to Begin?  A statement of scope can be acquired from: ◦ the FAST (Facilitated Application Specification Technique) working document ◦ A set of use-cases  the statement of scope must be “parsed” to extract data, function and behavioral domain information Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 3. Statement of Scope  a relatively brief description of the system to be built ◦ indicates data that are input and output and basic functionality ◦ indicates conditional processing (at a high level) ◦ implies certain constraints and limitations Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 4. Identifying Objects and Operations  define “objects” by underlining all nouns in the written statement of scope  producers/consumers of data  places where data are stored  “composite” data items  define “operations” by double underlining all active verbs  processes relevant to the application  data transformations  consider other “services” that will be required by the objects Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 5. Data Modeling and Entity Relationship (E-R) Diagramming Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 6. Why Data Modeling?  examines data objects independently of processing  focuses attention on the data domain  creates a model at the customer’s level of abstraction  indicates how data objects relate to one another Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 7. What is a Data Object? Object —something that is described by a set of attributes (data items) and that will be manipulated within the software (system) each instance of an object (e.g., a book) can be identified uniquely (e.g., ISBN #) each plays a necessary role in the system i.e., the system could not function without access to instances of the object each is described by attributes that are themselves data items Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 8. Typical Objects external entities (printer, user, sensor) things (e.g, reports, displays, signals) occurrences or events (e.g., interrupt, alarm) roles (e.g., manager, engineer, salesperson) organizational units (e.g., division, team) places (e.g., manufacturing floor) structures (e.g., employee record) Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 9. Data Objects and Attributes A data object contains a set of attributes that act as an aspect, quality, character-istic, or descriptor of the object object: automobile attributes: make model body type price options code Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 10. What is a Relationship? relationship —indicates “connectedness”; a "fact" that must be "remembered" by the system and cannot or is not computed or derived mechanically  several instances of a relationship can exist  objects can be related in many different ways Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 11. ERD Notation One common form: (0, m) object 1 relationship object 2 (1, 1) attribute Another common form: object 1 relationship object 2 (0, m) (1, 1) Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 12. Building an ERD  Level 1—model all data objects (entities) and their “connections” to one another  Level 2—model all entities and relationships  Level 3—model all entities, relationships, and the attributes that provide further depth Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 13. The ERD: An Example request Customer places for service (1,1) (1,m) (1,1) standard generates (1,n) work task table order (1,1) (1,1) (1,1) selected work (1,w) consists from (1,w) tasks of (1,i) materials lists Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 14. Creating a Flow Model Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 15. The Flow Model Every computer-based system is an information transform .... computer input based output system Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 16. Flow Modeling Notation external entity process data flow data store Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 17. External Entity A producer or consumer of data Examples: a person, a device, a sensor Another example: computer-based system Data must always originate somewhere and must always be sent to something Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 18. Process A data transformer (changes input to output) Examples: compute taxes, determine area, format report, display graph Data must always be processed in some way to achieve system function Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 19. Data Flow Data flows through a system, begins as input and is transformed into output. base compute area triangle height area Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 20. Data Stores Data is often stored for later use. sensor # sensor #, type, look-up location, age sensor report required data type, sensor number location, age sensor data Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 21. Data Flow Diagramming: Guidelines  all icons must be labeled with meaningful names  the DFD evolves through a number of levels of detail  always begin with a context level diagram (also called level 0)  always show external entities at level 0  always label data flow arrows  do not represent procedural logic 2001 - Chapter 12 Pressman 5th Ed. Analysis Modelling
  • 22. Constructing a DFD—I  review ERD to isolate data objects and grammatical parse to determine “operations”  determine external entities (producers and consumers of data)  create a level 0 DFD Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 23. Level 0 DFD Example processing user request requested digital video video signal monitor processor video source NTSC video signal Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 24. Constructing a DFD—II  write a narrative describing the transform  parse to determine next level transforms  “balance” the flow to maintain data flow continuity  develop a level 1 DFD  use a 1:5 (approx.) expansion ratio Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 25. The Data Flow Hierarchy a b x P y level 0 level 1 a c p2 p1 f d p4 5 b p3 e g Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 26. Flow Modeling Notes  each bubble is refined until it does just one thing  the expansion ratio decreases as the number of levels increase  most systems require between 3 and 7 levels for an adequate flow model  a single data flow item (arrow) may be expanded as levels increase (data dictionary provides information) Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 27. DFDs: A Look Ahead analysis model Maps into design model Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 28. Behavioral Modeling and Process Specification Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 29. Behavioral Modeling events behavior Outside Application world Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 30. The States of a System  state—a set of observable circum- stances that characterizes the behavior of a system at a given time  state transition—the movement from one state to another  event—an occurrence that causes the system to exhibit some predictable form of behavior  action—process that occurs as a consequence of making aPressman 5th Ed. 2001 - Chapter 12 transition Analysis Modelling
  • 31. Behavioral Modeling  make a list of the different states of a system (How does the system behave?)  indicate how the system makes a transition from one state to another (How does the system change state?) ◦ indicate event ◦ indicate action  draw a state transition diagram Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 32. State Transition Diagram Notation state event causing transition action that occurs new state Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 33. State Transition Diagram full and start invoke manage-copying reading operator commands full invoke read-op-input copies done invoke read-op-input making copies reloading paper empty invoke reload paper jammed invoke problem-diagnosis not jammed problem state invoke read-op-input Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 34. The Control Model the control flow diagram is "superimposed" on the DFD and shows events that control the processes noted in the DFD control flows—events and control items—are noted by dashed arrows a vertical bar implies an input to or output from a control spec (CSPEC) — a separate specification that describes how control is handled a dashed arrow entering a vertical bar is an input to the CSPEC a dashed arrow leaving a process implies a data condition a dashed arrow entering a process implies a control input read directly by the process control flows do not physically activate/deactivate the processes—this is done via the CSPEC Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 35. Control Flow Diagram copies done beeper on/off full read operator input manage problem copying light start empty reload create process user displays perform problem diagnosis display panel enabled jammed Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 36. Control Specification (CSPEC) The CSPEC can be: state transition diagram (sequential spec) state transition table combinatorial spec decision tables activation tables Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 37. Process Specification (PSPEC) bubble PSPEC narrative pseudocode (PDL) equations tables diagrams and/or charts Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 38. A Design Note PSPEC one or more ” components" in the software design Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 39. Creating Mini-Specs Software Specification Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 40. The Data Dictionary a quasi-formal grammar for describing the content of data that the software will process and create a notation for describing control data and the values that control data can take, e.g., "on," or "off" a repository that also contains "where-used" / "how used" information a notation that can be represented manually, but is best developed using CASE tools Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 41. Building a Data Dictionary Name: the primary name of the composite data item Aliases: other names for the data item Where used: data transforms (processes) that use the composite data item How used: the role of the data item (input, output, temporary storage, etc.) Description: a notation for representing content (presented on next slide) Format: specific information about data types, pre-set values (if known) Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 42. Data Dictionary Notation Notation Meaning = is composed of + and [ ] either-or n { } n repetitions of ( ... ) optional data * ... text ...* delimits a comment Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 43. Data Dictionary Example integrated telephone number office system output phone system Build the re quire me nts dictiona ry: Name: telephone number Aliases: phone number, number Where/How read-phone-number (input) used: display-phone-number (output) analyze-long-distance-calls (input) Description: telephone no. = [ local extension | outside no. | 0 ] outside no. = 9 + [ service code | domestic no. ] service code = [ 211 | 411 | 611 | 911 ] domestic no. = ( ( 0 ) + area code ) + local number area code = *three numeral designator* Format: alphanumeric data Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling
  • 44. Writing the Software Specification Everyone knew exactly what had to be done until someone wrote it down! Pressman 5th Ed. 2001 - Chapter 12 Analysis Modelling