UPI Study › Courses › Software Engineering › Free lessons › Lesson 8.6 Free with a free account
Transform Mapping: Turning Data Flow into Architecture
Software Engineering · Chapter 8: Object-Oriented Design and ArchitectureSection 8.6 · lesson 60 of 1036 min · free with a free account
Free preview
Create a free account to keep watching
It takes a minute and costs nothing. Your free account unlocks all of Chapter 1 and 3 more lessons of Software Engineering.
Lesson complete
Earn the 3 college credits for Software Engineering
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: Connecting Data Flow Diagrams to System Architecture →← Architectural Styles, Archetypes, and Building Blocks for Robust Software SystemsNext lesson: Connecting Data Flow Diagrams to System Architecture →
In this lesson
From a data flow diagram to a structure chart.
- Recognize a transform-flow DFD by its 3 regions
- Explain how first-level factoring builds the top of a structure chart
- Explain how second-level factoring places each process
- Derive a simple structure chart from a transform-flow DFD
Transcript
Everything said in the video, section by section (801 words). Read along, or search it.
Object-Oriented Design and Architecture
Transform Mapping: Turning Data Flow into Architecture
Object-oriented design is one path from analysis to a buildable structure. It is not the only one. This section covers transform mapping, a technique for deriving a structure directly from a data flow diagram of the right shape.
Another Path
Before Object-Oriented Design
Long before object-oriented design became the dominant approach, transform mapping offered a different path. Instead of starting from classes and use cases, it starts from a data flow diagram. Given a diagram of the right shape, transform mapping turns it into a structure chart. A structure chart is a hierarchy of modules, showing which modules call which others. And here, it is derived almost mechanically from the diagram's own structure.
The Right Shape
What Makes a DFD Transform-Flow
Transform mapping only works on a D F D with a particular shape, called transform flow. First, data enters from outside in a raw form, and moves through processes that make it progressively more meaningful. That is the incoming flow. Then it reaches a central point, where the real transformation happens. That is the central transform. Finally, it moves through processes that make it progressively more concrete again, until it leaves as formatted output. That is the outgoing flow. A D F D shaped around routing a transaction, down one of several paths, is handled by a different technique.
Flow Boundaries
Finding the Flow Boundaries
The first step is finding two boundaries. The incoming flow boundary marks where data stops being raw external input, and becomes meaningful, processed information. The outgoing flow boundary marks where information stops being internal, and starts being formatted for delivery. Everything between them is the central transform. Here is a sensor-reading example. Reading raw sensor data, and validating it, are incoming flow. Converting to standard units, and computing an adjusted value, are the central transform. And formatting a report, and displaying the reading, are outgoing flow.
First-Level Factoring
The Top of the Structure Chart
With the boundaries found, first-level factoring creates the top of the structure chart. There is a single top-level module, representing the system as a whole. Beneath it are three subordinate modules. One coordinates the incoming data, one coordinates the central transform, and one coordinates the outgoing result. These three modules correspond directly to the three regions the boundaries marked out.
Second-Level Factoring
Every Process Becomes a Module
Second-level factoring then works through each region, one at a time. Every process bubble in the D F D becomes its own module in the structure chart. Each one is placed beneath whichever first-level module matches the region it came from. So factoring does not invent new organization. It carries the D F D's existing organization over, into a module hierarchy.
Figure 8.6B
The Resulting Structure Chart
Here is the resulting structure chart for the sensor-reading system. At the top is the system as a whole. Beneath it are the three first-level branches. Get input, transform, and produce output. Under get input are read raw sensor data, and validate reading. Under transform are convert to standard units, and compute adjusted value. And under produce output are format report, and display reading. Every bubble from the D F D reappears as a module.
A Starting Point
Not a Finished Design
The structure chart is a starting point, not a finished design. It still gets reviewed and refined using the same general design principles that apply to any structure, like cohesion, coupling, and modularity, however it was first derived. Here is a question to think about. Picture a D F D for generating a paycheck. It reads raw timesheet data, validates hours, calculates gross pay, applies deductions, formats the pay stub, and prints it. Which bubbles would fall in the incoming flow, which in the central transform, and which in the outgoing flow?
Apply It
The Paycheck, Mapped
Here is one reasonable answer. Reading the raw timesheet data, and validating the hours, make up the incoming flow. The data becomes meaningful. Calculating gross pay, and applying deductions, are the central transform. That is where the real work happens. And formatting the pay stub, and printing it, are the outgoing flow. Each region becomes one first-level branch of the structure chart, with its bubbles as modules beneath.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. Transform mapping is a technique for deriving an initial structure chart from a transform-flow D F D, one shaped around incoming, central transform, and outgoing regions. The incoming flow boundary is where raw data becomes meaningful. The outgoing flow boundary is where formatting for delivery begins. A structure chart is a hierarchy of modules, showing which modules call which others. First-level factoring creates the top module and its three branches. Second-level factoring places each bubble beneath the branch for its region.
Key Takeaways
What to Carry Forward
To pull this together. Transform mapping turns a transform-flow D F D into a structure chart. Two flow boundaries divide the D F D into three regions. First-level factoring creates a top module, with three branches, one for each region. Second-level factoring places each bubble as a module under its region's branch. And the result is a starting point, still refined using general design principles.
About Software Engineering at UPI Study
Software Engineering (Computer Science 301) is a self-paced online course of 103 video lessons in 15 chapters, from process models and agile to requirements, design, user interfaces, reliability, security and project management. It carries a NCCRS credit recommendation for 3 semester credits.
Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Enroll now → Course details Download the syllabus All Computer Science courses Every course with PRO →
Why take it here
Why students take Software Engineering with UPI Study
Where the credit goes
Universities that work with NCCRS
Software Engineering carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Thomas Edison State UniversitySigned partner
University of the PeopleSigned partner
Charter Oak State CollegeSigned partner
Strayer UniversitySigned partner
Columbia Southern UniversitySigned partner
Indiana TechSigned partner
Penn StateWorks with NCCRS
Southern New Hampshire UniversityWorks with NCCRS
SUNYWorks with NCCRS
+many more cooperating universitiesFind my college →Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.
FAQ
Questions students ask us
About Transform Mapping: Turning Data Flow into Architecture
What is transform mapping in software design?
What are the incoming flow, central transform, and outgoing flow in a DFD?
What is the difference between first-level and second-level factoring?
How do you map a payroll data flow diagram into a structure chart?
About the Software Engineering course
How many college credits is Software Engineering?
How much does Software Engineering cost and what is included?
Which universities accept UPI Study credits?
How long does Software Engineering take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in Software Engineering.
103 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →