r developers. Composition Studio(s) are developers wishing to use Telecom proxies exposed by SewNet need to integrate their development environments (or composition studios) with SewNet Core. These studios range from programming platforms Service Composition and Control (e.g., Eclipse environment) to model-driven tools (such as those containing Unified Modeling Language (UML) editors for service design and representation) to work- flow editors allowing services to be composed in a language like BPEL. For inte- gration with SewNet Core, a studio needs extensions along three dimensions. First, its service design (or programming) editor should provide the ability to iden- tify the Telecom blocks from the non-Telecom blocks. Second, it should offer Lookup, Publish, and Blogging interfaces for proxies provided by SewNet core. Third, once proxies have been selected for different Telecom blocks, a Code Generator module should traverse the structured format of each proxy to seam- lessly integrate it with the rest of the application code.* It is interesting to note that a particular composition studio may use one or more different types of proxies. For example, while creating a Java Server Pages (JSP), developers can incorporate Java as well as JavaScript proxies. 1.2.4.2 Composing Telecom Services Using SewNet Once a composition studio has been integrated with SewNet Core, the following steps illustrate the process that application developers follow to compose Telecom services: 1. Service design: The developer designs the service using drag-and-drop or other mechanisms supported on the design editor. In this step, Component ser- vices, Logic blocks, Control flow (sequencing, fork, join), and SO on are defined by the developer (cf. Figure 1.1). 2. Proxy lookup: For each Telecom block, the developer obtains a set of matching proxies from repository, based on keywords, input-output, or both. 3. Proxy selection: From candidate proxies suggested by SewNet, the developer selects those that best fit the requirement. Proxy selec