Software Architecture 14th European Conference ECSA 2020 L Aquila Italy September 14 18 2020 Proceedings Anton Jansen Ebook All Chapters PDF
Software Architecture 14th European Conference ECSA 2020 L Aquila Italy September 14 18 2020 Proceedings Anton Jansen Ebook All Chapters PDF
Software Architecture 14th European Conference ECSA 2020 L Aquila Italy September 14 18 2020 Proceedings Anton Jansen Ebook All Chapters PDF
com
https://textbookfull.com/product/software-
architecture-14th-european-conference-
ecsa-2020-l-aquila-italy-
september-14-18-2020-proceedings-anton-jansen/
https://textbookfull.com/product/software-architecture-13th-european-
conference-ecsa-2019-paris-france-september-9-13-2019-proceedings-
tomas-bures/
textbookfull.com
https://textbookfull.com/product/experimental-methods-in-heat-
transfer-and-fluid-mechanics-1st-edition-je-chin-han-author/
textbookfull.com
Enacting Musical Time The Bodily Experience of New Music
Oxford Studies in Music Theory Mariusz Kozak
https://textbookfull.com/product/enacting-musical-time-the-bodily-
experience-of-new-music-oxford-studies-in-music-theory-mariusz-kozak/
textbookfull.com
https://textbookfull.com/product/problem-solving-in-data-structures-
algorithms-using-c-programming-interview-guide-1st-edition-hemant-
jain/
textbookfull.com
https://textbookfull.com/product/hero-of-a-highland-wolf-highland-
wolf-4-1st-edition-terry-spear/
textbookfull.com
https://textbookfull.com/product/global-ethics-an-introduction-second-
edition-edition-hutchings/
textbookfull.com
https://textbookfull.com/product/advances-in-protein-chemistry-and-
structural-biology-94-1st-edition-rossen-donev-eds/
textbookfull.com
Chronic Lung Diseases Pathophysiology and Therapeutics
Sheikh Rayees
https://textbookfull.com/product/chronic-lung-diseases-
pathophysiology-and-therapeutics-sheikh-rayees/
textbookfull.com
Anton Jansen · Ivano Malavolta ·
Henry Muccini · Ipek Ozkaya ·
Olaf Zimmermann (Eds.)
LNCS 12292
Software
Architecture
14th European Conference, ECSA 2020
L’Aquila, Italy, September 14–18, 2020
Proceedings
Lecture Notes in Computer Science 12292
Founding Editors
Gerhard Goos
Karlsruhe Institute of Technology, Karlsruhe, Germany
Juris Hartmanis
Cornell University, Ithaca, NY, USA
Software
Architecture
14th European Conference, ECSA 2020
L’Aquila, Italy, September 14–18, 2020
Proceedings
123
Editors
Anton Jansen Ivano Malavolta
Koninklijke Philips N.V. VU Amsterdam
Eindhoven, The Netherlands Amsterdam, The Netherlands
Henry Muccini Ipek Ozkaya
University of L’Aquila Carnegie Mellon University
L’Aquila, Italy Pittsburg, PA, USA
Olaf Zimmermann
University of Applied Sciences
of Eastern Switzerland
Rapperswil, Switzerland
This Springer imprint is published by the registered company Springer Nature Switzerland AG
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
General Chair
Henry Muccini University of L’Aquila, Italy
Steering Committee
Muhammad Ali Babar The University of Adelaide, Australia
Paris Avgeriou University of Groningen, The Netherlands
Tomas Bures Charles University, Czech Republic
Rogério de Lemos University of Kent, UK
Laurence Duchien CRIStAL, University of Lille, France
Carlos E. Cuesta Rey Juan Carlos University, Spain
David Garlan Carnegie Mellon University, USA
Paola Inverardi University of L’Aquila, Italy
Patricia Lago Vrije Universiteit Amsterdam, The Netherlands
Antónia Lopes University of Lisbon, Portugal
Ivano Malavolta Vrije Universiteit Amsterdam, The Netherlands
Raffaela Mirandola Politecnico di Milano, Italy
Henry Muccini University of L’Aquila, Italy
Flavio Oquendo (Chair) IRISA, University of South Brittany, France
Ipek Ozkaya Carnegie Mellon University, USA
Jennifer Pérez Technical University of Madrid, Spain
Bedir Tekinerdogan Wageningen University, The Netherlands
Danny Weyns KU Leuven, Belgium
Uwe Zdun University of Vienna, Austria
Research Track
Program Committee Chairs
Ivano Malavolta Vrije Universiteit Amsterdam, The Netherlands
Ipek Ozkaya Carnegie Mellon University, USA
Program Committee
Jesper Andersson Linnaeus University, Sweden
Paris Avgeriou University of Groningen, The Netherlands
Rami Bahsoon University of Birmingham, UK
Luciano Baresi Politecnico di Milano, Italy
Thais Batista Federal University of Rio Grande do Norte, Brazil
Steffen Becker University of Stuttgart, Germany
Stefan Biffl TU Wien, Austria
viii Organization
Additional Reviewers
Industry Track
Program Committee Chairs
Anton Jansen Philips, The Netherlands
Olaf Zimmermann Hochschule für Technik Rapperswil, Switzerland
Program Committee
Mohsen Anvaari Independent Consultant, Norway
Andrei Furda Hitachi Rail STS, Australia
Heiko Koziolek ABB Corporate Research, Germany
Thomas Kurpick Trusted Shops, Germany
Xabier Larrucea Tecnalia, Spain
Daniel Lübke iQuest GmbH, Germany
Željko Obrenović Incision, The Netherlands
Eltjo Poort CGI, The Netherlands
Daniele Spinosi Micron Technology, Italy
Michael Stal Siemens, Germany
Johannes Wettinger Bosch, Germany
Erik Wittern IBM T.J. Watson Research Center, USA
Eoin Woods Endava, UK
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
x Organization
Additional Reviewers
Stefan Kapferer
Mirko Stocker
Organizing Committee
Proceedings Chair
Mirco Franzago University of L’Aquila, Italy
Web Chair
Karthik Vaidhyanathan Gran Sasso Science Institute, Italy
Workshops Chairs
Mauro Caporuscio Linnaeus University, Sweden
Anne Koziolek Karlsruhe Institute of Technology, Germany
Publicity Chairs
Stéphanie Challita Inria, France
Juergen Musil TU Wien, Austria
Virtualization Chairs
Claudio Di Sipio University of L’Aquila, Italy
Luca Traini University of L’Aquila, Italy
Keynotes
AI Engineering — New Challenges in System
and Software Architecting and Managing
Lifecycle for AI-based Systems
Ivica Crnkovic
Short Bio
Diomidis Spinellis
Abstract. Unix has evolved over five decades, shaping modern operating sys-
tems, key software technologies, and development practices. Studying the
evolution of this remarkable system from an architectural perspective can pro-
vide insights on how to manage the growth of large, complex, and long-lived
software systems. Along main Unix releases leading to the FreeBSD lineage we
examine core architectural design decisions, the number of features, and code
complexity, based on the analysis of source code, reference documentation, and
related publications. We see that the growth in size has been uniform, with some
notable outliers, while cyclomatic complexity has been religiously safeguarded.
A large number of Unix-defining design decisions were implemented right from
the very early beginning, with most of them still playing a major role. Unix
continues to evolve from an architectural perspective, but the rate of architec-
tural innovation has slowed down over the system’s lifetime. Architectural
technical debt has accrued in the forms of functionality duplication and unused
facilities, but in terms of cyclomatic complexity it is systematically being paid
back through what appears to be a self-correcting process. Some unsung
architectural forces that shaped Unix are the emphasis on conventions over rigid
enforcement, the drive for portability, a sophisticated ecosystem of other
operating systems and development organizations, and the emergence of a
federated architecture, often through the adoption of third-party subsystems.
These findings allow us to form an initial theory on the architecture evolution of
large, complex operating system software.
Short Bio
IEEE Software editorial board, authoring the regular “Tools of the Trade” column, and
as the magazine’s Editor-in- Chief over the period 2015–2018. He has contributed code
that ships with Apple’s macOS and BSD Unix and is the developer of UMLGraph,
CScout, git-issue, and other open-source software packages, libraries, and tools.
Dr. Spinellis is a senior member of the ACM and the IEEE.
Mighty Methods: Four Essential Tools
for Every Software Architect’s Silver Toolbox
Michael Keeling
LendingHome, USA
[email protected]
Short Bio
Michael Keeling is a software engineer at LendingHome and the author of Design It!:
From Programmer to Software Architect. Prior to LendingHome, Keeling worked at
IBM on the Watson Discovery Service, Vivisimo, BuzzHoney, and Black Knight
Technology. Keeling has also served as an Adjunct Faculty member at Carnegie
Mellon University in the Master of Software Engineering Distance Program since
2009. He holds a Master in Software Engineering from Carnegie Mellon University in
Pittsburgh, PA and a Bachelor of Science in Computer Science from the College of
William and Mary in Williamsburg, VA.
Keeling’s current research interests include software architecture design methods,
agile software development, and human factors of software engineering. He is a regular
speaker in the architecture and agile communities, presenting papers and talks, and
facilitating workshops for both national and international audiences. Keeling is a
two-time winner of the SEI/IEEE Software “Architecture in Practice” Best Presentation
Award for talks given at the 2012 and 2014 SATURN conferences. A full list of his
talks and workshops are available on his website:
http://www.neverletdown.net/p/speaking-and-writing.html.
Contents
Microservices
Model-Based Approaches
1 Introduction
same; and different technologies in different parts of the system implement the
patterns in different ways, making the automatic parsing of code and identifica-
tion of the patterns a haphazard process.
This work focuses on describing a method for assessing architecture con-
formance to coupling-related patterns and practices in microservice architec-
tures. Coupling between microservices is caused by existence of dependencies,
e.g. whenever one service calls another service to fulfill a request or share data.
Loose coupling is an established topic in service-oriented architectures [22] but
the application to the specific context of microservice architectures has not, to
our knowledge, been examined so far.
Strong coupling is conflicting with some of the key microservice tenets men-
tioned above. In particular, releasability, which is a highly desirable character-
istic in modern systems due to the emergence of DevOps practices, relies on
the rapid and independent release of individual microservices, and is compro-
mised by strong dependencies between them. For the same reason, development
in independent teams becomes more difficult, and independent deployment of
individual microservices in lightweight containers is also impeded. This work
covers three broad coupling aspects: Coupling through Databases, resulting from
reliance on commonly accessed data via shared databases; Coupling through Syn-
chronous Invocations, resulting from synchronous communication between indi-
vidual services; and Coupling through Shared Services, which arises through the
dependence on common shared services (for details see Sect. 3).
In reality, of course, no microservice system can support all microservice
tenets well at the same time. Rather the architectural decisions for or against the
use of specific patterns and practices must reflect a trade-off between ensuring
the desired tenets and other important quality attributes [12,22]. From these
considerations, this paper aims to study the following research questions:
– RQ1 How can we automatically assess conformance to loose coupling-related
patterns and practices in the context of microservice architecture decision
options?
– RQ2 How well do measures for assessing coupling-related decision options
and their associated tenets perform?
– RQ3 What is a set of minimal elements needed in a microservice architecture
model to compute such measures?
In pursuing of these questions, we surveyed the relevant literature (Sect. 2)
and gathered knowledge sources about established architecture practices and
patterns, their relations and tenets in form of a qualitative study on microser-
vice architectures. This enabled us to create a meta-model for the description
of microservice architectures, which was verified and refined through iterative
application in modelling a number of real-world systems, as outlined in Sect. 4.
We manually assessed all models and model variants on whether each deci-
sion option is supported, thereby deriving an objective ground truth (Sect. 5).
As the basis for an automatic assessment, we defined a number of generic,
technology-independent metrics to measure architecture conformance to the
decision options, i.e. at least one metric per major decision option (Sect. 6).
Assessing Architecture Conformance 5
These metrics (and combinations thereof) were applied on the models and model
variants to derive a numeric assessment, and then compared to the ground truth
assessment via an ordinal regression analysis (Sect. 7). Section 8 discusses the
results of our approach, as well as its limitations and potential threats to valid-
ity. Finally, in Sect. 9 we draw our conclusions and discuss options for future
work.
2 Related Work
Many studies focus on best practices for microservice architectures. Richard-
son [18] has published a collection of microservice patterns related to major
design and architectural practices. Patterns related to microservice APIs have
been introduced by Zimmermann et al. [23], while Skowronski [19] collected best
practices for event-driven microservice architectures. Microservice fundamentals
and best practices are also discussed by Fowler and Lewis [14], and are summa-
rized in a mapping study by Pahl and Jamshidi [16]. Taibi and Lenarduzzi [20]
study microservice “bad smells”, i.e. practices that should be avoided (which
would correspond to violations in our work).
Many software metrics-related studies for evaluating the system architecture
and individual architectural components exist, but most of them are not specific
to the microservices domain. Allen et al. [1,2] study component metrics for mea-
suring a number of quality attributes, e.g. size, coupling, cohesion, dependencies
of components, and the complexity of the architecture. Additional studies for
assessing quality attributes related to coupling and cohesion have been proposed
and validated in the literature [3,4,6,11]. Furthermore, a small number of stud-
ies [5,17,21] propose metrics specifically for assessing microservice-based soft-
ware architectures. Although these works study various aspects of architecture,
design metrics, and architecture-relevant tenets such as coupling and indepen-
dent deployment, their approach is usually generic. None of the works covers all
the related software aspects for measuring coupling in a microservice context:
the use of databases, system asynchronicity, and shared components. This is the
overarching perspective of our work, and the chief contribution of this paper.
3 Decisions
loosely coupled and thus able to be developed, deployed, and scaled indepen-
dently [14]. At one extreme of the scale, one option is No Persistent Data Storage,
which is applicable only for services whose functions are performed on transient
data. Otherwise, the most recommended option is the Database per Service pat-
tern [18]: each service has its own database and manages its own data indepen-
dently. Another option, which negatively affects loose coupling, is to use a Shared
Database [18]: a service writes its data in a common database and other services
can read these data when required. There are two different ways to implement
this pattern: in Data Shared via Shared Database multiple services share the
same table, resulting in a strongly coupled system, whereas in Databased Shared
but no Data Sharing each service writes to and reads from its own tables, which
has a lesser impact on coupling.
Inter-Service Coupling Through Synchronous Invocations. Service inte-
gration is another core decision when building a microservice-based system. A
theoretically optimal system of independent microservices would feature no com-
munication between them. Of course, services need to communicate in reality,
and so the question of integrating them so as to not result in tight inter-service
coupling becomes paramount. The recommended practice is that communica-
tion between the microservices should be, as much as possible, asynchronous.
This can be achieved through several patterns which are widely implemented in
typical technology stacks: the Publish/Subscribe [13] pattern, in which services
can subscribe to a channel to which other services can publish; the use of a
Messaging [13] middleware, which decouples communication by using a queue
to store messages sent by the producer until they are received by the consumer;
the Data Polling [18] pattern, in which services periodically poll other services
for data changes; and the Event Sourcing [18] pattern, that ensures that all
changes to application state are stored as a sequence of events; Asynchronous
Direct Invocation technique, in which services communicate asynchronously via
direct invocations. Applying these patterns ensures loose coupling (to different
degrees), and increases the system reliability.
Inter-Service Coupling Through Shared Services. Many of the microser-
vice patterns focus on system structure, i.e. avoiding services sharing other ser-
vices altogether, or at least not in a strongly coupled way. An optimal system
in terms of architecture quality should not have any shared service. In reality,
this is often not feasible, and in larger systems service sharing leads to chains of
transitive dependencies between services. This is problematic when a service is
unaware of its transitive dependencies, and of course for the shared service itself,
where the needs of its dependents must always be taken into account during its
evolution. We define three cases: a Directly Shared Service is a microservice which
is directly linked to and required by more than one other service; a Transitively
Shared Service is a microservice which is linked to other services via at least one
intermediary service; and a Cyclic Dependency [10] which is formed when there
is a direct or transitive path that leads back to its origin, i.e. that allows a ser-
vice to be ultimately dependent on itself after a number of intermediary services.
Cyclic dependencies often emerge inadvertently through increasing complexity
Random documents with unrelated
content Scribd suggests to you:
R. O. G. CONTESTS
(Rising from the Ground)
Models to be set on the ground and allowed to start off without
any effort on the part of the contestant. Models should rise from the
ground before reaching a predetermined mark, no flight to be
considered unless it does so. Contestant may start at any length
back from the mark, but the distance is to be measured only from
the mark.
A
Aërodrome—A tract of land selected for flying purposes.
Aërodynamics—The science of Aviation, literally the study of the influence of
air in motion.
Aërofoil—A flat or flexed plane which lends support to an aëroplane.
Aëronaut—One engaged in navigating the air.
Aëronautics—The science of navigating the air.
Aëroplane—A heavier than air machine supported by one or more fixed
wings or planes.
Aërostatics—The science of aërostation, or of buoyancy caused by
displacement, ballooning.
Aërostation—The science of lighter than air or gas-borne machines.
Aileron—The outer edge or tip of a wing, usually adjustable, used to
balance or stabilize.
Airship—Commonly used to denote both heavier and lighter than air
machines; correctly a dirigible balloon.
Angle of Incidence—The angle of the wing with the line of travel.
Area—In the case of wings, the extent of surface measured on both the
upper and lower sides. An area of one square foot comprises the actual
surface of two square feet.
Aspect Ratio—The proportion of the chord to the span of a wing. For
example if the wing has a span of 30 inches and a chord of 6 inches
the aspect ratio will be 5 or span / chord.
Automatic Stability—Stability secured by fins, the angle of the wings and
similar devices.
Aviator—One engaged in Aviation.
Aviation—The science of heavier than air machines.
Angle of Blade—The angle of the blade of a propeller to the axis of the
shaft.
B
Balancer—A plane or other part intended for lateral equilibrium.
Bearing Block—Used in connection with the mounting of propellers on model
aëroplanes. Made from wood and metal.
Brace—Strip of bamboo or other material used to join together the frame
side members. Also used in joining other parts of a model.
Biplane—An aëroplane or model aëroplane with two wings superposed.
Body—The main framework supporting the wing or wings and the
machinery.
Banking—The lateral tilting of an aëroplane when taking a turn.
C
Camber—The rise of the curved contour of an arched surface above the
Chord Line.
Center of Gravity—The point at which the aëroplane balances.
Center of Pressure—The imaginary line beneath the wing at which the
pressure balances.
Chassis (Carriage)—The part on which the main body of an aëroplane or
model aëroplane is supported on land or water.
Chord—The distance between the entering and trailing edges of a wing.
D
Deck—The main surface of a biplane or multiplane.
Directional Control—The ability to determine the direction of the flight of an
aëroplane.
Dirigible—A balloon driven by power.
Dope—A coating for wings.
Down Wind—With the wind.
Drift—The resistance of the wing to the forward movement.
Dihedral Angle—The inclination of the wings to each other usually bent up
from the center in the form of a flat V.
E
Elevator—The plane or wing intended to control the vertical flight of the
machine.
Engine—A contrivance for generating driving power.
Engine Base—Main stick used for frame of single stick model.
Engineer—One who controls the power, driving the machinery.
Entering Edge or Leading Edge—Front edge or edge of the surface upon which
the air impinges.
Equilibrator—A plane or other contrivance which makes for stability.
F
Fin—A fixed vertical plane.
Flexed—A wing is said to be flexed when it curves upward forming an arc of
a circle.
Flying Stick—Name applied to ordinary A type and single stick models.
Flying Machine—Literally a form of lighter than air craft; a gas-borne airship.
Flying Boat—A hull or large float used in connection with an aëroplane to
enable its rising from and alighting upon the surface of the water.
Frame—A single or double stick structure to which all parts of a model are
attached. Three or more sticks are sometimes employed in the
construction of a frame. However, the usual number is two, joined
together in the form of letter “A.”
Frame Hooks—The looped ends of a piece of wire attached to the point of
the frame to accommodate the S hooks attached to the rubber strands.
Frame Side Members—Two main sticks of an A type frame.
Fuselage—The body or framework of an aëroplane.
G
Glider—An aëroplane without motive power.
Guy—A brace, usually a wire or cord used for tuning up the aëroplane.
Gross Weight—The weight of the aircraft, comprising fuel, lubricating oils
and the pilot.
Gyroscope—A rotating mechanism for maintaining equilibrium.
Gap—The vertical distance between the superposed wings.
H
Hangar—A shed for housing an aëroplane.
Harbor—A shelter for aircraft.
Heavier than Air—A machine weighing more than the air it displaces.
Helicopter—A flying machine in which propellers are utilized to give a lifting
effect by their own direct action on the air. In aviation the term implies
that the screw exerts a direct lift.
Helmsman—One in charge of the steering device.
Hydroaëroplane—An aëroplane with pontoons to enable its rising from the
surface of the water. Known as hydro in model circles.
K
Keel—A vertical plane or planes arranged longitudinally either above or
below the body for the purpose of giving stability.
L
Lateral Stability—Stability which prevents side motion.
Loading—The gross weight divided by the supporting area measured in
square feet.
Longitudinal Stability—Stability which prevents fore and aft motion or
pitching.
Longerons—Main members of the fuselage. Sometimes called longitudinals.
M
Mast—A perpendicular stick holding the stays or struts which keep the
wings rigid.
Model Aëroplane—A scale reproduction of a man-carrying machine.
Mechanical Power—A model driven by means other than rubber strands such
as compressed air, steam, gasoline, spring, electricity and so forth is
termed a mechanical driven model. The power used is termed
mechanical power.
Motive Power—In connection with model aëroplanes a number of rubber
strands evenly strung from the propeller shaft to the frame hooks
which while unwinding furnish the necessary power to propel the
model.
Main Beam—In connection with model aëroplanes a long stick which is
secured to the under side of the wing frame at the highest point in the
curve of the ribs adding materially to the rigidity of the wing.
Monoplane—An aëroplane or heavier than air machine supported by a single
main wing which may be formed of two wings extending from a central
body.
Multiplane—An aëroplane with more than four wings superposed.
N
Nacelle—The car of a dirigible balloon, literally a cradle. Also applied to
short body used in connection with aëroplanes for the accommodation
of the pilot and engine.
Net Weight—Complete weight of the machine without pilot, fuel or oil.
O
Ornithopter—A flapping wing machine which has arched wings like those of
a bird.
Orthogonal—A flight maintained by flapping wings.
Outriggers—Members which extend forward or rearward from the main
planes for the purpose of supporting the elevator or tail planes of an
aëroplane.
P
Plane—A surface or wing, either plain or flexed, employed to support or
control an aëroplane.
Pilot—One directing an aëroplane in flight.
Pitch—Theoretical distance covered by a propeller in making one revolution.
Propeller—The screw used for driving an aëroplane.
Propeller Bearings—Pieces of bronze tubing or strips of metal formed to the
shape of the letter “L” used to mount propellers. Also made from
blocks of wood.
Propeller Blank—A block of wood cut to the design of a propeller.
Propeller Spar(s)—The heavy stick or sticks upon which the bearing or
bearings of a single or twin propeller model are mounted.
Propeller Shaft—A piece of wire which is run through the hub of the
propeller and tubing in mounting the propeller.
Pylon—Correctly, a structure housing a falling weight used for starting an
aëroplane, commonly a turning point in aëroplane flights.
Pusher—An aëroplane with the propeller or propellers situated in back of the
main supporting surfaces.
Q
Quadruplane—An aëroplane with four wings superposed.
R
Rudder—A plane or group of planes used to steer an aëroplane.
Runner—Strip beneath an aëroplane used for a skid.
Running Gear or Landing Gear—That portion of the chassis consisting of the
axle, wheels and shock absorber.
Rib—Curved brace fastened to the entering and trailing edges of a wing.
S
Scale Model—A miniature aëroplane exactly reproducing the proportions of
an original.
Spar—A mast strut or brace.
Side Slip—The tendency of an aëroplane to slide or slip sideways when too
steep banking is attempted.
Stability—The power to maintain an even keel in flight.
Starting Platform—A runway to enable an aëroplane to leave the ground.
Surface Friction—Resistance offered by planes or wings.
Slip—The difference between the distance actually traveled by a propeller
and that measured by the pitch.
Soaring Flight—A gliding movement without apparent effort.
Sustaining Surface—Extent of the wings or planes which lend support to an
aëroplane.
Span (Spread)—The dimension of a surface across the air stream.
Streamline—Exposing as little surface as possible to offer resistance to air.
Skids—In connection with model aëroplanes, steel wires or strips of bamboo
allowed to extend below the frame to protect the model in landing and
to permit its rising off the ground or ice.
S or Motor Hooks—A piece of wire bent in a double hook to resemble the
letter “S.” One end to be attached to the frame hook, the other serving
as accommodation for the rubber strands.
T
Tail—The plane or planes, both horizontal and vertical, carried behind the
main planes.
Tandem—An arrangement of two planes one behind the other.
Thrust—The power exerted by the propeller of an aëroplane.
Tension—The power exerted by twisted strands of rubber in unwinding.
Tractor—An aëroplane with the propeller situated before the main
supporting surfaces.
Triplane—An aëroplane with three wings superposed.
Trailing Edge—The rear edge of a surface.
Torque—The twisting force of a propeller tending to overturn or swerve an
aëroplane sideways.
U
Up Wind—Against the wind.
W
Wake—The churned or disturbed air in the track of a moving aëroplane.
Wash—The movement of the air radiating from the sides of an aëroplane in
flight.
Wings—Planes or supporting surfaces, commonly a pair of wings extending
out from a central body.
Winder—An apparatus used for winding two sets of rubber strands at the
same time in opposite directions or one at a time. Very often made
from an egg beater or hand drill.
Warping—The springing of a wing out of its normal shape, thereby creating
a temporary difference in the extremities of the wing which enables the
wind to heel the machine back again into balance.
ABREVIATIONS
H. P. Horse Power.
R. P. M. Revolutions per minute.
H. L. Hand launched.
R. O. G. Rise off ground model.
R. O. W. Rise off water model.
M. P. H. Miles per hour.
THE END
Transcriber’s Note (continued)
Incorrect entries in the Table of Contents have had their text and/or
page references changed so that they agree with the text and location
of the parts of the original publication to which they refer.
Back to top
*** END OF THE PROJECT GUTENBERG EBOOK MODEL
AEROPLANES AND THEIR ENGINES: A PRACTICAL BOOK FOR
BEGINNERS ***
Updated editions will replace the previous one—the old editions will
be renamed.
1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the
terms of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.
1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or
expense to the user, provide a copy, a means of exporting a copy, or
a means of obtaining a copy upon request, of the work in its original
“Plain Vanilla ASCII” or other form. Any alternate format must
include the full Project Gutenberg™ License as specified in
paragraph 1.E.1.
• You pay a royalty fee of 20% of the gross profits you derive
from the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”
• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.
1.F.
1.F.4. Except for the limited right of replacement or refund set forth
in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.
Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.
Most people start at our website which has the main PG search
facility: www.gutenberg.org.