Abstract A Complete Guide to the Future

合集下载

ABSTRACT

ABSTRACT

Semantic Web Services: description requirements and current technologiesRubén Lara Holger Lausen Sinuhé Arroyora@uibk.ac.at usen@uibk.ac.at sinuhe.arroyo@uibk.ac.atJos de Bruijn Dieter Fenseljos.de-bruijn@uibk.ac.at dieter.fensel@uibk.ac.atUniversität Innsbruck/Technikerstrasse, 136020, Innsbruck, AustriaABSTRACTSemantic Web Services aim at providing a new level of functionality on top of the current Web and current services, by enabling automatic discovery, composition, invocation and interoperation of Web Services. Different efforts are addressing some of the requirements to enable such next generation services, with different degree of success. Nevertheless, to achieve the main goals addressed by Semantic Web Services, an appropriate semantic description, supporting automation of discovery, composition, invocation and interoperation, must be defined. In this paper, a set of requirements on the information a Semantic Web Service must expose in order to fulfill these major objectives is presented. These requirements are related to the different initiatives in the area, and proposals for useful extensions and combinations of these efforts are discussed.Categories and Subject DescriptorsH.3.5 [Information Storage and Retrieval]: Online Information Services – web-based services, commercial services.General TermsStandardization, Languages.KeywordsWeb services, semantics, semantic web, semantic web services, semantic web services description, service ontology, WSMF, DAML-S, BPEL4WS, BPML, WSCI. 1.INTRODUCTIONWeb services extend the Web from a distributed source of information to a distributed source of service. Semantic Web has added machine-interpretable information to Web content in order to provide intelligent access to heterogeneous and distributed information. In a similar way, Semantic Web concepts are used to define intelligent web services, i.e., services supporting automatic discovery, composition, invocation and interoperation. This joint application of Semantic Web concepts and web services in order to realize intelligent web services is usually referred as Semantic Web Services.Due to the huge potential impact of semantic web services (SWSs for short) in areas like enterprise application integration and electronic commerce, several efforts, both academic and industrial, have jumped into the arena with the purpose of bringing semantic web services to its full potential. These initiatives are addressing different aspects of the requirements needed to realize semantic web services. They are sometimes complementary, but conflicts between the different approaches also appear. These efforts try to improve current web service technology around SOAP, WSDL and UDDI, which provides very limited support for real automation of services.One of these initiatives is the Web Services Modeling Framework (WSMF), which aims at providing an appropriate conceptual model for developing and describing services and their composition, based on the principles of maximal decoupling and scalable mediation [8].Another running project is DAML-S, a DARPA effort to describe an ontology of web services with the objective of making web services computer-interpretable and hence enabling discovery, invocation, interoperation, composition, verification and execution monitoring of services [5].BPEL4WS [1] and BPML [4]/WSCI [20] have similar functionalities, both aiming at defining a language to describe process models, as well as public process interfaces and servicechoreography support, to provide conversational and interoperation means for web services.Regarding W3C activities in the area, its initiative to define a setof requirements on service description pays little or no attentionto semantic support, hence offering a weak basis to make automation of functionality possible [21].Among the presented approaches, WSMF is the one with the widest scope, as it describes a full-fledged framework with the purpose of making the use of semantic web services a reality. Nevertheless, a concrete realization of the conceptual requirements it presents is still under development in the contextof the EU-funded project SWWS1. DAML-S focuses on providing semantics to web services descriptions, although some caveats, limitations and lacks have been identified within the proposed ontology. The initiatives focusing on the modeling of business processes, BPEL4WS and BPML/WSCI, do not incorporate any semantics to their modeling primitives, neither for private nor for public processes, thus providing limited support for dynamic discovery, composition and invocation [18].Whatever the approach and intended purpose, every initiative relies on a specific way to describe web services. Discovery, composition, invocation and interoperation strongly depend on how services are described and exposed for subsequent use. The way a service is described determines to what extent other constructs can provide automation support.WSMF proposes a service description framework which fulfillsthe requirements for semantic web services. Nevertheless, it needs some refinements and a specific grounding of the proposed description concepts. Therefore, the approach presented in this paper takes this framework as a starting point to determine the requirements for a meaningful service description.In this paper, and taking WSMF as a basis, we present a set of requirements for web services description and present grounding guidelines considering the features provided by current efforts. The paper is structured as follows. In section 2, capabilities are presented as the central description support for discovery and composition. Section 3 presents description needs for interoperation of services. Section 4 addresses the concrete grounding of services for invocation. In Section 5, other issues such as service compensation are discussed. Finally, section 6 presents conclusions and future work.2.Capabilities and description requirementsfor discovery and compositionAutomatic discovery and composition of services are probably the biggest challenges Semantic Web Services are facing. Finding a suitable way to put these two features together has become one ofthe key points to convert the Web in a distributed source of computation, as they enable the location and combination of distributed services to perform a required functionality.Automatic Web service discovery involves automatically locating Web Services that provide a particular functionality and that adhere to requested properties [11]. To provide such an automatic1 Semantic Web enabled Web Services. / location, the discovery process should be based on the semantic match between a declarative description of the service being sought, and a description of the service being offered. This problem requires not only an algorithm to match these descriptions, but also a language to declaratively express the capabilities of services [12].Furthermore, composition of Web Services requires something more than representing combinations of services where flow and bindings to the services are known a priori. It also must allow the combination of services to provide a given functionality when a request can not be fulfilled by using available services individually [15].Discovering and composing services needs an approach based on semantic descriptions, as the requester required functionally has to be expressed in a high-level and abstract way to enable reasoning procedures.Composition and discovery work together in different ways. The following examples depict different scenarios where location and combination of services take place:- A user wants to book a flight from Innsbruck to Madrid, for next Wednesday and with a fixed maximum price. With this information, discovery will look for a service accepting origin, destination, date and maximum price and providing a seat for an appropriate flight. In the case where such a service is not available, but only a service to look for flight information given trip data and another service to book a flight given flight information can be found, combination must be performed. By combining these two services, the requested functionality can be provided.- A travel agency models its business process to provide a “make a trip” service. The agency explicitly models control and data flow between the different services involved (book a flight, book a hotel, book a car…). In this case, composition is explicitly modeled at provider side. But in the situation where the agency does not want to limit the book flight service to a given company, a high-level description of the required service must be provided in the process model to enable dynamic discovery (and composition if not a single service can fulfill the requirements) of the best available service to book the flight based on requester criteria.These two examples illustrate the main roles of composition and discovery to provide a required functionality. Although these use cases can be modified and extended in a number of ways and different examples can be depicted, all of them rely on a high-level description of the functionality being sought.2.1Capability descriptionThe required high-level functionality description can be viewed as the capability of the service. Different services can provide the same capability, e.g., book a flight, and the same service can provide different capabilities, e.g., search a book and search a movie.In this sense, capabilities must be naturally described separately from specific service descriptions [8] for several reasons:- Express generic functionalities: Several services offering the same functionality but with different specific refinements should be related to the same generic high-level capability. Refinements can then be specified by different services. This approach is related to concepts taken from Problem Solving Methods research, and it inherits some of their advantages, as the ones highlighted in [7] and [9].- Use different terminologies: Refinements done by a given web service can be expressed using a different terminology from the one used to describe their capability, thus increasing flexibility, as requiring the use of the same terminology is sometimes unrealistic.- Allow a given service to present two different capabilities while exposing only one service description.- Support discovery process: Discovery first needs capability descriptions. Refinement based on actual input, output and requirements is performed in subsequent steps. Thus, separating capabilities and referring service refinements to them establishes a natural link to the discovery process.Declarative means to define capabilities, as well as specific service refinements and the link between refinements and capabilities are needed. This description must allow reasoning about the information presented by the service. Several works in the area use subsumption reasoning, i.e., determining whether a given concept is more general than another, to support discovery and composition, either looking for just one service providing the required functionality [12] or composing different services [2], like in the travel agency example exposed before.To support dynamic discovery and composition, a capability must include the following information:- Pre-conditions: High-level inputs to the service together with conditions over these inputs. These inputs are concepts of a given domain ontology. Each pre-condition will include an identifier to allow future references. High-level input means that more specific concepts in the ontology can be found, e.g. indicating payment information as a pre-condition, instead of credit card information or bank information or even data types. If a too specific concept is given as a pre-condition, then the capability will hardly express generic functionalities. It is important to notice that the pre-conditions of a given capability are not independent of each other, as they all define the functionality expressed in the capability.- Post-conditions: High-level results of the service execution together with conditions over these results. The results are also concepts of a given domain ontology. Identifiers are also defined for post-conditions, and as with pre-condition, they cannot be considered independent, as the removal of one of them changes the functionality expressed by the capability.- Textual description: To allow human interpretation.- Services: References to the services presenting the described capability.- Identifier: Identifier to allow references to the capability. Pre and post-conditions define the capability of the service in terms of the information needed to use the service and the results of its invocation. Describing capabilities by expressing their functionalities in terms of required high-level input and high-level results covers the following requisites:- Modeling a process at design time. In this case, the workflow and data flow is defined a priori, at least partially. Thus, the declaration of the use of a capability must enable the specification at design time of the input and the result of the service. This information is needed to model data and control flow. Nevertheless, this information must be kept general enough to describe generic service functionalities, allowing dynamic location and combination of services. For example, in a business process using a service to buy some goods and another service to ship them, the result of the buy_goods service must be used by the ship_goods service, and the required data and control flow must be designed. Other approaches like relating the capability to a task ontology describing possible requested functionalities cannot be used in this context, as they don’t provide enough information to define flow at design time.- Dynamic discovery: Subsumption algorithms, as the ones presented in [12] and [2] are supported by relating pre and post-conditions to the appropriate domain ontology and by using the specific services refinements, presented in the next subsection.- Dynamic composition: Combination of services to fulfill a given functionality can be performed by expressing functionality in terms of pre and post-conditions, as described in [2].- n to m mappings: Describing a capability using pre and post-conditions and not including low-level input and output information, enables n to m mappings between capabilities and services, thus allowing the description of generic functionalities and the declaration of different generic functionalities by the same service. Lower level inputs and outputs must not be included in the capability description as this would prevent these features and would imply several modeling problems, as explained in [14].Textual information is used to let the human user browse capabilities. Capabilities must be understandable by humans and machines [13], as a process designer may need to search suitable capabilities to include in a process model at design time. References to the services presenting the capability are specified to enable the location of refinements of the described generic functionality, i.e., the location of specific services during discovery and composition process.2.2Capability refinementsOnce a capability is described, different services presenting this capability can refine it. In this way, specific requirements, constraints and results of an individual service can be expressed. To avoid redundancy, the service will only explicitly describe the refinements it introduces, not repeating the information already enclosed in the capability description. Figure 1 depicts the relationship between capabilities and services:Figure 1. Relationship between capabilities and servicesBy defining the service refinements, a complete high-level description of the input required by the service and the result of its execution is given. Nevertheless, actual input and output data is needed to express the low-level details of service functionality. These inputs and outputs are naturally related to pre and post-conditions, as they constitute the realization in terms of data of high-level conditions.Therefore, the information to be exposed by an individual service to refine generic functionalities is the following:- Identifier: information for service references.- Textual description: human-understandable information.- Capability references: references to the capability or capabilities presented by the service.- Pre-condition refinements: pre-conditions refining the ones presented by the capability. If it is a refinement of one or more pre-conditions defined in the capability, a reference to them will be included. This is the case of a service referring to a capability requiring general payment information as pre-condition, while the service accepts only information about credit card. Also new pre-conditions are allowed, and identifiers for every new pre-condition or refinement must be included. In general, pre-condition refinements reflect the strengthening of pre-conditions. - Inputs: actual input data information. Inputs are grouped and referred to the pre-condition the group realizes, either from the generic capability or from the service refinements. To allow polymorphism, different sets of inputs can be defined for the same pre-condition. For example, in the case of a service accepting different ways of payment (credit card, bank transfer…), different input data is required depending on how the requester wants to pay. However, it is natural to define only one interface for the service. Therefore, this service will have a pre-condition “payment information”, with different sets of inputs associated to it for credit card payment, bank transfer payment, etc. Which specific set of inputs is used will be decided at run-time.- Post-condition refinements: refinements or new post-conditions. They are defined following the same mechanism as pre-conditions. Refinements of existing post-conditions reflect the weakening of the capability post-conditions, whereas adding new ones reflects the strengthening of the capability post-conditions- Outputs: actual output data, described in the same way as inputs.In figure 2 the refinement of pre-conditions and how the inputsrealize them is depicted:Figure 2. Pre-conditions refinements and pre-conditionsrealizationIn the figure above, service pre-condition 1 refines the first pre-condition defined in the capability. Inputs group 1 gives actual data for the refined pre-condition. Service pre-condition 2 is a new pre-condition, not existing in the capability exposed, and realized by inputs group 2. Capability pre-conditions 2 and 3 are not modified, so inputs groups 3 and 4 directly refer to these pre-conditions. As explained before, the refinement of more than one pre-conditions together is also possible.By defining capabilities, refinements and actual input and output data using appropriate ontologies, service description exposes enough information to enable automatic discovery and composition. Refinements and information about input and output data can also be used to locate a required service, as well as for composition, thus providing appropriate expressivity power for the requester. Therefore, the requester is not limited to locate and combine generic capabilities, but he can also express more detailed needs.2.3Relation to current technologiesAlthough the requirements presented above for describing service functionalities reflect the ideas contained in the WSMF approach, they extend and refine the description means outlined in the framework.Once these extensions and refinements are defined, they must be expressed using an appropriate ontology to provide semantics to the information exposed by the service. In this sense, neither BPEL4WS nor BPML/WSCI include any suitable mechanism, as they do not use similar concepts to capabilities or refinements and they do not add any semantic information.Therefore, DAML-S is the only potentially reusable work to define the desired ontology. The existing ontology of services, currently at version 0.9, includes profiles and service models, which purposes are similar to the ones of capabilities and refinements respectively. However, the DAML-S ontology presents serious limitations if left as it is. First, input and output is included in the profile, preventing polymorphism and n to m mappings between profiles and specific service models. Second, pre and post-conditions (pre-conditions and effects in DAML-S terminology) of the concrete service model are not related to the ones presented at the profile. Third, inputs and outputs are not related to pre-conditions and effects. Fourth, using different sets of inputs and outputs for a given pre or post-condition is not allowed. All these limitations imply service modeling problems, as analyzed in [14].In conclusion, the DAML-S ontology can be used as a basis to define semantics for service functionality descriptions, but it must be considerably changed and extended to present the properties and requirements presented in this section.3.Interoperation and current technologiesOne of the main purposes of web services is the automation of application integration within and across organizational boundaries. This implies necessarily the need for interoperation between services. This interoperation can be between services in an organization or crossing different organizational boundaries. To ensure automatic interoperation, description means must be defined declaratively using explicit semantics.Business collaborations require long-running interactions driven by an explicit process model [17]. Thus, a service must explicitly model its business process which will contain decision mechanisms for the execution of the service. But following one of the main principles of WSMF, no internal details of the organization business logics should be made publicly visible. Therefore, while a process model and its data and control flow must be designed explicitly to ground the execution and public behavior of a given service, it must not be exposed. Nevertheless, the external behavior of the service in terms of message interchange must be made public in order to enable automatic interoperation of the service with any other service. In this sense, the public description of a service must include a conversational interface which allows interoperation while not revealing any private detail.Figure 3 illustrates the relationship between the private process model and the public process model in terms of visibility. Private process model grounds the public model and drive its actualbehavior, but only the public process model is made public.Figure 3. Public and private process models visibility2 Although the main purpose of this paper is to define public description requirements for semantic web services, private process modelling deserves some analysis given its close relationship with public process models.Concerning private process models, both BPEL4WS and BPML offer a rich set of primitives to model the workflow of the service, supporting composite processes based on web services. In [19] and [16] a pattern based analysis of both languages can be found. This work analyzes BPEL4WS and BPML/WSCI using a set of workflow and communication patterns to clarify if they provide sufficient modeling primitives for any possible abstract situation. The result is similar for both, as they support most of the patterns described, either directly or using workarounds.Both approaches clearly separate private and public process models. BPEL4WS introduces the concept of executable process for private processes and abstract process for public processes. Similarly, BPML is used to model private processes while WSCI is concerned with the choreography and public interoperation of services. However, as stated before, both languages lack semantics to expose its public interface as well as the possibility of expressing the use of a service within the private process model in terms of the capability it presents.DAML-S must be analyzed for this purpose, as it is the only initiative including explicit semantics. However, an appropriate service ontology requires a richer set of process modeling primitives, as the concepts described in the DAML-S process model are not powerful enough to support some of the communication and workflow patterns required. And what is more, DAML-S does not distinguish between private and public processes, allowing internal details to be exposed via a composite process. Thus, although DAML-S provides ontological support for service modeling, its limitations prevent his direct use to publish interoperation information.Our proposal is to add semantics to either BPEL4WS or BPML/WSCI modelling mechanism for conversational interface 2 From the presentation “Principles of integration: Are Web Services heading in the right direction?”, Christoph Bussler, Innsbruck 19.05.2003and integrate these semantics into the service ontology. That means replacing the process model in DAML-S by a BPEL4WS or BPML/WSCI-based model, including the necessary public information to expose the behaviour of the service in terms of message interchange.Summarizing, the public description requirements for interoperation, which will be grounded in the way previously discussed, are the following:- External behavior of the service in terms of message interchange and message sequencing must be described.- No information about internal business logics should be exposed.- The public process exposed must be grounded by an appropriate private process, which must allow the use of capabilities and refinements at design time to specify the service to be used and its dynamic location and composition.Deciding whether BPEL4WS or BPML/WSCI can be used to fulfill these requirements is out of the scope of this paper. In any case, they must be semantically grounded and extended to use generic capabilities and refinements at design time in the way described in the previous section, and included in the service ontology with the necessary extensions.Also the use of Abstract State Machines (ASMs) [3] to model business processes is being analyzed, as they present several interesting properties, namely: express functionally complete but abstract description that can be understood by a human reader, define every system features as far as it is semantically relevant for the required functionality and contain only what the logic of the problem requires for the system behavior. Furthermore, the grounding model is implemented following a refinement process, trough a hierarchy of intermediate models, and ASMs also allow structuring the system horizontally by building it from components with abstract definitions of behavior and interactions trough interfaces.Though ASMs properties make them suitable for its use to describe service conversational interfaces and their corresponding groundings, none of current efforts use ASMs. As this paper tries to ground description requisites using existing technologies or extensions and combinations of them, introducing ASMs is out of the scope of this paper, although it will be part of future work.4.Service invocationThe requirements presented so far deal with the expression of declarative functionality and the publication of conversational interface. This information will support discovery, composition and interoperation, but declarative means to enable invocation of a given service are still missing in the picture.Invocation information presented by a given service must be agnostic in principle with respect to the specific technologies which will ground it. Nevertheless, details must be available at run-time for the service requester in order to perform a real invocation. These details must relate every aspect of the declared functionality to a ground mechanism, e.g., SOAP on HTTP. Grounding mechanisms are provided within BPEL4WS, BPML/WSCI and DAML-S, although most of the examples available are focused on WSDL and SOAP grounding. Considering the need for an effective and platform independent invocation, input and output data, messages and message sequencing must be declaratively related to a specific technology and exposed in the public service description. In this sense, service ontology must include concepts to express this relationship, as the “grounding” concept defined in DAML-S ontology.Due to the semantic link to the required grounding, DAML-S should naturally be used as a starting point as it already contains a declarative grounding mechanism [6]. Nevertheless, the DAML-S ontology relates grounding directly to a given service, hence not supporting polymorphism and encountering problems while grounding a real service, as the ones highlighted in [14]. As a consequence, extensions to DAML-S grounding mechanism are to be introduced in order to support the grounding of the description means introduced in sections 2 and 3. Different groundings for every set of inputs must be defined, and the use of a concrete grounding should be decided at run-time. Furthermore, conversational interface, not defined in DAML-S ontology, must be related in a similar way to a concrete technology.However, the basic DAML-S grounding mechanism can be reused and refined make it usable for automatic invocation. After the outlined refinements are performed, services presenting all the properties required in this paper can be grounded using such ontology.pensation and other requirementsUntil now, the optimistic assumption “everything works well” has been implicitly made. No errors were considered, although they appear in computer systems more frequently than desired. Due to this fact, an intelligent service description must take into account possible errors and how to deal with them.For this purpose, error data must be described in addition to input and output data. A SWS description should include one or more error ports, to provide error information to the requester potentially at different points of execution. These error ports must refer to an appropriate ontology in the same way inputs and outputs do. Error ports can be thought as special types of outputs, so the same requirements apply to them, although they are not referred to any pre or post-condition. Error ports, as well as inputs and outputs, will be used in the same way in the definition of the conversational interface, establishing at which point of execution a concrete input is required, when outputs are delivered to the requester, and where specific error ports may report error information. These ports will also be included in the service grounding information.In the context of semantic web services, dynamic location and combination of services implies that no a priori assumptions can be made about the duration of a service invocation. For this reason, the use of traditional ACID transactions [10] to deal with errors is not useful in this context, as they require blocking resources for an undefined amount of time. Therefore, the concept of compensation has appeared to substitute classic transactions. Compensating a service means to invoke one or more services to undo the actions of the former one. For instance, a service to book。

考博士英语试题及答案

考博士英语试题及答案

考博士英语试题及答案一、阅读理解(共40分)1. 阅读下列短文,然后根据短文内容回答问题。

(每题2分,共10分)[短文内容略](1) What is the main idea of the passage?(2) What does the author suggest about the future of technology?(3) Why are some people hesitant to adopt new technologies?(4) What is the role of education in technological advancement?(5) How can individuals contribute to the development of technology?2. 阅读以下文章,然后根据文章内容选择最佳答案。

(每题2分,共10分)[文章内容略](1) A(2) B(3) C(4) D(5) E3. 阅读以下文章,并根据文章内容回答问题。

(每题3分,共20分) [文章内容略](1) What is the primary purpose of the article?(2) How does the author describe the impact of globalization?(3) What are some of the challenges faced by developing countries?(4) What solutions does the author propose to address the issues?(5) What is the author's conclusion regarding the futureof globalization?二、词汇与语法(共30分)1. 根据句子意思,选择正确的词汇填空。

新核心综合学术英语教程Unit4解析

新核心综合学术英语教程Unit4解析

Language Points
■ Words and Phrases:
• physician-assisted suicide 安乐死 • mean incidence 平均概率 • amount to 总计 • ALS=amyotrophic [eɪmaɪə'trɒfɪk] lateral sclerosis [sklə'roʊsɪs] 肌
Language Points
■ Sentences:
• 5. In the current study it was found that the pain factor remained at the 25% level, showing no significant differences between the 5-year period before and after implementation of the Euthanasia Act, albeit [ˌɔːl'biːɪt] that in recent years pain as a reason for a request seemed to decrease again. (Line 66-69)
Language Points
■ Sentences:
• 4. It should be noted that implementation of the Act took place after extended political and media discussion and therefore, may have been a formalization of an already existing practice rather than a turning point in attitudes. (Line 55-57)

学术英语(社科)Unit 5

学术英语(社科)Unit 5

Unit 5
Sociology Matters
Text A
Critical reading and thinking of Text A
Text Analysis 6 McDonaldization
the process through which the principles of the fast-food restaurant have come to dominate certain sectors of society, both in the United States and throughout the world
Unit 5
Sociology Matters
Text A
Critical reading and thinking of Text A
Text Analysis 2 Cultural universals
adaptations to meet essential human needs, such as people‟s need for food, shelter, and clothing
Unit 5
Sociology Matters
Text A
Difficult sentences

The cultural practices listed by Murdock may be universal, but the manner in which they are expressed varies from culture to culture. (Para.3) → These cultural practices in Murdock‟s list are common to many societies, but these practices are carried out in ways that differ greatly among different cultures.

学术英语写作Unit-5----Abstract

学术英语写作Unit-5----Abstract
allow readers to decide whether they want to read the report, article, or paper.
Informative abstraห้องสมุดไป่ตู้ts
An informative abstract provides detail about the substance of a piece of writing because readers will sometimes rely on the abstract alone for information. Informative abstracts typically follow this format:
Unit 5 Abstract
What is an abstract? Types of abstracts Why write an abstract? What should the abstract include? How do you write an abstract? What is the style of an abstract? An outline for writing an abstract Common problems in writing an abstract Difference between an abstract and an introduction The Tricks, Conclusion of the lecture
3. evaluative abstracts: comment on the worth of the original are included.
Difference between descriptive abstracts and informative abstracts

学术英语写作Unit 5 Abstract

学术英语写作Unit 5    Abstract

What is an abstract?
An abstract is a stand-alone statement that briefly conveys the essential information of a paper, article, document or book; presents the objective, methods, results, and conclusions of a research project; has a brief, non-repetitive style. An abstract is a summary of a body of information. Sometimes, abstracts are in fact called summaries-sometimes, executive summaries or executive abstracts. There are different kinds of abstracts— your technical report uses two types: the descriptive abstract and the informative abstract.
Descriptive Abstracts
In this type of abstract, you don't summarize any of the facts or conclusions of the report. The descriptive abstract does not say something like this: Problem: Based on an exhaustive review of currently available

211245397_理论进化的视角下文化艺术赋值产品的新思考

211245397_理论进化的视角下文化艺术赋值产品的新思考

第44卷 第10期 包 装 工 程2023年5月 PACKAGING ENGINEERING 297收稿日期:2022–12–20基金项目:教育部产学合作协同育人项目(202102298002);南京林业大学2021年度教学质量提升工程美育专项教学改革(2021-ZXGG-012);南京林业大学2022年度教学质量提升工程创新创业项目专项教学改革;南京林业大学家居与工业设计学院院级思政示范课程建设项目(第二期);南京艺术学院2019年教改研究课题(JKWQQPY19);国家留学基金委艺术人才培养计划作者简介:刘俊哲(1981—),男,博士,讲师,主要研究方向为工业设计、地域文化设计。

理论进化的视角下文化艺术赋值产品的新思考刘俊哲,王倩,刘彦(南京林业大学 家居与工业设计学院,南京 210037)摘要:目的 从理论进化的角度梳理艺术产品、现代产品与传统手工艺产品三者的联系与差异,并总结理论模型。

方法 通过将选定的具有代表性的艺术产品、现代产品与传统手工艺产品案例,在技术的先进性、设计思想的先进性、艺术思想的先进性三个维度进行考察和比较。

结果 艺术产品、现代产品与传统手工艺产品三者在技术的先进性、设计思想的先进性、艺术思想的先进性三个维度存在显著差异。

结论 与传统手工艺产品相比,现代产品在技术的先进性、设计思想的先进性、艺术思想的先进性三个维度有较高的得分,因此更适用于现代生活的需求。

而与现代产品相比,大多数文化艺术赋值产品仅在艺术思想的先进性方面有较高的得分,在技术的先进性、设计思想的先进性两个方面没有先进性的表现。

文创产品、文旅产品同属文化与艺术赋值产品,需要在艺术思想、技术、设计思想三个维度进行富有先进性的开发与创新。

关键词:文创产品;文旅产品;理论进化;艺术产品;手工艺产品中图分类号:TB472 文献标识码:A 文章编号:1001-3563(2023)10-0297-09 DOI :10.19554/ki.1001-3563.2023.10.032New Thoughts on Cultural and Artistic Valuation Productsfrom the Perspective of Theoretical EvolutionLIU Jun-zhe , WANG Qian , LIU Yan(College of Furnishings and Industrial Design, Nanjing Forestry University, Nanjing 210037, China)ABSTRACT: The work aims to comb the relationship and differences among art products, modern products and traditional handicrafts from the perspective of theoretical evolution and summarize the theoretical model. The selected representative samples of art products, modern products and traditional handicrafts were compared and discussed in the three dimensions of advanced technology, advanced design idea and advanced artistic thought. There were significant differences among art products, modern products and traditional handicrafts in the three dimensions. Compared with traditional handicrafts, modern products get higher scores in the three dimensions of advanced technology, advanced design idea and advanced artistic thought and are more suitable for the need of modern life. Compared with modern products, most cultural and artistic valuation products only get higher scores in advanced artistic thought, but do not display excellent performance in advanced technology and advanced design idea. Cultural and creative products and cultural tourism products both belong to cultural and artistic valuation products, requiring progressiveness development and innovation in the three dimensions of advanced technology, advanced design idea and advanced artistic thought. KEY WORDS: cultural and creative product; cultural tourism product; theoretical evolution; art product; handicraft298 包 装 工 程 2023年5月哲学家和艺术家长期以来一直在争论艺术的定义。

《英语学术论文写作教程》教学课件 Unit 6 Abstract

《英语学术论文写作教程》教学课件 Unit 6 Abstract

Abstract
Questions: 3. What tenses are used in this abstract? How are these
tenses used?
Past tense and present tense are used in this abstract. The opening statement and the purpose of the research are in the present. The past tense is used in the discussion about the methodology, results and conclusion.
英语学术论文写作教程
Unit 6 Abstract
Overview
An abstract is an overview of a research paper. It always appears at the beginning of the paper, acting as the point-of-entry. An abstract may explicitly or implicitly give information about Research Background, Introduction, Objectives, Methods, Results, and Conclusions, providing readers with brief preview about the whole study, upon which many readers depend to decide whether to read the entire paper or not. Therefore, as your first readers, publishers of some journals may determine a rejection of your manuscript by skimming the abstract alone.

高效落实“四基和四能”,打造“四会”课堂

高效落实“四基和四能”,打造“四会”课堂

2020年06月DANGDAIJIAOYANLUNCONG高中学生在进行高三数学复习时,由于面临高考升学的压力,在复习课常常采取“题海战术”,往往的复习模式就是做题讲题,“四基”落实很低效,忽略了学生“四会”能力的培养。

因此,为了打造“四会”课堂教学模式,就必须高效落实“四基”目标,让数学复习保持正确的方向和思路,进而为学生数学学习成就的提升奠定良好的基础。

一、明确目标,确保“四基”落实高三的数学复习,由于会涉及到学生高中数学学习阶段的所有知识和内容,所以总复习的涵盖面非常广,加上每个学生的学情又不尽相同,所以如何制定科学的复习教学目标和复习教学方案就显得尤为重要。

首先,数学教师在高三学生数学复习目标的制定上,一定要以“四基”目标的高效落实为前提,基于核心素养为导向,即培养学生能获得适应社会生活和发展所必须的数学基本知识、基本技能、基本思想、基本活动经验。

其次,数学教师在制定具体的复习课教学目标时,要有层次性和针对性,过于单一的复习课教学目标显然无法面向全体学生,也很容易造成部分同学的掉队。

如“数列”这一章节的复习中,等差数列和等比数列的概念、性质、通项,求和公式等是最基本的复习内容,也是每个学生都必须掌握的基础目标;让学生在课前自主列出思维导图,梳理知识网络,优化知识结构,通项公式的推倒过程、思想方法、具体应用则是复习的重点,也是落实“四基”目标的重要环节,所以在复习课上只有明确了“四基”目标,并制定正确的复习方案,才能确保学生能够依据数列知识发现问题、提出问题、分析问题、解决问题,促进“四会”课堂教学模式的有效构建。

二、少讲精练,确保“指引的高效在高三数学复习课上,由于复习课的授课时间相对有限,所以数学教师要确保学生是复习课上的“主人”,自身要更好的充当复习课的教学组织者与引导者的角色,不能一味开展灌输式、面面俱到式的复习课教学,做到“少讲精练”,这样才能将更多的教学主动权交给学生,让学生拥有一定的自主复习的空间。

专业英语写作Chapter 6 Abstract Writing

专业英语写作Chapter 6 Abstract Writing
• 2) For readers to decide if they need to read it or not---sorting function--overview of the article.
The format of an abstract for journal papers
• The Title The title of your abstract should be the same as the title of your scientific paper. The Body of the Abstract The abstract is a very brief overview of your entire study. It tells the reader WHAT you did, WHY you did it, HOW you did it, WHAT you found, and WHAT it means. The abstract should briefly state the purpose of the research (introduction), how the problem was studied (methods), the principal findings (results), and what the findings mean (discussion and conclusion). It tends to be descriptive but concise--say only what is essential, using no more words than necessary to convey meaning. The Key Words Several key words are used for the bibliographic (书目的) information needed by libraries and information retrieval systems for cataloguing

实践活动课程的规范化与常态化分析

实践活动课程的规范化与常态化分析

1引言实践活动课程是素质教育中的一大亮点,定期组织学生进行实践,给学生安排一定的学习任务,在实践活动课程中,构建综合实践活动课程教育体系,以规范化、常态化的方式来引导学生,促使学生及时了解实践内容与实际生活的联系性[1]。

2实践活动课程的相关介绍综合实践活动课程指的是,在教师的指导下,学生主动参与到综合性的学习过程中,将学习内容与社会实际紧密联系起来,从而实现对综合性知识的学习与应用。

实践活动课程的主要特点为:体验性、实践性、延伸性[2]。

体验性:综合实践活动课程强调以学生经验、社会实际为主,以解决实际问题为核心,在课程教学中,要定期开展有针对性的体验活动,确定体验活动主题,在此基础上,实现对课程资源的有效整合;实践性:注重对学生实践性学习方法的指导,以知识传授为基础,组织不同形式的社会实践性教育活动,学生认真进行调查、操作,从而培养学生的实践能力;延伸性:实践活动课程是对课堂教学内容的有效延伸,积极向着生活领域、社会领域延伸,将自然、社会与生活联系起来,实现对学习领域的进一步拓展。

3实践活动课程规范化与常态化构建中存在的主要问题3.1缺乏对课程资源的及时整合实践活动课程涉及到多个学科,要想全面掌握实践活动课程知识,需要将相应的课程资源及时整合,然而在实际调查中发现,部分教师没有及时将相应的课程资源整合起来,缺乏对实践活动课程知识的有效整合。

日常教学中,不能及时借助互联网、计算机等现代技术来搜集相关信息,因为掌握的课程知识有限,因此影响到实践活动课程的有效实施[3]。

3.2缺乏实践机会学生缺乏实践活动课程知识学习的机会,依旧是靠课堂上的理论知识来学习实践活动课程内容,学习到的专业知识有限,一大部分学生仅仅掌握的是实践活动课程理论方面内容,自身缺乏一定的实践能力,不能在课程知识学习中有效培养自身的实践性,这不仅影响学生自身发展,还对整体教育工实践活动课程的规范化与常态化分析Analysis of Standardization and Normalization of Practical Activity Course罗思研(盘锦市示范性综合实践基地,辽宁盘锦124000)LUO Si-yan(PanjinDemonstrative ComprehensivePracticeBase,Panjin124000,China)【摘要】实践活动课程作为新课程改革中的主要内容,与学生实际生活有着紧密联系,为增长学生的实践经验,要注重对实践活动课程的有效改革,掌握其规范化与常态化的特征,强化综合实践,引导学生以创新型的学习方式来了解实践活动课程内容,及时进行实地调查,进一步强化实践活动课程教育效果。

加强语法教学, 提高英语作文水平

加强语法教学, 提高英语作文水平
Key words: traditiห้องสมุดไป่ตู้nal grammar; grammar for communication; comparison between English and Chinese grammar
最新頒佈的《大學英語教學大綱》(以下簡稱《大綱》)指出:大學英語教學目的是,培養學生具有較強的閱讀能力,一定的聽、說、寫、譯能力,使他們能夠以英語為工具交流資訊。......以適應社會發展的需求[1]。而且《大綱》對各階段英語教學提出了明確的要求。在基礎教學階段,對語法教學的要求是:"進一步鞏固和加深基本語法知識,提高在語篇水準上運用語法知識的能力。"對寫的能力提出的要求是:"......能就一定的話題和給定的提綱寫短文,能寫短信和便條。表達意思清楚,無重大語言錯誤,能在半小時內寫出120~150詞的短文。"從中可以看出,語法知識的掌握和寫作能力的提高有著必然的聯繫。因為短文寫作是一項產出性的、語言運用能力的體現,其中包括對辭彙、句法的運用能力,以及使用英語的準確性、流利性和適切性等。而這些知識正是大學英語語法教學的主要內容。從具體實例來看,近年來,大學英語四、六級考試的作文成績雖然在不斷提高,但從作文答卷中可以看出,影響成績的主要因素就是語法錯誤。因此,只有加強語法教學,打下堅實的語法基礎,才能腳踏實地地提高作文水準。
2 語法教學應注重英漢語法的比較
語言作為一種交際手段,它是人類所共有的社會現象,人類的思維以及對事物的認識能力也是大同小異的,各種發達的語言其語法結構雖然"個性"鮮明,但同時也存在著許多"共性"。對於語言共性與個性之間的關係,人們很早就有了初步認識。例如,早在17世紀,德國哲學家Alsted就對"普遍語法"和"個別語法"以及它們之間的關係進行了闡述[2]。18世紀,法國學者Du Marsais對這兩個概念進行了明確的定義:"在每個語法中都有一部分從屬於所有的語言,這些部分構成所謂的普遍語法......在這些普遍的部分之外,還有一些隻屬於某個個別語言,這些構成了每個語言的個別語法。"19世紀末,中國語言學家、《馬氏文通》的作者馬建忠也明確地表達了各種語言"大綱概無不同"的普遍語法的思想,對中西語言之間的差異進行了分析和解釋。在當代,生成語法繼承並發展了語言共性論傳統,對普遍語法和個別語法進行了深入的研究,這些研究為對比語言學鋪平了道路。1941年,對比語言學作為一門學科被正式命名,在它的一個分支學科--應用對比語言學中,就有解決語言教學實際問題的方法,稱做"對比分析(Contrastive Analysis)"或"對比研究(Contrastive Study)"。這種方法特別注重兩種語言的"遷移"、"干擾"以及其中的對等關係。所謂"遷移"指的是:如果某個外語結構在母語中有對應結構,在學習中就會出現正面的"遷移"現象,即母語中的這一結構直接轉移到外語中。相反,如果某個外語結構在母語中沒有對應結構,或母語中某個結構在外語中沒有對應結構,或者兩種語言中的對應結構有差異,就會發

abstract单词讲解

abstract单词讲解

abstract单词讲解"Abstract" is an adjective that means existing in thought or as an idea but not having a physical or concrete existence. It can also be used as a verb, meaning to consider something in a general or non-specific way.In the context of art or design, "abstract" refers to a style that does not attempt to represent an accurate depiction of visual reality. Instead, it focuses on shapes, colors, forms, and gestural marks to achieve its effect. Abstract art often aims to evoke emotions, sensations, or ideas, rather than portraying recognizable objects or scenes.In academic writing, an "abstract" is a brief summary of a research paper, typically found at the beginning of the paper. It provides an overview of the study's objectives, methods, results, and conclusions. The purpose of an abstract is to allow readers to quickly determine whether or not they are interested in reading the full paper.In general, the term "abstract" is used to describe something that is conceptual, theoretical, or non-physical in nature. It is often contrasted with "concrete" or "literal" concepts, which refer to things that can be directly perceived or experienced.。

大学英语(一)智慧树知到课后章节答案2023年下潍坊学院

大学英语(一)智慧树知到课后章节答案2023年下潍坊学院

大学英语(一)智慧树知到课后章节答案2023年下潍坊学院潍坊学院第一章测试1.What are the effective methods to open a speech ?答案:Question;A Story or an Anecdote; An Appropriate Quotation2. A supporting detail is a fact, description, example, quotation, anecdote, orother item of information used to ______.答案:explain an idea;support a topic sentence;illustrate a point;back up aclaim3.What are the effective methods to close a speech ?答案:Direct Call to Action;Make It Personal;Ask a Question;PowerfulQuotations4.Previewing is one of the three basic speed reading techniques and allows toextract essential information from reading material before digging intodetails.答案:对5. A topic sentence contains the main idea upon which a paragraph isdeveloped.答案:对第二章测试1.What are the writing essentials of the Problem-solution Pattern mentioned inthe video?答案:The solutions should echo the problems.;Use some conjunctions.;Thesolution to the problems do not equals to the causes of the problems. 2.Reading in thought groups can help you break the narrow reading.对3.Driving is really Greek for me, because I totally have no idea about thecar. What does the word "Greek " mean in the sentence?答案:一窍不通4.Please spell the name of 诸葛亮 in English, according to the rule of spellingnames.答案:Zhuge Liang5.The pattern of text organization mentioned in the video is problem - solutionPattern.答案:对第三章测试1.Which university did Bill Gates go to?Harvard University2.Gates founded Microsoft in 1975 with his childhood partner______.答案:Paul Allen3.Look at the following statements and decide which are facts (F) and whichare opinions (O).It's a great way to keep up with friends. ( )答案:O4.We can use __________ to show cause-and-effect relations.答案:as a result ;accordingly;in consequence ;therefore5."Gordian knot”is a famous idiom about knot. This idiom is from Greek myth.对第四章测试1.How does the author develop a paragraph in the pattern of question-example-conclusion?答案:In the first part, the question should be raised.;The last part should be the conclusion.;In the second part, some examples related to thequestion should be provided.2.Three companies, three spaceships, three tycoons are vying to live out theirchildhood sci-fi fantasies and explore outer space. Who are the tycoonsmentioned in the video clip?答案:Amazon magnate Jeff Bezos;Virgin Group founder Sir Richard Charles Nicholas Branson;Tesla titan Elon Musk3.What are the important benefits of scanning?It can help you become a more flexible reader. ;It can also double yourreading speed.;It can help you to research in a purposefulway. ;Scanning can cut your learning time in half.4.How to improve scanning techniques?答案:Note the arrangement of the material. ;Try to guess in what form theinformation may most likely appear. ;Keep clue words in mind andconcentrate on finding a particular answer. ;Do not read every word.5.The writing pattern introduced in today's video is question-example-conclusion pattern. This pattern can be applied not only in a set ofparagraphs but also in a single paragraph.答案:对第五章测试1.What can the skill “skimming” do for us?答案:When we flip through a newspaper or magazine.;When we readsomething to get the general idea.;When we look for useful materials ina pile of documents.;When we reread something to refresh our memory.2.What steps can we follow when we skim a text?答案:Read the subtitles or subheadings of the text. ;Read the first and the last paragraphs of the text.;Read the title of the text.;Read the first sentence of each paragraph.3.When did Cliff Young win the race? In the year 1980.答案:错4.How old was Cliff Young when he won the race? He was 61 years old.答案:对5.How long is Sydney to Melbourne Ultramarathon? The distance is 875 km.答案:对第六章测试1. A fib refers to a small lie.答案:对2.Which one of the following phrases is not to introduce?As requested, This survey was carried out or conducted by means of…, the questionnaire consisted of答案:AS everyone knows.3.To draw up a plan and make a budget, you need to __________.答案:The other options are right4.To keep up with the Joneses means _____________.答案:to live with what you can afford5.Even the essentials like food, clothes or transportation involve a want vs.need decision.答案:对第七章测试1.In the sentence: “Taking out the garbage was an onerous task; likewise,washing dishes can be a hard job”, we can guess that onerous has thesimilar meaning to hard. It is the _____ strategy.答案:synonym2.“A souk is an open-air marketplace in an Arab country.” In the sentence,the word “souk” means _____.答案:a market3.In the body paragraph, _______ is used to tell the reader what eachparagraph will cover.答案:topic sentence4.There should something new in the conclusion part. Is it true? ________.True False not given I don't know.答案:False5.Academic integrity is the moral code or ethical policy of academia.答案:对第八章测试1.When Men intend to start a conversation, they usually _________.答案:have a clear motive2.How many strategies are mentioned in the lecture to bridge thedifferences in gender communication? ___________.答案:Four3._________ are specific ideas to develop, explain or support the main idea.答案:Supporting details4.“Comparison and contrast must be organized effectively. And youshould choose an identifiable essay structure before writing.” Is the statement true or false? _______.答案:True5.The odyssey years is a period of time that has no significance. Is thisstatement true or false?答案:错。

在学科专业课程中培养师范生反思能力的实践范本——以有机化学为例

在学科专业课程中培养师范生反思能力的实践范本——以有机化学为例

Univ. Chem. 2023, 38 (5), 37–41 37收稿:2022-06-29;录用:2022-10-17;网络发表:2022-11-03*通讯作者,Email:***************.cn•教学研究与改革• doi: 10.3866/PKU.DXHX202206095 在学科专业课程中培养师范生反思能力的实践范本——以有机化学为例王树良*,王瑞婷江苏师范大学化学与材料科学学院,江苏 徐州 221116摘要:本文介绍了近三年来在学科专业课程中培养师范生反思能力探索与实践的经验、成效及启示。

以有机化学课程教学为实践范例,采取以下措施进行探索与实践:通过修订课程教学大纲,明确反思能力培养要求;任课教师言传身教,自觉进行反思教学;开展撰写反思报告等四项反思性学习方法与技能的训练等。

关键词: 学科专业课程;有机化学;师范生;反思能力中图分类号:G64;O6Practical Examples of Cultivating the Reflective Ability of Students of Normal University in Professional Courses: Taking Organic Chemistry as an ExampleShuliang Wang *, Ruiting WangCollege of Chemistry and Materials Science, Jiangsu Normal University, Xuzhou 221116, Jiangsu Province, China.Abstract: This paper introduces the experience, results and enlightenment of the exploration and practice of cultivating the reflective ability of students of normal university in the professional courses in the past three years. Taking the teaching of organic chemistry as a practical example, the following measures were taken to explore and practice: revising the curriculum syllabus, and clarifying the requirements for cultivating reflective ability; teaching by words and deeds, and consciously reflecting on teaching; carrying out the training of four reflective learning methods and skills, e.g., writing reflective reports.Key Words: Professional courses; Organic chemistry; Students of normal University; Reflective ability2017年教育部开始实施师范类专业认证工作[1],作者所在学校的化学(师范)专业,于2021年下半年顺利通过专家现场考查,教育部于2022年8月已公布认证通过的结果。

ABSTRACT

ABSTRACT

Simulating the Implementation of the Administrative Justice Act with ThinkLets and GroupSystems: A Comparative Analysis from Three Field StudiesHossana Twinomurinzi Department of Informatics, University of Pretoriatwinoh@up.ac.zaJackie PhahlamohlakaCSIR, DPSS jphahlamohlaka@csir.co.zaABSTRACTWe present in this paper the results of three simulation exercises performed as part of a series of field studies whose object is the implementation of the Promotion of Administrative Justice Act. The unit of analysis of the study is the process facilitation, which, in the context of the field studies and the research design, took the form of AJA awareness-raising workshops and the use of a Group Support System (GSS) tool. The notion of a thinkLet was used as a basis for conducting the simulation exercises using GroupSystems. Each workshop, which included the GroupSystems simulation exercise, was treated as a single case. These guidelines are effectively used throughout the course of this study and to analyse the results of the simulations. The results presented here constitute a one-year milestone in a longitudinal project led by the second author. Key wordsDecision Theory, Decision Justification, Administrative Justice Act, Group Support Systems, Simulation, ThinkLets INTRODUCTIONThe work reported on in this paper forms part of a longitudinal Interpretive Information Systems (IS) study that is to span a period of six years, this being the second. Its background is underpinned by a doctoral study conducted by the second author entitled ‘an analysis of group decision justification and its implications for GSS use and design ideals’, whose completion coincided with the bringing into effect of Section 33 of the South African Constitution. The Section required the government to pass a law setting out the details of the right of everyone in South Africa to just administrative action. This law was passed in the year 2000 as the Promotion of Administrative Justice Act (AJA) (3 of 2000). The AJA sets out procedures that administrators must follow before taking a decision and afterwards. The procedures apply to all organs of state, arguably including Tertiary Education Institutions, for example decisions related to student admissions, employment and labour- related issues, to mention but a few.The steps prescribed by the AJA were found to be intriguing and attractive to research from decision-theoretic and Information Systems points of views. Furthermore, there were striking similarities between what Phahlamohlaka (2003) called ‘prerequisites of decision justification’ and the steps prescribed by the AJA process. It is not our intention in this paper to focus on theoretical aspects, but Figure 1 provides a high-level picture that serves as a theoretical basis for the study. After going through the rest of the paper, the reader may be interested in comparing the components of this framework with the thinking behind the AJA as well as the steps it prescribes. It was these procedures, their close relationship to the logic of decision justification and how their implementation could best be supported through the use of computer-based technology, that the second author identified as areas of importance, interest and further studyFigure 1: Group Decision Justification Framework (GDJF); Source (Phahlamohlaka, 2003)Two research projects were initiated in 2003. The first was entitled: ’Enabling access to human rights through thought processes and web-based Group Support Systems tools’. The aims of the project were: (1) to explore innovative ways in which web-based GSS could render access to human rights possible by ordinary South African citizens and (2) to explore, as part of this access--seeking process, efficient forms of engagement between ordinary citizens, administrators and managers. The primary research questions for the study were as follows:•How best can the ordinary South African public be enabled and empowered to exercise their constitutional rights espoused by the AJA?•Can a thought process and Web-based technologies be used to support this enablement?•To what extent would Web-based technologies be considered relevant in this process?•Are these technologies considered as potentially valuable in enhancing a better understanding and implementation of the Act?The second project was an expansion of the first one, with one more aim added: (3) to identify and harness opportunities for sustained collaboration and interaction by communities who would use web-based GSS tools within e-government contexts in South Africa. For this second project, collaboration engineering through the notion of a thinkLet (Briggs et al, 2003) and participation in their creation and packaging was adopted. The main research question here is:•What features are needed in web-based collaboration tools and how should interfaces be designed to enable citizens to interact effectively with government and public bodies in South Africa?The projects have since been successfully linked and funded by the National Research Foundation (NRF), with several post-graduate students and co-investigators researching different topics. Topics already addressed by students and co-investigators include: ‘Enhancing procedural fairness in administrative action of the Administrative Justice Act of South Africa using web-based Group Support Systems’(Twinomurinzi, H. and Phahlamohlaka, L.J, 2005); ‘Information flows for meaningful implementation of the Administrative Justice Act of South Africa’(Alexander, P.M. and Phahlamohlaka, L.J, 2005)); and ‘Towards a Collaboration Engineering Framework for the Implementation of the Administrative Justice Act of South Africa’(Wooding, T. and Phahlamohlaka, L.J, 2005).In this study, the notion of a thinkLet was used as a basis for conducting a simulation exercise using GroupSystems as a tool in a workshop setting. The aim was to raise awareness about the process involved in the implementation of the act using a real case and to demonstrate the possibilities for the use of computer-based technologies to support this process.The study follows the Interpretive IS research tradition and embeds the thinkLet notion and the simulation exercises within the critical appraisal guidelines proposed by Atkins and Sampson (2002). Each workshop, which included the GroupSystems simulation exercise, was treated as a single case. This enabled us to use these guidelines to structure and to present the results of the simulation. Atkins and Sampson give five guidelines to follow when conducting single case study research; the way of thinking, way of controlling, way of working, way of supporting and way of communicating. The guidelines are in line with Klein and Myers (1999) and Walsham’s (1995) recommendations on good interpretive case study research in Information Systems.The rest of the paper is organized as follows: We discuss the requirements of the critical appraisal guidelines followed by a brief background on thinkLets and Group Support Systems. The design of the simulation exercises is presented next, followed by a presentation of the three field studies. The analysis of the simulation exercise in line with the critical appraisal guidelines is presented. Further research areas are pointed out and the paper ends with a concluding discussion.THE CRITICAL APPRAISAL GUIDELINESThe critical appraisal guidelines for research involving a single case study were proposed by Atkins and Sampson (2002). The guidelines provide a rigorous set of criteria in the form of a checklist against which a piece of research can be assessed. According to Atkins and Sampson, the use of such guidelines is common especially in evidence-based disciplines such as medicine. Their guidelines are informed by well-established authorities on interpretive IS research, such as Klein & Myers (1999) and Walsham (1995) among others (Phahlamohlaka, 2003). Furthermore, Atkins and Sampson used Bronts et al. (1995), who proposed a framework for investigating IS development methods based on five classification elements: way of thinking, way of working, way of controlling, way of supporting and way of communicating. The way of thinking describes the assumptions and viewpoints of the researcher in the context of the current research and thus makes explicit the philosophical context in which the research is conducted. The way of working defines and orders the tasks and sub-tasks that are to be performed in the research exercise, and also provide guidelines and heuristics on how these tasks should be carried out. The way of controlling sets out how the research exercise should be managed while the way of supporting describes how tools can be used to support the research exercise. The way of communicating describes the form in which the research is to be presented. The framework thus covers both the research approach, which is ’a way of going about one’s research, embodying a particular style and employing different methods’ and the research method, which is ’a way to systematize observation, describing ways of collecting evidence and indicating the type of tools and techniques to be used during data collection’ (Cavaye, 1996, p.227).These guidelines are effectively used throughout the course of this study. In addition, the results of the simulations are analysed through the application of the guidelines. Each Workshop was treated as a single case framed according to the notion of a thinkLet, using GroupSystems as a tool.BRIEF BACKGROUND ON THINKLETS AND GROUP SUPPORT SYSTEMSThe literature presents many definitions of a Group Support Systems (GSS). In this paper, we adopt the definition of a Group Support System as a combination of approaches, software and technology constructed to bring together and reinforce the dialogue, deliberations and decision-making of groups (Shen et al, 2003: 209). There is a vast amount of literature on GSS research since they surfaced in the 1970s. Reported results have, however, been inconclusive and often contradictory. According to Briggs et al. (2001), one cause of the conflict and ambiguity in GSS research results may be the result of focusing on what they say is a less-than-useful level of abstraction: GSS itself. They argued that in GSS research, the thinkLet could be a more useful unit of comparison than the GSS. They were conceptualised with a goal of building repeatable collaboration processes in Group Support Systems use and research. A GSS research approach based on this notion of a thinkLet was then proposed by Briggs et al. (2001), as a way to create repeatable patterns of thinking. A thinkLet, according to the authors, encapsulates three components of a GSS stimulus: the tool, its configuration, and the script. They report on having documented about 60 thinkLets that map to seven basic patterns of thinking: diverge, converge, organize, elaborate, abstract, evaluate and build consensus. Each thinkLet creates some unique variation on its basic pattern. By focusing research on thinkLets, rather than GSS, they predict that field and laboratory research may be more controllable, more replicable and better able to inform GSS development and use. They note that their field experience shows that thinkLets may be used to create repeatable, predictable patterns of thinking among people making an effort toward a goal. The results we are presenting in this paper were based on what Vreede (2006) refers to as ‘the spirit of the thinkLet’. We carried out the simulations with the goal of capturing patterns of collaboration that could be repeated in different settings in the process of implementing the AJA.METHOD AND DESIGN OF THE SIMULATION EXERCISESWe follow an Action Research method since we are always influencing the simulation process through the awareness raising and training of participants in the use of Information and Communication Technology. The simulation exercises are designed according to a uniform set of procedures, support material, case scenario, instructions, duration and facilitation with the goal of being able to create possible repeatable patterns of interaction between those affected by an administrative action (a decision not in their favour) and those making the decision (administrators). The two case scenarios used in the workshops were taken from the real-life experiences of two case participants from the research of the first author during his Masters mini-dissertation (Twinomurinzi and Phahlamohlaka, 2005). We followed the notion of a thinkLet in designing the simulation exercises based on the design illustrated in Figure 1. While maintaining the same process in the simulation exercises, in Workshop 1 to Workshop 3 the first case was used and in Workshop 4 and Workshop 5, the second case was used. At the time of this report, Workshop 6 is yet to be conducted.Each workshop participant on arrival received a folder containing eight instruments: the workshop programme, two research questionnaires, AJA workflow diagrams for individuals and for administrators, a case scenario of a person who had been affected by administrative action, a copy of the accompanying rejection letter that the affected person received, and a copy of the criteria to qualify for a social grant that the affected person had applied for. The workshops followed six patterns; social interaction, a description of the research objectives by the project leader, AJA awareness raising, a presentation of a case scenario, simulation of the AJA using GroupSystems based on the case scenario as an example, and research feedback. The social interaction followed a general principle whereby everyone attending the workshop was acknowledged in person. The research project leader then described the history of the research project and requested the active participation of the participants. The AJA awareness raising was carried out by two experts from the Justice College and a Master of the High Court from the North West Province. The Justice College expert explained the historical roots of the AJA, the present implementation strategies of the AJA and expressed some challenges being experienced. The Master of the High Court illustrated the AJA using examples of cases of an AJA nature that are dealt with in the High Court. The case scenario, the criteria and the rejection letter were presented by reading through them along with the participants to ensure the case to be used in the simulation exercise was read and well understood by all the workshop participants. The workshop participants were then asked to volunteer in which group they wanted to participate; either as an affected individual or as an administrator.In the computer simulation exercises we gave tightly controlled sets of instructions and prescribed the interaction time between instruction sets. The research members facilitated the simulation at the computers where computer skills werelacking. The simulation always started with the affected person (represented by several groups) asking for written reasons from the administrator as to why his/her application had been declined, in keeping with the requirements of the AJA. This was done by typing the request for reasons into Categorizer of GroupSystems and submitting them to several groups who had to respond similarly as administrators. We tightly controlled the submission times after each response on both sides so that the groups could proceed at the same pace. Several interaction cycles were allowed in each exercise and the process was allowed to continue for a maximum of one hour.These computer simulations were followed by three research feedback sessions. The first was a group discussion in which the participants, facilitated by the research members, recorded their experiences of the AJA while using technology. For the second session the participants recorded their experiences individually. The final discussion requested participants to openly offer their opinions and observations within the context of the day on anything they wished to comment on. At the close of the workshops a follow-up workshop was requested and planned for with the participants. All participants expressed their willingness to continue as research participants.Figure 2: Design of the Workshops and Simulation ExercisesAs pointed out earlier, each workshop, which included the GroupSystems simulation exercise, was treated as a single case; making it possible for us to use the guidelines as they are developed for single case studies. Figure 1 encapsulates the philosophical and theoretical underpinnings of the study. It is informed by the interpretive paradigm. Because the interpretive tradition is followed and we use an action research method, we are aware of the unavoidable bias since the study is designed to raise awareness and to provide training on the AJA. The criteria of the analysis were also based on the notion of a thinkLet. The researchers were fortunate in that the independent researcher was one of the creators of the thinkLet notion. As we proceed, the research is shared with other researchers and interest groups. This is done through seminars, meetings and some presentations. For instance a seminar involving all the researchers, interest groups and participants was convened. In addition, the results of parts of the study were presented at several Universities overseas. Data was collected in different forms; technology, observations, video-taping, discussions, questionnaires and written feedback, and we took minutes and reports and registers for the keeping of accurate records. The process is auditable because of the nature of the design through following the notion of a thinkLet. Through the use of the technology (GroupSystems), all the data from the simulation exercises was captured ‘as is’ from the participants.Various forms of evaluation and feedback were obtained over and above the GroupSystems transcripts. These included further facilitated discussions after the simulations and completion of questionnaires. Except for only one instance at Lebotloane when the person contracted to do the video recording failed to show up, all the simulation exercises were video- recorded. Observation notes were made and several pictures were taken.THE THREE FIELD STUDIESThree field locations in three different Provinces were selected to carry out the simulation exercises; Siyabuswa in the Mpumalanga Province (hosted by SEIDET), Lebotloane in the North West Province (hosted by Leretlabetse Multi Purpose Community Center) and several Civil Society organizations (hosted by the University of Pretoria) in Gauteng. The choice of these locations was influenced by the availability of networked computers, their distance from the University of Pretoria as well as the willingness of the leaders from within these institutions to participate in the research project. Each of these locations presented unique environments, which will be further described in the next sub-sections.A great deal of consultation and preparation with the community leaders went into selecting twenty participants from within the localities. The leaders from the institutions played a major role in deciding who the most appropriate participants fromwithin those communities would be. Most, but not all participants came as representatives of their organizations. The research sought to have a cross-section of participants ranging from government officials, community leaders, students, pensioners, social workers and those who were likely to attend. Written invitations that were signed by the research project leader and by the community leaders from within these institutions, were sent out to each participant two weeks prior to the workshop. A substantial effort also went into preparing the actual locations for the workshops. For each location, at least two visits prior to the workshop location were necessary to ensure that the logistical details were in order and the computers were set up well with GroupSystems.In the following sub-sections, the unique features of each field location are outlined.LebotloaneLebotloane is approximately two hours from Tshwane and the location chosen for the research is a Government ICT-driven Multi-Purpose Community Centre (MPCC). Lebotloane presented two unique features; the computer set-up and the social processes.Here the twelve computers and the network infrastructure were of high standardbut the network configuration was locked, allowing only four computers access to the network and Internet. This meant that only two simulation groups could be used. The social interaction processes took longer periods as the cultural practices were followed. Figure 3 below shows a simulation exercise in session and the research participants as a group outside the MPCC. The workshop took place on Saturday 01 October 2005.Figure 3: In LebotloaneSiyabuswaSiyabuswa is also approximately two hours from Tshwane and the location selected for the research is a community education centre (SEIDET). Similarly, there are two unique features that were presented by the Siyabuswa location - the historical relationship with the research group and the computer set-up.The project leader of the research team hails from the Siyabuswa area and the community education centre can be attributed largely to his efforts. There has therefore been a fifteen-year relationship between the research group and the centre from which a significant amount of published research has already emanated. The fifteen computers at this location were of low quality and needed technical attention to make them network-ready and to get them working with GroupSystems. Nevertheless, seven of the fifteen computers were technically upgraded and were used for the workshop on 17 September 2005. Figure 4 below shows a simulation exercise in session and the research participants as a group outside the centre.Figure 4: In SiyabuswaTshwaneThe Tshwane workshop was held at a newly established Group Support Systems research laboratory at the Department of Informatics, University of Pretoria, on Wednesday 07 December 2005. Here the participants were specially selected from a list of people that had been trained on the AJA by the African Centre for the Constructive Resolution of Disputes (ACCORD) in 2004 in the Tshwane region and were expected to have been practising with it. The researchers expected to listen to the experiences of the participants from the field with AJA in addition to conducting the simulation exercise. The other unique feature of this workshop was that only eight of the twenty-three people invited turned up for the workshop. This could be attributed to a city environment and the lack of an organizing host, unlike the Siyabuswa and Lebotloane workshops, which were in rural areas and where community centers served as organizing hosts. Figure 5 shows a simulation exercise in session and the research participants as a group.Figure 5: In TshwaneANALYSIS OF THE SIMULATION EXERCISESWe begin the analysis of the results by combining the design and method of the simulation exercises presented earlier with the critical appraisal guidelines. From Figure 1 we look at the data from the various sources that we have, following the matrix as well as how the process was actually facilitated. From the process facilitation perspective, the results showed that the process as we have designed it is repeatable and predictable. The process can be condensed into timed steps as shown in Figure 6, the Simulation Model for the thinkLet. This gives us confidence that we are perhaps approaching a design of some kind of a thinkLet for simulating the AJA implementation process.On reviewing the research itself against the critical appraisal guidelines, we found that we fulfilled all the requirements. The research is shared with other researchers and interest groups as we proceed. The researchers were fortunate in that the independent researcher available to verify the criteria for the analysis of the research results was one of the creators of the thinkLet notion. Furthermore, this expert (Vreede, 2006), observed the recent simulation exercises and provided very important observations that we paraphrase as follows:•The formulation of a response by a role (a turn) is a thinkLet in itself. I propose we call this TurnStormer. The authors agree. Each subgroup (or individual in other situations) is thinking up reasons, bits and pieces of information, and then formulating a response. The data show that the responses are fairly polished in the sense that they consist of complete sentences and paragraphs. No sound bites. So, each role (whether represented by an individual or by a small group of participants) brainstorms elements of a response and then formulates this when it is its turn. Hence the name TurnStormer.•Important for the effective use of TurnStormer in a simulation context is to keep the time for each role fairly short. If it takes too long, the other role(s) has to wait too long before it can respond.•The overall process is very smooth in terms of the simulation part. What has to be checked is the quality of the output of the participants. Do they really get enough detail, enough learning, enough insight regarding the act under consideration? If not, then different script elements for TurnStormer have to be developed to entice them to provide better feedback. The authors found that a very good understanding of the act prevailed at the end of the simulations.This can be seen from the number of people who actually applied the act to their benefit and to the benefit of others within less than a year of their exposure to it.Figure 6: The Simulation Model for the TurnStormer thinkLet•It is interesting to note the similarity between the TurnStormer and the PointCounterPoint (PCP) thinkLet. Both have the participants engage in a structured exchange of ideas. Both use as many pieces of (electronic) paper as the number of roles/participants. However, the goal of both is very different: TurnStormer only focuses on a number of cycles of exchanges between roles to experience a possible situation expressed in the game scenario. PCP focuses on surfacing different perspectives, points of view, and arguments on debatable issues to hopefully move the group towards a compromise or as yet undiscovered solution for the debatable issue.The Tool, the Configuration and the Script of the emerging thinkLet are shown in Table 1.Table 1: The TurnStormer thinkLetWith regard to the objectives of the research and the research questions, we can confidently claim that the workshops and the simulation exercises are succeeding in raising the required awareness. Three out of four groups in the Siyabuswa environment and three out of five groups in the Lebotloane environment had someone who, as a result of the workshops, assisted someone or him-/herself by using the provisions of the AJA. Two participants from the Siyabuswa group made the following remarks”’Yes, one of the participants was personally affected by the AJA and used the principles of the AJA to formulate a program to assist with the implementation of the AJA. Another one of the participants was involved in helping people who were HIV positive to get grants from the government.’’Yes, on door to door campaign, we had one family that applied for an old age grant and was not given reasons as to why his application was unsuccessful. I helped him to follow the procedures of requesting reasons for application failure when implementing AJA and at the end he did receive the grant. At one of the workshop for youth camp, people were not aware of the Act (AJA)’.Similar experiences emerged from the Lebotloane and the Tshwane groups as well. In suggesting ways in which we could do the research, especially the possibility of using ICT for facilitating government-citizen interaction, the results could be summarized as follows:•Multipurpose centers should be opened so that everyone in the community can use them and get more information and become more computer-literate. In addition to the workshops, public presentations could bemade as well as using other ICT centers and schools.•There is general support for the notion that the Community Development Workers (CDW) need to be empowered by government with enough accessories to promote AJA.•Indabas, Kgotlas and TV programmes, radio, road shows and marches are suggested as other ways in which awareness could be increased.•Requesting local municipalities to facilitate access to ICT facilities, where they exist, to communities.In conclusion, we have presented an emerging thinkLet as the main outcome or result of this research milestone. Although the thinkLet is not yet refined, its form and structure as well as its practical execution have been tested and found to work well. Although we are still not able yet to provide a complete answer to the main research question, all indications are that we are moving in the right direction.FURTHER RESEARCH AND CONCLUSIONThe results presented in this paper complete what we could call the pilot phase of this research. What remains is to take the study to a national level, where the simulation exercises could be performed in each province. We have not reached the point where we could describe with confidence the features that are needed in web-based collaboration tools and how the interfaces could be designed to enable citizens to interact effectively with government and public bodies in South Africa. We are, however, very encouraged by the emergence of the thinkLet that we have reported on in this paper. We have thus found a reliable mechanism of doing this research on a larger scale, using a repeatable and predictable process that has the potential to be transferred to the participating communities and government departments to run on their own.REFERENCES1.Alexander, P.M. and Phahlamohlaka, L.J. Information Flows for meaningful implementation of the promotion ofAdministrative Justice Act of South Africa. Presented at SAICSIT 2005, White River, Mpumalanga Province, South Africa; 20-22 September 2005.2.Alexander, P.M. and Phahlamohlaka, L.J. Amartya Sen’s Capability Approach applied to Information Systems research,South African Computer Journal, 2006 (Forthcoming).3.Atkins, C. and Sampson, J. 2002. Critical Appraisal Guidelines for Single Case Study Research. In Proceedings of theTenth European Conference on Information Systems, June 6-8, 2002 Gdansk, Poland.4.Briggs, R.O., Vreede, G-J. De, Nunamaker Jr, J.F. and Tobey, D. 2001. ThinkLets: Achieving Predictable, RepeatablePatterns of Group Interaction with Group Support Systems (GSS). In Proceedings of the 34th Hawaii International Conference on System Sciences, Hawaii.5.Briggs, R.O., Vreede, G-J. De, Nunamaker Jr, J.F. 2003. Collaborative Engineering with ThinkLets to pursue SustainedSuccess with Group Support Systems. Journal of Management Information Systems, 4 (19):31-64.6.Bronts, G., Brouwer, S.J., Martens, C.L.J. and Proper, H.A. 1995 A Unifying Object Role Modelling Theory,Information Systems Journal, 20(3): 213-235.7.Cavaye, A. 1996. Case Study Research: A multi-faceted research approach for IS. Information Systems Journal, 6: 227-242.8.Klein, H. and Myers, M. 1999. A Set of Principles for Conducting and Evaluating Interpretive Field Studies inInformation Systems. MIS Quarterly 23(1): 67-93.9.Phahlamohlaka, L.J. 2003. An Analysis of Group Decision Justification and its Implications for GSS use and designideals. Unpublished PhD dissertation, University of Pretoria。

智慧树知到《学术英语写作》章节测试答案

智慧树知到《学术英语写作》章节测试答案

智慧树知到《学术英语写作》章节测试答案第一章1、我不需要做研究,所以我不需要学习学术英语写作。

A:对B:错答案: 错2、做旅游攻略的过程,就是一个简单的research过程。

A:对B:错答案: 对3、et al就是and others的意思。

A:对B:错答案: 对4、下面哪些选项是学术英语写作的原因?A:To report on a piece of research the writer has conducted;B:To answer a question the writer has been given or chosen;C:To discuss a subject of common interest and give the writer’s view;D:To synthesize research done by others on a topic.答案: To report on a piece of research the writer has conducted;,To answer a question the writer has been given or chosen;,To discuss a subject of common interest and give the writer’s view;,To synthesize research done by others on a topic.5、学术英语写作中的一般文本特征包括:A:sentenceB:headingC:sub-titleD:paragraphE:titleF:phrase答案: sentence,heading ,sub-title,paragraph,title,phrase第二章1、在细化主题时,需要考虑你的写作目的是什么以及预期读者是谁。

A:对B:错答案: 对2、My Most Embarrassing Moment是一个可以写的论文题目。

油画艺术在服装设计中的创意转化与应用

油画艺术在服装设计中的创意转化与应用

收稿日期:2024-02-08作者简介:张谢雄(1977—),男,北京人,国家三级美术师,硕士,研究方向为油画创作。

油画艺术在服装设计中的创意转化与应用摘要:随着时尚行业的快速发展,油画是一种历史悠久的视觉艺术形式,具有丰富的色彩、深邃的主题以及独特的表现手法,可以转化为服装设计中的视觉语言,满足设计师的创造性表达,也可以响应市场对文化和艺术的需求。

关键词:油画艺术;服装设计;创意转化中图分类号:TS941.2文献标志码:A 文章编号:1005-9350(2024)04-0107-03张谢雄(中国艺术研究院文学艺术院,北京100029)随着现代审美的不断演变,尤其是消费者对个性化和艺术性的追求,越来越多的服装设计师开始从传统艺术中寻求灵感。

油画艺术以其独特的色彩饱和度、深邃的情感表达和丰富的历史文化内涵,被广泛应用于服装设计中,可以帮助设计师创造出既符合现代审美又不失艺术价值的作品[1]。

在当下,人们愈发注重文化身份的表达,服装作为文化表达的一种载体,需要传递一定的文化信息和艺术审美。

随着数字技术的快速发展,数字印花以及三维模拟技术的发展也促进了油画艺术与现代服装设计的融合。

因此,油画艺术在服装设计中的应用,既是一种文化传承与发展的体现,也是服装设计领域中的一种趋势。

1相关概述1.1油画艺术的视觉语言与表现手法油画艺术具有独有的饱和度和层次感,通过细腻的笔触和色彩过渡来表达深刻情感,使用厚重的颜色层实现浓烈的情感表达,使用薄涂或透明的色彩处理传递出细腻和灵动。

油画的视觉语言主要体现在颜色、光影、质感和空间方面,其表现手法广泛多样,包括写实与抽象,每一种风格都有独特的语言和技巧。

设计师要深刻领悟油画艺术,结合现代服装设计的需求和趋势,创造出既具有艺术价值又符合市场审美的作品。

1.2油画艺术与服装设计的相互影响Creative transformation and application of oil painting art in fashion designZHANG Xiexiong(Academy of Literature and Arts,Chinese National Academy of Arts,Beijing 100029,China)Abstract:With the rapid development of the fashion industry,oil painting is a visual art form with a long history,withrich colors,profound themes and unique expression techniques.It can be transformed into a visual language in fashion design to meet the creative expression of designers and respond to the market's demand for culture and art.Key words:oil painting art;clothing design;creative transformation染整技术Textile Dyeing and Finishing JournalVol.46No.4Apr.2024第46卷第4期2024年4月染整技术46卷油画作为一种视觉艺术,可以记载某历史时期的服饰样式和时尚潮流,能折射出某历史时期的社会背景、审美理念和工艺状况,也是艺术潮流的证明。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A Complete Guide to the FutureFrank S.de Boer Dave ClarkeCWIAmsterdam,Netherlands Einar Broch Johnsen Department of Informatics University of OsloAbstractWe present the semantics and proof theory for an object-oriented language with active objects,asynchronous method calls,and fu-tures.The language,based on Creol,distinguishes itself in that un-like active object models,it permits more than one thread of control within an object,though,unlike Java,only can be active within an object and rescheduling occurs only at specific release points.A consequence is that it reestablishing an object’s monitor invariant becomes possible at specific well-defined points in the code.The main technical result of this paper is a complete proof theory for reasoning about our language.This proof theory is simple com-pared to previous work on similar proof theories for Java.This is evidence that the present approach to concurrency is simpler to rea-son about than,say,Java’s multithreaded concurrency model.From a methodological perspective,we identify constructs which admit a simple proof theory and those which require more complicated means such as interference freedom tests.Categories and Subject Descriptors F.3.1[Specifying and Verify-ing and Reasoning about Programs]:Logics of programs General Terms Languages,VerificationKeywords distributed programming,object-oriented program-ming,asynchronous method call,futures,proof theory1.IntroductionThe increasing importance of distributed systems emphasizesflex-ible communication forms between distributed processes.While object-orientation appears to be a natural paradigm for distributed systems[18],the tight coupling between objects traditionally en-forced by method calls may be criticized.Asynchronous method calls have been proposed as a means to combine object-orientation with distributed programming,allowing a looser coupling between a caller and a callee than in the tightly synchronized(remote) method invocation model.Return values from asynchronous calls are assigned to so-called futures[4,11,14,21,28].In this paper, we develop a kernel language for distributed concurrent objects in which asynchronous method calls is the basic communication construct.Concurrent objects are potentially active:synchronized communication as well as sequential execution appear as special cases of asynchronous method calls between objects.The proposed[copyright notice will appear here]kernel language combines the concurrency model of Creol[19],an object-oriented language for concurrent objects,withfirst-order fu-tures,and is presented in a Java-like syntax.Futures are not trans-parent but may be communicated between objects,enabling future return values from asynchronous method calls to be shared among the concurrent objects.The paper presents a operational semantics and type system for this kernel language,establishes type sound-ness,and introduces a novel proof theory for concurrent objects with asynchronous method calls and futures.The adopted concurrency model is based on concurrent objects, each with its own processor.Inside a concurrent object,method activations are executed in an interleaved way.Thus execution in an object is reminiscent of monitors,but explicit signaling is avoided by introducing so-called release points at which control may change between different method activations competing for the object processor.The interleaved execution of method activa-tions allows different activities to be pursued within the concurrent object;in particular,active and reactive object behavior are easily and dynamically combined within an object.Whereas an active ob-ject usually relies on some preselected method to define its active behavior,we exploit asynchronous method calls as triggers of con-current activity.Any method may be called both synchronously and asynchronously.In fact,synchronous method calls will be treated as a special case of asynchronous calls,for which execution blocks while waiting for the reply.Thus,synchronous calls restrict the nat-ural concurrency of the model by sequentializing activity.Asyn-chronous method calls may be regarded as a delegation technique, spawning concurrent activities in other objects while the caller pro-ceeds with its execution.Futures extend this technique to include the forwarding and sharing of replies to method invocations.As futures are statically recognized,each object sharing a future may choose to either block,with or without releasing control while wait-ing for the reply associated with the future.Proof theories for multithreaded object systems are complicated by the interference problem for shared variables,which appears when threads operate concurrently in the same object.Reasoning about programs in this setting is highly complex[1]:Safety is by convention rather than by language design[3].The simplicity of the proof theory proposed in this paper,in contrast to that of, e.g.,multithreaded Java,is a major advantage of concurrent object models compared to multithread concurrency.The proposed proof theory uses a local assertion language to describe the local state of an object.Local assertions are used to express the pre-and postconditions of methods and the monitor invariants.On the other hand,a global assertion language is used for describing invariant properties of inter-object synchronization. In this paper we present a novel view of an object as maintain-ing multiple local monitor invariants and a global synchronization constraint.The local invariants monitor the different release points of an object.These multiple monitors require a novel proof theory for their mutual dependencies in establishing their invariance.This12006/10/2clear separation of concerns between intra-and inter-object syn-chronization is reflected in the completeness proof which is based on a semantic characterization of the global invariant in terms of futures and local history variables which record for each object its externally observable behavior,as specified by its method calls, method invocations,and its return statements.The internal schedul-ing in an object is completely encapsulated by its local invariants, recording snapshots of the corresponding release points. Paper overview.Sect.2introduces the syntax and operational semantics of the kernel language,Sect.3defines its type system and establishes type soundness,and Sect.4provides an example. Sect.5introduces the assertion language,Sect.6a proof theory for concurrent objects with asynchronous method calls,and Sect.7 establishes the completeness of the proof system.Sect.8discusses related work and Sect.9concludes the paper.2.The LanguageA kernel language for distributed concurrent objects with asyn-chronous method calls is now introduced,adopting much of the syntax of Featherweight Java[17].The semantics of the language is given as a contextual,small-step operational semantics[10]. An object may be understood as an encapsulated state on which various processes are executed.Objects are concurrent in the sense that each object has a thread dedicated to executing the processes of that object,so processes in different objects can execute concur-rently.Each process in an object corresponds to the activation of one of the object’s methods.The object’s state variables can only be manipulated by its own methods.The state is encapsulated in the sense that external manipulation of the object state is indirect by means of calls to the object’s method.In order to preserve an ob-ject’s invariants for reasoning control,execution is restricted such that only one process may be active in an object at a time;other pro-cesses in the object are suspended.We distinguish between block-ing a process and releasing a process.Blocking causes the execu-tion of the process to stop,but does not hand control over to a sus-pended process.Releasing a process stops execution of that process and reschedules control to another(suspended)process.Thus,if a process is blocked there is no execution in the object,whereas if a process is released another process in the object may execute.Al-though processes need not terminate,the object may combine the execution of several processes using release points within method bodies.At a release point,the active process may be released and a suspended process may be activated.A process which makes a remote method call must wait for the return of the call before proceeding with its activity.In a distributed setting this limitation is severe;delays and instabilities may cause much unnecessary waiting.In an unreliable environment in which communication can disappear,the object can even be permanently blocked(and the object deadlocked).By assigning the result value from a method call to a future variable instead of an ordinary variable,the blocking of the process is delayed until the result value from the method needs to be retrieved from the variable. When we attempt to read from a state variable which does not have an assigned value,we get the default value for the type of that variable(e.g.,for object pointers).When we attempt to read from a future variable which does not have an assigned value,the execution is blocked.Future variables may also be polled,enabling fine grained control of scheduling.The Boolean polling operation on a future variable returns when reading the variable will not block and otherwise.(In contrast to the read operation on the future variable,the polling operation never blocks.) Release points in the language are expressed using Boolean guards.The release points influence the implicit controlflow inside objects by allowing process blokcing when the guard evaluates to .As the polling of a future variable is a Boolean operation,srsrsrmay befields()or variables(),and is a class name. future variables can also be tested within the guards at release points.This way,processes are allowed to choose between blocking and releasing control while waiting for the reply to a method call. Remark that the use of release points makes it straightforward to combine active(e.g.,nonterminating)and reactive processes in an object.Thus,an object may behave both as a client and as a server for other objects without the need for an active loop to control the interleaving of these different roles.2.1SyntaxThe language syntax,given in Fig.1,is now briefly presented,em-phasizing constructs which differ from Java.A program is a list of class definitions followed by a method body.A class inherits from a single superclass,which may be,extending the su-perclass by declaring additionalfields and methods.To en-force a proper encapsulation of objects,the internalfields of ob-jects are not externally accessible.Methods may have local vari-ables,which are declared at the start of a method body.Thus,vari-ables may befields or local process variables.Access to the object instance running the current method is available through the self reference,and access to the future variable which will contain the result of executing the current method is available through the local non-assignable pseudo-variable.The language expressions include,variable access, for both the local process variables and thefields of the current object,and object creation.In addition there are two non-standard expressions:an asynchronous method call and the (blocking)read operation on a future variable,denoted. The language statements contain the standard statements ,assignment,the conditional, sequential composition,and three non-Java statements:release points for guards,non-deterministic choice be-tween the two branches and,and merge for the inter-leaved execution of the two branches.Guards are either the uncon-ditional release guard,Boolean expressions,the polling op-eration on a future variable,or the conjunction of guards. When the guard evaluates to,the release point allows the pro-cess to proceed.When the guard evaluates to,the release point allows the active thread in an object to be release and another pending thread to be rescheduled.Non-deterministic choice allows either branch to be selected.The merge allows its branches to be in-terleaved at release points without yielding control to other pending threads.Similar to how release points influence the inter-process flow of control in an object,the merge allows release points to influence the intra-processflow of control without allowing other processes to access the object processor.The additional statements,and appear as in-termediate expressions during reduction.The statement is introduced during the unsuccessful reduction of an state-22006/10/2config object comp config configobject processQ fds active-processoidfds f vcomp mid mode void mactive-process processprocess srprocessQ process processQ processQv oid midFigure2.The syntax for runtime configurations.Here,oid and mid denote identifiers for objects,and futures.Processes include both the types of local variables and the expected return type(which we often elide for simplicity of presentation).ment(when the guard is),and the statement corre-sponds to the activation of statement in the merge of statements and inside a process,where statement is paused.2.2SemanticsThe semantics of our language is presented as a small step reduc-tion semantics between configurations,in a reduction context style. Reduction steps may be performed in parallel.A configuration consists of a multiset of objects and futures. The syntax of configurations is presented in Fig.2.In a configura-tion,an object represents the runtime state of a class instance,and a future represents the runtime state of a method call and stores the eventual result of executing the call.A future starts its lifetime con-taining the method invocation.In a future,the called method is denoted oid m.The method is subsequently activated and placed on the process queue of an object.Finally,the future contains the result of executing the method invocation.Future variables in the program reference such futures.The value mode represents a mode of the future,mode(representing modes sleep,active, and completed).Objects consist of an object identifier and the class of the object,a queue of blocked processes,fields,and an active process.Processes correspond to method activations and may be either active or blocked.The process indicates that an object is not currently running a method.The types have default values,given by the default function:defaultdefaultdefaultThe initial configuration of a program sr has one object default sr,for some object identifier. Reduction contexts and redexes.The main part of the semantics provides rules for reducing processes by decomposing a statement into a reduction context and a redex,and reducing the redex.The scheduling of execution between different processes in objects and between different parts of a configuration are handled by additional rules outside of reduction contexts.Reduction contexts are method bodies,statements,expressions,and guards with a single hole,denoted by and defined as follows:Different redexes are reduced in the different reduction contexts;i.e.,body-redexes are reduced in context,stat-redexes in, expr-redexes in,guard redexes in,and body-redexes in. Redexes are defined as follows:body-redexesstat-redexesexpr-redexesguard-redexes midThe operation offilling the hole of a context with an ex-pression of the appropriate kind is denoted.For example when evaluating a method body of the form, we have where is a method context and is a redex of the appropriate kind.Note that when it becomes time to evaluate the expression in the method body,the method body will have been reduced to the form.For simplicity, we elide the and write just.The reduction relation takes the form config config.Rules may apply to partial configurations,so long as the elements in-volved in the reduction are defined.This is in contrast to,e.g.,ap-proaches to the semantics of imperative object-oriented languages with a global store in the configuration[12],but it is consistent with the Creol’s executable operational semantics[19]based on multi-set rewrite rules in rewriting logic[5,22].This approach allows true concurrency in the distributed setting.The most interesting reduc-tion rules are discussed in the following paragraphs,the remaining rules are available in Appendix A.Reduction rules for expressions.An asynchronous method call creates a new,sleeping future in the configuration,containing the details of the call.The identifier of the future is returned immedi-ately to the caller,who can then proceed.(R ED-C ALL)mid is freshpq fds oidpq fds mid mid oidA read operation on a future variable blocks the active process until the original asynchronous method call has been completed, i.e.,when the future with identifier mid in the rule below is in (completed)mode.Note that blocking the active process does not reschedule another pending process on the same object.(R ED-G ET)fds mid midfds midIffields are thefields of a class,let defaults default.Object creation introduces an instance of class in the configuration,giving default values to the new object’sfields:(R ED-N EW)oid is fresh fds’defaultspq fdspq fds oid fds’Remark that if constructor methods were added to the language, object creation could also be defined as an asynchronous operation in a similar manner as asynchonous method calls. Reduction rules for guards.Guards determine whether a process should be released and another process rescheduled.The polling on32006/10/2a future variable determines whether a future has completed:(R ED-P OLL)pq fds mid mid modepq fds mid modeNote that in contrast to(R ED-G ET),polling a future at a release point()enables the release of the active process and the rescheduling of a blocked process inside the object.A guard in an expression,for example, will always cause the release of the active process:(R ED-W AIT)pq fds pq fdsReduction rules for statements.A process at a release point will proceed whenever the guard is true.Otherwise it will release.When the process is released,the same guard is reused when eventually rescheduling the process,except that any clauses are removed from the guard.Thus the effect of,e.g.,is to uncon-ditionally release an active process,but in the released process the statement replaces the statement above. When the process becomes a canditate for rescheduling its guard will be and the process is able to proceed.(R ED-A WAIT)fdsfdsReduction rule for rescheduling.When an active process is re-leased or terminates,the active process is replaced by the pro-cess.This process allows a release process from the process queue to be scheduled for execution:(R ED-R ESCHEDULE)fds fds Reduction rules for method invocation and return.A method call results in a method activation on the callee’s process queue.As the call is asynchronous there is a delay between the call and its activation,represented by the sleeping future in the configuration. After method lookup,a process is created which binds the methods formal parameters to the actual arguments of the call,sets the local variables of the method body to their default values,and has the body of the method as its list of statements.This process is added to the process queue,and the future changes its mode to active.This mode change prevents multiple bindings of the call.(R ED-B IND)mbody srdefault mid sr oid fds mid oidoid fds mid oidWhen the execution of a process is completed,the return value is stored in the appropriate future in the configuration,as identified by the pseudo-variable of the process.This future changes its mode to indicate that the method has completed.The active process becomes.(R ED-R ETURN)midfds mid oidfds mid oid Reduction rules for merge.Either branch of a merge statement may be selected for initial reduction.(R ED-M ERGE1)fds fds(R ED-M ERGE2)fds fdsWhen one branch of a merge statement completes,the other branch is scheduled:(R ED-M ERGE-S KIP)fds fds Reduction rules for release.Process release is complicated by the merge()operator.If a release occurs within a merge,the other branch of the merge is thefirst candidate for rescheduling —rescheduling is local to a method,whenever possible.If the other branch would also immediately release,then the process is released,after which a suspended process may be rescheduled. Let be a state(mappingfields and local variables to their val-ues).In order to formalize this notion of release,define a predicate enabled on guards,futures,and states which determines whether a guard will not directly release as follows:enabled falseenabledenabled var enabled varenabled mode where mid_mode_ enabled enabled enabledThe predicate is lifted to program statements as follows: enabled enabledenabled enabledenabled enabled enabledenabled enabled enabledenabled true otherwiseNote that the contexts and redexes do not factor an expression uniquely.There is one place where they overlap.Expressions in-volving can sometimes be factored as bothand.A clause is added to the reduction rules for to ensure that evaluates where possi-ble instead of—the difference is that in thefirst case, local rescheduling occurs within a process,whereas in the second case the process is released.The reduction rules for release are:(R ED-M ERGE-R ELEASE1)enabled fdsfdsfds(R ED-M ERGE-R ELEASE2)enabled fdsfdsfds(R ED-R ELEASE)fdsfdsContext and parallel reductions.A reduction applies to a sub-configuration,which is captured by the following reduction rule:(R ED-C ONTEXT)config configconfig config config config42006/10/2Let denote,i.e.,some configuration constisting only offuture objects.The following rule enables futures to be shared between concurrently evaluating configurations,increasing the amount of concurrency expressible in the rules.(R ED-P ARALLEL)config config config configconfig configconfig config config configAs the futures may evolve in both reductions,they need to be recomposed in a consistent way.Let be an idempotent and symmetric function collecting futures from and,which resolves conflicting futures with the same mid as follows:mid mc mid mc mid mc mid mc mid mc mid mcmid mc mid mc mid mcand undefined otherwise.New futures in the reductions will be located in config and config.The rule(R ED-P ARALLEL)allows futures witnessed by one process to be changed by another.This is consistent,as only one process may change the future.2.3Synchronization and Self-callsThe read operation on a future variable is blocking,and may therefore be used to introduce synchronization points in the code;e.g.,with the statements the active process is blocked after making a call to until the call has been completed, resembling a notion of synchronous call.The language naturally supports asynchronous calls to self, ,which create local processes to be executed at some point when the active process is.However synchronizing on local calls is problematic:the statementslead to deadlock.In order to execute a local method the pro-cess needs to be released,as in the asynchronous call sequence.This sequence does not capture a direct transfer of control between the active process and the call to,but enables any other blocked processes in the object to be activated before the call to.Consequently we prefer to un-derstand synchronous self calls,with syntax such as,as an orthogonal language issue which can be adapted from standard approaches to recursive calls by refining our notion of a process either as a stack of calls or by expanding local calls in place.3.TypingThe section presents the static semantics for our language.The type rules for programs,classes,method declarations,and standard statements follow those of Featherweight Java or ClassicJava,and may be found in an Appendix.Emphasis here is on the rules for the particular constructs of the language.Recall from Fig.1that the types of the language are, class names,and.The latter type identifies a future variable of type.The typing environment binds variables to their type and has the following grammar:The rules for the read and polling operations on a future variable and for guards are given as follows:(E XPR-G ET)(E XPR-P OLL)(S TAT-A WAIT)(G UARD-W AIT)In order to specify the well-formedness of runtime configura-tions,the typing environments are extended with type informa-tion concerning object and future identifiers:oid midA process inside an object is well-formed(i.e.,)if its local vari-ables have values matching their declared types,and the statement being executed is well-formed in a typing environment which contains thefields declared in the class of the object.The process is always well-formed.(V ALUE)vv(I DLE)(P ROCESS)A configuration may be an object,a future,or the composition of two configurations.Configurations are well-formed whenever their constituents are well-formed and the objects and futures have unique identifiers.An object is well-formed whenever the values in itsfields have the type declared in the object’s class,and its active process as well as all the blocked processes in its process queue are well-formed inside the object.(O BJECT)oidfields fdsfor eachoid,C fdsThe(delayed)method call stored in a future must be a valid method call to the callee.The type of a future identifier mid must be of the form,where is the return type of the method being called.Finally,the value stored in the future must have the correct type,after the future has completed.(F UTURE)oid mid mtype mmode vmid oid m v mode vThe following collects the identifiers defined in a configuration:cfig cfig cfig cfigoid___oidmid___midThe rule for composing configurations is given as follows:(C ONFIG-J OIN)config configconfig configconfig config3.1Meta-TheoryThe language presented here resembles Java(say,ClassicJava[12]), whose type soundness(at the class,object,and method level)is well understood.Fortunately,the additional concurrency constructs do not significantly complicate the proof of type soundness.Indeed, even the introduction of futures only requires a minor change to the standard progress result.52006/10/2In order to ensure the soundness of the system,futures must behave sensibly.In particular,the behavior of futures is crucial for the(R ED-P ARALLEL)reduction rule and for the proof theory.We define the following relation on futures:oid oidoidNow reconsider the rule(R ED-P ARALLEL),which allows the future shared between two parallel reductions to change in one reduction,though not in the other—enabling a greater degree of concurrency to be captured by the operational semantics.An instance of the rule may beconfig comp config compconfig comp config compconfig config comp config config comp comp wherecomp mid modecomp mid modecomp mid modeIf the configuration config config comp is well-typed,the object identifiers in the configuration are unique,so the object with iden-tifier can only be present in one of the subconfigurations.It fol-lows that comp can only be modified in that subconfiguration,so we must have that either comp comp or comp comp.With-out loss of generality,we may assume the former,and it follows from the definition of then comp comp comp.The only reduction rules which affect the value of a future are:(R ED-C ALL) initializes a future to mode(sleeping);(R ED-B IND)changes a fu-ture’s mode to(active);andfinally(R ED-R ETURN)sets the value of a future and changes its mode to(completed).No operation af-fects the value of a future which is completed.Hence,the following lemma holds for the(R ED-P ARALLEL)rule:L EMMA1.Given the above set-up,comp comp is defined and comp comp comp.A consequence of this lemma is that after a parallel reduction, all the futures which were shared in the two reductions remain valid:i.e.,is never undefined.The definition of is naturally extended to configurations in a pointwise manner:config config if and only if comp comp for all mid config such that comp config,comp config,and comp comp mid.The following property holds for reductions:L EMMA2.If config and config config’,then config config’.Subject reduction can then be established for the language:T HEOREM1.If config and config config,then there exists a such that config’.In order to give a progress theorem,wefirst need to distinguish between expressions which“go wrong”and are excluded by the type system,those which result in an error not detected by the type system,specifically,pointer exceptions,and those which block.The following redexes are error redexes:The following redex is a blocking redex:midA progress property can then be established for the language: T HEOREM2.If config fds and, where is a redex which is neither an error nor a blocking redex,then there exists a reduction involving,namely,config fds config fds’Furthermore,if and_config,then the above statement also holds.4.ExamplesE XAMPLE1.We consider a version of the sieve of Eratosthenes in which each prime number is represented by a concurrent instance of class.Each object checks whether it is a factor of given integers using method.If this is not the case,the integer is passed to the prime number object by a call to the latter’s method,which repeats this test for the next prime number.In a distributed environment,calls to an object from some object may overtake calls from another object.This could have the undesirable effect in our example,as factor division tests may be skipped.For example if is executed after,25may be taken for a prime number. Thus a certain amount of synchronization is required for the prime number sieve to function correctly.In the code below,the sieve is not completely sequentialized,but allows two factorization tests to be performed concurrently.Synchronization is achieved by letting the second computation in a prime number object wait for the completion of the call to the next prime for the previous integer before passing on the present integer to the next prime(if the factorization test for the present integer fails).This is done by introducing a local future against which the call to the sieve method of the next prime is synchronized.E XAMPLE2.To illustrate how futures may be passed between objects,we consider a class which converts a future into an event notification service.The example shows how polling in an object may be delegated and the result returned to a different method of the same object.In the example,the future result from a method call made in method of class is passed to an new instance of.The waits on the future object to obtain its result,before passing the result to the method of the original instance of.Notification may also target a different object of class as in a publish/subscribe service[9],where futures are published and subscribers are notified for every completed computation.62006/10/2。

相关文档
最新文档