Behavior Analysis Area Map

download Behavior Analysis Area Map

of 5

Transcript of Behavior Analysis Area Map

  • 8/2/2019 Behavior Analysis Area Map

    1/5

    Topic Concerns Models Analysis Engineering Testing

    Functionality (static

    views)

    Providing a list offeatures

    Use cases / userstories

    Numberedrequirements

    Requirementanalysis

    Prototyping & otherrequirements

    elicitationtechniques

    White box (unit),black box (system)

    tests

    Specifyingfunctional

    behavior

    Descriptivespecifications

    Formal specifications

    Analysis of formalspecs for

    completeness,

    consistency

    Mathematicalabstractions to

    facilitate formal

    specification

    Simulated executionbased on executable

    formal specs

    Understanding

    usage profile

    Operational modes

    Operational profiles

    Used in

    performance,reliability and

    usability analysis

    Using usage

    frequencies to driverelease plans,

    usability engg

    Testing based on

    usage profiles

    Functional behavior(dynamic views)

    Modeling multi-step operations &interactions

    Sequence diagramsFlowchartsPseudocode

    Algorithmiccorrectness, role ofparticipants,

    interactions betweenoperations

    Algorithm design System test cases

    Handling ofarbitrary input

    sequences and

    combinations

    State diagrams State machineanalysis:

    Reachability

    analysis,Proof of properties

    State machinedesign

    Load testing (testsequences)

    Structure (staticviews) [Note that

    structure is a dev.

    internal concern,

    unlike the others

    which are product

    attributes]

    Modularity,Interfaces,

    Relationshipsbetween structural

    elements

    Class diagrams(Informal) Block

    diagrams

    Dependencyanalysis

    Interfacespecification,

    interface control

    Unit testing

  • 8/2/2019 Behavior Analysis Area Map

    2/5

    Responsibility

    allocationInteraction

    patterns

    Collaboration

    diagrams

    Collaboration

    analysis

    Design patterns Integration testing

    Distribution

    patterns

    Deployment view

    Physical view

    Node capabilities

    and utilizationanalysis

    Systems engineering Configuration

    testing

    Performance Capacity Flowcharts

    Dataflow diagrams

    Bottleneck analysis System and software

    dimensioning

    Load testing

    Stress testing

    Throughput Sequence diagrams Bottleneck analysisPlatform

    benchmarking

    Workload analysisProcessor utilizationanalysis

    Queueing models

    Hotspotoptimization

    ProfilingIdletime

    measurement

    Response time (Informal) block

    diagrams, sequence

    diagrams, controlflow diagrams,

    process diagrams

    Scheduling analysis

    Queueing models

    Priority assignment

    Increasing

    concurrencyParallel computing

    Application

    benchmarking

    Network

    bandwidthutilization

    Protocols

    Message flowdiagrams (message

    sequence charts)

    Network usage and

    behavior analysis

    Bandwidth

    allocationContention

    resolution

    Network monitoring

    Memory

    utilization

    DTDs (datatype

    definitions)

    Memory usage and

    management

    analysis

    Codesize

    optimization

    Stack size selectionMemory

    management

    Memory usage

    analyzer (detection

    of memory leaks,profiling memory

    usage)

  • 8/2/2019 Behavior Analysis Area Map

    3/5

    Other resource

    utilization (diskspace, power,

    weight)

    Resource usage tables

    e.g. table of filesstored and disk space

    needed

    Resource usage and

    managementanalysis

    Concurrencypatterns

    Buffering Benchmarking

    Dependability Deadlines (Same as responsetime)

    Response timeanalysis

    Scheduling analysis

    Rate-monotonicscheduling

    Designing for

    predictability

    Performancemonitoring

    Reliability Reliability growth

    curvesReliability models

    Reliability

    (blocks)analysisReliability

    estimation

    Software reliability

    engineeringReliability

    certification

    Operational profile-

    based automatedtesting

    Soak testing

    (continuousoperation)

    Availability: fault

    identification and

    fault tolerance

    Fault trees Failure Modes and

    Effect Analysis

    (FMEA)Failure probability

    analysis

    Fault zones

    Passive redundancy

    Active redundancy

    Fault injection

    testing

    Precision Mathematical models

    of algorithm behavior

    Numerical analysis Algorithm design /

    selection

    Checking against

    hand-computedresults

    Plugging resultsback into equations

    Security Block diagrams

    Operational views(e.g. sequence

    diagrams)

    Threat response

    analysis, what-ifanalysis

    Authentication,

    capabilities, securityzones, validation of

    inputs, trust levels,active detection

    Threat injection

    testing

  • 8/2/2019 Behavior Analysis Area Map

    4/5

    Safety Use cases

    Fault trees

    FMEA Formal methods Reliability testing,

    fault injection testing

    Debuggability,

    Testability[another mostly

    internal concern]

    Built-in self tests

    Instrumentation

    Usability Operability Operational profiles SUMI User observation

    testing, surveys

    Learnability Interface metaphors,

    consistency

    User observation

    testing, feedback

    Interoperability Collaboration

    diagrams

    Standards

    conformance

    analysis

    Standardized

    interfaces

    Interoperability

    testing

    Administration:Installation etc.

    Use cases Install scripts,patches,configurability

    Test team experience

    Evolvability Modifiability Structure diagrams(e.g. class diagrams)

    SAAMDependencies

    analysis

    Modular design,Design patterns

    Extensibility Structure diagrams SAAM Hooks, callouts

    Scalability Control flowdiagrams

    Computationalcomplexity analysis

    Algorithm selection

    Portability Class diagrams SAAM Layering

    MiddlewareBusiness aspects Cycletime GANTT charts Time estimation Incremental dev.

    Cost Budgets

    Staffing

    Effort estimation

    Budgetary analysis

    Reuse and domain

    engineering,technology use

    Reusability Class diagrams Developing reusablesoftware

  • 8/2/2019 Behavior Analysis Area Map

    5/5

    Component-based

    developmentDomain engineering

    The table above is just my own understanding. It is incomplete and evolving.