100% found this document useful (20 votes)
49 views

Get (Ebook) Agile Processes, in Software Engineering, and Extreme Programming: 16th International Conference, XP 2015, Helsinki, Finland, May 25-29, 2015, Proceedings by Casper Lassenius, Torgeir Dingsøyr, Maria Paasivaara (eds.) ISBN 9783319186115, 3319186116 PDF ebook with Full Chapters Now

The document is the proceedings of the 16th International Conference on Agile Software Development (XP 2015) held in Helsinki, Finland from May 25-29, 2015. It includes research papers, experience reports, and abstracts from various sessions, showcasing the vibrant community and ongoing evolution of agile development practices. The conference theme focused on 'Delivering value: Moving from Cyclic to Continuous Value Delivery' and aimed to bridge the gap between academic research and industry practices.

Uploaded by

maherokohki
Copyright
© © All Rights Reserved
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
100% found this document useful (20 votes)
49 views

Get (Ebook) Agile Processes, in Software Engineering, and Extreme Programming: 16th International Conference, XP 2015, Helsinki, Finland, May 25-29, 2015, Proceedings by Casper Lassenius, Torgeir Dingsøyr, Maria Paasivaara (eds.) ISBN 9783319186115, 3319186116 PDF ebook with Full Chapters Now

The document is the proceedings of the 16th International Conference on Agile Software Development (XP 2015) held in Helsinki, Finland from May 25-29, 2015. It includes research papers, experience reports, and abstracts from various sessions, showcasing the vibrant community and ongoing evolution of agile development practices. The conference theme focused on 'Delivering value: Moving from Cyclic to Continuous Value Delivery' and aimed to bridge the gap between academic research and industry practices.

Uploaded by

maherokohki
Copyright
© © All Rights Reserved
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/ 65

Download Full Version ebook - Visit ebooknice.

com

(Ebook) Agile Processes, in Software Engineering,


and Extreme Programming: 16th International
Conference, XP 2015, Helsinki, Finland, May 25-29,
2015, Proceedings by Casper Lassenius, Torgeir
Dingsøyr, Maria Paasivaara (eds.) ISBN
https://ebooknice.com/product/agile-processes-in-software-
9783319186115, 3319186116
engineering-and-extreme-programming-16th-international-
conference-xp-2015-helsinki-finland-
may-25-29-2015-proceedings-5141414

Click the button below to download

DOWLOAD EBOOK

Discover More Ebook - Explore Now at ebooknice.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

Start reading on any device today!

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason;


Viles, James ISBN 9781459699816, 9781743365571,
9781925268492, 1459699815, 1743365578, 1925268497
https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena


Alfredsson, Hans Heikne, Sanna Bodemyr ISBN 9789127456600,
9127456609
https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT


II Success) by Peterson's ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-
math-1c-and-2c-2002-peterson-s-sat-ii-success-1722018

ebooknice.com

(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master


the SAT Subject Test: Math Levels 1 & 2) by Arco ISBN
9780768923049, 0768923042
https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-
arco-master-the-sat-subject-test-math-levels-1-2-2326094

ebooknice.com
(Ebook) Cambridge IGCSE and O Level History Workbook 2C -
Depth Study: the United States, 1919-41 2nd Edition by
Benjamin Harrison ISBN 9781398375147, 9781398375048,
1398375144, 1398375047
https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044

ebooknice.com

(Ebook) Agile Processes in Software Engineering and


Extreme Programming: 21st International Conference on
Agile Software Development, XP 2020, Copenhagen, Denmark,
June 8–12, 2020, Proceedings by Viktoria Stray, Rashina
https://ebooknice.com/product/agile-processes-in-software-engineering-
Hoda, Maria Paasivaara, Philippe Kruchten ISBN
and-extreme-programming-21st-international-conference-on-agile-
software-development-xp-2020-copenhagen-denmark-
9783030493912, 9783030493929, 3030493911, 303049392X
june-812-2020-proceedings-22504448
ebooknice.com

(Ebook) Agile Processes in Software Engineering and


Extreme Programming – Workshops: XP 2019 Workshops,
Montréal, QC, Canada, May 21–25, 2019, Proceedings by
Rashina Hoda ISBN 9783030301255, 9783030301262,
https://ebooknice.com/product/agile-processes-in-software-engineering-
3030301257, 3030301265
and-extreme-programming-workshops-xp-2019-workshops-montreal-qc-
canada-may-2125-2019-proceedings-10800184
ebooknice.com

(Ebook) Agile Processes, in Software Engineering, and


Extreme Programming: 17th International Conference, XP
2016, Edinburgh, UK, May 24-27, 2016, Proceedings by Helen
Sharp, Tracy Hall (eds.) ISBN 9783319335148,
https://ebooknice.com/product/agile-processes-in-software-engineering-
9783319335155, 3319335146, 3319335154
and-extreme-programming-17th-international-conference-
xp-2016-edinburgh-uk-may-24-27-2016-proceedings-5484778
ebooknice.com

(Ebook) Agile Processes in Software Engineering and


Extreme Programming: 18th International Conference, XP
2017, Cologne, Germany, May 22-26, 2017, Proceedings by
Hubert Baumeister, Horst Lichter, Matthias Riebisch (eds.)
https://ebooknice.com/product/agile-processes-in-software-engineering-
ISBN 9783319576329, 9783319576336, 3319576321, 331957633X
and-extreme-programming-18th-international-conference-xp-2017-cologne-
germany-may-22-26-2017-proceedings-5884266
ebooknice.com
Casper Lassenius
Torgeir Dingsøyr
Maria Paasivaara (Eds.)

Agile Processes,
LNBIP 212

in Software Engineering,
and Extreme Programming
16th International Conference, XP 2015
Helsinki, Finland, May 25–29, 2015
Proceedings

123
Lecture Notes
in Business Information Processing 212

Series Editors
Wil van der Aalst
Eindhoven Technical University, Eindhoven, The Netherlands
John Mylopoulos
University of Trento, Povo, Italy
Michael Rosemann
Queensland University of Technology, Brisbane, QLD, Australia
Michael J. Shaw
University of Illinois, Urbana-Champaign, IL, USA
Clemens Szyperski
Microsoft Research, Redmond, WA, USA
More information about this series at http://www.springer.com/series/7911
Casper Lassenius · Torgeir Dingsøyr
Maria Paasivaara (Eds.)

Agile Processes,
in Software Engineering,
and Extreme Programming
16th International Conference, XP 2015
Helsinki, Finland, May 25–29, 2015
Proceedings

ABC
Editors
Casper Lassenius Maria Paasivaara
Aalto University Aalto University
Espoo Espoo
Finland Finland

Torgeir Dingsøyr
SINTEF
Trondheim
Norway

ISSN 1865-1348 ISSN 1865-1356 (electronic)


Lecture Notes in Business Information Processing
ISBN 978-3-319-18611-5 ISBN 978-3-319-18612-2 (eBook)
DOI 10.1007/978-3-319-18612-2

Library of Congress Control Number: 2015938434

Springer Cham Heidelberg New York Dordrecht London


c Springer International Publishing Switzerland 2015
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information stor-
age and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now
known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication
does not imply, even in the absence of a specific statement, that such names are exempt from the relevant
protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book
are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the
editors give a warranty, express or implied, with respect to the material contained herein or for any errors or
omissions that may have been made.

Printed on acid-free paper

Springer International Publishing AG Switzerland is part of Springer Science+Business Media


(www.springer.com)
Preface

This volume contains the papers presented at XP 2015: the 16th International Con-
ference on Agile Software Development held during May 25–29, 2015 in Helsinki,
Finland.
While agile development already has become mainstream in industry, it is a field
that is constantly evolving and that continues to spur an enormous interest both in in-
dustry and academia. The XP conference series has, and continues to play, an important
role in bridging the academic and practitioner communities, providing a forum for both
formal and informal sharing and development of ideas, experiences, and opinions.
The theme of XP 2015 — Delivering value: Moving from Cyclic to Continuous
Value Delivery reflects the modern trend toward organizations that are simultaneously
very efficient and flexible in software development and delivery.
The XP 2015 program includes research papers, experience reports, industry and
practice sessions, scientific workshops, panels, lightning talks, technical demos, posters,
and a doctoral symposium. In total over all submission types, we received almost 300
proposals, showing that the XP community indeed is vibrant and active.
This proceedings volume contains the full research papers, short research papers,
and experience reports. In addition, we included the abstracts of select posters, extended
abstracts of the PhD symposium presentations, as well as the position statements of the
panel participants.
All of the submitted research papers went through a rigorous peer-review process.
Each paper was reviewed by three members of the Program Committee. We received
44 research papers, out of which 15 (34%) were accepted as full papers and 7 as short
papers.
We received 45 experience report proposals, out of which 11 (24%) were accepted
following the review process. Each accepted experience report proposal received the
guidance of an experienced shepherd in writing the final paper.
We would like to extend our thank you to all the people who have contributed to
XP 2015 and helped make it a success: the authors, the sponsors, the reviewers, the
volunteers, and the chairs. We hope you enjoy the conference!

March 2015 Casper Lassenius


Torgeir Dingsøyr
Maria Paasivaara
Organization

XP 2015 was organized by the Department of Computer Science, Aalto University,


Finland.

Organizing Committee
General Chair
Maria Paasivaara Aalto University, Finland

Academic Chairs
Torgeir Dingsøyr SINTEF, Norway
Casper Lassenius Aalto University, Finland

Scientific Workshops
Daniela S. Cruzes SINTEF, Norway
Casper Lassenius Aalto University, Finland

Industry and Practice Track


Jutta Eckstein IT Communications, Germany
Diana Larsen FutureWorks Consulting, USA

Experience Reports
Rebecca Wirfs-Brock Wirfs-Brock Associates, USA
Ken Power Cisco Systems, Ireland

Executives and Managers Track


Jaana Nyfjord Swedsoft SICS, Sweden
Henri Kivioja Ericsson, Finland
Paul D. Tolchinsky Performance Dev. Partners, USA

Bridging Research and Practice


Morten Elvang DELTA, Denmark
Nils Brede Moe SINTEF, Norway
Jaana Nyfjord Swedsoft SICS, Sweden
VIII Organization

Technical Demos
Kari Systä Tampere University of Technology, Finland

Short Talks and Lightning Talks


Johanna Hunt Aptivate, UK
Jussi Markula Prominda Revolution, Finland

Panels
Steve Fraser Independent Consultant, USA

Open Space
Charlie Poole Independent Consultant, USA

Doctoral Symposium
Peggy Gregory University of Central Lancashire, UK
Helen Sharp The Open University, UK

Posters
Andrey Maglyas Lappeenranta University of Technology, Finland
Ville T. Heikkilä Aalto University, Finland

Student Volunteer Coordination


Ville T. Heikkilä Aalto University, Finland
Pilar Rodriguez University of Oulu, Finland

Local Organization
Local Organizing Chair
Juha Itkonen Aalto University, Finland

Event Manager
Mary-Ann Wikström Aalto University, Finland

Web Masters
Ville T. Heikkilä Aalto University, Finland
Eero Laukkanen Aalto University, Finland
Organization IX

Program Committee (Research Papers)


Adolph, Steve Development Knowledge, Canada
Ali Babar, Muhammad The University of Adelaide, Australia
Aoyama, Mikio Nanzan University, Japan
Counsell, Steve Brunel University, UK
Desouza, Kevin Arizona State University, USA
Dorairaj, Siva Software Education, New Zealand
Dybå, Tore SINTEF, Norway
Ebert, Christof Vector Consulting
Erdogmus, Hakan Carnegie Mellon University Silicon Valley, USA
Garbajosa, Juan Universidad Politecnica de Madrid / Technical
University of Madrid (UPM), Spain
Goldman, Alfredo University of São Paulo - USP, Brazil
Greer, Des Queens University Belfast, UK
Hoda, Rashina The University of Auckland, New Zealand
Holmström Olsson, Helena Malmö University, Sweden
Iivari, Juhani University of Oulu, Finland
Kruchten, Philippe University of British Columbia, Canada
Madeyski, Lech Wroclaw University of Technology, Poland
Marchesi, Michele DIEE - University of Cagliari, Italy
Martin, Angela The University of Waikato, New Zealand
Mishra, Alok Atilim University, Turkey
Moe, Nils Brede SINTEF, Norway
Nerur, Sridhar University of Texas at Arlington, USA
Noble, James Victoria University of Wellington, New Zealand
Nyfjord, Jaana Swedsoft, Sweden
Prechelt, Lutz Freie Universitaet Berlin, Germany
Pries-Heje, Jan Roskilde University, Denmark
Prikladnicki, Rafael PUCRS, Brazil
Rodriguez, Pilar University of Oulu, Finland
Rolland, Knut The Norwegian School of IT, Norway
Rossi, Matti Aalto University School of Economics, Finland
Rumpe, Bernhard RWTH Aachen University, Germany
Schneider, Kurt Leibniz Universität Hannover, Germany
Sharp, Helen The Open University, UK
Sjøberg, Dag Department of Informatics, University of Oslo,
Norway
Tonelli, Roberto University of Cagliari, Italy
Van Solingen, Rini Delft University of Technology, Netherlands
Van Vliet, Hans VU University Amsterdam, Netherlands
Vidgen, Richard University of Hull, UK
Wang, Xiaofeng Free University of Bozen-Bolzano, Italy
Yague, Agustin Universidad Politecnica de Madrid, Spain
X Organization

Reviewers and Shepherds (Experience Reports)


Heikkilä, V. Wirfs-Brock, R. Itkonen, J.
Lassenius, C. Davies, R. Lehtinen, T.
Paasivaara, M. Eckstein, J. Soares Cruzes, D.
Power, K. Freudenberg, S.

Reviewers (Industry and Practice)

Eckstein, J. Freudenberg, S. North, D.


Larsen, D. Garbajosa, J. Norton, M.
Andrea, J. Hassa, C. Peraire, C.
Asproni, G. Holyer, S. Provaglio, A.
Bache, E. Hunt, J. Putman, D.
Baldauf, C. Juncu, O. Rose, S.
Bless, M. Kua, P. Sharp, H.
Dorairaj, S. Laing, S. Trincardi, M.
Dubinsky, Y. Light, A. Turhan, B.
Favaro, J. Little, T. Wild, W.
Freeman, S. Moe, N.
Organization XI

Sponsoring Institutions
Platinum Sponsors
Aalto University, Finland
Ericsson, Finland
Reaktor, Finland

Gold Sponsors

Nitor, Finland
Nokia, Finland
Omenia, Finland

Silver Sponsor
Agilefant, Finland
Contents

Full Research Papers

A Duplicated Code Refactoring Advisor . . . . . . . . . . . . . . . . . . . . . . . . . . 3


Francesca Arcelli Fontana, Marco Zanoni, and Francesco Zanoni

Expectations and Challenges from Scaling Agile in Mechatronics-Driven


Companies – A Comparative Case Study. . . . . . . . . . . . . . . . . . . . . . . . . . 15
Christian Berger and Ulrik Eklund

An Industrial Case Study on Test Cases as Requirements . . . . . . . . . . . . . . 27


Elizabeth Bjarnason, Michael Unterkalmsteiner, Emelie Engström,
and Markus Borg

What Do Practitioners Vary in Using Scrum? . . . . . . . . . . . . . . . . . . . . . . 40


Philipp Diebold, Jan-Peter Ostberg, Stefan Wagner, and Ulrich Zendler

Key Challenges in Early-Stage Software Startups . . . . . . . . . . . . . . . . . . . . 52


Carmine Giardino, Sohaib Shahid Bajwa, Xiaofeng Wang,
and Pekka Abrahamsson

Agile Challenges in Practice: A Thematic Analysis . . . . . . . . . . . . . . . . . . 64


Peggy Gregory, Leonor Barroca, Katie Taylor, Dina Salah,
and Helen Sharp

UX Work in Startups: Current Practices and Future Needs . . . . . . . . . . . . . 81


Laura Hokkanen and Kaisa Väänänen-Vainio-Mattila

Why the Development Outcome Does Not Meet the Product


Owners’ Expectations? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Timo O.A. Lehtinen, Risto Virtanen, Ville T. Heikkilä, and Juha Itkonen

Functional Size Measures and Effort Estimation in Agile Development:


A Replicated Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Valentina Lenarduzzi, Ilaria Lunesu, Martina Matta, and Davide Taibi

Software Development as an Experiment System: A Qualitative Survey


on the State of the Practice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Eveliina Lindgren and Jürgen Münch

Would You Mind Fixing This Issue? An Empirical Analysis of Politeness


and Attractiveness in Software Developed Using Agile Boards . . . . . . . . . . 129
Marco Ortu, Giuseppe Destefanis, Mohamad Kassab, Steve Counsell,
Michele Marchesi, and Roberto Tonelli
XIV Contents

Coordinating Expertise Outside Agile Teams . . . . . . . . . . . . . . . . . . . . . . . 141


Mawarny Md. Rejab, James Noble, and Stuart Marshall

Transitioning Towards Continuous Delivery in the B2B Domain:


A Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Olli Rissanen and Jürgen Münch

DevOps: A Definition and Perceived Adoption Impediments . . . . . . . . . . . . 166


Jens Smeds, Kristian Nybom, and Ivan Porres

Scaling Kanban for Software Development in a Multisite Organization:


Challenges and Potential Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Nirnaya Tripathi, Pilar Rodríguez, Muhammad Ovais Ahmad,
and Markku Oivo

Short Papers

The Two Faces of Uncertainty: Threat vs Opportunity Management


in Agile Software Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Denniz Dönmez and Gudela Grote

Management Ambidexterity: A Clue for Maturing in Agile


Software Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Rafaela Mantovani Fontana, Victor Meyer Jr., Sheila Reinehr,
and Andreia Malucelli

Towards Predictable B2B Customer Satisfaction and Experience


Management with Continuous Improvement Assets and Rich Feedback . . . . 205
Petri Kettunen, Mikko Ämmälä, and Jari Partanen

Dimensions of DevOps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212


Lucy Ellen Lwakatare, Pasi Kuvaja, and Markku Oivo

Towards Introducing Agile Architecting in Large Companies:


The CAFFEA Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Antonio Martini, Lars Pareto, and Jan Bosch

Optimal Refactoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224


Susanne Siverland, Roger C.S. Wernersson, and Charlotte Sennersten

Agile and the Global Software Leaders: A Perfect Match? . . . . . . . . . . . . . 230


Stavros Stavru and Sylvia Ilieva

Experience Reports

High Level Test Driven Development – Shift Left . . . . . . . . . . . . . . . . . . . 239


Kristian Bjerke-Gulstuen, Emil Wiik Larsen, Tor Stålhane,
and Torgeir Dingsøyr
Contents XV

Shorter Feedback Loops By Means of Continuous Deployment . . . . . . . . . . 248


Arjan Claassen and Laurens Boekhorst

On a Different Level of Team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254


Johanna Hunt

Applying Agile and Lean Elements to Accelerate Innovation Culture


in a Large Organization – Key Learnings After One Year Journey . . . . . . . . 262
Jari Partanen and Mari Matinlassi

It Has Been a Long Journey, and It Is Not Over Yet . . . . . . . . . . . . . . . . . 270


Avraham Poupko

Organizational Culture Aspects of an Agile Transformation. . . . . . . . . . . . . 279


Shlomi Rosenberg

The Guide Board, an Artefact to Support the Continuous Improvement


of an Agile Team’s Culture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Matti Schneider

Testing Modtalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294


Josh Fridstrom, Adam Jacques, Kurt Kilpela, and John Sarkela

Building Learning Organization Through Peer Hands-on Support


Community and Gamification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Tomáš Tureček, Martin Chmelař, Roman Šmiřák, and Jan Krchňák

From Sprints to Lean Flow: Management Strategies


for Agile Improvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Marcelo Walter, Ramon Tramontini, Rafaela Mantovani Fontana,
Sheila Reinehr, and Andreia Malucelli

Mob Programming – What Works, What Doesn’t. . . . . . . . . . . . . . . . . . . . 319


Alexander Wilson

Panels

Continuous Delivery – From Concept to Product: Trade-offs in Effectiveness


and Efficiency? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Steven Fraser, Ismo Aro, Henri Kivioja, Erik Lundh, Ken Power,
Linda Rising, Werner Wild, and Rebecca Wirfs-Brock

Learning from Disaster and Experience: Evolving


Software Professionalism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Steven Fraser, Janne Järvinen, Erik Lundh, Ken Power, Linda Rising,
Werner Wild, and Rebecca Wirfs-Brock
XVI Contents

Practical Applications of the Agile Fluency Model . . . . . . . . . . . . . . . . . . . 339


Diana Larsen, Steve Holyer, Jutta Eckstein, Antti Kirjavainen,
and Olli Sorje

Doctoral Symposium Abstracts

Improving Processes by Integrating Agile Practices . . . . . . . . . . . . . . . . . . 345


Philipp Diebold

Assurance Case Integration with An Agile Development Method . . . . . . . . . 347


Osama Doss and Tim Kelly

Data-Driven Decision-Making in Product R&D . . . . . . . . . . . . . . . . . . . . . 350


Aleksander Fabijan, Helena Holmström Olsson, and Jan Bosch

Combining Kanban and FOSS: Can It Work? . . . . . . . . . . . . . . . . . . . . . . 352


Annemarie Harzl and Wolfgang Slany

Paradigm Shift from Large Releases to Continuous Deployment


of Software: Designing a Reference Model for Continuous Deployment . . . . 354
Teemu Karvonen, Markku Oivo, and Pasi Kuvaja

How to Adopt Continuous Delivery? A Research Proposal . . . . . . . . . . . . . 356


Eero Laukkanen and Casper Lassenius

Posters

Teaching Scrum – What We Did, What We Will Do and What Impedes Us . . . . 361
Emil Alégroth, Håkan Burden, Morgan Ericsson, Imed Hammouda,
Eric Knauss, and Jan-Philipp Steghöfer

Agility in Dynamic Environments: A Case Study for Agile Development . . . 363


Simon Brooke and Dina Allswang

Introducing SafeScrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365


Geir Kjetil Hanssen, Ingar Kulbrandstad, and Børge Haugset

Revisit – A Systematic Approach to Continuously Improve Agile Practices


in Large-scale and Fast-expanding R&D Center . . . . . . . . . . . . . . . . . . . . . 367
Peng Liu and Yuedong Zhao

Applying Randori-Style Kata and Agile Practices


to an Undergraduate-Level Programming Class . . . . . . . . . . . . . . . . . . . . . 369
Chitsutha Soomlek
Contents XVII

Continuous Strategy Process in the Context of Agile and Lean


Software Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Tanja Suomalainen and Jenni Myllykoski

Automatizing Android Unit and User Interface Testing . . . . . . . . . . . . . . . . 373


Juha-Matti Vanhatupa and Mikko Heikkinen

Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375


Full Research Papers
A Duplicated Code Refactoring Advisor

Francesca Arcelli Fontana, Marco Zanoni(B) , and Francesco Zanoni

University of Milano-Bicocca, Viale Sarca, 336, 20126, Milano, Italy


{arcelli,marco.zanoni}@disco.unimib.it,
[email protected]

Abstract. Refactoring is one of the key practices in Extreme Program-


ming and other agile methods. Duplicated code is one of the most perva-
sive and pungent smells to remove from source code through refactoring.
Duplicated code has been largely studied in the literature, and differ-
ent types of duplications, or “clones”, have been identified. Some studies
analyzed in details the problems caused by clones in the code, others
outlined also the difficulties in removing clones, and the cases in which
it could be better not removing them. The refactoring cost for removing
clones can be very high, also due to the different choices on the possi-
ble refactoring steps. In this paper, we describe our approach and tool
developed with the aim to suggest the best refactorings to remove clones
in Java code. Our approach is based on the classification of the clones in
terms of their location in a class hierarchy, and allows to choose among
a restricted set of refactorings, which are then evaluated using multiple
criteria. We provide a validation of the effectiveness of the approach.

Keywords: Clone refactoring · Refactoring advisor · Empirical study

1 Introduction
Different tools and techniques can be used for agile development. In our work, we
focus our attention on the development of a tool to select and suggest the best
refactorings of duplicated code. Duplicated code involves all non-trivial software
systems; the percentage of involved duplicated lines is usually estimated between
5 % and 20 %, sometimes reaching even 50 % [1,2]. Fowler [3] suggests that code
duplication is a bad smell and one of the major indicators of poor maintainability.
With the concept of “clone”we mean a code fragment duplicated in several
locations within a software system with several similarity degrees. We consider
“Cloning” as a synonym of “duplicating code”, both identifying the activity
of introducing clones of a code fragment within a software system. Anyway, a
shared definition of “similarity” does not exist, resulting in the lack of a rigorous
definition of clone [1,2]. Different types of cloned have been identified in the
literature, providing a clone classification involving the amount and the way a
code fragment is duplicated. The most commonly accepted classification is the
one of Roy et al. [4], which identifies four types of clones (we describe Type-1
and Type-3 of clones, the ones we detect through our approach, in Section 3.2).

c Springer International Publishing Switzerland 2015
C. Lassenius et al. (Eds.): XP 2015, LNBIP 212, pp. 3–14, 2015.
DOI: 10.1007/978-3-319-18612-2 1
4 F.A. Fontana et al.

The main problems related to code duplication are, e.g., the uncontrolled
spread of yet-to-know bugs, resulting in heavy correction time cost when discov-
ered, and heavy update time cost, when modification of an important part of a
code fragment implies modification of all duplicated fragments.
Even if duplication may not always be avoided, it is considered a serious
problem, mainly from a maintenance perspective. Many works investigated in
depth the factors causing its insertion, or provided taxonomies according to
several criteria and detection techniques, but just few works examined its man-
agement procedures [1]. Many sources suggest to fully delegate correction activ-
ities to developers’ experience and judgement [1,2], and assert the importance
of the “human in the loop” concept [3,5]. These assertions follow the aware-
ness that every modification to a software system must consider and respect the
design choices of that system. Furthermore, design choices are not easily cap-
tured within automated procedures. During duplicated code management, two
main decisional steps involve design aspects:

1. the choice of which instances are worth to be refactored and which are not,
2. the choice of which technique should be applied to remove a duplication
instance, once the instance has been evaluated as refactoring-worthy.

In this paper, we introduce our approach and a tool developed to suggest


“the best” refactoring of Java code clones. The tool is called Duplicated Code
Refactoring Advisor (DCRA) and is composed of four modules. We use for clone
detection a well known tool, NiCad [6], and we define a post-processor for its out-
put, called Clone Detailer, which adds information characterizing every clone,
e.g., the location of the clone in the class hierarchy, its size and type. Then,
through the Refactoring Advisor module, we suggest the refactorings able to
remove the clones, and provide a ranking of their quality. Refactorings are cho-
sen by considering the location of the clone and the variables contained in the
clone; they are sorted by considering different features, i.e., the variation of Lines
of Code (LOC), and an evaluation of the quality resulting from its application, in
terms of the exploitation of OOP constructs. Finally, a module called Refactor-
ing Advice Aggregator provides a summary of the most interesting information
about clones, i.e., the clones having greater size, and the ones which should be
simpler or more convenient to remove.
Through our approach, we aim to filter clone pairs worthy of refactoring
from unworthy ones, and to suggest the best refactoring techniques for worthy
ones. We experimented the Clone Detailer module on 50 systems of the Qualitas
Corpus [7]. All the modules of our DCRA tool have been validated on 4 systems
of the Qualitas Corpus.
The paper is organized through the following Sections: Section 2 reports some
related works, pointing out the differences with our approach; Section 3 contains
a general description of DCRA’s features; Section 4 describes the architecture
of DCRA; Section 5 reports the validation of the tool on four systems; Section 6
makes an overall conclusion on DCRA, outlining some future developments.
A Duplicated Code Refactoring Advisor 5

2 Related Work on Code Clone Refactoring


In the literature, we can find many papers on clones and on clone detection
tools [8]. Here, we focus our attention only on some works which consider and
propose approaches or techniques for clone refactoring.
Fowler [3] provides a generic approach for duplicate code refactoring based on
the description of different refactoring steps. His approach is intentionally generic
and agrees with the common practice of delegating all solution choices and details
to developers. The same approach is summarized and slightly extended by Zibran
and Roy [1], by reporting many duplicated code classifications and taxonomies,
each considering different sets of duplication features. Their duplication clas-
sification is based on refactoring opportunities. A more detailed approach was
defined by Golomingi [5]: a precise and motivated set of locations (“scenarios”)
within class hierarchies is used to classify duplications, which are linked to a pre-
cise and motivated set of refactoring techniques. Only general refactoring selec-
tion criteria are then provided, committing further considerations to developers.
The strong point is the association of refactoring techniques to specific scenar-
ios, whereas Fowler favours a much more generic approach. The “human in the
loop” concept still holds, since no assessment is made on the actual techniques
applicability, but it provide more guidance than Fowler’s approach. The tool
implemented by Golomingi, called Supremo, provides further help to developers
through a graphical representations of all entities involved and their relation-
ships. At last, Giesecke [9,10] further generalizes several scenarios and selects
functions/methods as the best duplication granularity, reducing the number of
scenarios and refactoring techniques.
Our approach, implemented in DCRA, mainly draws inspiration from the
described works, by extending the duplication and classification categories of
Golomingi and by adapting the approach to Java. Furthermore, automated eval-
uation, classification and suggestion of refactoring techniques are added.

3 DCRA Approach
The main features characterizing our approach are the following:

– the extension of Golomingi’s [5] scenario set with further recurring locations,
– the analysis of the location of each clone pair, resulting in a specific set of
applicable refactoring techniques (see Tables 1 and 2),
– the ranking of the applicable refactoring techniques, based on a score weight-
ing different criteria,
– the aggregation of the information about clones and refactorings, on the
more critical clones, and on the best refactorings, according to numerical
criteria.

The automatic evaluation of the applicability of refactoring techniques is the


central point of this work, since it helps reducing the human involvement. The
evaluation is achieved by defining a specific set of criteria and by translating them
6 F.A. Fontana et al.

Table 1. DCRA refactoring techniques

Refactoring technique Description


Extract method (EM) [3] extract a subset of the statements of a method as
a new method
Replace method with method a.k.a. “Extract utility class” [1], considered in its
object (RMMO) [3] simplest version (private or protected class with
public attributes and only one method: the con-
structor)
Merge method (MM) delete one of the two identical copies of a method
Pull up method (PUM) [3] move a method to the superclass
Pull up method object (PUMO) combination of “Pull up method” and “Replace
method with method object”
Form template method (FTM) introduce a Template Method design pattern to
[3] manage behaviour variation in subclasses
Leave unchanged (LU) do not refactor at all

Table 2. DCRA locations and refactoring suggestions (remaining locations have only
the LU suggestion)

Location EM FTM LU MM PUM PUMO RMMO


SAME METHOD × · × · · · ×
SAME CLASS × · × × · · ×
SIBLING CLASS · × × · × × ·
SAME EXTERNAL SUPERCLASS · × × · × × ·

into suitable numeric values. Currently, DCRA evaluates refactoring techniques


according to the following two criteria: 1) lines of code variation and 2) OOP
principles compliance: encapsulation, inheritance and polymorphism.

3.1 Locations and Refactoring Techniques


In Table 1, we report the list of the refactorings we consider in DCRA with a
short description. Refactorings without a reference were defined by us during
the development of DCRA; the last one, “Leave unchanged”, is actually the
suggestion to avoid refactoring. Since locations are the starting point of the
whole procedure and refactoring techniques are the ending point, Table 2 outlines
these elements and the way they are related (refactorings listed in the headers of
the table are defined in Table 1). Some of Golomingi’s and Fowler’s refactoring
suggestions were not included: 1) “Substitute algorithm”, because Type-4 clones
(code fragments implementing the same algorithm in different ways) were not
considered, and 2) “Push down method”, because DCRA does not currently
manage the SUPERCLASS location.
We added to Golomingi’s location set [5] the SAME EXTERNAL SUPER-
CLASS location: it describes all clones located within sibling classes extending a
A Duplicated Code Refactoring Advisor 7

Table 3. Distribution of clone types and granularity in locations in 50 systems

Location Type-1 Type-3 Block Method Total


# % # % # % # %
ancestor class 13 4.4 281 95.6 120 40.8 174 59.2 294
common hierarchy class 970 23.5 3,152 76.5 968 23.5 3,154 76.5 4,122
first cousin class 416 12.2 2,980 87.8 473 13.9 2,923 86.1 3,396
same class 5,645 9.9 51,308 90.1 17,096 30.0 39,857 70.0 56,953
same external superclass 4,384 6.2 66,391 93.8 31,534 44.6 39,241 55.4 70,775
same method 569 10.4 4,901 89.6 5,449 99.6 21 0.4 5,470
sibling class 2,721 16.4 13,868 83.6 2,830 17.1 13,759 82.9 16,589
superclass 91 8.4 981 91.6 431 40.2 641 59.8 1,072
unrelated class 2,758 7.3 35,035 92.7 23,103 61.1 14,690 38.9 37,793
Total 17,567 8.9 178,897 91.1 82,004 41.7 114,460 58.3 196,464

common external class, i.e., a class belonging to external libraries. This addition
is significant; in fact, our dedicated analysis reported in Section 3.2 revealed that
over 1/3 of all detected duplications is related to this location. Golomingi’s app-
roach classifies those instances as UNRELATED CLASS, therefore not manage-
able through an automatic procedure. SAME EXTERNAL SUPERCLASS and
SIBLING CLASS have similar characteristics, and share the same refactoring
suggestions. Anonymous classes are recurring examples of SAME EXTERNAL
SUPERCLASS instances, since they usually extend class Object.

3.2 Qualitas Corpus Analysis

To determine the most recurring characteristics featured by duplication instances,


a statistical assessment was achieved by analyzing 50 software projects, included
in the Qualitas Corpus [7] (v. 20120401). Software projects were analyzed by the
Clone Detector and the Clone Detailer modules of DCRA (see Section 4). This
assessment analyzed three aspects of duplicated code: clone pair types, clone
pair locations and clone pair granularity. Clones are grouped in pairs, and the
Clone Detector was configured to look for clones of blocks of code, which include
also clones of methods.
Table 3 counts the clone pairs found in the analyzed systems, classifying
them by location, type and granularity. Most (∼75 %) clone pairs belong to
the locations listed in Table 2. Type-3 clone pairs (code fragments with added,
removed or modified statements) are the most recurrent because, intuitively,
when a code fragment is duplicated, it is also slightly modified, as it rarely
matches the functionalities needed in both positions.
As for the granularity of clones, we classified the detected clone pairs as
block-only or method clones (block clones contain both cases). On average, func-
tion/method clones are more respect to block clones, supporting the choice of
function/method granularity made by Giesecke [9,10]. Methods are also more
8 F.A. Fontana et al.

cohesive units than blocks, featuring higher reusability. As a result, the detection
procedure of DCRA was configured to detect:
– Type-1 (identical code fragments, only white space differences allowed) and
Type-3 clones (code fragments with added, removed or modified statements);
– block-level clones, for their diffusion, and because they include method-level
clones.
The design and implementation efforts were focused on the locations reported
in Table 2. Also Fowler’s suggestions are mainly related to these four locations.
For all other locations, only “Leave unchanged” is suggested.

3.3 Refactoring Technique Implementation


Refactoring techniques reported in Table 1 are terms naming the generic strategy
to apply to correct clone pairs. Some refactorings need a further customization,
to be applied to a particular case. For example, the “Extract method” refactoring
has a “Flag” strategy, applied to Type-3 clones: to create a method usable from
all original positions, a flag parameter is added to the extracted method signature
and is checked by conditional branches within the extracted method body. This
kind of refactoring approach is not described in the literature; Roy and Cordy’s
survey [2] implicitly reports only Type-1 clones may be refactored with the
“Extract method” technique, since, if a flag parameter is introduced, the class
interface actually changes, and the risk of encapsulation reduction increases.
Every refactoring was decomposed in one or more implementation steps,
to compute the change of the code size (LOC variation) when a refactoring is
applied. Every implementation step is associated to a function, which computes
the LOC resulting after the application of the step. By computing the LOC for
each implementation step belonging to a refactoring, it is possible to estimate
the size of a clone pair after the refactoring.

4 Duplicated Code Refactoring Advisor


DCRA outputs a suitable list of techniques to be applied on the most problematic
duplications. The tool consists of four components:
– Clone Detector : external tool detecting clone pairs;
– Clone Detailer : analyzes the Clone Detector output to add all necessary
clone pair details;
– Refactoring Advisor : chooses the possible refactoring techniques related to
each clone pair;
– Refactoring Advice Aggregator : aggregates the available information about
clones and refactorings, grouping by class or package, and sorting by refac-
toring significance or clone pair impact.
Before the execution of DCRA, the end of line characters of the analyzed
source code are standardized, to allow a precise line count, and a more correct
evaluation of the solutions. A “toy example” of a clone pair, shown in Listing 1,
will be used throughout the section to show how the analysis works.
A Duplicated Code Refactoring Advisor 9

Listing 1. DCRA toy example: clone pair Listing 2. DCRA toy example: refactor-
public class SuperClass {} ing preview of the clone pair
public class SubCls1
extends SuperClass { public class SuperClass {
public void method () {
int a = 0; public void method () {
int b = 1; int a = 0;
a ++; int b = 1;
b ++; a ++;
System . out . print ( a + b ); b ++;
} System . out . print ( a + b );
} }
public class SubCls2
extends SuperClass { }
public void method () {
int a = 0; public class SubCls1
int b = 1; extends SuperClass {}
a ++;
b ++; public class SubCls2
System . out . print ( a + b ); extends SuperClass {}
}
} .

4.1 Clone Detector


NiCad [6] was chosen as the clone detector because it allows choosing between
function- and block-level clones. We setup the tool with these parameters:

– block-level granularity is chosen, since more manageable clones are detected;


– a minimum clone length of 5 lines, a commonly used value in the literature [2];
– a maximum dissimilarity percentage between code fragments of 30 % (NiCad’s
default); no common agreement appears to exist yet [1] on this parameter;
– no renaming allowed, since a large set of unmanageable clone pairs would
result; only Type-1 and the consequent Type-3 subset are detected;
– clones grouped in pairs, since they are easier to manage than n-ary groups;
this is common in the literature [5,9] and in many clone detection tools.

4.2 Clone Detailer


This component adds to clone pairs all details needed to select refactoring tech-
niques. Some of the relevant details it adds are:

– variables used in each clone, labelled using their declaration position and
usage;
– length of each clone, cloned lines and different lines (NiCad only reports the
total length of the longest clone);
10 F.A. Fontana et al.

– clone pair location (introduced in Section 3.1);


– clone pair granularity: method or block;
– clone pair type: Type-1 or Type-3.

Regarding the first point, the declaration position was classified in the follow-
ing categories: 1) inside the clone, 2) outside the clone but within its container
method, 3) class attribute, 4) inherited attribute; the usage, instead, was clas-
sified using these other categories: 1) used after clone but within its container
method, 2) read within clone, 3) modified within clone. These criteria were taken
from Higo et al. [11], and applied to our location-based classification, obtaining
a more precise characterization of each clone pair.

4.3 Refactoring Advisor

The Refactoring Advisor uses the Clone Detailer output to choose the possible
refactoring techniques for each clone pair.
We introduce now the “coupled entity” concept: when clones access variables
or attributes from their local scope (e.g., their container class or method), and
the application of a refactoring would move the code in a different scope, the
reference to those variables or attributes may increase the coupling level of the
refactored clone. A coupled entity is any of these variable or attribute references.
They are evaluated differently for each refactoring kind, because each refactoring
applies different transformations to the code. Coupled entities make the applica-
tion of a refactoring more costly, or not possible without changing the visibility
or placement of variables in the system.
The Refactoring Advisor works independently on each clone pair. First, it
selects all refactoring techniques applicable to the clone pair on the base of
its location, granularity, type and coupled entities. Second, it ranks the selected
techniques, relying on a score based on two criteria: i) relative LOC variation, ii)
compliance to OOP (inheritance, polymorphism and encapsulation). The score
is calculated as the average of two weights, one for each criterion, evaluating the
compliance to each principle. In our example, “Pull up method” would modify
the code as shown in Listing 2. We compute the two weights by evaluating the
code after the refactoring w.r.t. the original. In the following, we explain how
the two weights, i.e., LOC variation and OOP compliance are computed.
Equation 1 defines the refactoring evaluation score. The LOC variation is
obtained (Equation 2) as the ratio of LOC before and after the application of
the refactoring, normalized to the [−1, +1] range. OOP compliance (Equation 3)
is calculated as the average of the values assigned to its three principles: encap-
sulation, inheritance, polymorphism; each value is in the [−1, +1] range, and
has been manually determined for each refactoring during the assessment phase
of the DCRA development. Values (−1, 0, +1) correspond respectively to: the
maximum possible deterioration, no variation, the maximum improvement.
A Duplicated Code Refactoring Advisor 11

Table 4. Refactoring Advisor computation example

encapsulation: 0
OOP Compliance: 0.33 inheritance: 1
PUM Evaluation: 0.66 polymorphism: 0
LOC before: 10
LOC Variation: 1
LOC after: 5
encapsulation: 0
OOP Compliance: −0.66 inheritance: −1
LU Evaluation: −0.33 polymorphism: −1
LOC before: 10
LOC Variation: 0
LOC after: 10

LOCV ar + OOP
Evaluation = (1)
2
LOCBef ore
LOCV ar = −1 (2)
LOCAf ter
Encap + Inh + P olym
OOP = (3)
3
In our clone pair example, the values assigned and derived for each variable of
the two refactorings are resumed in Table 4 (every value depends on the ones on
its right). Our approach allows to give different relative weights to the different
criteria used to produce an evaluation, allowing to tune the refactoring selection
towards, e.g., more OOP quality or more LOC saving.

4.4 Refactoring Advice Aggregator

This component summarizes all advices and clone pair details, providing to the
developers the selected sets of refactoring techniques or clone pairs, sorted by
their weight: techniques are sorted by effectiveness, clone pairs by length. Effec-
tiveness is measured by combining the evaluation of each technique with the
length of the clone pair. Grouping by package was considered because it can
help developers to quickly identify the most problematic subsystems. A class
or package is considered refactorable if it contains effective refactorings, and is
considered affected if it participates to clone pairs.
For each clone pair, only the first refactoring (the one with the higher eval-
uation) is considered, and its weight is normalized according to its clone pair
length (the maximum length of the clones in the pair), to make the comparison
of different refactoring applications coherent. For instance, if the first technique
for a 5 lines-long duplication is evaluated as 1, and the first technique for a
20 lines-long duplication is evaluated as 0.5, the second refactoring will better
improve system quality, since the respective weight values would be 5 and 10.
12 F.A. Fontana et al.

Table 5. Systems used for validation

Project LOC Pairs Cloned LOC Cloned LOC %


fitjava-1.1 3,643 27 218 5.98
jgrapht-0.8.1 9,086 53 736 8.10
nekohtml-1.9.14 6,149 81 1,130 18.38
oscache-2.4.1 5,786 70 982 16.97

Table 6. Assessment results for clones in the same class

Location Type EM RMMO MM LU Total


1 2/2 1/1 0/0 0/0 3/3
SAME METHOD 44/46
3 8/10 0/0 0/0 33/33 41/43
1 6/6 0/0 0/0 0/0 6/6
SAME CLASS 97/106
3 81/90 0/0 0/0 10/10 91/100
1 8/8 1/1 0/0 0/0 9/9
Total 3 89/100 0/0 0/0 43/43 132/143
97/108 1/1 0/0 43/43 141/152

The Refactoring Advice Aggregator provides as output the: top N most effec-
tive refactorings; top N most harmful clone pairs; top N most refactorable pack-
ages and classes; top N most affected packages and classes. The value of N is
currently set to 20.

5 Validation
DCRA was tested on four projects of different size belonging to the Qualitas
Corpus [7], reported in Table 51 . The Refactoring Advisor provided advices for
more than 80 % of clone pairs2 . All refactoring suggestions were then assessed
by hand, to verify their usefulness. The results of the assessment are reported
in Table 6 and Table 7 for different locations, since different locations mean
different possible refactoring sets. In the tables, the number of advices is classified
by location, type, and refactoring suggestion. The shown numbers represent the
ratio of accepted advices (accepted/total), e.g., in Table 6, 81 suggestions out of
90 were accepted for clones in the SAME CLASS location, Type-3, and “Extract
method” suggestion.
The criteria producing the advices proved to be mostly effective, since mainly
refactoring-worthy duplications were proposed. The suggested refactorings were
accepted in most cases, in particular for “Extract method”, “Leave unchanged”,
“Replace method with method object”. Actually, we rejected only 8 % of the
whole advices. This led to suitably refactor 66 % of all duplications found in
1
LOC were computed by the tool CLOC 1.56.
2
The other ones are not managed in the current version of DCRA.
A Duplicated Code Refactoring Advisor 13

Table 7. Assessment results for clones in sibling classes

Location Type PUM PUMO FTM LU Total


1 2/2 0/0 0/0 0/0 2/2
SIBLING CLASS 3/6
3 0/2 0/0 1/2 0/0 1/4
1 8/9 0/0 0/0 0/0 8/9
SAME EXTERNAL SUPERCLASS 16/37
3 0/0 0/3 8/25 0/0 8/28
1 10/11 0/0 0/0 0/0 10/11
Total 3 0/2 0/3 9/27 0/0 9/32
10/13 0/3 9/27 0/0 19/43

the analyzed software systems. Refactoring suggestions in some categories were


less effective than others. For example, 9/32 refactoring advices regarding Type-
3 clone pairs between sibling classes (see Table 7), were actually not worth of
application. In particular, “Form template method” was often rejected because it
was suggested for too few cloned lines; “Pull up method” was usually preferred in
these cases. To prevent this issue, a higher lower bound to clone LOC is needed.
Another category of clone pairs having (minor) issues were the Type-3 ones
within the same class (see Table 6). In this case, the issue is that refactorings with
low rank were often application-unworthy, because of the small size of clones;
as in the previous consideration, a higher lower bound to cloned LOC is needed
for this scenario. Another result of the validation is that the “Replace method
with method object” and “Pull up method object” refactoring techniques were
suggested only a few times, as they are very line-expensive.
As a conclusion, our validation outlines that DCRA is effective for suggesting
refactorings in most cases. All the issues found during the validation can be
corrected by adjusting the thresholds of specific criteria.

6 Conclusions and Future Works


This work suggests it is possible to help developers towards the refactoring
of duplicated code, with the aim of improving the design quality, resulting in
increased manageability and consequently reducing valuable time spent in code
inspection phases. Our technique can be used to suggest the best refactoring to
apply to code clones, considering different properties of the code.
The proposed approach may be summarized as an automated technique
selecting the best refactorings, based on a classification of code clones, with the
aim to concretely reduce the human involvement during duplicated code refac-
toring procedures. We apply a scenario-based approach classifying clone pairs
by their location: a set of possible refactoring techniques is suggested for each
location, leaving only the other details to developers. Our approach extends an
existing set [5] of classification categories; the extension allows to automatically
suggest refactoring techniques for a large amount of duplications, which were
considered hardly manageable by the original approach.
14 F.A. Fontana et al.

In future work, we plan to extend DCRA to manage all remaining loca-


tions, and to refine the parameter settings, in particular the minimum clone
length and the minimum dissimilarity percentage. A planned enhancement of
the Clone Detailer is the tracking of read or modified coupled entities, to obtain
more detailed clues for the refactoring decision. Finally, we are investigating
an extension of the approach, allowing to consider clone groups in addition to
clone pairs. Another interesting topic of investigation regards the analysis of the
impact of refactoring of code clones on different software quality metrics. We
started a research in this direction [12] with the aim of prioritizing the clones to
remove.

References
1. Zibran, M.F., Roy, C.K.: The road to software clone management: A survey. Tech-
nical Report 2012–03, The Univ. of Saskatchewan, Dept. CS, February 2012
2. Roy, C.K., Cordy, J.R.: A survey on software clone detection research. Technical
Report 2007–541, Sch. Computing, Queen’s Univ., Kingston, Canada, September
2007
3. Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley
Longman Publishing Co. Inc., Boston (1999)
4. Roy, C.K., Cordy, J.R., Koschke, R.: Comparison and evaluation of code clone
detection techniques and tools: A qualitative approach. Science of Computer Pro-
gramming 74(7), 470–495 (2009). Special Issue on ICPC 2008
5. Golomingi Koni-N’Sapu, G.: Supremo – a scenario based approach for refactoring
duplicated code in object oriented systems. Master’s thesis, Inst. of Computer
Science, Faculty of Sciences, Univ. of Bern, June 2001
6. Roy, C., Cordy, J.: NICAD: accurate detection of near-miss intentional clones using
flexible pretty-printing and code normalization. In: Proc. the 16th IEEE Int’l Conf.
Program Comprehension (ICPC 2008), pp. 172–181. IEEE CS, Amsterdam (2008)
7. Tempero, E., Anslow, C., Dietrich, J., Han, T., Li, J., Lumpe, M., Melton, H.,
Noble, J.: The qualitas corpus: a curated collection of java code for empirical
studies. In: Proc. the 17th Asia Pacific Software Eng. Conf., pp. 336–345. IEEE
CS, Sydney, December 2010
8. Rattan, D., Bhatia, R., Singh, M.: Software clone detection: A systematic review.
Information and Software Technology 55(7), 1165–1199 (2013)
9. Giesecke, S.: Clone-based Reengineering für Java auf der Eclipse-Plattform.
Diplomarbeit, Carl von Ossietzky Universität Oldenburg, Dept. für Informatik,
Abteilung Software Eng., Germany (2003)
10. Giesecke, S.: Generic modelling of code clones. In: Koschke, R., Merlo, E.,
Walenstein, A. (eds.) Duplication, Redundancy, and Similarity in Software.
Dagstuhl Seminar Proc., vol. 06301. Int’les Begegnungs- und Forschungszentrum
für Informatik (IBFI), Germany (2007)
11. Higo, Y., Kusumoto, S., Inoue, K.: A metric-based approach to identifying refac-
toring opportunities for merging code clones in a java software system. J. Software
Maintenance and Evolution: Research and Practice 20(6), 435–461 (2008)
12. Arcelli Fontana, F., Zanoni, M., Ranchetti, A., Ranchetti, D.: Software clone detec-
tion and refactoring. ISRN Software Eng. 2013, 8 (2013)
Random documents with unrelated
content Scribd suggests to you:
Sull’angolo sinistro d’Erba Superiore sorgeva un tempo, come del
resto si riscontra in ogni terra di qualche importanza, il castello, ora
convertito alla più felice villeggiatura de’ signori Valaperta, dove più
d’una volta vidi ospite quel valoroso campione dell’arte pittorica
moderna che è Francesco Hayez.
Di sotto al castello si avvalla con grazioso effetto il terreno, epperò
vien detto Pravalle, pel quale un dì precipitavasi il torrente Bocogna,
menando i soliti guasti de’ suoi pari; ma i Valaperta ne rivolsero a
bene le acque, facendole servire ad una filanda o filatoio.
Sul ciglio dell’opposta eminenza, al di là di Pravalle, si pavoneggia la
elegante villeggiatura de’ signori Conti, che divide coi Valaperta i
vantaggi della fortunatissima posizione.
Erba Superiore è occupata per lo più da ville o case da villeggiatura:
il movimento principale è nondimeno in Erba Inferiore. La borgata è
dotata di Pretura, di ufficio telegrafico e di albergo: ha tutte le
botteghe occorrevoli al vitto, come in una città; massime le carni vi
si trovano eccellenti dai villeggianti; al suo caffè, elegantemente
riaddobbato di fresco e famoso pe’ suoi amaretti, sorta di pasticcini
torrefatti e che contendono il primato con quelli di Saronno, nelle ore
pomeridiane d’autunno vi convengono i signori e le eleganti dei
dintorni, sia venendovi a piedi, sia cogli equipaggi, felici del vedersi
gli uni gli altri; perocchè, del resto, la sosta avvenga in una via
ristretta e senza attrattiva di sorta.
Sulla vetta dell’eminenza su cui seggono le sue case, il pittor Rosa,
nel grandioso caseggiato da lui fabbricato e che affitta nelle ferie
autunnali a famiglie per lo più milanesi in distinti e ammobigliati
appartamenti, costruì un teatro, nel quale in quella stagione recita
talvolta qualche drammatica compagnia sviata.
O per la postale, o per sentieri si discende nel sottoposto piano a
Vill’Incino, dove sorge la prepositurale nella cui giurisdizione è Erba.
Scendendo per la prima, al risvolto trovasi la villa già Clerici, ora
Mazzucchetti, che ognun veggendo augura veder tramutato in
albergo, tanto se ne sente il bisogno e propizia ne appaia la
posizione; ed a fianco di essa al principio della via che si interna e
guida a Lezza sorge altra villa de’ signori Brivio ed un filatoio.
Proseguendo invece per la postale, dopo la Clerici, a un centinaio di
passi si è alla suddetta prepositurale. Alquanto più in là è Incino, o
Mercato d’Incino, che, comunque spopolato tutti i dì della settimana
all’infuori del giovedì, in cui v’è l’antichissimo mercato con opportuni
portici e che diè nome al paese, pure ha memoria di fatti storici.
Eravi certo una colonia romana e vi si trovarono sepolcri e ossa
giganti e armature dell’epoca. Chiamavasi allora Liciniforum, ossia
foro o mercato di Licinio, dal nome di qualche pretore o patrono che
vi comandava la stazione militare, o la colonia; onde il conservato
nome di per sè vale a scalzare d’ogni fondamento la pretesa di chi
volle collocare Liciniforum nel luogo del poco discosto Parravicino.
Del tempo romano qui si sterrarono e lessero due lapidi.
La prima:
Herculi
C. Metilius
Secundus
Votum Solvit Libens Merito.
La seconda:
Jovi Optimo Maximo
Cœsia Tullii Filia
Maxima
Sacerdos
Divae Matidiae [40].
Una terza lapide importa poi di qui riferire, come rinvenuta in alcune
escavazioni, perchè forse fa cenno di un ninfeo qui esistito:
Lymphis Viribus Quintus Vibius
Severus votum solvit.
Anche più tardi, nel medio-evo, da Landolfo da Cardano, arcivescovo
di Milano (979-998), venne Incino eretto in capitanato, investendone
della suprema autorità un suo fratello, come aveva egualmente fatto
degli altri due capitanati di Carcano e Pirovano con Missaglia. I
Comaschi e i Torriani, combattendo Ottone Visconti arcivescovo di
Milano e capo di parte nobilesca, lo diroccarono. Su queste terre, in
età più inoltrata, fervendo le lotte guelfe e ghibelline, la fazione
guelfa portò desolazione e morte, soqquadrando ogni avere e
commettendo i più infami assassinî.
Era poi Incino la pieve più vasta ed importante dell’arcivescovato di
Milano, e fino dal 1288 contava sotto la propria giurisdizione
sessanta chiese. Alla sua prepositurale andava inoltre aggiunta una
collegiata di più canonici, che San Carlo, nel 1584, trasferì alla,
prossima chiesa di Vill’Incino, avendo trovato spopolato il paese.
Quella chiesa antica è per altro degnissima, per la sua vetustà, di
osservazione.
Il giovedì, frequentatissimo è ora il mercato anche da’ villeggianti de’
dintorni; ma verso il meriggio si dirada il concorso, e poco poco il
vecchio mercato di Incino ricade nel primitivo silenzio e nella
solitudine.
Con tutto ciò vi sono due decenti alberghi, dove trovan alloggio
benestanti famiglie sempre nella stagione autunnale, e alle quali
appunto la quotidiana solitudine toglie soggezione e aggiunge quella
maggiore tranquillità che si accorre appunto dalla città a ricercare in
campagna.
ESCURSIONE TRENTESIMASETTIMA.
LA VILLA ADELAIDE.

Villa Maria. — Bucinigo. — Pomerio. — Villalbese. —


Parravicino. — Ville Parravicini, Belgiojoso e Gariboldi.
— La torre pendente. — Casiglio. — Carcano. —
Battaglia contro il Barbarossa. — Orsenigo. — Il
Carudo. — Le Lische Amare. — Alserio. — Castellazzo.
— La Ca’ de’ ladri. — La Retusa. — Tassera. — La villa
Adelaide.

Da Erba, salendo la via che corre sotto l’antico castello, ora villa
Valaperta, e volgendo a manca, dietro la villa Conti è la strada che
va a Parravicino e subito s’incontra la villa Maria, della contessa
Maria Lurani.
Solo prima dirò una parola di Bucinigo e Pomerio, che si
comprendono nel Pian d’Erba; perocchè dopo segua Villalbese,
celebre per ottime castagne e per freschissimi crotti, a cui gli amatori
del buon vino corrono ad ogni lieta occasione, ma che entra in una
diversa circoscrizione da quella del Pian d’Erba; onde avanti di esso
mi convenga arrestarmi, perchè, tratto dalle bellezze dei luoghi,
facilmente sarei fuorviato dal mio cómpito e arriverei presto per
quella via a Como.
Bucinigo, terricciuola resa vivace da filande e incannatoî, ha più
d’una villa, e fra queste quella de’ signori Vidiserti, che giovami
specialmente ricordare perchè famosa per la sua patriarcale
ospitalità, ivi i moltissimi amici rinvenendo sempre la più graziosa
accoglienza. A noi poco importa di discettare sulla pretesa di coloro
che il nome al paese sia stato lasciato da un buco iniquo, che dicono
esistere tuttavia in un giardino, e così appellato perchè nei tempi
delle prepotenze feudali ivi si desse martirio agli infelici che non
entravan nel genio de’ padroni; o sulla contraria opinione di chi
invece dalla terminazione presume aver il nome radice celtica:
lasciamo ai dotti il trarsi d’impaccio. La torre, di cui son superstiti
pochi ruderi, rammenta le lotte fra loro sostenute dalle famiglie
Sacco e Parravicino.
A Pomerio, vicinissimo, veggonsi avanzi di fortificazioni, che
dovevano esservi necessariamente per rispondere al nome di post
murum, il quale d’altronde era nella terminologia militare d’allora.
A Parravicino, vediamo seguitarsi tre o quattro ville graziose dei
Parravicini, dei Belgiojoso e dei Gariboldi.
Nel giardino de’ Belgiojoso vedesi una torre pendente, come il
campanile di Pisa e la Carisenda di Bologna, ricordata da Dante nel
canto XXXI dell’Inferno.
Segna essa la dimora de’ Parravicini, che, sbandeggiati dai Rusconi
di Como, qui venuti, diedero origine al villaggio.
Di Casiglio non vale far cenno, che per dire essere nella sua chiesa il
sepolcro di Beltramino Parravicino, il qual fu vescovo di Como e poi
di Bologna.
Fuor della strada, è Carcano, che fu già castello forte e sostenne più
assedî, e diè origine alla patrizia famiglia de’ Carcano. In queste
campagne fra Carcano, Orsenigo e Tassera, nel nove agosto 1160 fu
combattuta una fiera battaglia fra gli aderenti di Federico Barbarossa
e quelli de’ Milanesi, e che altri chiamano di Tassera, altri di Carcano,
altri di Orsenigo; ma non importa il nome, mentre giovi invece
conoscere come ne fosse felicissimo risultamento la sconfitta del
Barbarossa e il pieno trionfo de’ Milanesi, determinato
dall’improvviso intervento di quei di Orsenigo ed Erba, ai quali fu in
guiderdone concesso di poi il diritto di cittadinanza. In mezzo a
questi campi, l’arcivescovo Uberto da Pirovano, cantato aveva allora
sul carroccio milanese la messa e tenuta una sacra arringa a’ soldati
onde eccitarli alla pugna contro l’invasore straniero. Nel primo
scontro, che fu terribile, quel sacro carro caduto nelle mani nemiche,
veniva distrutto nel luogo detto il Carudo; ma poi, per l’insperato
soccorso, ristorate d’un tratto le sorti della battaglia, i Milanesi
s’erano presa la rivincita gloriosa.
L’oste nemica si era spinta fino al lago d’Alserio, breve bacino di un
miglio e un quarto di lunghezza e di mezzo di larghezza, sulla cui
sponda è Alserio piccol paese che gli dà il nome. Era nel pantano
delle Lische Amare che vuolsi s’impigliasse il corsiero del Barbarossa,
onde il tempo perduto a districarsene gli avesse a riuscire fatale. —
Castellazzo, paesello, su d’una facile eminenza, fu così detto da un
forte che i Milanesi vi costrussero nel luglio del 1162 per
contrapporre a quello di Carcano, ove si erano rifugiati, pronti a
rinnovare le offese, i fautori dell’Enobarbo.
Al piede di questa bella eminenza evvi un casale ed un’osteria, detta
la Ca’ de’ ladri: è facile indovinare come la brutta denominazione le
venisse dall’essere il luogo isolato e proprio, massime in addietro, a
ricoverarvi siffatta genìa.
Tutti questi paesi or sono animati da ville ed opificî, e nella parte più
elevata di questo punto, vicino al lago, evvi la Retusa, fonte limpida,
salubre e perenne, usufruttata a muovere macine, e ad animare
stabilimenti di serica industria.
Affrettiamoci invece a visitare la villa Adelaide, che sorge a Tassera e
presso alla riva del lago d’Alserio.
Dapprima l’ebbe la famiglia Imbonati, della quale fu ultimo rampollo
quel marchese Carlo, alla cui memoria consacrò Manzoni
splendidissimi versi sciolti, che ora ha il torto di respingere dalle
edizioni fatte sotto gli auspicî suoi; poi l’ereditò il barone Patroni,
che, fattala dall’architetto Clerichetti di Milano ultimare, riducendola
a stile nordico, forse scozzese, diventò fra le più splendide che si
conoscano anche per ricchezza degli interni adornamenti. I giardini
sono egregiamente ordinati; getti d’acque perenni la ravvivano,
comunque non sia tutto ciò giunto, per sentimento degli schifiltosi, a
togliere quell’aria poco allegra che quel seno del lago vi dà. Morto il
Patroni e legata ai Calvi la villa, questi la tennero per poco,
vendendola a un commerciante genovese che volle lucrare
togliendovi molti alberi; ma essa fortunatamente, fin allora chiamata
Patroni, dal suo più generoso proprietario, venne di recente alle mani
del cav. Domenico Basevi, che, profondendovi egregie somme, non
solo la restituì al primitivo splendore, ma ne lo aumentò d’assai.
Figuri quindi il lettore se non avessi allora ragione di dedicarle una
speciale escursione.
Oggi essa ha nuovo battesimo, e dal nome della sposa dell’attuale
proprietario, si intitola Villa Adelaide.
ESCURSIONE TRENTESIMOTTAVA.
MONGUZZO.

Pontenuovo. — Merone, Mojana, Rogeno, Casletto e


Garbagnate Rota. — Nobero. — Le sue pesche. — Il
Cavolto. — Le fornaci. — Monguzzo. — Il suo castello e
la sua storia. — I marchesi Rosales. — Villeggiatura
Mondolfo.

Tanto da questa parte ove ci troviamo, quanto dall’altra parte del


lago d’Alserio, per la via che dalla Vallassina si va ad Inverigo, si può
ascendere sulla vetta del colle su cui signoreggia Monguzzo: noi
attendendo di continuare per la via di Parravicino nella ventura
escursione, scegliamo adesso la seconda.
Esciti da Vill’Incino, che già vedemmo, ci troviamo, dopo avere
attraversato una strada che si chiude fra i campi, alla via provinciale
della Malpensata, e, volgendo a ritroso di essa, cioè a destra, in poco
tratto di cammino ci troviamo a Pontenuovo, da dove una via riesce
a Merone, quindi a Moiana, Rogeno, Casletto e Garbagnate Rota,
paesi tutti rallegrati da signorili villeggiature, che di poco discosti da
Bosisio chiudono da una parte, all’intorno al lago di Pusiano, quel
territorio che abbiam percorso del Pian d’Erba. Proseguendo poi per
quella onde siam venuti, ci vediamo a Nobero, o Nobile, come altri
chiama questo quadrato di caseggiati aperto da un lato, che, tinto
per la più parte in roseo, ti accenna com’esso appartenga ad un solo
proprietario, al signor dottor Domenico Porro, che personalmente
attendendo alla sapiente direzione dei suoi fondi, ne ottiene i più
fecondi risultamenti. Particolarità di questo villaggio sono le più
eccellenti pesche, sulle quali conta il colono fra i prodotti a sè dovuti:
diritto cotesto limitato a questi terrieri, onde moltiplicate se ne
veggano le piante.
Prima però d’entrare in Nobero, non sarà inopportuno dare uno
sguardo al Cavolto, specie di serbatoio del Lambro, da cui si deduce
l’acqua che va ad irrigare il real parco di Monza, dopo avere percorso
una quindicina di miglia.
Alle fornaci presso Nobile si fanno mattoni marmorati, valendosi di
un’argilla che si cava dal pendío orientale d’un poggio, che ha un
color plumbeo, e mescendola con altra ordinaria gialla.
Per una strada praticata nel colle, si monta a Monguzzo.
Il paese è in felicissima postura, perchè a mattino vede il Pian
d’Erba, a mezzogiorno domina il bacino dell’Éupili, a ponente la
Brianza, e a sera la villa del Soldo, Fabbrica e infiniti altri paeselli,
tutto recinto poi l’orizzonte da una corona azzurra di montagne, colle
onde del lago d’Alserio che gli baciano le pendici del colle su cui
posa.
In antico fu paese nella podestà dell’arciprete di Monza, che vi
esercitava giurisdizione feudale, come su molte altre terre; quindi
parve luogo a fortilizî, e vi fu fabbricato un acconcio castello, e
Francesco II Sforza lo concedeva in feudo ad Alessando Bentivoglio,
spodestato signore di Bologna e governatore del Milanese, della cui
famiglia è la cappella che in Milano si vede nella chiesa di San
Maurizio del Monastero Maggiore sul corso di porta Magenta.
Ma quel famigerato prepotente del Gian Giacomo De’ Medici, detto il
Medeghino, del quale già narrai in una passata escursione le ribalde
gesta, lo lasciò per poco godere degli ozî di Monguzzo; perocchè,
parendogliene la rôcca assai propria a’ suoi disegni, un dì, nel 1533,
assalitola alla sprovvista, ne cacciò quelli che la presidiavano pel
Bentivoglio, e se ne installò padrone, spargendo d’ogni intorno per le
terre della Brianza, e massime per la Valsorda, il terrore. E
taglieggiava da qui non i massai soltanto, ma anche i signori, che
cercava di imprigionare e non rilasciare che contro enormi riscatti e
teneva in allarme la fortezza di Brivio e massime di Trezzo di più
grande importanza.
Il Missaglia, amico di questo fiero capitano di ventura e storico di sue
gesta, lo scagiona dall’aver tolto al Bentivoglio il castello, narrando
come all’occupazione di esso fosse stato dallo Sforza medesimo
ordinato, e fornendone le ragioni. “Possedeva, scrive egli, in quel
tempo il castello di Monguzzo come suo proprio Alessandro
Bentivoglio, figliuolo di Giovanni, già signore di Bologna, parente del
duca e di molta autorità appresso lui, uomo di gran sincerità, ma
poco inclinato all’armi. Il castellano, visto con che poca cura e
guardia era tenuto quel luogo dal Bentivoglio, per sue lettere e col
mezzo d’amici suoi, fece intendere al duca con quanta facilità e con
quanto suo danno quel luogo, mal guardato, poteva capitare in
mano degli imperiali (gli Spagnuoli di Carlo V comandati da Antonio
De Leyva), offrendosi quando fosse rimesso alla sua custodia non
solo di ben guardarlo, ma eziandio con la comodità di quello,
danneggiare molto i nemici, ed assicurare quella parte del ducato
dalle invasioni degli Spagnuoli; il che sarebbe stato come un freno a
Lecco, tenuto da essi. Il duca, che, reso il castello di Milano, si
trovava in Lodi, tolto dalle mani degli imperiali e dato alla lega da
Lodovico Vistarino, benchè dopo la prigionia del Morone gli
mostrasse poca inclinazione e poco fidasse di lui, pur conoscendo
vere le sue ragioni e dubitando di peggio, e anco come quel ch’era
posto in gran necessità di denari, sentiva volentieri che quel castello
si avesse a guardare senza suo costo. Scrisse al Bentivoglio che
rimettesse il castello alla guardia del Medici, e le lettere furono
inviate a lui stesso, perchè le presentasse al Bentivoglio. Il Medici
accortissimo, conoscendo quanto fosse per spiacere questo al
Bentivoglio, e quanto egli potesse appresso il duca, dubitò, e
ragionevolmente, che se gli mandava le lettere fosse per riuscire
vano il suo disegno; onde con l’aiuto di molti principali del paese suoi
amici fatta una buona raccolta di gente, accostastosi una notte a
Monguzzo, e scalatolo, si appresentò alla rocchetta ove era il
Bentivoglio con la sua famiglia e con le lettere ducali, e con la forza
strinselo ad uscire dal castello [41].„
Quando il De Leyva ebbe contezza della caduta di Monguzzo nelle
mani del Medeghino, così se ne dolse, perchè da lui si attendesse
maggior travaglio che non dal Bentivoglio, vi spacciò il conte
Lodovico Belgioioso con buon nerbo di forze onde ritorglielo; ma
questi, dopo varî assalti e perdita d’un centinaio d’uomini,
disperando venire a capo del suo proposito, si levò di là.
Certo Martino da Mondonico, animoso, ma avido di ricchezza, aveva
saputo entrar nelle grazie del Medici ed ottenuto aveva da lui il
commissariato di alcune tasse e contribuzioni che con durezza
esigeva. Parve al De Leyva di poter guadagnar coll’oro il Mondonico,
onde agevolarsi il conquisto di Monguzzo che gli intercettava la
strada da Lecco a Milano, ed infatti se l’ebbe facilmente a’ suoi
interessi. Ma l’ingordo traditore volle dapprima di compiere il
tradimento arricchirsi, ed abusando del nome del Medici, si
impadroniva un bel dì del castel di Perego. Poichè vi fu penetrato,
buttata la maschera, vi prosciolse i prigionieri e si chiarì al servizio
del De Leyva. Il Medici mandò subito il capitano Pellicione a
riprendere il castello, e l’ebbe coi traditori, i quali condotti a
Monguzzo vi vennero appiccati per la gola, e il Mondonico, posto
prima a’ tormenti, fu poi vivo, siccome si meritava, inruotato.
Poneva allora il Medeghino in suo luogo castellano di Monguzzo il
fratello Battista; ma poi, quando gli parve trasferirlo a comandare la
più importante fortezza di Lecco della quale s’era insignorito, vi
sostituì il suddetto capitano Pellicione.
Non mi so che il castello di Monguzzo fosse teatro a ulteriori fatti di
guerra; perocchè buttata, a questo cerbero dalle tre gole, intendo
dire del Medeghino, l’offa da Carlo V, col crearlo marchese di
Marignano e coll’inviarlo altrove a portar guerra, spulezzò il
Medeghino pur da questi luoghi.
Più tardi il castello apparve tramutato in amenissima villeggiatura,
mercè le cure dei marchesi Rosales alle cui mani pervenne; ma
l’ultimo di essi, che molto di sua fortuna adoperò a pro dell’italiana
indipendenza, nel 1853 la vendette al conte e banchiere Sebastiano
Mondolfo, delle cui sapienti liberalità m’avvenne già di intrattenere,
quando m’ebbi ad occupare dell’altra sua villa in Borgo Vico a Como.
E liberalità sapienti operò anche qui in questa sua villeggiatura di
Monguzzo, perocchè aprisse a sue spese una scuola, e nel cascinale
che fe’ erigere introducesse molte comodità, per le quali mostrò
come pur i poveri coloni chiamar si debbano, per migliorarli, a
partecipare alle inevitabili esigenze del vivere sociale moderno.
È una consolazione quando si vede alcuno de’ privilegiati dalla
fortuna, in mezzo agli agî, rammentarsi che v’ha chi soffre e penuria
e gli stende misericorde la mano. Sebastiano Mondolfo ha provato in
tante occasioni d’essere uno di costoro.
ESCURSIONE TRENTESIMANONA.
IL SOLDO.

Il casolare del Monastero di Sant’Ambrogio di Cantù. —


Il Soldo degli Appiani. — Villa Turati. — La casa, il
giardino e il parco. — Gli acquedotti. — Casino rustico.
— Orsenigo. — Casa Carcano. — Anzano. — Villa del
marchese Carcano. — Piccolo albergo. — Alzate. —
Vecchio castello. — Palazzo Clerici. — Fabbrica. —
Brenna e don Antonio Daverio.

A stretto rigore, il colle di Monguzzo, a parer mio, chiuder dovrebbe


il bacino del vecchio Éupili, o, come suolsi oggi dire, del Pian d’Erba;
ma siccome è assai indeterminato anche nella mente di que’ del
paese il confine di questa ridentissima porzione di territorio che
designasi sotto la denominazione di Pian d’Erba, io credo non uscir
da’ limiti che s’è prefisso il mio libro spingendo questa volta la nostra
escursione da questa parte insino alla stupenda villeggiatura del
Soldo.
E d’altronde fosse anche fuori affatto della cerchia de’ paesi che
dall’universale si assegna approssimativamente al Pian d’Erba,
siccome al Soldo ci va ognuno che venga al Pian d’Erba; così anch’io
non posso a meno che condurvi il mio lettore.
Vi arriveremo dalla via di Parravicino, alla quale facciamo ritorno,
oltre la Ca’ de’ ladri, che abbiamo veduta.
Lo si scorge presto, perchè esso s’alza tronfio sulla cima della più
lieta eminenza e di là sembra accivettare quanti necessariamente
percorrendo la via che mena alla Valsorda, vi rivolgono lo sguardo.
Altri poggi vi stanno presso, tutti diligentemente coltivati, e di
pertinenza del medesimo signore, del conte Turati, salito per operosi
commerci in filati di cotone a sterminata ricchezza e al patriziato
italiano.
Allorquando si è sotto la collina del Soldo, vi pare di avere davanti
una scena teatrale: mulino a vento, chioschi e padiglioni, chalets e
cottages, introduzioni leggiadre di cose forestiere, viali, telegrafo,
una ben ordinata e splendida vegetazione, il tutto incoronato dal
palazzo che sta in cima. La prima impressione ci avverte subito che
la villa gode di meritata fama.
Molti rammentano ancora come quivi non fossero prima che una
meschina sodaglia, borri profondi e frane, rovi ed arbusti inutili: non
vi aveva infatti alla sommità del colle che un casolare di ragione del
monastero di Sant’Ambrogio di Cantù. Chi mai avrebbe detto allora
che si sarebbe tramutato tanto squallore nella più gioconda plaga?
Questa metamorfosi prodigiosa, iniziata da don Giacomo Appiani
d’Aragona, che ridusse quell’aspro colle a villa su disegno
dell’egregio architetto Moraglia, del senno del quale già ammirammo
in queste nostre escursioni non poche opere, fu perfezionata dal
conte Turati.
E veramente scrissero i signori Zoncada e Garovaglio nella loro opera
I giardini dell’alto Milanese e del Comasco, levando a cielo il
Soldo [42]. Sarebbe difficile, sentenziaron essi, trovare altrove più
stupenda varietà di scene, più ampie vedute, più diverse, e nel
tempo stesso, e qui è il merito dell’uomo, una struttura, un disegno
meglio ideati, più acconci alla qualità del sito, più rispondenti agli
ultimi progressi dell’arte de’ giardini, una coltivazione più ricca, più
lussureggiante, e per certe parti più degna che si pigli ad esempio.
Sono pregi e bellezze che a comprenderle non arriva che la vista; per
la parola è molto ancora se le riesca di lasciarle indovinare. Que’
viali, que’ passeggi, che larghi, agevoli, spazzati, girano il poggio
serpeggiando con sì dolce movenza e dominando sempre l’immenso
orizzonte; quelle costiere che verdi, fiorite, sparse d’ogni maniera di
piante, si prolungano di qua, di là sì pittoresche fin giù nella valle;
que’ prati, que’ piani ameni dove l’occhio si riposa sì tranquillo e
beato; quel contrasto tra il semplice e il grandioso, il ridente e
l’austero, tra l’arte e la natura, per cui passi dalla rigida vegetazione
delle Alpi alla sfoggiata delle zone più favorite dal sole; che li vedi
affratellarsi, dal vivace padiglione Chinese al chiosco orientale e al
positivo casolare dello svizzero o dell’olandese, dal ponte di legno
che ricorda la primitiva età de’ pastori alle fontane marmoree, alle
statue, opera di famosi scalpelli e documenti della più alta civiltà;
bisogna vederli chi voglia farsene il giusto concetto: noi non
possiamo che rammentare così a sbalzi, come la memoria ci
soccorre, di tante meraviglie quelle pochissime delle quali ci è
rimasta una impressione più profonda, e che per la qualità delle cose
torna meno difficile a comunicarsi altrui.
Così, per esempio, potrà di leggieri, pare a noi, anche chi mai non la
vide, imaginare quale debba essere il magico effetto di quella serie
di stufe tutte eleganti, tutte magnifiche, che giù giù pel dosso della
collina discendono a gradinata, quasi emiciclo di vasto anfiteatro. Vi
aggiunga colla fantasia i grandi balaustrati che la riparano per
davanti con vasi di classica forma, con piante di rara bellezza; vi
aggiunga grandi e piccole fontane in marmo ai diversi ripiani, belle
tutte, bellissima qualcuna, quella vogliamo dire che raffigura le tre
Grazie, opera di egregio scalpello, che ritrae quanto di più puro
seppe mai creare il cinquecento; vi aggiunga appiè di quel dosso a
disuguali distanze le spelonche, le grotte di vario genere, alte,
spaziose, tortuose, foggiate a galleria, a labirinto, fornite a dovizie
d’ogni comodità, con polle, zampilli, giuochi d’acqua d’ogni sorta,
con istipi a tarsia, busti, are, idoletti, medaglioni, con seggiole,
scannelli, divani, lettucci, tavoli e tavolini d’ottimo gusto; e tutto
questo sotto il più bel cielo che occhio d’uomo possa vedere, e dovrà
farsi certamente un concetto grande di questo luogo incantato. E
sempre maggiore si farà chi consideri le difficoltà senza numero che
bisognò superare per tramutarlo, di selvaggio che era, nella forma e
stato presente. Una sola vogliamo qui accennare che valga per
molte, tanto è grave; vedete quella copia d’acqua volta dall’un capo
all’altro de’ giardini a sì diversi usi in forma qui di fontana, là di
ruscello o di torrente, più giù di lago solcato da gai navicelli? Sul
luogo in origine non se ne avea pur stilla; tutta, tutta quanta si
derivò da lontani monti, e per magnifici acquedotti si condusse per
mezzo a queste terre riarse dal sole con ingente dispendio.
Essa infatti si condusse con ingente spesa fin dai monti d’Albese,
facendola viaggiare per 9000 metri di tubi di ghisa.
Lascio agli intelligenti di botanica il tener conto delle ricchezze
d’alberi e fiori d’ogni clima e paese che qui son disseminati, e di
estasiarsi davanti alle loro peregrine specie; io m’accontento di
ammirare i leggiadri colori, di aspirare i soavissimi profumi: accetto i
soli risultamenti e sarà meglio anche pel lettore, che certo non
cercherà al mio libro un trattato di quella scienza.
Piuttosto non lascerò di accennare che il palazzo, se non è forse
corrispondente in vastità al giardino e parco, ha tuttavia da ospitare
una cinquantina di persone. Il casino rustico che gli sta accanto è
forse migliore nella sua semplicità; presso al casino svizzero vi è poi
uno steccato che racchiude alcuni dei più rari animali indigeni e
forestieri, fra cui primeggiano bellissimi merinos.
Ah veramente aveva dunque ragione il nostro povero Raiberti,
quando diceva di questa villa essere un Sold che var un milion!
Fra le terre circostanti ho già nella precedente escursione nominato
Orsenigo, quella terra che con Erba trasse in aiuto dell’armi milanesi
contro quelle del Barbarossa: quivi adesso ricorderò la bella casa
Carcano, architettata dal bravo Moraglia.
Tirando dritto sulla via per la quale siamo venuti, tocchiamo Anzano,
bello per la sua elevata postura e per la villa e grandioso parco del
marchese Carcano; a man destra poi di questo paese, v’è la via che
conduce ad Alzate al principiar della quale or si eresse un piccolo
albergo. In Alzate poi, oltre qualche ricca casa, meritano
osservazione un vecchio castello che si volle reliquia di romana
potenza ed il palazzo Clerici.
Ma, come che l’escursione nostra fosse bastevolmente lunga per le
tante cose ammirate al Soldo, chiudiamola a Fabbrica, dove sulla
eminenza sorge la villa dei conti Durini, che fruisce di bellissima vista
e dalla, quale, vedendo a destra sul ciglio della collina che per
l’opposto versante sogguarda al lago di Montorfano il paese di
Brenna, ivi sapendo come vi sia stato dimenticato parroco quel fior
di dottrina, di patriottismo e di bontà che è Antonio Daverio, mio
maestro di latine ed italiane lettere, mi felicito della diversa e libera
carriera da me poscia nella adolescenza abbracciata.
ESCURSIONE QUARANTESIMA.
INVERIGO.

Lurago. — Villa Sormani-Andreani. — Lambrugo. —


Ville Galli e Venini. — Inverigo. — L’arcivescovo
Ariberto. — Bacco di Brianza. — L’albergo. — La
Rotonda. — Il castello e la villa Crivelli. — Il Gigante.
— L’Orrido. — S. Maria della Noce. — Cremnago. —
Villa Perego. — Il Cimitero.

Se ci siamo alquanto spinti al di fuori del Pian d’Erba dalla parte di


Parravicino per vedere il Soldo de’ Turati, perchè non ci spingeremo
ora oltre Nobero per ammirare la famosa Rotonda d’Inverigo e
l’Orrido dello stesso paese, che chiamano da ogni dove dalla Brianza
brigate di villeggianti e di curiosi; e la villa Perego di Cremnago?
Centro Inverigo di tutta la Brianza, sarà per noi il limite ultimo delle
escursioni che ci siam proposti di fare durante gli ozî autunnali.
Da Nobero, che abbiam già visitato, per una bella strada si arriva a
Lurago. Quivi è la villa del conte Sormani-Andreani, con bel giardino
a pineti. Dapprima spettava alla patrizia famiglia Crivelli, che vi
risiedeva ed era feudataria d’Inverigo. Posta nella parte alta del
paese, la villa vi pompeggia e chiama lo sguardo di ognuno che
passi.
Poco fuori di Lurago, la via intristisce e si fa fangosa e trascurata fin
oltre Inverigo e puossi dire fino ad Arosio, onde infiniti e generali i
reclami dai moltissimi obbligati a percorrere questo stradale
importante. E se ne riscossero finalmente i comuni limitrofi e
l’autorità, e una nuova strada e più diretta fu ordinata ed appaltata,
e comunque le opere ne procedano lentamente, fra breve sarà
tuttavia un fatto compiuto. A sinistra di Lurago, prima d’arrivare ad
Inverigo e sul ciglio della valle del Lambro, è Lambrugo, ov’era prima
un chiostro di monache, tramutato poi in villa dalla famiglia Galli. Vi
villeggia anche la famiglia Venini.
Eccoci ad Inverigo. I soliti antiquarî vorrebbero originato il nome
dalle due parole latine in aprico, come a dire un luogo situato
all’aperto ed al sole; ma altri invece pretendono sia nome celtico:
non ci frapponiamo noi a dir la nostra opinione, meglio sembrandoci
d’accettarlo qual è. Piuttosto non sarà privo d’interesse il sapere
come qui nel 1023 l’arcivescovo di Milano, Ariberto d’Intimiano,
celebre nelle nostre storie per la parte presa nelle accanite contese
surte pel celibato de’ preti, possedesse beni, ch’egli poi assegnò al
rinomato monastero di San Dionigi da lui fondato in Milano.
I colti gaudenti rammentano con maggior piacere che il vino
d’Inverigo godeva fino in antico una tal quale riputazione fra i
migliori, e appoggiano l’erudizione loro coll’autorità d’un poeta di
nome Bertucci, che, arieggiando il Ditirambo del Redi, che ognun
comosce, del Bacco in Toscana, scrisse alla sua volta un Bacco di
Brianza, nel quale si leggono i seguenti versi, che pone in bocca allo
stesso Nume:

Il terzo infine colma d’Inyerigo


Valentissimo vin, la cui mercede
Al par di Siracusa
Vanta Milano ancora il suo Archimede [43].

Ma per associazione di idee, dal buon vino ricorre il pensiero


all’albergo d’Inverigo. Quest’albergo, se non presenta i conforti tutti
dell’eleganza e dell’esigenza forastiera, è nondimeno il migliore di
tutta questa parte della Brianza, onde l’autunno vegga più famiglie di
conto prendervi stanza ed esservi arcicontente. Sostiamoci quindi,
amico lettore, e dopo esserci rifocillati, potremo pigliare le mosse per
ascendere alla Rotonda.
S’innalza essa sulla parte più elevata della collina, sotto cui si
distende bellissima una valle, come tale pur ricordata nelle sue opere
da Sant’Agostino, disseminata di paesi; la sua facciata, che
giustamente fu detto rassomigliare a’ propilei d’Atene, è però rivolta
a tramontana.
La fabbricò il marchese e architetto Luigi Cagnola di Milano nell’anno
1813, — quegli cui è dovuta l’architettura dell’Arco del Sempione di
Milano, — e vi spiegò tutta la grandiosità e il gusto classici,
profondendovi egregie somme, a smentita di que’ cialtroni ch’erano
venuti accusandolo d’architettar sempre grandiosamente quando si
fosse trattato di non ispendere danari proprî.
Il fabbricato ha nel mezzo un’ampia sala circolare, che s’alza gigante
con cupola che costituisce la Rotonda; quindi tutto l’edifizio è
esteriormente riquadrato, poste essendosi agli angoli le camere della
restante abitazione. Il concetto d’una rotonda maestosa fece sì che
gli altri locali fossero ad essa sagrificati. Fu compiuta così un’opera
del più perfetto classicismo, se si vuole; ma dopo ciò, si domandano
molti, cosa vuole, a che serve, perchè qui collocato questo
gigantesco edificio? Come villa ha l’esteriore principesco; ma
l’interno, a parte la sala principale della Rotonda, non vi corrisponde.
Come nella facciata, così pure nella parte postica, a mezzogiorno, e
che sogguarda la superba valle, vi sono ampie scalee; quella della
facciata poggia sopra un sotterraneo; l’altra su d’un terrazzo recinto
di balaustrata e sorretto da sei gigantesche cariatidi, che sono dello
scalpello di Pompeo Marchesi.
Fu da esso che il re di Napoli, Ferdinando II, padre dello spodestato,
venuto tra noi, ammirando la sottoposta valle, di non so quante
miglia di circuito, così ben coltivata e ordinata quasi ad aiuole di fiori,
ebbe a chiedere bonariamente al marchese Cagnola, se tutto quel
che si vedeva fosse giardino della sua villa.
Orrido d’Inverigo.

Se la collina su cui posa la Rotonda si digrada al paese, dall’opposto


lato risorge ad eminenza, sovra cui è il castello, ora palazzo e
giardino del marchese Luigi Crivelli, che ognun desidera veder
meglio curati, perchè abbian tutte le forme per costituire una delle
più grandiose ville. Ha molti ed annosi cipressi, e su d’un altipiano a
sinistra del palazzo vedesi una colossale statua di Ercole, alquanto
offesa dagli anni, che da’ terrieri si designa col nome di Gigante.
Discendendo la collina de’ Crivelli, pei loro campi si va al bosco, dove
la natura e i cataclismi hanno prodotto siffatte spaccature di roccia,
per dove filtrano e scorrono limpide e fresche acque, che formano
un Orrido dell’effetto il più pittoresco.
E meglio ancora il produrrebbero, se l’acque più riunite scorressero;
ma come l’età piega al positivo, così parte furono deviate a mettere
in movimento mulini.
Con tutto ciò all’Orrido d’Inverigo, di proprietà del marchese Luigi
Crivelli suddetto, non v’ha chi venga al paese e che non tragga a
vederlo, sovente convegno ad amiche brigatelle che lo eleggono a
luogo di refezioni e riposo.
A ponente della villa Crivelli si discende per uno stradone alla
Madonna della Noce, luogo piacevole assai e al quale convengono a
settimanale mercato da tutti i circonvicini paesi.
Chi ama conoscere le migliori villeggiature e farsi adeguato concetto
della ricchezza de’ loro proprietarî, essendo in Inverigo, non lascia di
fare una scarrozzata a Cremnago, dove sorge il magnifico palazzo
della famiglia Perego. Se gliene è dato l’accesso, potrà il lettore
ammirarlo nelle sue parti tutte; e se nelle ampie scuderie vedrà molti
cavalli e taluni anche pensionati a riposo perpetuo, sorretti persino
da cinghie, potrà cavar argomento del cuore del ricchissimo padrone,
il quale del resto non restrinse alle bestie sole gli effetti della sua
bontà, prima avendola addimostrata nel dotare i suoi coloni di belle
e comode case.
Il cimitero del paese merita pure di essere veduto. È buona
architettura di Giuseppe Chierichetti, e in esso è il sepolcreto della
famiglia Perego. È questo un’edicola di forma quadrangolare e
cilindrica, e alla parte superiore con gradinata e cupola d’ordine
dorico, colle pareti laterali fregiate di colonne, quattro delle quali
formano il pronao con cornice, architrave e frontone, entro cui
leggesi scolpito Hypogeum, e tutto condotto in miarolo rosso. Le
pareti interne sono a stucco lucido, la luce piove dal lucernario della
cupola, e nel fondo è l’altare marmoreo, con un bel gruppo in
marmo di Carrara, rappresentante la Maddalena a’ piedi della Croce,
lodevole opera dello scultore Labus.
Per ritornare ora al nostro Pian d’Erba, rifacciam la medesima via di
Lurago e Nobero: è più agiata e vi giungeremo più presto.
CONCLUSIONE.

Altri paesi, altre ville, altre meraviglie di natura e d’arte ci


solleticherebbero ad altre escursioni; ma invaderei la Brianza, della
quale già qualche lembo abbiam tocco, e allora mi ci vorrebbe un
altro volume; perocchè per essa a buon dritto potrebbesi citare del
pari quanto l’Ariosto cantò de’ dintorni di Firenze:

A veder pien di tante ville i colli


Par che il terren ve le germogli, come
Vermene germogliar suole e rampolli:

Se dentro a un mur sotto un medesmo nome


Fosser raccolti i tuoi palagi sparsi,
Non ti sarian da pareggiar due Rome.

E Baretti, proprio del suolo della nostra Brianza parlando, lo


chiamava “il più delizioso paese di tutta Italia per la varietà delle sue
vedute, per la placidezza de’ suoi fiumi, per la moltitudine de’ suoi
laghi, ed offre il rezzo dei boschi, la verdura dei prati, il mormorio
delle acque, e quella felice stravaganza che mette la natura ne’ suoi
assortimenti; insomma in questo vaghissimo paese, ovunque si porti
lo sguardo, non si scorgono che paesaggi ornati di tutte le grazie
campestri, la cui contemplazione produce quei momenti di dolce
meditazione, che tengono l’animo in grato riposo.„
Io ho promesso condurre il lettore con me lungo le rive del Lario e al
Pian d’Erba; credo avergli attenuta la promessa, mostrandogli
quanto di meglio mi è sembrato. Che se alcuna cosa ho lasciato, se
passai avanti qualche villa, senza farvi entrare il lettore, o, fors’anco
senza pur nominarla, consideri che nell’imbarazzo di ricchezza di
luoghi e di meraviglie in cui ci trovavamo, l’ommissione era agevole a
commettersi, molto più che v’abbian di molti che si ricusin perfino a
rivelar le più semplici cose, quasi che si tratti di violar, parlando, i
loro domestici lari; epperò non mi resta che invocarne la sua
indulgenza.
Ho avuto il pensiero, unendo il mio dire intorno al Pian d’Erba a
quello intorno al lago di Como, di chiamare più specialmente la
curiosità del forastiero sul primo e d’invogliarlo a farne soggetto delle
proprie escursioni; perocchè mi fosse sembrata non troppo nota
questa parte sì bella di nostra Lombardia; e se avrò raggiunto in
qualche modo l’intento, io mi chiamerò soddisfatto.
INDICE.

Introduzione Pag. 5

Escursione prima. — il baradello 9


Il Castello. — Uno sproposito di geografia. — Etimologia del
Baradello. — Un cenno geologico. — La storia del castello. —
Liutprando. — Barbarossa. — Camerlata. — Scopo del
Baradello. — Napo della Torre. — La chiesa di San Carpoforo.
— Lapide. — Villa Venini ora Castellini. — Il collegio alla
Camerlata. — Opificî industriali. — Ville Larderia, Martignoni,
Prudenziana e Carloni.

Escursione seconda. — il generoso 21


La città di Como. — La chiesa di S. Fedele. — La basilica di S.
Abbondio. — Il Teatro. — Il Camposanto. — L’albergo Volta. —
Chiasso. — Il Crotto e le polpette della Giovannina. —
L’albergo di Mendrisio. — Dottore e albergatore. — Il Monte
Generoso. — Salita. — L’albergo del dottor Pasta. — La cura
dell’aria. — Geologia, fiora e fauna. — Il dottor Pasta. —
L’albergo del Generoso. — Il tramonto. — Il Dosso-Bello. — La
vetta. — Panorama. — Ancora l’albergo di Mendrisio. — Le
Cantine di Mendrisio. — L’Ospizio. — Vincenzo Vela. —
Ligornetto. — Le cave di Arzo. — Le acque solforose di Stabio.
— San Pietro di Castello. — Romanzo storico.

Escursione terza. — il nino 45


Brunate e la leggenda di Guglielmina. — La Grotta del Mago. —
Le ville Castiglioni, Sessa, Pertusati e Cornaggia. — Villa
Angiolini. — Villa Rattazzi. — U. Rattazzi e Maria Bonaparte
Wyse. — Villa Pedraglio. — Le ville Trubetzkoi, Ricordi e
Artaria. — La villa Carena inabissata. — Blevio. — La villa
Bocarmé e la Comton, ora Lattuada. — Il Pertugio di Blevio. —
Il Buco del Nasone. — Le ville Taglioni, Schuwaloff, Vigoni e
Sparks. — La Roda e Giuditta Pasta. — Adele Curti. — Il Nino.
Escursione quarta. — l’olmo 53
San Fermo e i volontarî di Garibaldi. — Borgo Vico. — Villa
Barbò. — Il Museo di monsignor Giovio e la villa Gallia. — Villa
Saporiti, già Villani. — Bonaparte e i deputati di Como. —
Palazzo Resta. — Ville Salazar, Bellotti, Mancini, Brivio,
Belgiojoso, D’Adda e Pisa. — Villa Mondolfo. — L’Olmo del
marchese Raimondi. — Caninio Rufo e Plinio il Giovane.

Escursione quinta. — il pertugio della volpe 59


Gite montane. — Il trovante dell’Alpe di S. Primo. — Il Sarizzo. —
Grotte e Caverne. — Grumello. — Villa Celesia. — La Zuccotta
e I Tre Simili. — Il signor G. B. Brambilla. — Villa Caprera del
signor Loria. — La Tavernola e l’Albergo. — Villa Gonzales. —
Il capitano De Cristoforis. — La Villa Bignami. — La Villa Blasis.
— A Carlo Blasis. Versi. — Il Bisbino. — Il Pertugio della Volpe.
— Marmi e pietre.

Escursione sesta. — la villa d’este 69


Cernobbio. — Debitori e Monache. — Villa Bolognini. — Villa
Lejnati. — Villa Belinzaghi. — Garrovo. — Il general Pino. — La
villa d’Este. — Giorgio IV d’Inghilterra. — La principessa di
Galles. — Suo processo. — Sua morte. — Sue opere alla villa
d’Este. — L’Albergo della Regina d’Inghilterra. — L’acqua della
Coletta.

Escursione settima. — il pizzo 89


Madama Musard. — La villa il Pizzo. — G. B. Speziano la
fabbrica. — I conti Muggiasca. — Il Vicerè del Regno
Lombardo-Veneto. — Migliorie. — La villa Curié.

Escursione ottava. — la cascata di moltrasio 93


Il bacino di Moltrasio. — L’osteria del Caramazza. — Un mio
episodio. — Villa dei signori Nulli. — La leggenda della Ghita.
— Perchè si nomi Moltrasio. — La Vignola dei Passalacqua. —
E la villa Durini? — Geologia. — La cascata.

Escursione nona. — mompiatto 105


Perlasca. — Tradizione. — Villa Tanzi ora Taverna. — Torno. —
Storia. — Gli sposi annegati. — Ville Croff, Righini, Antonelli. —
La chiesa di S. Giovanni e pia leggenda. — Mompiatto. — Le
sue monache. — La Pietra pendula e la Nariola.

Escursione decima. — la pliniana 111


Le vittime del lago. — La villa Matilde dei signori Juva. — Villa
Canzi. — La Pliniana. — Plinio il Giovane e il flusso e riflusso.
— Spiegazione del fenomeno. — La Breva e il Tivano. —
L’assassinio di Pier Luigi Farnese. — Giovanni Anguissola. — La
villa e l’attuale proprietaria.

Escursione undecima. — da moltrasio a


torrigia 123
Orrido di Molina. — Lemna e la Colonia greca. — Una sventura
nel 1163. — La villa Buttafava. — Pognana e Palazzo. —
Premenù. — Ancora a Moltrasio. — Ville Salterio, Invernizzi,
Tarchini-Bonfanti, De Plaisance. — Pensiero. — Rosiera. —
Villa Pavia. — La Partenope. — Igea. — Villa Savoja. — La
Minerva, ora villa Elena. — Villa Ostinelli-Turati. — Urio. — Ville
Melzi, Jenny, Calcagnini, Taroni. — Sofia Fuoco. — G. B.
Lampugnani. — Sonetto a Katinka Evers. — Ville Rocca,
Tarantola, Ottolini, Battaglia, Viglezzi. — Villa Sangiuliani. —
Ville Lavizzari, Porro e Longoni. — Cantiere dei fratelli Taroni.
— Laglio. — Monumento a Giuseppe Franck. — Villa Galbiati.
— Torrigia. — Villa Cetti. — La punta.

Escursione duodecima. — il buco dell’orso 131


Il dottor Casella di Laglio. — La brigatella. — La vista. — Il
cammino. — Il Buco dell’Orso. — Sua scoperta. — Descrizione.
— Visite di dotti. — Le scarpe di S. Pietro. — Questioni
geologiche. — Paleontologia. — Gallerie o pozzi scoperti dopo.
— La discesa.

Escursione decimaterza. — il piano del


tivano 155
La Cavagnola. — Careno e Quarsano. — La Grotta della Masera.
— Nesso. — Erno, Veleso, Gerbio. — Il Piano del Tivano. — La
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like