0% found this document useful (0 votes)
64 views7 pages

Tutorial 10

This document provides an introduction to structured analysis and data flow diagrams as a design method. It explains that structured analysis involves analyzing the data flows and transformations of a system. The key steps are to create a context diagram, decompose the system transform, and identify the transform center. Questions are provided to have the reader apply these concepts by drawing data flow diagrams for an ASFC rental system.

Uploaded by

basha774655362
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views7 pages

Tutorial 10

This document provides an introduction to structured analysis and data flow diagrams as a design method. It explains that structured analysis involves analyzing the data flows and transformations of a system. The key steps are to create a context diagram, decompose the system transform, and identify the transform center. Questions are provided to have the reader apply these concepts by drawing data flow diagrams for an ASFC rental system.

Uploaded by

basha774655362
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

T UTORIAL 10

S TRUCTURED A NALYSIS AND D ATA -F LOW D IAGRAMS 433-341 S EMESTER 1, 2008 I NTRODUCTION
In this tutorial we will revisit the design of the ASFC Rental system. Our previous design (Tutorial 8) explored layered architectures for the design. In this tutorial we will use the Design Method known as Structured Analysis and Design. Structured analysis and design uses Data-Flow Diagrams to analyse the dataflows of the system and then create a design from the data-flow diagrams. Dont foget that the aim is still to come up with a good design for the system that will meet the key requirements.

The first is a performance requirement in the form of response time. As the customer is often present while enquiries are being made the response time is important (but not critical). Second, reliability is important. Reliability in software engineering is strictly defined as follows (but you will get much more of this in 433-342 Software Engineerng Methods): The probability of failure free operation for a given time in a given enviornment.

Data integrity and Data Security is a requirement. It is important that customer data and customer information is not lost, altered or stolen (especially if credit card numbers are involved).

Structured Analysis is a good design method for batch data processing, especially where the behaviour of the system can be analysed in terms of the transformations on data, and on data-flows. Your task will be to explore Data-Flow analysis for the design of the car rental system.

S TRUCTURED A NALYSIS

AND

D ESIGN

The aim of Structured Analysis and Design is to analyse the data-flows and data transforms of a system. Systems are decribed by specifying:

The Data Flows; The Data Transfoms; and The Data Formats and Data Types.

The system analysis proceeds by creating a number of Data Flow Diagrams. Each data flow diagram is built up from the following elements:

The idea of Structured Analysis is to perform the analysis of the system by creating and decomposing a number of data-flow diagrams. The requirements for your system come from the data-flows and event-flows of the system and the transformations.

S TRUCTURED A NALYSIS S TEP 1 CREATE THE CONTEXT DIAGRAM.


The context diagram consists just one data transform called System and all of the data or event sources, and all of the data and event sinks. The objective in this step is to find all of the system input data and event streams and all of the output data and event streams.

The logical structure of the data in each data-flow must be described. For example, if a data-flow coming out of the System bubble is a stream of reports then you will need to specify the structure of the report for example: Report -> Header + Sales Summary Data | Header + Department Summary Data Broadly speaking this says that a Report is logically a Header followed by Sales Summary Data OR a Header followed by Departent Summary Data. Typically, restricted forms of regular expressions is often used to desbribe data although you can use more general natural language descriptions descriptions at requirements level.

S TRUCTURED A NALYSIS S TEP 2 DECOMPOSE THE INPUT AND OUTPUT FLOWS.


The usual way of proceeding is to decompose the System transform into smaller transforms and data-flows. The AIM when decomposing the system transform is to create a data-flow diagram in which each trasnform has data-flows coming in from a terminator or out to a terminator not both! For example, if we have a Target Transform with an input flow from one terminator and an output flow to another terminator such as the following:

We decompose it by seperating the input flow and the ouput flow into separate transforms. Each time we separate a transform according to its input flows and output flows we may need to add new data-flows or new event-flows. In this case dont forget to specify the structure of the new data in the data-flows.

S TEP 3 S TRUCTURED A NALYSIS FINDING THE TRANSFORM CENTRE.


At some point it will make no sense to decompoe the system further or we will not be able to decompose the system further. The transform centre is usually found near data stores where the critical part of the computation needs to take place.

In the diagram above the Transform Centre cannot be decomposed further because it access a data store. Of necessity the Transform Centre must input data to the data-base and outpt data from it. S PECIFYING D ATA -F LOWS
AND

T RANSFORMS

A key part of the strcutured analysis and design method is to specify the data-flows and data-transforms. A key part of the analysis is to work out the Logical Structure of the data. We do not want the detailed data-structures that comes later in detailed design just the high level structure of the data in the data-flows. One way of doing this is to s[ecify the data using natural language.

tank_level = *distance from bottom of tank to level of fluid* pH setpoint = *pH value to be maintained in vat.*

Data elements are also often composed of a (sometimes variable) number of more elementary data elements. Symbol = + [||] {||} Meaning Is composed of . Together with Select one of Iterations of

Here are some examples of the data in data-flows. aircraft_position = latitude + longitude + height vehicle_status = [ stopped | moving | faulted ] std_code = 2 { single_integer } 3 local_number = 6 {single_integer } 7 telephone_number = std_code + local_number telephone_list = 1 {telephone_number} 10 000 Data transforms can be specified in natural language or by using: (1) State-Charts or Finite State Automata; or (2) pseudo code. Following is an example of a description in pseudo code.
IN PUT FLOW CURRENT PH, PH SETPOINTS OUTPUT FLOW PH LIM ITS If CURRENT PH crosses from < (PH SETPOINT - 0.3) to > (PH SETPOINT - 0.3) or from > (PH SETPOINT + 0.3) to < (PH SETPOINT + 0.3) then issue PH IN LIMITS If CURRENT PH crosses from > (PH SETPOINT - 0.3) to < (PH SETPOINT - 0.3) or from < (PH SETPOINT + 0.3) to > (PH SETPOINT + 0.3) then issue PH OUT OF LIMITS

Q UESTIONS
1. Draw the C ONTEXT D IAGRAM for the ASFC Rental system. To answer this question you only need to consider a single branch office and the ASFC Melbourne HQ. Specifically, R ecall that the system consists of at least the following features.
A. Making a booking, tracking bookings, and managing bookings; B. Vehicle maintenance, parts, upgrades and equipment scheduling; C. Profit and loss for each vehicle in the fleet; D. Vehicle location, status, replacement cost, book value, and calendar.

For each of these features suggest the possible input and output data-flows and the terminators for those flows. Note that you cant specify the System Transform yet, but you can specify the data in the data-flows leading to the System Transform and away from it. 2. Next decompose the System Transform to create a data-flow diagram. You do not have to do this in one step. Remember that modelling is often an iterative process and that you do not have to solve the whole problem in one step. Start with abstract transforms where possible and expand them as necessary. Structured Analysis is aimed at this style of top down decomposition. Try decomposing the System Transform in a number of steps. You will need to introduce intermediate data-flows as you do this and, in the style of structured analysis, specify the new data and transforms. 3. Identify the transform centre in your data-flow diagram. The thing to remember about this particular problem is that the transform centre may not neecssarily be a single transform but you may be required to have a cluster of transforms that act as the transform centre. The transform centre acts as the pivotal centre of the design. In the design, all input dataflows come into the pivotal centre and alloutput data-flows eminate from it. The lectures will go into more detail.

You might also like