Feature-oriented software product lines: concepts and implementation
Gespeichert in:
Format: | Buch |
---|---|
Sprache: | English |
Veröffentlicht: |
Berlin [u.a.]
Springer
2013
|
Schlagworte: | |
Online-Zugang: | Inhaltstext Inhaltsverzeichnis |
Beschreibung: | XVI, 315 S. Illustrationen 235 mm x 155 mm |
ISBN: | 9783642375200 3642375200 9783642375217 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV040912972 | ||
003 | DE-604 | ||
005 | 20221014 | ||
007 | t | ||
008 | 130326s2013 gw a||| |||| 00||| eng d | ||
015 | |a 13,N11 |2 dnb | ||
016 | 7 | |a 1032082933 |2 DE-101 | |
020 | |a 9783642375200 |c Gb. : ca. EUR 53.49 (DE) (freier Pr.), ca. EUR 54.99 (AT) (freier Pr.), ca. sfr 67.00 (freier Pr.) |9 978-3-642-37520-0 | ||
020 | |a 3642375200 |9 3-642-37520-0 | ||
020 | |a 9783642375217 |9 978-3-642-37521-7 | ||
024 | 3 | |a 9783642375200 | |
028 | 5 | 2 | |a Best.-Nr.: 86236230 |
035 | |a (OCoLC)864645036 | ||
035 | |a (DE-599)DNB1032082933 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
044 | |a gw |c XA-DE-BE | ||
049 | |a DE-739 |a DE-863 |a DE-703 |a DE-384 |a DE-11 | ||
082 | 0 | |a 005.12028 |2 22/ger | |
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
245 | 1 | 0 | |a Feature-oriented software product lines |b concepts and implementation |c Sven Apel ... |
264 | 1 | |a Berlin [u.a.] |b Springer |c 2013 | |
300 | |a XVI, 315 S. |b Illustrationen |c 235 mm x 155 mm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Produktlinie |0 (DE-588)4336076-2 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Softwareprodukt |0 (DE-588)4329116-8 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Feature Driven Development |0 (DE-588)7584080-7 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Softwareprodukt |0 (DE-588)4329116-8 |D s |
689 | 0 | 1 | |a Produktlinie |0 (DE-588)4336076-2 |D s |
689 | 0 | 2 | |a Feature Driven Development |0 (DE-588)7584080-7 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Apel, Sven |d 1977- |e Sonstige |0 (DE-588)129781657 |4 oth | |
856 | 4 | 2 | |m X:MVB |q text/html |u http://deposit.dnb.de/cgi-bin/dokserv?id=4272930&prov=M&dok_var=1&dok_ext=htm |3 Inhaltstext |
856 | 4 | 2 | |m Digitalisierung UB Passau - ADAM Catalogue Enrichment |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=025892265&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-025892265 |
Datensatz im Suchindex
DE-BY-863_location | 1340 |
---|---|
DE-BY-FWS_call_number | 1340/ST 230 A641 |
DE-BY-FWS_katkey | 564328 |
DE-BY-FWS_media_number | 083101398397 |
_version_ | 1824556064403619840 |
adam_text |
Contents
Part I Software Product Lines
1
Software Product Lines
. 3
1.1
From Individualism to Standardization and Back Again
. 3
1.2
Specialized and Standardized Software
. 6
1.3
Software Product Lines
. 7
1.4
Promises of Software Product Lines
. 9
1.5
Success Stories
. 10
1.6
A Feature-Oriented Approach
. 11
1.7
Running Examples
. 11
1.8
Intended Audience of the Book
. 13
1.9
How to Read this Book
. 14
1.10
Further Reading
. 15
2
A Development Process for Feature-Oriented Product Lines
. 17
2.1
Features and Products
. 17
2.2
A Process for Product-Line Development
. 19
2.2.1
Domain Analysis
. 22
2.2.2
Requirements Analysis
. 24
2.2.3
Domain Implementation
. 25
2.2.4
Product Derivation
. 26
2.3
Feature Modeling
. 26
2.3.1
Feature Models
. 27
2.3.2
Feature Diagrams
. 28
2.3.3
Formalization in Propositional Logic
. 31
2.3.4
The Feature Model for the Graph Library
. 32
2.3.5
Variations and Extensions of Feature Models
. 34
2.3.6
Feature Modeling in Practice
. 36
2.3.7
Tooling
. 39
xii Contents
2.4 Adoption
Paths of the Product-Line Approach
. 39
2.4.1
Proactive Approach
. 40
2.4.2
Extractive Approach
. 40
2.4.3
Reactive Approach
. 41
2.5
Further Reading
. 42
Exercises
. 42
Part II Variability Implementation
3
Basic Concepts, Classification and Quality Criteria
. 47
3.1
Dimensions of Variability Implementation
. 48
3.1.1
Binding Time
. 48
3.1.2
Technology: Language-Based Versus Tool-Based.
. 49
3.1.3
Representation: Annotation Versus Composition
. 50
3.2
Quality Criteria
. 52
3.2.1
Preplanning Effort
. 52
3.2.2
Feature Traceability
. 54
3.2.3
Separation of Concerns
. 55
3.2.4
Information Hiding
.'. . . 56
3.2.5
Granularity
. 59
3.2.6
Uniformity
. 59
3.3
Structure of Subsequent Chapters
. 60
3.4
Further Reading
. 61
Exercises
. 62
4
Classic, Language-Based Variability Mechanisms
. 65
4.1
Parameters
. 66
4.1.1
Discussion
. 66
4.2
Design Patterns
. 69
4.2.1
Observer Pattern
. 70
4.2.2
Template-Method Pattern
. 71
4.2.3
Strategy Pattern
. 73
4.2.4
Decorator Pattern
. 75
4.2.5
Discussion
. 77
4.3
Frameworks
. 79
4.3.1
White-Box Frameworks
. 80
4.3.2
Black-Box Frameworks
. 81
4.3.3
An Implementation Example for Frameworks
. 82
4.3.4
Loading Plug-Ins
. 85
4.3.5
Discussion
. 86
4.4
Components and Services
. 89
4.4.1
Sizing Components
. 91
4.4.2
Composing Components
. 92
Contents
хш
4.4.3
Components Versus Plug-Ins
. 93
4.5
Further Reading
. 95
Exercises
. 96
5
Classic, Tool-Driven Variability Mechanisms
. 99
5.1
Version-Control Systems
. 99
5.1.1
Terminology
.
10Θ
5.1.2
Building Product Lines with Version-Control
Systems
. 101
5.1.3
Discussion
. 103
5.2
Build Systems
. 105
5.2.1
Variability in Build Scripts
. 105
5.2.2
Custom Build Scripts
. 106
5.2.3
Case Study: Build-System Variability in Linux
. 107
5.2.4
Discussion
. 108
5.3
Preprocessors
. 110
5.3.1
The
С
Preprocessor cpp
. 110
5.3.2
Implementing Variability with Preprocessors
.
Ill
5.3.3
Further Preprocessors
. 113
5.3.4
Disciplined Annotations
. 116
5.3.5
Preprocessors in Practice
. 118
5.3.6
Discussion
. 120
5.4
Further Reading
. 124
Exercises
. 125
6
Advanced, Language-Based Variability Mechanisms
. 129
6.1
Feature-Oriented Programming
. 130
6.1.1
Collaboration-Based Design
. 130
6.1.2
Feature Modules
. 132
6.1.3
The
Jak
Language
. 133
6.1.4
Models of Feature-Oriented Programming
. 135
6.1.5
Discussion
. 138
6.2
Aspect-Oriented Programming
. 141
6.2.1
Aspects: Separating Crosscutting Concerns
. 142
6.2.2
The Aspect! Language
. 145
6.2.3
Aspects for Product Lines
. 147
6.2.4
Discussion
. 149
6.3
Aspects and Feature Modules in Concert
. 152
6.3.1
Homogeneous and Heterogeneous Crosscutting
Concerns
. 153
6.3.2
Static and Dynamic Crosscutting Concerns
. 157
6.3.3
Summary of Comparison
. 161
6.3.4
Combining Aspects and Feature Modules
. 161
xiv Contents
6.3.5
A Study on Advanced Crosscutting Mechanisms
. 163
6.3.6
Discussion
. 164
6.4
Tooling
. 166
6.5
Practical Relevance
. 167
6.6
Further Approaches
. 168
6.6.1
Delta-Oriented Programming
. 168
6.6.2
Refactoring
Feature Modules
. 169
6.6.3
Context-Oriented Programming
. 170
6.7
Further Reading
. 171
Exercises
. 172
7
Advanced, Tool-Driven Variability Mechanisms
. 175
7.1
Exploiting Feature Tracing
. 175
7.1.1
Consistency Checking
. 177
7.1.2
Visualizing Tracing Information.
. 178
7.2
Views on Code
. 180
7.3
Integrated Product Derivation
. 182
7.4
Discussion: Virtual Separation of Concerns
. 184
7.5
Tooling
. 186
7.6
Further Reading
.'. . . 186
Exercises
. 187
Part III Advanced Topics
8
Refactoring
of Software Product Lines
. 193
8.1
Refactoring in
General
. 194
8.2
Refactoring in
Software Product Lines
. 197
8.2.1
Variability Smells in Software Product Lines
. 197
8.2.2
Defining Product-Line Refactorings
. 200
8.2.3
Examples of Product-Line Refactorings
. 201
8.3
Refactoring
as Path Toward a Product Line
. 203
8.3.1
Example: Extraction of Feature Colored
of the Graph Library
. 203
8.3.2
Case Study:
Refactoring
of Berkeley
DB
with AspectJ
. 207
8.4
Further Reading
. 210
Exercises
. 212
9
Feature Interactions
. 213
9.1
The Feature-Interaction Problem
. 214
9.1.1
Higher Order Interactions
. 216
9.2
Detecting Feature Interactions
. 217
9.3
The Optional-Feature Problem
. 219
9.4
Implementing Feature Interactions
. 222
Contents
9.4.1 Implementation
Strategies: Overview and Goals
. 223
9.4.2
Change Feature Model
. 224
9.4.3
Multiple Implementations
. 225
9.4.4
Moving Code
. 226
9.4.5
Conditional Compilation
. 227
9.4.6
Optional Weaving
. 228
9.4.7
Distinct Module for Coordination Code
. 230
9.4.8
Comparison of Solutions
. 232
9.5
Experience
. 233
9.5.1
Decomposition of Berkeley
DB
. 234
9.5.2
Design and Implementation of FAME-DBMS
. 236
9.6
Further Reading
. 239
Exercises
. 240
10
Analysis of Software Product Lines
. 243
10.1
Analysis of Feature Models
. 244
10.1.1
Valid Feature Selection
. 245
10.1.2
Consistent Feature Models
. 247
10.1.3
Testing Facts about Feature Models
. 248
10.1.4
Dead Features and Mandatory Features
. 249
10.1.5
Constraint Propagation
. 250
10.1.6
Number of Valid Feature Selections
. 251
10.1.7
Comparing Feature Models
. 252
10.1.8
Other Feature-Model Analyses
. 254
10.2
Analysis of Feature-to-Code Mappings
. 254
10.2.1
Dead Code
. 255
10.2.2
Abstract Features
. 257
10.2.3
Determining Presence Conditions
. 257
10.3
Analysis of Domain Implementations
. 260
10.3.1
Design Space
. 262
10.3.2
Sampling Strategies
. 263
10.3.3
Family-Based Type Checking
of Preprocessor-Based Implementations
. 264
10.3.4
Family-Based Type Checking
for Feature-Oriented Programming
. 269
10.3.5
Family-Based Analysis with Variability Encoding
. 271
10.3.6
Feature-Based Analysis Strategies
. 272
10.3.7
Beyond Type Checking
. 273
10.4
Case Studies and Experience
. 275
10.5
Tooling
. 276
10.6
Further Reading
. 277
Exercises
. 278
xvi Contents
Appendix
A: Tool
Support. 283
References
. 293
Index. 309 |
any_adam_object | 1 |
author_GND | (DE-588)129781657 |
building | Verbundindex |
bvnumber | BV040912972 |
classification_rvk | ST 230 |
ctrlnum | (OCoLC)864645036 (DE-599)DNB1032082933 |
dewey-full | 005.12028 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.12028 |
dewey-search | 005.12028 |
dewey-sort | 15.12028 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV040912972</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20221014</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">130326s2013 gw a||| |||| 00||| eng d</controlfield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">13,N11</subfield><subfield code="2">dnb</subfield></datafield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">1032082933</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783642375200</subfield><subfield code="c">Gb. : ca. EUR 53.49 (DE) (freier Pr.), ca. EUR 54.99 (AT) (freier Pr.), ca. sfr 67.00 (freier Pr.)</subfield><subfield code="9">978-3-642-37520-0</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3642375200</subfield><subfield code="9">3-642-37520-0</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783642375217</subfield><subfield code="9">978-3-642-37521-7</subfield></datafield><datafield tag="024" ind1="3" ind2=" "><subfield code="a">9783642375200</subfield></datafield><datafield tag="028" ind1="5" ind2="2"><subfield code="a">Best.-Nr.: 86236230</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)864645036</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)DNB1032082933</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="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">XA-DE-BE</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-739</subfield><subfield code="a">DE-863</subfield><subfield code="a">DE-703</subfield><subfield code="a">DE-384</subfield><subfield code="a">DE-11</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.12028</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 230</subfield><subfield code="0">(DE-625)143617:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Feature-oriented software product lines</subfield><subfield code="b">concepts and implementation</subfield><subfield code="c">Sven Apel ...</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Berlin [u.a.]</subfield><subfield code="b">Springer</subfield><subfield code="c">2013</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVI, 315 S.</subfield><subfield code="b">Illustrationen</subfield><subfield code="c">235 mm x 155 mm</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="650" ind1="0" ind2="7"><subfield code="a">Produktlinie</subfield><subfield code="0">(DE-588)4336076-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Softwareprodukt</subfield><subfield code="0">(DE-588)4329116-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Feature Driven Development</subfield><subfield code="0">(DE-588)7584080-7</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Softwareprodukt</subfield><subfield code="0">(DE-588)4329116-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Produktlinie</subfield><subfield code="0">(DE-588)4336076-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">Feature Driven Development</subfield><subfield code="0">(DE-588)7584080-7</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Apel, Sven</subfield><subfield code="d">1977-</subfield><subfield code="e">Sonstige</subfield><subfield code="0">(DE-588)129781657</subfield><subfield code="4">oth</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">X:MVB</subfield><subfield code="q">text/html</subfield><subfield code="u">http://deposit.dnb.de/cgi-bin/dokserv?id=4272930&prov=M&dok_var=1&dok_ext=htm</subfield><subfield code="3">Inhaltstext</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Passau - ADAM Catalogue Enrichment</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=025892265&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-025892265</subfield></datafield></record></collection> |
id | DE-604.BV040912972 |
illustrated | Illustrated |
indexdate | 2025-02-20T07:17:37Z |
institution | BVB |
isbn | 9783642375200 3642375200 9783642375217 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-025892265 |
oclc_num | 864645036 |
open_access_boolean | |
owner | DE-739 DE-863 DE-BY-FWS DE-703 DE-384 DE-11 |
owner_facet | DE-739 DE-863 DE-BY-FWS DE-703 DE-384 DE-11 |
physical | XVI, 315 S. Illustrationen 235 mm x 155 mm |
publishDate | 2013 |
publishDateSearch | 2013 |
publishDateSort | 2013 |
publisher | Springer |
record_format | marc |
spellingShingle | Feature-oriented software product lines concepts and implementation Produktlinie (DE-588)4336076-2 gnd Softwareprodukt (DE-588)4329116-8 gnd Feature Driven Development (DE-588)7584080-7 gnd |
subject_GND | (DE-588)4336076-2 (DE-588)4329116-8 (DE-588)7584080-7 |
title | Feature-oriented software product lines concepts and implementation |
title_auth | Feature-oriented software product lines concepts and implementation |
title_exact_search | Feature-oriented software product lines concepts and implementation |
title_full | Feature-oriented software product lines concepts and implementation Sven Apel ... |
title_fullStr | Feature-oriented software product lines concepts and implementation Sven Apel ... |
title_full_unstemmed | Feature-oriented software product lines concepts and implementation Sven Apel ... |
title_short | Feature-oriented software product lines |
title_sort | feature oriented software product lines concepts and implementation |
title_sub | concepts and implementation |
topic | Produktlinie (DE-588)4336076-2 gnd Softwareprodukt (DE-588)4329116-8 gnd Feature Driven Development (DE-588)7584080-7 gnd |
topic_facet | Produktlinie Softwareprodukt Feature Driven Development |
url | http://deposit.dnb.de/cgi-bin/dokserv?id=4272930&prov=M&dok_var=1&dok_ext=htm http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=025892265&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT apelsven featureorientedsoftwareproductlinesconceptsandimplementation |
Beschreibung
THWS Würzburg Teilbibliothek SHL, Raum I.2.11
Signatur: |
1340 ST 230 A641 |
---|---|
Exemplar 1 | ausleihbar Verfügbar Bestellen |