Structured program design: a designer's handbook
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Oxford
Butterworth-Heinemann
1994
|
Ausgabe: | 1. publ. |
Schriftenreihe: | Computer weekly
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | 311 S. graph. Darst. |
ISBN: | 0750617594 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV010077315 | ||
003 | DE-604 | ||
005 | 19950306 | ||
007 | t | ||
008 | 950306s1994 d||| |||| 00||| engod | ||
020 | |a 0750617594 |9 0-7506-1759-4 | ||
035 | |a (OCoLC)30509624 | ||
035 | |a (DE-599)BVBBV010077315 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-91 | ||
050 | 0 | |a QA76.64 | |
082 | 0 | |a 005.1/2 |2 20 | |
084 | |a DAT 318f |2 stub | ||
100 | 1 | |a Nicol, David F. |e Verfasser |4 aut | |
245 | 1 | 0 | |a Structured program design |b a designer's handbook |c David Nicol |
250 | |a 1. publ. | ||
264 | 1 | |a Oxford |b Butterworth-Heinemann |c 1994 | |
300 | |a 311 S. |b graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Computer weekly | |
650 | 4 | |a Structured programming | |
650 | 0 | 7 | |a Strukturierte Programmierung |0 (DE-588)4058133-0 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Strukturierte Programmierung |0 (DE-588)4058133-0 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=006688363&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-006688363 |
Datensatz im Suchindex
_version_ | 1804124465538269184 |
---|---|
adam_text | Contents
Acknowledgments 13
1 Introduction 1J5
1.1 Audience 15
1.2 Objectives 15
1.3 Background 16
1.4 What is needed? 16
1.5 Universality 17
1.6 The structure of the text 17
1.7 Relationship with Jackson System Design 18
1.8 A cautionary tale 19
2 Data Streams 21[
2.1 Data 21
2.2 Data streams 23
2.3 Device independence 23
2.4 Subroutines 24
2.5 Multiple data Hows 25
2.6 Existence 26
Breakpoint 26
3 Essential Principles 29
3.1 Elementary constructions 29
3.2 Applicability 29
3.2.1 Sequence 30
3.2.2 Selection 30
3.2.3 Iteration 30
6
3.3 Notation 30
3.3.1 Sequence 31
3.3.2 Selection 31
3.3.3 Iteration 31
3.4 Structures 31
3.5 Combinations 34
3.6 Symbols 38
3.7 Names 38
Breakpoint JO
3.8 Structures in time 3
3.9 Drawing styles 3
The steps of the structured method ^0
4 System Network Diagrams 11
4.1 WhatisanSND? 41
4.2 Decomposition of SNDs 4^
4.3 Keyed data sets 43
Exercises 43
5 Structure Diagrams and the Real World 45
5.1 Leaves 45
5.2 Branches 45
5.3 Empty components 4°
5.4 Tree paths 47
5.5 The real world 47
5.6 Data relationships 49
5.7 Conclusions 54
6 Structures 55
6.1 Exercises 55
6.2 Answers 56
6.3 Identification of errors 63
6.4 Further examples 63
6.5 Discussion of further examples 64
6.6 Exercises: Files Reports 67
7
6.7 Possible answers to 6.6 68
6.8 Conclusion 71
7 Database Structures 73
7.1 Basic database processing 73
7.2 Exercises 74
7.3 Answers 75
8 Defining Structures 77
8.1 Existence 77
8.2 Output 78
8.3 Groups 78
8.4 Full file analyses 79
8.5 More complex situations 80
8.6 Confusion! 82
8.7 Economy 82
8.8 Exclusion capability 83
8.9 On line systems 83
8.10 Family resemblances 84
8.11 Keyed access 85
8.12 Entity Life Histories 86
9 Commonality and Design Optimisation 87
9.1 Snares and delusions 87
9.2 Common substructures 88
9.3 Bottom up design 88
9.4 Optimisation 89
10 Correspondence 91^
10.1 Objective 91
10.2 Properties of DSDs 91
10.3 Definition 92
10.4 Function 93
10.5 Number 93
10.6 Ordering 93
8
10.7 Naming 94
10.8 Exercise 96
10.9 Further exercise 97
10.10 Records of Correspondence 99
10.11 Lack of correspondence 101
10.12 Program Structure Diagrams 101
10.13 Testing 101
10.14 Experience 102
11 Iteration in the Design Process 103
11.1 The iterative nature of the design process 103
12 Program Structure Diagrams 105
12.1 Production 105
12.2 Correspondence 105
12.3 Naming conventions 106
12.4 Completion of the Correspondence List 106
12.5 Generation of extra PSD components 108
12.6 PSD component types 108
12.7 Verification of PSDs 109
12.8 Testing 109
13 Operations 111
13.1 Identity 111
13.2 The process HI
13.3 Producing the list of operations 2
13.4 Structure 112
13.5 Numbering 113
13.6 Allocation to the PSD 113
13.7 The technique 114
13.8 Components 114
13.9 Errors and difficulties 114
13.10 Backward thinking 4
13.11 Testing 115
9
14 Structure Text 117
14.1 Starting conversion to code 117
14.2 What is Structure Text? 117
14.3 Principles 117
14.4 The principle 118
14.5 Conditions 120
14.6 Definition and allocation of conditions 120
14.7 Notation 121
14.8 Testing 122
15 Implementation 123
15.1 Starting points 123
15.2 Implementation 123
15.3 Coding styles 123
15.4 Alternatives 127
15.5 Advantages and disadvantages 129
15.6 In parenthesis 130
15.7 Testing 130
15.8 Reviewing 131
15.9 Maintenance 132
16 A Simple Program 133
16.1 Application 133
16.2 Processing requirements 133
16.3 Step 1: the System Network Diagram 134
16.4 Step 2: the Data Structure Diagrams 134
16.5 Step 3: identification of correspondence 135
16.6 Step 4: construction of the Program Structure Diagram 136
16.7 Step 5: listing and allocation of operations 136
16.8 Step 6: Structure Text 138
16.9 A minor problem 139
16.10 Step 7: Implementation in code 140
16.11 Recapitulation 143
17 Collating 145
17.1 Environment 145
17.2 Mismatches 146
17.3 General form 147
17.4 Missing key values 148
17.5 Example 148
18 Recognition Difficulties and Backtracking 149
18.1 Single Read Ahead 149
18.1.1 Iteration 149
18.1.2 Selection 150
18.2 Example 1: Editing Borrower Fines 150
18.3 Example 2: Regional Sales Analysis 155
18.4 Multiple Read Ahead 163
18.5 Conversational Constraint 165
18.6 Backtracking 165
18.7 A MORAL TALE 166
18.8 Design stages of Backtracking 170
18.9 Ordering the Posit/Admit clauses 171
18.10 Handling side effects 171
18.11 Multiple Quits 172
18.12 Quitting during Iteration 172
18.13 The Posit Switch 173
18.14 Condensing multiple key values 173
18.15 General points 177
19 Errors and Invalidity 181
19.1 Introduction 181
19.2 Classes of data 181
19.3 Error in design 183
19.4 Valid data 183
19.5 Types of error 183
19.6 Example 184
19.7 Error by addition 185
19.8 Error by misidentification 186
11
19.9 Good data mixed with error 186
19.10 Multiple small items and the Posit Switch 187
19.11 Exercises. 190
19.12 Answers 191
19.13 Invalidity 192
19.14 Core thinking 193
19.15 Implications 196
20 Ordering Clashes 197
20.1 Origins 197
20.2 Resolution 198
20.3 Sorting 198
20.4 Direct access storage 198
20.5 Exercise 201
20.6 Answers 202
21 Boundary Clashes and Inversion 207
21.1 The problem 207
21.2 The solution 208
21.3 Process Independence 210
21.4 Choosing an implementation 210
21.5 Program Inversion 211
21.6 Inverting 211
21.7 Keeping the place 213
21.8 A demonstration 213
21.9 First version of SHIPMENTS 217
21.10 Implementation 219
21.11 Exercise 223
21.12 Answers 224
21.13 Paginated reports 226
21.14 Reports with beginnings and ends 229
22 Examples of Collating and Inversion 235
22.1 Example 235
22.2 Specification 236
12
22.3 Step 1: System Network Diagram 238
22.4 Step 2: Data Structure Diagrams 238
22.5 Step 3: Initial Correspondence List 241
22.6 Step 4: Basic Program Structure Diagrams 242
22.7 Step 5: Operations List 245
22.8 Step 6: PSDs with Operations allocated 247
22.9 Step 7: Structure texts 251
22.10 Step 8: Code 258
23 Interleaving Clashes 271
23.1 General 271
23.2 Multiple records 272
23.3 Extraction programs 273
23.4 The Motor Rally 274
23.5 The Solution 275
23.6 The Motor Rally Data structures 278
23.7 The System Log File 283
23.8 Discussion and solution 285
23.9 Implementation 288
23.10 Missing records 297
24 Specification 301
24.1 Introduction 301
24.2 Content of a specification 301
24.3 Output 301
24.4 Input 302
24.5 Conditions 302
24.6 Processing 302
24.7 Valid, Invalid, Good and Error data 303
Bibliography 305
Index 307
|
any_adam_object | 1 |
author | Nicol, David F. |
author_facet | Nicol, David F. |
author_role | aut |
author_sort | Nicol, David F. |
author_variant | d f n df dfn |
building | Verbundindex |
bvnumber | BV010077315 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.64 |
callnumber-search | QA76.64 |
callnumber-sort | QA 276.64 |
callnumber-subject | QA - Mathematics |
classification_tum | DAT 318f |
ctrlnum | (OCoLC)30509624 (DE-599)BVBBV010077315 |
dewey-full | 005.1/2 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.1/2 |
dewey-search | 005.1/2 |
dewey-sort | 15.1 12 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 1. publ. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01309nam a2200373 c 4500</leader><controlfield tag="001">BV010077315</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">19950306 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">950306s1994 d||| |||| 00||| engod</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0750617594</subfield><subfield code="9">0-7506-1759-4</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)30509624</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV010077315</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.64</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.1/2</subfield><subfield code="2">20</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 318f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Nicol, David F.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Structured program design</subfield><subfield code="b">a designer's handbook</subfield><subfield code="c">David Nicol</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. publ.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Oxford</subfield><subfield code="b">Butterworth-Heinemann</subfield><subfield code="c">1994</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">311 S.</subfield><subfield code="b">graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Computer weekly</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Structured programming</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Strukturierte Programmierung</subfield><subfield code="0">(DE-588)4058133-0</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Strukturierte Programmierung</subfield><subfield code="0">(DE-588)4058133-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=006688363&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-006688363</subfield></datafield></record></collection> |
id | DE-604.BV010077315 |
illustrated | Illustrated |
indexdate | 2024-07-09T17:46:06Z |
institution | BVB |
isbn | 0750617594 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-006688363 |
oclc_num | 30509624 |
open_access_boolean | |
owner | DE-91 DE-BY-TUM |
owner_facet | DE-91 DE-BY-TUM |
physical | 311 S. graph. Darst. |
publishDate | 1994 |
publishDateSearch | 1994 |
publishDateSort | 1994 |
publisher | Butterworth-Heinemann |
record_format | marc |
series2 | Computer weekly |
spelling | Nicol, David F. Verfasser aut Structured program design a designer's handbook David Nicol 1. publ. Oxford Butterworth-Heinemann 1994 311 S. graph. Darst. txt rdacontent n rdamedia nc rdacarrier Computer weekly Structured programming Strukturierte Programmierung (DE-588)4058133-0 gnd rswk-swf Strukturierte Programmierung (DE-588)4058133-0 s DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=006688363&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Nicol, David F. Structured program design a designer's handbook Structured programming Strukturierte Programmierung (DE-588)4058133-0 gnd |
subject_GND | (DE-588)4058133-0 |
title | Structured program design a designer's handbook |
title_auth | Structured program design a designer's handbook |
title_exact_search | Structured program design a designer's handbook |
title_full | Structured program design a designer's handbook David Nicol |
title_fullStr | Structured program design a designer's handbook David Nicol |
title_full_unstemmed | Structured program design a designer's handbook David Nicol |
title_short | Structured program design |
title_sort | structured program design a designer s handbook |
title_sub | a designer's handbook |
topic | Structured programming Strukturierte Programmierung (DE-588)4058133-0 gnd |
topic_facet | Structured programming Strukturierte Programmierung |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=006688363&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT nicoldavidf structuredprogramdesignadesignershandbook |