Replication of Non-Deterministic Objects

Total Page:16

File Type:pdf, Size:1020Kb

Replication of Non-Deterministic Objects REPLICATION OF NON-DETERMINISTIC OBJECTS THÈSE NO 1903 (1998) PRÉSENTÉE AU DÉPARTEMENT D'INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE POUR L'OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES PAR Thomas WOLF Dipl. Informatik-Ing. ETH originaire de Thayngen (SH) acceptée sur proposition du jury: Prof. A. Strohmeier, directeur de thèse Prof. H.-H. Naegeli, rapporteur Prof. A. Schiper, rapporteur Prof. A. Wellings, rapporteur Lausanne, EPFL 1998 Abstract This thesis discusses replication of non–deterministic objects in distributed systems to achieve fault tolerance against crash failures. The objects replicated are the virtual nodes of a distributed application. Replication is viewed as an issue that is to be dealt with only dur- ing the configuration of a distributed application and that should not affect the development of the application. Hence, replication of virtual nodes should be transparent to the applica- tion. Like all measures to achieve fault tolerance, replication introduces redundancy in the system. Not surprisingly, the main difficulty is guaranteeing the consistency of all replicas such that they behave in the same way as if the object was not replicated (replication trans- parency). This is further complicated if active objects (like virtual nodes) are replicated, and these objects themselves can be clients of still further objects in the distributed application. The problems of replication of active non–deterministic objects are analyzed in the context of distributed Ada 95 applications. The ISO standard for Ada 95 defines a model for distributed execution based on remote procedure calls (RPC). Virtual nodes in Ada 95 use this as their sole communication paradigm, but they may contain tasks to execute activities concurrently, thus making the execution potentially non–deterministic due to implicit tim- ing dependencies. Such non–determinism cannot be avoided by choosing deterministic tasking policies. I present two different approaches to maintain replica consistency despite this non– determinism. In a first approach, I consider the run–time support of Ada 95 as a black box (except for the part handling remote communications). This corresponds to a non–determin- istic computation model. I show that replication of non–deterministic virtual nodes requires that remote procedure calls are implemented as nested transactions. Unfortunately, effects of failures are not local to the replicas of a virtual node: when a failure occurs, nested remote calls made to other virtual nodes must be undone. Also, using transactional seman- tics for RPCs necessitates a compromise regarding transparency: the application must iden- tify global state for it cannot be determined reliably in an automatic way. Further study reveals that this approach cannot be implemented in a transparent way at all because the consistency criterion of Ada 95 (linearizability) is much weaker than that of transactions (serializability). An execution of remote procedure calls as transactions may thus lead to incompatibilities with the semantics of the programming language. If remotely called sub- programs on a replicated virtual node perform partial operations, i.e., entry calls on global protected objects, deadlocks that cannot be broken can occur in certain cases. Such dead- locks do not occur when the virtual node is not replicated. The transactional semantics of RPCs must therefore be exposed to the application. A second approach is based on a piecewise deterministic computation model, i.e., the execution of a virtual node is seen as a sequence of deterministic state intervals. Whenever a i Abstract non–deterministic event occurs, a new state interval is started. I study replica organization under this computation model (semi–active replication). In this model, all non–determinis- tic decisions are made on one distinguished replica (the leader), while all other replicas (the followers) are forced to follow the same sequence of non–deterministic events. I show that it suffices to synchronize the followers with the leader upon each observable event, i.e., when the leader sends a message to some other virtual node. It is not necessary to synchronize upon each and every non–deterministic event — which would incur a prohibitively high overhead. Non–deterministic events occurring on the leader between observable events are logged and sent to the followers just before the leader executes an observable event. Conse- quently, it is guaranteed that the followers will reach the same state as the leader, and thus the effects of failures remain mostly local to the replicas. A prototype implementation called RAPIDS (Replicated Ada Partitions In Distributed Systems) serves as a proof of concept for this second approach, demonstrating its feasibil- ity. RAPIDS is an Ada 95 implementation of a replication manager for semi–active replica- tion for the GNAT development system for Ada 95. It is entirely contained within the run– time support and hence largely transparent for the application. ii Résumé Cette thèse traite de la duplication d’objets non–déterministes dans des systèmes répartis afin de les rendre tolérants aux pannes, plus particulièrement aux défaillances par arrêt. Les objets dupliqués sont les nœuds virtuels d’une application répartie. La duplication de nœuds virtuels est censée être transparente pour l’application: on considère la duplication comme un mécanisme qui n’intervient qu’au moment de la configuration de l’application et qui ne devrait pas affecter le développement de celle–ci. Comme toutes les mesures ayant comme but la tolérance aux pannes, la duplication introduit de la redondance dans le système. La difficulté principale à résoudre est évidem- ment de garantir la cohérence de tous les duplicata pour que l’ensemble de duplicata se comporte envers les autres objets comme un objet singulier (transparence de duplication). Le problème est encore amplifié si l’on considère la duplication d’objets actifs, qui peuvent eux–mêmes être des clients d’autres objets dans l’application répartie. Dans cette thèse, les problèmes de la duplication d’objets actifs non–deterministes sont étudiés dans le cadre d’applications réparties mises en œuvre avec le langage de pro- grammation Ada 95. Le standard ISO de ce langage définit un modèle pour l’exécution répartie fondé sur des appels à distance (RPC). Les nœuds virtuels en Ada 95 ne communi- quent que par des appels à distance; ils peuvent néanmoins contenir des tâches, ce qui rend leur comportement non–déterministe en raison de certaines dépendances temporelles impli- cites. Ce genre de non–déterminisme ne peut pas être résolu en choisissant des règles d’ordonnancement de tâches déterministes. Cette thèse présente deux approches différentes pour maintenir la cohérence des duplicata malgré ce non–déterminisme. Dans la première, le support d’exécution de Ada 95 est considéré comme une boîte noire, à l’exception de sa partie responsable du traitement de la communication entre les nœuds virtuels. Ceci correspond à un modèle de calcul non– déterministe. Je montre que la duplication de nœuds virtuels non–déterministes nécessite une sémantique de transactions imbriquées pour les appels à distance. Les effets de défaillances ne sont pourtant pas locaux à l’ensemble des duplicata d’un nœud virtuel: lors d’une défaillance, les appels à distance imbriqués faits à d’autres nœuds doivent être annu- lés. La sémantique transactionnelle nécessite également un compromis en ce qui concerne la transparence: l’application doit identifier son état global, car il ne peut pas être identifié avec certitude de manière transparente dans le support d’exécution. Mais le problème le plus sévère est sans doute qu’il est même impossible de mettre en œuvre cette approche d’une manière transparente car le critère de cohérence de Ada 95 (linéarisabilité) est beau- coup moins fort que celui de transactions (sérialisabilité). L’exécution d’appels à distance comme des transactions peut donc conduire à des incompatibilités avec la sémantique du langage de programmation lui-même. Si un sous–programme appelé à distance sur un nœud virtuel dupliqué accomplit des opérations partiels, c.-à-d. des appels d’entrées d’objets pro- iii Résumé tégés globaux, des interblocages qui ne peuvent pas être résolus sont possibles. De tels interblocages ne surviendraient pas si le nœud virtuel n’était pas dupliqué! Il est donc indis- pensable que la nature transactionnelle des appels à distance soit révélée à l’application. La deuxième approche se fonde sur un modèle de calcul à étapes déterministes (piece- wise deterministic computation model) où l’exécution d’un nœud virtuel est modélisée par une séquence d’intervalles déterministes d’états. À chaque événement non–déterministe, un nouvel intervalle d’état commence. J’étudie l’organisation de duplicata dans ce modèle de calcul par le moyen de la duplication semi–active. Dans cette forme d’organisation, toutes les décisions non–déterministes se font sur un duplicata distingué (appelé leader ou meneur1) et tous les autres duplicata (les followers, ou suiveurs) sont forcés de suivre la même séquence d’événements non–déterministes. Je démontre qu’il suffit de synchroniser les suiveurs avec le meneur chaque fois que ce dernier est sur le point d’exécuter un événe- ment observable, c’est–à–dire quand il envoie un message à un autre nœud virtuel. Il n’est pas nécessaire de les synchroniser à chaque événement — ceci entraînerait une baisse de performance prohibitive. Des événements non–déterministes qui surviennent entre deux événements observables sur le meneur peuvent être enregistrés dans un journal qui est envoyé aux suiveurs juste avant que le meneur exécute un événement observable. On garan- tit ainsi que les suiveurs vont atteindre le même état que le meneur. Avec ce procédé, les effets de défaillances restent presque complètement locaux aux duplicata. Une première mise en œuvre, appelée RAPIDS (Replicated Ada Partitions In Distribu- ted Systems), montre la faisabilité de la deuxième approche fondée sur le modèle de calcul à étapes déterministes. RAPIDS est un gestionnaire de duplicata pour la duplication semi– active pour le système de développement Ada 95 GNAT.
Recommended publications
  • Data-Driven and Model-Based Design
    Data-Driven and Model-Based Design Stavros Tripakis Aalto University and University of California, Berkeley Abstract—This paper explores novel research directions arising the AI system, we must also trust its LECs. However, today’s from the revolutions in artificial intelligence and the related fields machine learning systems are highly unpredictable [66]. Pro- of machine learning, data science, etc. We identify opportunities totyping such systems may seem quick and easy, but it incurs a for system design to leverage the advances in these disciplines, as well as to identify and study new problems. Specifically, we high cost, called technical debt [58]. These problems are not propose Data-driven and Model-based Design (DMD) as a new theoretical. Numerous traffic violations, accidents, and even system design paradigm, which combines model-based design human casualties have resulted as the fault of LECs. It is with classic and novel techniques to learn models from data. therefore correctly and widely recognized that AI systems are not dependable [23]. Index Terms—System design, formal methods, machine learn- ing, verification, synthesis How to achieve dependability of LECs? “Manual” reason- ing about these systems is prohibitive. Systems like neural I. INTRODUCTION networks become incomprehensible as their size grows [59]. Moreover, using a trial-and-error approach (testing) does not A. Artificial Intelligence scale [38]. Computers and an abundance of data from all sorts of We argue that we need rigorous, formal modeling and sources are revolutionizing many fields of science and tech- verification techniques, in order to nology, from biology and medicine, to astronomy and the 1) model AI systems, and in particular their LECs; social sciences.
    [Show full text]
  • Requirements Engineering Challenges in Building AI-Based Complex Systems
    Requirements Engineering Challenges in Building AI-Based Complex Systems Hrvoje Belani Marin Vuković, Željka Car IT Division Faculty of Electrical Engineering and Computing Ministry of Health University of Zagreb Zagreb, Croatia Zagreb, Croatia [email protected] {marin.vukovic; zeljka.car}@fer.hr Abstract—This paper identifies and tackles the challenges of Based on the discussion, the RE4AI (“RE for AI”) taxono- the requirements engineering discipline when applied to devel- my has been outlined, considering to be useful to inform the opment of AI-based complex systems. Due to their complex be- tailoring of AI development process. The elements of the tax- haviour, there is an immanent need for a tailored development onomy have been recognized from the AI field – data, model process for such systems. However, there is still no widely used and system, and aligned with the typical RE activities. The and specifically tailored process in place to effectively and effi- ciently deal with requirements suitable for specifying a software purpose of the proposed taxonomy is to help practitioners and solution that uses machine learning. By analysing the related researchers to focus on certain challenges upfront and tailor work from software engineering and artificial intelligence fields, their AI research approaches and development processes ac- potential contributions have been recognized from agent-based cordingly. software engineering and goal-oriented requirements engineering This work has been partly motivated by [3] as well as the research, as well as examples from large product development first author’s participation in [4]. Method and settings are pre- companies. The challenges have been discussed, with proposals sented in section II, while section III provides an overview of given how and when to tackle them.
    [Show full text]
  • Building Agents with Agents and Patterns
    Building Agents with Agents and Patterns L. Sabatucci (1), M. Cossentino (2,3), S. Gaglio (1,2) (1) DINFO - Dipartimento di Ingegneria Informatica, Università degli Studi di Palermo - Viale delle Scienze, 90128 Palermo, Italy (2) Istituto di Calcolo delle Reti ad Alte Prestazioni, Consiglio Nazionale delle Ricerche; ( 3 ) SET - Université de Technologie Belfort-Montbéliard - 90010 Belfort cedex, France [email protected]; [email protected]; [email protected] are strategies helping people to find their way through Abstract—The use of design patterns proved successful in complex situations by applying ready solution to solve lowering the development time and number of errors when difficult problems. Also they help in diagnosing, revising, producing software with the object-oriented paradigm. Now the and improving a group's work [11][14]. need for a reuse technique is occurring for the emergent agent paradigm, for which a great effort is currently spending in x Patterns improve software maintenance: a project methodology definitions. In this work we present our experiences obtained with patterns reuse is robust and simpler to in the identification, description, production and use of agents modify with respect to traditional projects [19]. patterns. A repository of patterns was enriched during these years so to request a classification criteria and a documentation Our definition of pattern come from traditional object- template useful to help user during the selection. oriented design patterns, revised for the agent paradigm. In particular we use an ontological approach, strongly influenced Index Terms—Multiagent systems, patterns, reuse models and tools. by the study of multi-agent system (MAS) meta-models.
    [Show full text]
  • Information Systems Foundations: the Role of Design Science
    Information Systems Foundations: The role of design science Information Systems Foundations: The role of design science Dennis N. Hart and Shirley D. Gregor (Editors) THE AUSTRALIAN NATIONAL UNIVERSITY E P R E S S E P R E S S Published by ANU E Press The Australian National University Canberra ACT 0200, Australia Email: [email protected] This title is also available online at: http://epress.anu.edu.au/is_foundations_citation.html National Library of Australia Cataloguing-in-Publication entry Author: Information Systems Foundations (‘The role of design science’) Workshop (2008 : Canberra, A.C.T.) Title: Information systems foundations : the role of design science / edited by Shirley D. Gregor and Dennis N. Hart. ISBN: 9781921666346 (pbk.) ISBN: 9781921666353 (eBook) Notes: Workshop held at the Australian National University in Canberra from 2-3 October, 2008. Includes bibliographical references. Subjects: Management information systems--Congresses. Information resources management--Congresses. System design--Congresses. Other Authors/Contributors: Gregor, Shirley Diane. Hart, Dennis N. Dewey Number: 658.4038 All rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying or otherwise, without the prior permission of the publisher. Cover design by Teresa Prowse Cover ilustration by Jackson Gable Printed by Griffin Press This edition © 2010 ANU E Press Contents Preface . ix Philosophical Foundations 1 . Identification-interaction-innovation: a phenomenological basis for an information services view . 3 Dirk Hovorka, Matt Germonprez 2 . How critical realism clarifies validity issues in theory- testing research: analysis and case . 21 Robert B. Johnston, Stephen P.
    [Show full text]
  • Values in Architecture a New Design Paradigm: Monist Submission 8Th April 2008 Ian Ritchie
    VALUES IN ARCHITECTURE A NEW DESIGN PARADIGM: MONIST SUBMISSION 8TH APRIL 2008 IAN RITCHIE INTRODUCTION I will try to explain why I believe we are at the beginning of new design paradigm – an important new movement in urbanism and architecture whose visual aesthetic will be multifarious – yet derived from a creative synthesis of science, ecology and ethics. This opposes recent architectural ’isms’, especially superficial and selfish architecture that gratifies itself on hyperbole to gain media self-aggrandisements. Intelligent, social and selfless architectural expression capable of the most marvellous and spiritually uplifting engineered structures must challenge turn-of-the century stunt-making architectural gymnastics. I will address five questions, 1. How does our intellectual heritage shape our actions? 2. What are we thinking about today? 3. How are we behaving as designers? 4. How should we design today? 5. How should we make things? HOW DOES OUR INTELLECTUAL HERITAGE SHAPE OUR ACTIONS? I want to step back 2,500 years to hint at the origins of our present discomfort of having to live with apparent contradictions, and in particular how homo sapiens sapiens has to face up to and find ways of taming a rampant homo faber and homo consumeris. The Greeks sought to reconcile the idea of ‘perpetual change and eternal becoming’ put forward by Heraclitus with that of the ‘unchangeable being’ of Parmenides. The outcomes were to have a profound impact upon the development of our western society. The paradox was resolved when the Greeks thought of the atom as the inert fundamental unchangeable ‘being’, yet which, moved by undefined forces (spirits) could combine with other atoms to generate change.
    [Show full text]
  • Meta-Design Paradigm Based Approach for Iterative Rapid Development of Enterprise Web Applications
    META-DESIGN PARADIGM BASED APPROACH FOR ITERATIVE RAPID DEVELOPMENT OF ENTERPRISE WEB APPLICATIONS Athula Ginige AeIMS Research Group, University of Western Sydney, Sydney, Australia Keywords: Enterprise web application development, Meta-design paradigm, Iterative development, Auto generation of web applications. Abstract: Developing enterprise software or web applications that meet user requirements within time and budget still remains a challenge. The success of these applications mostly depends on how well the user requirements have been captured. The literature shows progress has been made on two fronts; improving ways requirements are captured and increasing interaction between users and developers to detect gaps or miscommunication of requirements early in the lifecycle by using iterative rapid development approaches. This paper presents a Meta-Design paradigm based approach that builds on work already done in the area of Model Driven Web Engineering to address this issue. It includes a Meta-Model of an enterprise web application to capture the requirements and an effective way of generating the application. 1 INTRODUCTION (Standish_Group 1995; Sauer, Gemino et al. 2007; Escalona and Arago´n 2008). Today enterprises are depending heavily on web A good approach to find whether the developed based business applications to stay competitive. This system meets the user requirements is by giving the class of applications are broadly categorised as system to the users as quickly as possible and to get Enterprise Web Applications. Still there are many the users to use the system. If there was loss of challenges to developing Enterprise Web information in capturing the requirements or if the Applications within time and budget that meet user requirements have evolved since these were initially requirements (Krigsman 2008).
    [Show full text]
  • Architect and the Paradigms of Sustainable Development: a Review of Dilemmas
    Preprints (www.preprints.org) | NOT PEER-REVIEWED | Posted: 20 December 2017 doi:10.20944/preprints201712.0145.v1 Peer-reviewed version available at Sustainability 2018, 10, 100; doi:10.3390/su10010100 1 Review 2 Architect and the paradigms of sustainable 3 development: a review of dilemmas 4 Wojciech Bonenberg 1 and Oleg Kapliński 1* 5 1 Faculty of Architecture, Poznań University of Technology, 60-965 Poznań, Nieszawska Str. 13C, Poland 6 * Correspondence: [email protected]; Tel.: +48-61-6653260 7 Abstract: The article presents the architect's attitude towards the paradigms of sustainable 8 development. The place and role of the architect in the implementation of the multidimensional 9 process of sustainable design has been presented. Basic dilemmas and antinomies have been 10 presented. The analysis of architect's attitudes towards these problems was performed in various 11 contexts, examining the architect's awareness and his environment in view of changes under way. 12 The article draws attention to the status of knowledge, changes in design paradigms, legislative and 13 organizational requirements. The importance of architectural culture level, the need for training, 14 ways to support the implementation of new design paradigms through integrated activities have 15 been indicated. The research results regarding public awareness of architecture and sustainable 16 development are illustrated with examples from Poland. 17 Keywords: architect, sustainable architecture, paradigms of design, knowledge, society, Poland 18 19 1. Introduction 20 The results of developing sustainable architecture are founded on the symbiosis of ecologists 21 and architects. It began with these two professional groups proposing a change in functioning of the 22 building, i.e., a transition from a linear approach to a closed circulation plan.
    [Show full text]
  • The Impact of Introducing Artificial Intelligence Technology to Architecture and Its Leverage on the Concept of Design Automation
    THE IMPACT OF INTRODUCING ARTIFICIAL INTELLIGENCE TECHNOLOGY TO ARCHITECTURE AND ITS LEVERAGE ON THE CONCEPT OF DESIGN AUTOMATION by YASSER M. EL-QUESSNY B.Arch. Cairo University 1984 SUBMITTED TO THE DEPARTMENT OF ARCHITECTURE IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN ARCHITECTURE STUDIES AT THE MASSACHUSETTS INSTITUTE OF TECHNOLOGY June 1987 Copyright @ 1987 Yasser M. El-Quessny The author hereby grants to M.I.T. permission to reproduce and to distribute publicaly copies of this thesis document in whole or in part. ., / ! Signature o FAuthor -, qI -7r- Yasser M. El-Quessny Department of Architecture May 6, 1987 Certified by Eric Dluhosch Associate Professor of Building Technology Thesis Supervisor Accepted b Julian Beinart Chairman epartmental Committee for Graduate Students MASSACHUSETTS INSTITUTE OF TECHNOLOGY JUN 0 8 1987 LIBRARIES RotaD jh~jj I q .P I AUi IP~d~ * A. L11 * A1~ dAl&LUph- P.&6iJ j i~j~i ,i *d ii THE IMPACT OF INTRODUCING ARTIFICIAL INTELLIGENCE TECHNOLOGY TO ARCHITECTURE AND ITS LEVERAGE ON THE CONCEPT OF DESIGN AUTOMATION by YASSER M. EL-QUESSNY Submitted to the Department of Architecture on May 6th. 1987 in Partial Fulfillment of the Requirements for the Degree of Master's of Science in Architecture Studies ABSTRACT The problem addressed in this research is understanding the nature evolving and new technologies into the domain of architectural design and building technology. This thesis, essentially, is an exploration of the ways that "Artificial Intelligence" techniques may support systematic and rational architectural design and, by extension, the "Building Systems" process. The motivation for working in this area of research stems from the serious need to develop a new methodological design approach for architects.
    [Show full text]
  • Any Progress in Systematic Design?
    CAAD FUTURES DIGITAL PROCEEDINGS 1986 5 Chapter 1 Any progress in systematic design? A. H. Bridges 1.1 Introduction In order to discuss this question it is necessary to reflect awhile on design methods in general. The usual categorization discusses 'generations' of design methods, but Levy (1981) proposes an alternative approach. He identifies five paradigm shifts during the course of the twentieth century which have influenced design methods debate. The first paradigm shift was achieved by 1920, when concern with industrial arts could be seen to have replaced concern with craftsmanship. The second shift, occurring in the early 1930s, resulted in the conception of a design profession. The third happened in the 1950s, when the design methods debate emerged; the fourth took place around 1970 and saw the establishment of 'design research'. Now, in the 1980s, we are going through the fifth paradigm shift, associated with the adoption of a holistic approach to design theory and with the emergence of the concept of design ideology. A major point in Levy's paper was the observation that most of these paradigm shifts were associated with radical social reforms or political upheavals. For instance, we may associate concern about public participa- tion with the 1970s shift and the possible use (or misuse) of knowledge, information and power with the 1980s shift. What has emerged, however, from the work of colleagues engaged since the 1970s in attempting to underpin the practice of design with a coherent body of design theory is increasing evidence of the fundamental nature of a person's engagement with the design activity.
    [Show full text]
  • Object-Oriented Design
    Object-Oriented Design Objectives: • Introduction of the fundamental principles of object-oriented design • Introduction of object-oriented programming and object-oriented design in Java • Development of sound programming and design skills, problem solving and modeling of real world prob- lems from science, engineering, and economics using the object-oriented paradigm Learning Outcomes • Be able to design appropriate solutions to medium-scale problems using Java • Be able to apply the object-oriented design principles such as separation of concerns, responsibility analysis, and design by contract • Be able to apply object-oriented analysis and design practice to complex software systems • Be able to create and refactor medium-scale object-oriented programs in Java using appropriate design principles. • Be conversant with the most important design patterns 1 Schedule KnowledgeArea CoreHours ProgrammingLanguages 15 Parallel and Distributed Computing 6 Software Development Fundamentals 5 SoftwareEngineering 10 Week Topics CBOK 1 Principles of Design; Java Basics: Classes; PL/OOP Objects; Abstraction; Inheritance; Polymorphism; Class Hierarchy 2 OO Design Process and Tools: UML and SE/Software Design; IM/Data Modeling CRC 3 Engineering Design PL/Software Design 4 OO Design Principles: Separation of SE/Software Design; SE/Requirements En- Concerns; Collaboration Analysis; Design gineering; SDF/Development Methods; SD- by Contract F/Algorithms and Design 5 Development Methods: Testing OO SDF/Development Methods; IAS/Principles Systems; Code Review; Debugging; of Secure Design; SE/Software Processes Documentation; Agile 6 Generics; Collections; Iterators; PL/Basic Type Systems; SE/Software De- Frameworks sign; SE/Software Evolution; 7 Interface Design and Polymorphism; PL/OOP Inheritance in OO Design and Composition 8 GUI, Event-Driven and Reactive PL/Event-Driven and Reactive Program- Programming (MVC) ming; HCI/Programming Interactive Sys- tems 9 Design Patterns SE/Software Design 10 Parallelism vs.
    [Show full text]
  • Fashioning Sustainability: How the Clothes We Wear Can Support Environmental and Human Well-Being
    April S. McGrath Sustainable Fashion Spring 2012 Fashioning Sustainability: How the Clothes we wear can support Environmental and Human Well-being April Shannon McGrath ABSTRACT Attempts to promote sustainability in the clothing industry have focused on using eco-materials and more resource efficient production, however the scale of production and consumption has increased to levels where the benefits of technical improvements are reduced. Creating true sustainability in the fashion industry requires reducing the material flow of clothing, addressing both sustainable production and consumption. Clothing producers must shift the focus of their operations from exchange value to use value, which offers opportunities to increase garment quality and reduce quantity demanded through encouraging consumers to engage in fashion through wearing, not purchasing, clothes. Because the success of this approach depends on designing clothes able to satisfy both the functional and emotional values of consumers, I surveyed 18-25 year old individuals to evaluate what needs they perceive to be satisfying through shopping for and purchasing clothing, what psychological mechanisms induce increasing consumption, and what effects clothing qualities have on their clothing consumption. Respondents shopped for and purchased clothing to satisfy the needs for leisure, identity, affection, and participation, frequently went shopping out of impulse, and made purchases to experience stimulation through new clothing. They would later be dissatisfied with their clothing and mainly disposed of clothes because of quality-related problems. I provide fashion design solutions that can stimulate wearers’ personal involvement in generating satisfaction, breaking the cycle of passive acquisition of clothing and creating clothing that is meaningful to the wearer over a longer period of time: clothing that can sustain both environmental and human well-being.
    [Show full text]
  • ARCHITECTURE for FASHION How to Design Space to Embody the Brand Special Provisions for the Covid-19 Emergency
    2021 edition ARCHITECTURE FOR FASHION How to design space to embody the brand Special provisions for the Covid-19 emergency Due to the pandemic situation, in site of the courses taking place between September 2020 and February 2021, YAC has taken extra- ordinary measures for the best performance of its activities and to facilitate access to its courses, in accordance to safety criteria. As far as the 2021 programs are concerned, it is specified that: 1. based on merit, 5 scholarships are provided for each course (for a total of 30 scholarships in 2021) to fully cover the enrol- lment cost; 2. the course will also be open to students of architecture or simi- lar disciplines who have not graduated yet; 3. although the courses will be held in person, 10 students per course will have the opportunity to participate in the courses virtually, without any limitations in participating in the work- shop and in the placement service at the end of the course. Summary 04 YACademy 05 Where 06 Main partners 07 Reasons why 08 Lectures 09 Placement 10 Visits 11 Workshops 13 Become the protagonist 15 The course 16 Overview 17 Structure 18 Calendar 19 Program 20 Lessons 24 Lectures 27 Workshop 29 Visits 30 Placement 36 Rules 3 YACADEMY The greatest innovation in postgraduate education YAC is an association which promotes architectural competitions aimed at fostering culture and design research. Over the years, YAC has broadened its experience of work and collaboration with the main architectural firms of contemporary architecture, dealing with diverse and numerous topics of architectural design.
    [Show full text]