Analysis ModelingAnalysis ModelingChapter 12
DFD , ERD DFD , ERD TopicsTopics
MELJUN CORTESMELJUN CORTESMELJUN CORTES
Who does Analysis Who does Analysis Modeling?Modeling?
MELJUN CORTES
Why Analysis Why Analysis Modeling?Modeling?
MELJUN CORTES
Analysis ModelAnalysis ModelAnalysis Modeling
MELJUN CORTES
Analysis Model
Structure of Analysis Model
MELJUN CORTES
Analysis ModelAnalysis ModelThe analysis model must achieve
three primary objectives
◦to describe what the customer requires,
◦to establish a basis for the creation of a software design, and
◦to define a set of requirements that can be validated once the software is built.
MELJUN CORTES
Data ModelingData ModelingAnalysis Modeling
MELJUN CORTES
Data ModelingData ModelingData modeling answers a set of
specific questions that are relevant to any data processing application. ◦What are the primary data objects to be
processed by the system?◦What is the composition of each data
object and what attributes describe the object?
◦Where do the objects currently reside?◦What are the relationships between each
object and other objects? ◦What are the relationships between the
objects and the processes that transform them?
MELJUN CORTES
Data Objects, Data Objects, Attributes, And Attributes, And RelationshipsRelationships
Data Modeling
MELJUN CORTES
Data Objects, Attributes, And Data Objects, Attributes, And RelationshipsRelationshipsData Objects
◦A data object is a representation of almost any composite information that must be understood by software.
◦A data object can be an external entity, a thing, an occurrence or event, a role, an organizational unit, a place, or a structure.
MELJUN CORTES
Data ObjectsData ObjectsData Objects
MELJUN CORTES
Data Objects, Attributes, And Data Objects, Attributes, And RelationshipsRelationshipsAttributes
◦Attributes define the properties of a data object and take on one of three different characteristics. They can be used to
name an instance of the data object,
describe the instance, or
make reference to another instance.MELJUN CORTES
AttributesAttributesAttributes
MELJUN CORTES
Data Objects, Attributes, And Data Objects, Attributes, And RelationshipsRelationshipsRelationships
◦Data objects are connected to one another in different ways.
MELJUN CORTES
RelationshipsRelationshipsRelationships
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram
Data Modeling
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagramEntity Relationship Diagram is
the representation of data objects between their relationships.
MELJUN CORTES
Entity Relationship Diagram
Expanded ERD
MELJUN CORTES
Functional ModelingFunctional ModelingAnalysis Modeling
MELJUN CORTES
Functional ModelingFunctional ModelingInformation is transformed as it
flows through a computer-based system. The system accepts input in a variety of forms; applies hardware, software, and human elements to transform it; and produces output in a variety of forms.
MELJUN CORTES
Functional ModelingFunctional ModelingInformation flow model
MELJUN CORTES
Data Flow DiagramsData Flow DiagramsFunctional Modeling
MELJUN CORTES
Data Flow DiagramsData Flow DiagramsAs information moves through
software, it is modified by a series of transformations.
A data flow diagram is a graphical representation that depicts information flow and the transforms that are applied as data move from input to output.
MELJUN CORTES
Data Flow DiagramData Flow Diagram
MELJUN CORTES
Extensions for Real-Extensions for Real-Time SystemsTime Systems
Functional Modeling
MELJUN CORTES
Extensions for Real-Time Extensions for Real-Time SystemsSystemsMany software applications are time
dependent and process as much or more control-oriented information as data.
A real-time system must interact with the real world in a time frame dictated by the real world. Aircraft avionics, manufacturing process control, consumer products, and industrial instrumentation are but a few of hundreds of real-time software applications.
MELJUN CORTES
Behavioral ModelingBehavioral ModelingAnalysis Modeling
MELJUN CORTES
Behavioral ModelingBehavioral ModelingBehavioral modeling is an
operational principle for all requirements analysis methods.
It also reproduces the required behavior of the original analyzed system, such as there is a one-to-one correspondence between the behavior of the original system and the simulated system
MELJUN CORTES
Behavioral ModelingBehavioral Modeling
MELJUN CORTES
Structured Analysis Structured Analysis MechanicsMechanics
Analysis Modeling
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram
Structured Analysis Mechanics
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram1. During requirements elicitation,
customers are asked to list the “things” that the application or business process addresses. These “things” evolve into a list of input and output data objects as well as external entities that produce or consume information.
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram2. Taking the objects one at a time, the
analyst and customer define whether or not a connection (unnamed at this stage) exists between the data object and other objects.
3. Wherever a connection exists, the analyst and the customer create one or more object/relationship pairs.
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram4. For each object/relationship pair,
cardinality and modality are explored.
5. Steps 2 through 4 are continued iteratively until all object/relationships have been defined. It is common to discover omissions as this process continues. New objects and relationships will invariably be added as the number of iterations grows.
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram6. The attributes of each entity are
defined.
7. An entity relationship diagram is formalized and reviewed.
8. Steps 1 through 7 are repeated until data modeling is complete.
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram• Connections
MELJUN CORTES
Entity Relationship Entity Relationship DiagramDiagram• Developing Relationships
MELJUN CORTES
Data Flow ModelData Flow ModelStructured Analysis Mechanics
MELJUN CORTES
Data Flow ModelData Flow ModelThe level 0 data flow diagram should
depict the software/system as a single bubble;
Primary input and output should be carefully noted;
Refinement should begin by isolating candidate processes, data objects, and stores to be represented at the next level;
MELJUN CORTES
Data Flow ModelData Flow ModelAll arrows and bubbles should be
labeled with meaningful names;
Information flow continuity must be maintained from level to level, and
MELJUN CORTES
Data Flow ModelData Flow ModelOne bubble at a time should be
refined. There is a natural tendency to overcomplicate the data flow diagram. This occurs when the analyst attempts to show too much detail too early or represents procedural aspects of the software in lieu of information flow.
MELJUN CORTES
Data Flow ModelData Flow ModelLevel 0
MELJUN CORTES
Data Flow ModelData Flow ModelLevel 1
MELJUN CORTES
Data Flow ModelData Flow ModelLevel 1
MELJUN CORTES
Grammatical ParseGrammatical ParseStructured Analysis Mechanics
MELJUN CORTES
Data Flow ModelData Flow ModelLevel 1
MELJUN CORTES
Data Flow ModelData Flow ModelLevel 2 – Monitor Sensors
MELJUN CORTES
Control Flow ModelControl Flow ModelStructured Analysis Mechanics
MELJUN CORTES
Control Flow ModelControl Flow ModelList all sensors that are "read" by
the software.
List all interrupt conditions.
List all "switches" that are actuated by an operator.
MELJUN CORTES
Control Flow ModelControl Flow ModelList all data conditions.
Recalling the noun/verb parse that was applied to the processing narrative, review all "control items" as possible CSPEC inputs/outputs.
MELJUN CORTES
Control Flow ModelControl Flow ModelDescribe the behavior of a
system by identifying its states; identify how each state is reached; and define the transitions between states.
Focus on possible omissions
MELJUN CORTES
Control SpecificationControl SpecificationStructured Analysis Mechanics
MELJUN CORTES
Control SpecificationControl SpecificationThe control specification (CSPEC)
represents the behavior of the system in two different ways.
The CSPEC contains a state transition diagram that is a sequential specification of behavior. It can also contain a program activation table—a combinatorial specification of behavior.
MELJUN CORTES
Data DictionaryData DictionaryAnalysis Modeling
MELJUN CORTES
Data DictionaryData DictionaryThe data dictionary is an
organized listing of all data elements that are pertinent to the system, with precise, rigorous definitions so that both user and system analyst will have a common understanding of inputs, outputs, components of stores and [even] intermediate calculations.
MELJUN CORTES
Data DictionaryData DictionaryName
◦the primary name of the data or control item, the data store or an external entity.
Alias
◦other names used for the first entry.
MELJUN CORTES
Data DictionaryData DictionaryWhere-used/how-used
◦a listing of the processes that use the data or control item and how it is used.
Content description
◦a notation for representing content.
MELJUN CORTES
Data DictionaryData DictionarySupplementary information
◦other information about data types, preset values (if known), restrictions or limitations, and so forth.
MELJUN CORTES
Data DictionaryData Dictionary
MELJUN CORTES