As we have seen earlier, the name if is still accidentally a reserved keyword, but the names of the other pointcut designators are not, so they can be used in pointcut expressions, for example in name patterns.

a named pointcut with the same name as a primitive pointcut designator can not be used (though surprisingly, it can be declared without warnings).


The result in this section can be extended to most other functional program transformations, because witness race freedom is an entirely semantic condition.

the static checking algorithm described in Section 4 is not as forgiving, which is why we have restricted the set of program transformations to that of the semantics of .wit .


My conviction is that, despite the overhead introduced by the semantic matching machinery, the advantages of a translucent approach will outweigh transparent replication schemes.

it is especially important to see if at some degree of translucency this approach turns to be ineffective.


The use of the Neighborhood Discovery module furthermore avoids inconsistencies that could occur, if channel update messages get lost.

this does not reduce the network load, because these messages are implicitly exchanged anyway by the Neighborhood Discovery module.


A second kind of mechanism used by the nDSM.code generator also works using reflection: The CodeConstruct-classes can be declared to have roles or  inherit functionality declared in framework interfaces or implemented in framework classes specializing the gen-erated CodeConstructGenericType class.

the model should not know about the implementation of the framework.The solution works on basis of custom anno-tations.


The slight increase of execution time is due to that method invocations between local classes will be forwarded by the proxies and the endpoint.

of.oading can really help improve the app performance.


Healthmonitoring systems such as MANNA [27], LiveNet [25], and Memento [26] employ sni.ers or speci.c embedded code to monitor the status of a system.

such applications monitor low-level components of the system instead of highlevel application requirements.


The speedup columns in Table 1 and 2 show that both the graph partitioning scheme and the graph partition scheme are e.ective for the two-tier con.guration.

for the three-tier con.guration, although the graph partitioning algorithm could still provide signi.cant speedup over the MPI default placement scheme, it is completed exceeded by the graph mapping schemes.


This is done by setting all the points in the NbE(p) as not processed.

in the case that one of the points in NbE(p) belongs to a cluster c,we need to set as non-processed all the points of the cluster c as well.


The ontology de.nes the entities of an XP process and their interrelations.

we chose the XMI approach with a UML model instead of an ontology so as to use frameworks that automatically convert a model into an XMI schema and an instance of the model into an XMI document.


3 Ef.cient Runtime Alignment Handling In this section, the examples have compile time alignments for illustration purpose.

the proposed algorithm is suitable for runtime alignment because we demonstrate that our algorithm never uses speci.c alignment information at compile time.


In all these cases, it is very important to protect user privacy to the maximum extent possible while performing the same computation with no loss of accuracy.

existing techniques such as multiparty computation [8, 6] fail to provide a practical solution for systems with realistic scales due to their heavy use of public-key operations for information hiding and/or veri.cation.


Worst-Case Delay Analysis of Master-Slave Switched Ethernet Networks M. Ashjaei1, M. Liu1, M. Behnam1, A. Mifdaoui2, L. Almeida3, T. Nolte1 1 Mälardalen Real-Time Research Centre (MRTC), Mälardalen University, Västerås, Sweden 2 University of Toulouse, France 3 IT/DEEC, University of Porto, Portugal ABSTRACT Switched Ethernet is increasingly used in real-time communication due to its intrinsic features such as micro segmentation and high throughput.

cOTS switches may impose long blocking times due to their FIFO queues and can also experience bu.er over.ow in outgoing queues due to uncontrolled packets arrival.


It is able to support most management functions found on the original Java platform.

priority manipulation methods of the standard Java ThreadGroup class are overwritten.


Each of these scenarios requires the exchange and analysis of recent, locationdependent information.

there are many obstacles to the seamless sharing of information stored on mobile devices, including: (1) heterogeneity of data formats, (2) differences in communication means and protocols, and (3) privacy concerns of data subjects.


Several subjects reported learning new tools via peer interaction with a peer by working at separate, geographically distributed workstations using a screen-sharing program.

additional constraints have to be satis.ed in order for such peer interaction to take place.


Many of these devices support downloading of third-party applications.

this support for applications from potentially untrustworthy sources comes with a serious risk: malicious or buggy applications can lead to denial of service, .nancial damage, leaking of con.dential information on the device and so forth.


Others,such as those described by Krintz and 4The standard annotations de.ned in the CLR Speci.cation are much more diverse; for example,the security permission annotations are subjunctive.

since they are stan- Calder [18],are used to reduce the overhead of dynamic compilation or to improve performance.


are now batched with the actual event e ' , which can begin executing once e releases access to c.  5 Dynamic migration With the distributed run time system described in the previous section, EV E N T WAV E programs written for n logical nodes can run on m physical nodes.

the ability to run a distributed program across additional nodes is only one part of the elasticity story.


Assignments: In general, an assignment lvalue := e is translated into the assignment of the abstract value of e into the abstract cell corresponding to lvalue.

for array assignments, such as x[i]:= e, onehas to note that the array index i may not be fully known, so all cells possibly corresponding to x[i] may either be assigned the value of e, or keep their old value.


And testing is their most important tool to achieve this.

the testing of the mobile application on smart mobile devices is difficult.


Statically bound functions are called directly, without dispatchers, thus it depends only on the static type of an ob ject which one is called.

dynamically bound functions are called by a dispatcher routine which evaluates the actual dynamic type of the ob ject by evaluating its predicates.


Thenumberofsensorsusedinthisstrategycan be minimized by deploying one sensor at a time.

a cost is usually associated with each deployment of sensors and deploying one sensor at a time may not be cost e.ective if the cost of deployment is su.ciently large with respect to the cost of single sensors.


Thus, representation and active involvement of the manufacturing function in project teams are required, which complies with the participants' view of project team work.

some of the respondents at both companies experienced difficulties in allocating manufacturing competencies in early phases of the projects due to a lack of resources, which is described in the secondary issue I12.


Decidability and Completeness As our type system is not syntax directed, it is not clear whether type checking is decidable.

vc s type system is decidable, and we believe that a decidable fragment of our system corresponding to vc can easily be carved out.


The Taverna workbench allows users to graphically build, edit, and browse workflows.

it is a domain specific system and workflows are limited to the specification and execution of ad hoc in silico experiments using bioinformatics resources.


If platforms are preferred and no kernels are available, then Helios returns an error.

if no platform is preferred, then all satellite kernels are kept.


For the parts on AspectJ and Tracematches, basic knowledge of the respective concepts is advantageous.

the examples given in the tutorial can also be used as a starting point for approaching the topic.


A program that uses global variables could be subject to unchecked modi.cation by advice that writes to those variables.

in this regard metaproperty aspects present no more danger than any other client code or added module.


INTRODUCTION The idea of generating documentation for XML Schemas [1] seems compelling: XML Schema documents use an XML syntax, and with XSLT a powerful transformation language for XML is readily available.

the task is not as simple as it might seem.


The apparent success of the EGP in regard to both the popularity of the games created and with the apparent learning that such a hands-on approach produced was a significant motivation for the original idea of this class.

given the novelty of the technology, and the fact that we had both undergraduates and graduate students who were not experienced game designers or programmers, we extended the time frame for completed prototype to four weeks rather than one, and emphasized background skills and knowledge where appropriate.


Peephole stack optimization will also not work for PHP, which does not use an operand stack.

we use a number of our own local optimizations, some of which were discussed in Section 4.5, which allow us the speedup of 1.53.


These counter examples are concrete paths.

our simulator handles more complex paths and supports join.


Examples of available solutions are Amazon EC2, IBM Virtualization Manager, Platform VM Orchestrator, Xen Enterprise, OpenNEbula and VM Ware ESX Server.

although Cloud computing is extremely .exible, due to physical limits it cannot support massive amount of customers, unless of huge investments.


They are also applicable to weakly typed languages, such as C, in which (due to casts) values present at runtime may not re.ect the declared types of the variables holding those values.

conservative collectors can mistake for pointers integers and other non-pointer values whose bit patterns, when viewed as pointers, happen to represent pointers into the heap.


The annotation schemas could also be interpreted at inference time, rather than being compiled upfront.

the use of Prologas AUTOCERT simplementationlanguagemeansthatwecould simply compile the schemas on-the-.y, and thus achieve the same effect as with an interpreter.


The 2-level register file has a performance degradation of 3.1% assuming 1-cycle searches of the active list, but increases energy-delay by 115%.

bypass hint has a performance degrada- tion of 1.8% with a register file energy-delay savings of 61%.


Then, the machine informs the user it has .nished the preparation, prompting for the addition of sugar or sweetener, .nally delivering the drink.

this co.ee machine is known to sometimes overheat, requring manual drainage.


The number of test cases increased quite quickly to 317, and then to 420.

this change cannot be completely credited to the exploitation of coverage visualization and to the new possibilities for scrutinizing the tests and the productive code.


While the stateof-the-art of distributed computing has changed signi.cantly over the past few decades, these two ideas are still relevant today.

the emergence of shared distributed computing platforms, such as PlanetLab [19] and GENI [11], has created new opportunities for educators to give students access to diverse sets of distributed resources, even when budgetary constraints are present.


The initial bag function ok-bag is not inferred by Agda.

the right-hand sides of ok-bag, and the initial bag of sat, are inferred.


RADAR sapproach of factoring all reasoning about concurrency into a race detection engine is less precise than a custom analysis that may also generate facts from concurrent writes.


3.1.1 Adding Blame to Threesomes is Subtle Threesomes are easy to implement, since & is a simple recursive function, and threesomes without blame are easy to understand.

threesomes become somewhat mystifying when they are enhanced with blame tracking.


STJS [32], PYJS [31], and P2JS [30] can directly translate from other languages to JavaScript, without using metadata.

tAE-JS focuses on interfacing with the metadata facilities of a foreign language and automatically maintains the correctness of the inter-language interfaces.


For better modularity of doc comments, this text should be put in the doc comment of the before advice of the FrozenChecking aspect.

this approach is not acceptable because the aspect is not public and hence the doc comment of the aspect is not included in the API documentation.


[2] also noted that test suites constructed by picking a series of test cases that each increase coverage tended to be more e.ective than test suites of the same size constructed by randomly picking test cases.

this result lends at best indirect support to the claim that coverage is a good adequacy criterion, since the coverage-based test suites were constructed using a particular algorithm.


By providing formal syntax and semantics, ADLs facilitate analysis, which provide input for engineered evolution.

existing ADLs do not provide any techniques to specify architectural change in the context of evolution [6].


However, the traditional loop tiling only considers the singleton loop and lacks the consideration of prefetching and scheduling.

grouping computation in loop tiling will introduce more loop index variables and increase the loop depth, thereby incur more control overhead.


also provide a method for the selection of training data.

run time of this method is exponential and does not scale with large data sets.


This relationship holds only between expressions that agree in the degree of their leading terms and in the coefficients of those terms, unlike the Is_O relationship that is silent about the coefficients.

the definition is sufficiently sloppy to ignore lower-order terms.


It is unlikely that in an early stage, changing the diagram by automatic means, for example with layouting algorithms will provide better results for conveying information.

to reduce overhead information, diagrams could be cleared of irrelevant elements, i.e.


Therefore, it was speculated that people would replace paper documents with electronic documents and realize a paperless office.

the fully paperless office has not been achieved yet.


If the time di.erence exceeds a threshold, a deadlock is warned because it appears that every DP is hungry but none seem to be able to eat.

if the di.erence is less than the threshold, the monitoring thread will keep updating current when the event condition is true.


Java already has an intraprocedural analysis [32] to ensure that every local variable is de.nitely assigned before it is used.

java cannot safely prevent reading from uninitialized .elds.


Design pattern names from these collections like ITERATOR, VISITOR, COMPOSITE, PUBLISHER-SUBSCRIBER, PROXY, or MODEL-VIEW-CONTROLLER have become an integral part of the daily language when software developers speak about software construction.

the roots of the design pattern approach lie in architectural theory.


This appeared to be necessary to evaluate hybrid pointcuts correctly using backward chaining [11].

currently, a more practical implementation of HALO relies on an implementation strategy based on forward chaining.


Upon completion, every noncolored model part needs to be checked.

the two-phase separation is largely based on the fact that a single phase emphasizing both of these areas would require a checklist too broad to be feasibly applied.


[T 8.T8]] mapping f list listlist listlist list]op to .g.g .f , and a polynomial list-algebra P8 over [T8.T 8 , list list which is simply the continuous version of P in Example 4.1.

here, a subtlety about termination behavior slips in: the continuous monoid homomorphism h8 is not strict.


Together, the header sets in the inspector types, and the invariance oracle, allow the compiler to generate effective switch-level rules even though the inspector function itself cannot be analyzed.

the language of predicates does have one signi.cant limitation: it depends upon permanent invariance of predicates.


An interprocedural analysis would permit a less conservative call rule for receivers with modi.er peer and this.

in the presence of dynamic method binding, interprocedural analyses are inherently non-modular because they require knowledge of all method overrides.


Inspection reduces the volume of communication signi.cantly by eliminating redundant communication and the inspector-only is almost 40% faster than the baseline version.

iteration reordering and computation-communication overlap tolerates the communication latency even further and that version is faster than both the inspector-only and hand coded versions on four, eight and sixteen nodes.


For example, the C++ language uses the .rst approach, thus an object (with virtual member functions present) contains a pointer at the end of its representation, which points to a table storing the start addresses of its virtual methods.

low-level data structures (page table entries, task descriptors, gate descriptors etc.)


A representative can then select remote communities more ef.ciently and purposefully and direct questions to communities with potential answerers for a topic.

a sophisticated method is needed to resist linkage attacks where joins/leaves of nodes in communities cannot be easily correlated with entries added/removed from the DHT.


In fact, since most objects tend to die young, it makes sense to use mark-split in the young generation and bene.t from the fact that mark-split s complexity is proportional to the size of the live data set, not that of the heap which is collected.

the bene.t may be offset by the fact that the nursery is typically small in size.


We showed that the values of the normalized modularity score are similar and stable during software evolution for each applied technique.

there are big structural differences in computed partitions.


From our perspective, the greatest advantage to have such a course was that we were not required to explain the basics of modeling.

(i) the course was based on relatively old materials, (ii) exams were not focusing on the essence of the new viewpoints, and (iii) the motivation was not clear enough for the students.


Therefore, if the technique to model a software specification were a Finite State Machine (FSM), some methods that can be applied to generate test sequences are: T, UIO, DS, W and Switch Cover [2], [3], [4] and [5].

features usually present in complex software requirements representation, such as parallel activities and encapsulation, are very hard to represent using FSMs.


EigenTrust [11] presents an algorithm similar to PageRank [15] that computes a trust value by assuming trust is transitive and demonstrated its bene.ts in addressing fake .le downloads in a peer-to-peer .le sharing network.

few of the reputation management work so far have focused on the vulnerabilities of a reputation system itself.


Therefore, researches on clients, which are creating profiles by using various kinds of user in-formation, are required.

most researches of profile configuration have been studying focused on hardware information such as device capability, network condition, etc.


Frequently, the actual output is almost right: most parts of most output arguments are correct, and only a small number of parts in just one or two output arguments are wrong.

unless the debugger allows users to specify exactly which parts of which output arguments are wrong, the search inside the computation represented by the atom will not be able to focus on the part of the computation that computed the wrong part of the erroneous atom.


XWebCheckout and Google Checkout services provide similar APIs for order creation and management, payment processing, and order cancellation.

there are di.erences in the interface de.nitions (message names, number, and types) and how each service expects to exchange messages to ful.ll a functionality.


When the model fails to satisfy the desired property, further information is provided in the form of counterexamples, which trace some system executions that violate the property of interest.

the main limitation of model checking is that it can be used only if a .nite-state model is available.


For the problem we study in this paper, we will make use of the techniques for discovering simple correspondences between form elements and ontology elements.

we need to develop machine learning models to capture the complicated knowledge about semantic correspondences between complex structures among elements on the form and complex structures among elements in the ontology.


For example, xis in scope in the expression ER, while gis not.

the scope of identi.ers denoting relations is the entire GENSET script.


Moreover, there have also been some research work done on the detection of duplicate bug reports [10] and partial automation of the triaging process [9].

less attention has been paid to detect whether or not the bug has been reported through search feature before a bug report is submitted.


The problem with inc-or-id ostensibly lies with its use of re.ection (number?).

consider the following function: (de.ne (const-.ve x) 5) We may guard const-.ve with the contract (forall (a) a .


Creation of a view in the context of RDF would translate to creation of a view subgraph constructed by gleaning required data.

since RDF is a graph data model, the problem of subgraph extraction may not always be feasible or it may be too tedious to create the desired subgraph by gleaning suitable data.


This provides a clean interface to the annotations.It requires,however, that wede.ne a monadic algebra.

the alternative approachistodistributethe annotations overthe sum,i.e.instead of Sig :&: Pos we use the type type SigP = Op :&: Pos :+: Val :&: Pos Now, we are able tode.ne adirectinstance of theform instance Infer (Val :&: Pos) where inferAlg (v :&: p)= ... where wehavedirect access totheposition annotation p.now we have the dual problem: We do not have immediate access to the annotation at the outermost level of the sum.


256-distance analysis runs slower in .ve places, TreeAdd against the original on the PC, Tomcatv against x-means on IBM, Perimeter against 64-distance and Moldyn against x-means and the reverse kdistance on the PC.

the loss is extremely small (no more than 1% or 0.004 seconds) and happens on only one machine.


Many solutions have been proposed to stop gaming and collect accurate data.

these solutions have limited success because metrics data collection is a practice that is very organization-specific and very people-specific.


It is therefore very risky to assume that one can construct quality software without any kind of a process to offer some guidance in crucial situation.

according to our experience, there exists a significant amount of practitioners who do not see the need for a more rigorous approach to develop software.


The service mapping supports the implementation of this service.

the client agreement selector, which implements the Agreement Request interface, represents the logic that decides, which client will use which agreement.


With this feature, users can identify obstacles and/or possible threats to the UAS s .ight plan.

based on our interviews and test scenarios, we determined that many military personnel have not memorized all COA symbols.


However after E has reached 1km it starts decreasing, since the range will be so large that some of the nearby clusters will be merged.

this might prevent us from identifying events since we will consider two separate events as one.


The mean prediction error is large, 13.4%, when allowing only 16 samples per benchmark to build the predictor.

starting at 32 samples per benchmark, the model accuracy is good enough for practical usage (9.2%).


Applying knowledge management techniques to project activities can enhance productivity and reduce risks of failures.

it has been observed that knowledge management activities suffer from problems such as unavailability of structured information and lack of incentives to put extra efforts for these activities.


Strangely enough, this rounding error had been in the code for several years without being found a problem.

after detecting it, the developer could actually relate it to some unsolved, obscure error reports from the customer.


The more abstract, derived security metrics, for example user authentication, are represented as vertices in the higher levels of the graph.

the concrete measurements, e.g., whether or not the password given was correct and how many consequent failed attempts there had been, are represented as the leaf vertices.


If .bers were observable in images, the recovery would be geometrically equivalent to a 3D line reconstruction from multiple 2D image lines [Faugeras 1999; Quan and Kanade 1997].

since they are invisible at normal image resolutions, each .ber segment is .rst synthesized in space, then validated by orientation consistency from at least three views, and .nally optimally triangulated from all its visible views.


Conventionally, FTL reclaims all invalid pages during block cleaning.

in LTFTL, we need to take into account the pages that should be reserved for the time-shift capability.


If we would have designed these state machines by hand, some transitions could be saved by using composite states or transitions that are declared for a group of states.

this does not change the intrinsic complexity of the problem: Due to the fault-tolerance mechanisms, we must also keep track of 5 timers, and the number of signals to receive by the central station has grown from 3 in the idealized central station to 7 for the reliable one.


Research efforts to compile and optimize Python have been undertaken.

more compilation techniques and optimizations are needed in order to further optimize Python programs.


The platform relies on Dynamic Service Oriented Programming (DSOP) paradigm.

oSGi only provides a basic component model which is not su.cient for our requirements.


An example of such a diagram, showing a diffusion step from the Binary Welded Tree algorithm [4], is shown in Figure 1.

such diagrams are not in and by themselves good descriptions of quantum algorithms.


7.2 Advising Overloaded Functions From a programmer point of view, it can be interesting to advise an overloaded function (that is, the application of all the possible implementations) with a single aspect.

deploying aspects in the general case of bounded polymorphism is problematic because of the resolution of class constraints.


Second, in some refactorings, the signals added by the refactorings need to interface with the existing eventbased part of the application, hence, events must be generated from signals as in the case discussed for Figure 16.

we also experienced cases in which events can be simply removed and replaced with signals.


Much research has been carried out on CFs and many of these frameworks have been developed [5], [11], [12], [16], [17], [18].

little attention has been given to the version control in this particular context.


Likewise, the simpler functions also have little impact on the size of the entire application and have little impact on speed when they are not frequently executed.

best Fitness Value When Prohibiting Speci.c Phases prohibiting prior dormant and unenabled phases, which are depicted in Figures 19 and 20, had a more signi.cant impact since these techniques could be applied to all functions.


We believe that program code should remain independent of the execution context; thus, parallelization should eventually be left to the compiler and a runtime environment.

the large overhead of parallelization, which pays off only for speci.c inputs, calls for a runtime adaptive approach of parallel execution.


Through the platform, caregivers could put questions to the HPs who are members of the RPM and receive trustworthy answers.

one caregiver often wanted to put a question to a HP privately (even at the support group meetings, these exchanges occurred in private).


This research represents the first effort to extract mobile context in the semantic form by GPS.

semantic information here is limited by the limitation of mobile devices at the time of this study.


This way, they also achieve strong non-bypassability [22] and JVM independence.

the overhead of a full meta-object protocol might not always be desirable.


In GURPR each path is pipelined using URPR and then code is generated to provide transitions between paths.

this transition code is a bottleneck [32].


The codes for Maybe and Vec work for any generic operation.

although the de.nition of ngmap needed the DataGen argument, this argument must be implemented once per generic operation, just like TyConstEnv.previous work [26] could not de.ne a general code for datatypes like Maybe and Vec, and required signi.cant boilerplate at every instantiation of a generic function with a speci.c datatype.


Asjust oneexample, consider this codeinaJava-like language: Despite races between Threads1and3, intuitively Thread1does only one assignment so m or n or both stay 0.

weakisolation implementations using eager-update (Harris et al.


Hence, there could not be too many distinct rows.

these considerations apply to any random distribution of values in the dispatching matrix.


Modern scripting languages such as Perl and Ruby are often considered appropriate tools for coordinating shell tasks with general purpose computation.

their approach to integrating with Unix is no more sophisticated than most other languages.


If they work together, they could support the CM process more effectively.

for integrating them, the systems need to share a common conceptualization.


Empirical Studies of Embedded Software Development Using Agile Methods: a Systematic Review Mingjuan Xie State Key Laboratory for Novel Software Technology, Software Institute Nanjing University Nanjing, China +8613851806650 cherryxmj89@gmail.com ABSTRACT Agile approaches are proved by numerous case studies and reports to be effective and constructive in desktop software development.

the situation is quite different in the embedded world due to the unique characteristics of the embedded software projects, which bring many difficulties to developers.


The reason is that the data structure executes many search operations.

for a train input where hash set is suboptimal, vector is the best data structure.


Importantly, there is no need for a critical mass even the .rst professor to use CTS bene.ts from the separation of presentation and content.

there is a network effect o.ering greater bene.t (in the availability of more templates) as the number of participants grows.


Reactive update reloadsdataitemsfrom the server when a vehicle actually needs, and this scheme is mainly used in the cache management system.

reactive update is too late when there are many missing items in the gateway, especiallyjust aftertheperiodicinformation update.


As expected, for all 3 programs, when running under PDk=0 the program was un.xable.

in all 3 cases we were able to infer a correct fence placement using PDk=1.


This is also the case for most GPU speci.c languages, which de.ne kernels as a special function being invoked for each element of a range.

since kernels need to compute their position in the array, the closure logic functions are not translated directly into kernels.


In the library construction, because the number of sequences to be concatenated is determined by input angle, there is more .uctuation across inputs.

due to the unpredictability of the input, these .uctuations cannot be capitalized upon to improve performance.


Qualitative Analysis To be honest, our approach is not quite effective in acquiring execution traces for each feature.

our approach can reveal some unusual traces for most features.


Several bidirectional programming languages exist to aid programmers in writing a (sort of) forward transformation, and deriving a backward transformation for free.

the maintainability offered by such languages comes at the cost of expressiveness and (more importantly) predictability because the ambiguity of synchronization handled by the putback transformation is solved by default strategies over which programmers have little control.


4.1 FrontPage 2000 Microsoft s FrontPage 2000 product is sometimes erroneously viewed by Web professionals as a toy HTML editor.

it offers significantly more functionality than many of its competitors targeted at the same class of Web sites.


At the time, the current Hansei system was not yet developed, so the model was written directly as an eqc statem test and was less structured than the approach presented in this paper.

a simpli.ed model can serve as an example for Hansei.


Today instant replay or deterministic replay is a widely used technique in the domain of debugging parallel programs.

this approach achieve deterministic replay for non real-time systems only.


Existing object-oriented regression test selection techniques select tests that execute a different control flow path for the new program version.

as aspect-oriented features emerge, the selection becomes imprecise and thus is incapable for analyzing the aspect code.


Other sorting algorithms such as shell sort never obtained the performance of the sorting algorithms selected here.

they could be included in our framework.


[3]proposedan algorithm for scheduling objects and operations to caches and cores, rather than scheduling threads to optimize CPU cycles utilization.

optimizing CPU cycles utilization is still important and a major limitation of this work is that the algorithm relies on application developers to specify what must be scheduled.


However,formoregeneraldatatypes,itturnsoutthat weneedevenfnercontroloverthedistributionofgenerated values.Supposewedefneatypeofbinarytrees,anda generator: dataTreea=Leafa|Branch(Treea)(Treea) instanceArbitrarya=>Arbitrary(Treea)where arbitrary=frequency [(1,liftMLeafarbitrary) ,(2,liftM2Brancharbitraryarbitrary)] WewanttoavoidchoosingaLeaftoooften,hencetheuse offrequency.


In offshore software outsourcing, client may have more power over vendor at the initial stage of the relationship.

power may shift to vendor after long term outsourcing work to a particular vendor when the renegotiation is required.


A product specially created to address this market niche would be more competitive.

increased complexity has increased the investment needed to develop new products to such a degree that few niches are big enough to warrant specific development.


After compiling the interpreter to a format supported by an existing symbolic execution engine, one can symbolically execute an interpreted program by symbolically executing the interpreter with the target program as argument.

even though in principle this direct approach yields a symbolic execution engine for the target language, it is impractical, due to the engine not being aware of the control .ow of the interpreted program.


Example of recent works include [2, 4, 19, 26].

in most of the proposed approaches, possibility of fragmentation remains and for long running program, object-moving compaction is inevitable.


Simple partitioning seems good enough in cases when r and p rarely change.

the ability to cheaply and frequently repartition on the .y can allow a great deal of .exibility, allowing adaptation to changing operating conditions, be they due to spikes in load, changes in the data set, or equipment failure.


Moreover, the embedding capacity comes up to 2 bpp after five-layer embedding processes are applied.

we found that the capacity of secret data can be greatly improved if pairs of pixels to carry secret data are implemented in an overlapping way.


For the asynchronous (non-blocking) DMA operations, the issue time is typically trivial compared to the transfer time.

it is not the case when there are many DMA operations issued at the same time.


Similar threat scenarios were also identified for the other three trust models and executed against their CRASH prototypes.

a detailed discussion of all scenarios and the corresponding trust model behavior in those scenarios cannot be included here due to space constraints.


This work can account for inter-object references in a fairly general way.

in both these systems the typestate speci.cation is entirely manual.


The general answer to such a question is No .

1 We use the term defect to refer to an error in the source code and the term failure to refer to an observable error in the program behavior.


A package template may be instantiated at run-time by utilizing the instantiate method of the supplied PT class, as shown in the following construct: PT.instantiate { template T } 3 This statement will make a copy of all the classes and interfaces de.ned in the template T available to the caller of the static instantiate method, preserving potential type hierarchies as de.ned in the template.

instantiations may also be more elaborate.


Figure 3: Extension of problem frames Figure 3 presents one approach to the extension of problem frames with explicit linkages between Map processes and domain entities.

we have proposed two more approaches to extend problem frames for Map models [13].


Such a prediction method is very simple.

its has a lower hiding capacity then other predictor.


We have shown a performance advantage of our solution over Charm++.

it should be noted that Charm++ can handle load imbalance arising because of dynamic behavior of an application, whereas our system cannot currently do so.


Starting the reduce tasks early can help overlap the map tasks execution with the shuf.e phase and improve performance.

starting the reduce tasks too early creates contention for the cluster resources that are also needed by the mappers.


For example, mapping every component onto the same node is guaranteed to satisfy communication constraints.

model synthesis tools may have trouble dealing with this constraint, because a transitive closure operator is required.


To ensure the correctness of the speci.edsystems, approaches have been presented which automaticallyverify whether a UML model is consistent, i.e.

free of con.icts.if the model is inconsistent, these approaches do notprovide further information to assist the designer in .nding the error.


For traditional quorum systems, it is known [2] that when servers fail independently (in fail-stop fashion) with probability of p<0.5, the majority quorum system [15] (where a quorum is any majority subset of all servers) achieves the best availability.

even in this optimal quorum system, the system needs to have (n+1)/2 functioning servers to be available.


State-of-the-art approaches mostly reside on a two-phase process: first, they apply the non-conflicting changes and then let the user select the change to be prioritized out of two conflicting changes.

our approach explores arbitrary sequences and the result is the most applicable sequence of operations found by the genetic algorithm.


Thus, when an user request experiences a failure and there is a need to access one these shared memory locations, we can restore the corrupted value to its original uncorrupted state, on demand.

it is worth noting that pro.ling only gives us an underestimate of the set of memory locations that are shared across user requests.


The high ratio of monomorphic calls explains this result, since the difference between MC-S and MC-BTD0-G results only from monomorphic calls and BTD2 hardly improves it.

link-time optimization (O) provides only a small improvement.


Our speci.cations conservatively handle re.ective features such as for-in loops and computed property names: renaming a property that could be accessed re.ectively is forbidden.

eval and equivalent constructs are not handled at all; instead, we emit a warning about possible unsoundness if a use of eval is detected.


Over the years, a couple of different modeling paradigms with a plethora of di.erent approaches have been proposed.

only little attention was spent to compare these concepts.


This GPU kernel writes to Ec so the CPU-held copy of Ec is marked as stale.

no CPU code ever reads Ec hence there are no stale accesses to it and hence no transfers back to the CPU are triggered by the coherence mechanism.


In this respect, Statecharts come into picture.

dealing with higher-level techniques increases complexity in developing an automated environment and demands more computational effort.


Data context graph is a compact representation of data context.

it is difficult to discern some access sequences through the same object type, because accesses to the same object type are merged together.


Hence, we assume, using the lateral views claim extra cognitive resources, especially for participants that are inexperienced with such views.

it means that users could get better results with training.


INTRODUCTION Refactoring is an integral part of formal and informal soft ware development processes in many organizations and tool support is provided by popular development environments such as Eclipse.

the intent to preserve functional behavior is not always achieved, nor is it easily assessed.


Other researchers also studied on determining optimal effort distribution across lifecycle phases based on defect-introduction and defect-slippage considerations [19, 20].

few of these studies have performed a comprehensive analysis of phase effort distribution patterns and its possible causes.


In the example, implementations of IMain can only access instances of Activity, and create or modify instances of Process.

implementations of IAction2Step can only refer to instances of StartAction and StopAction, and create or modify objects of class Step.


Currently, we analyse program classes for patterns and match these against the rule set off-line (mainly for ease of experimentation).

this process is quick and simple and we plan to move it into the class loader in future.


A Byzantine node may disrupt the protocol either by trying to disseminate corrupt information, or by broadcasting during veto rounds.

in order to delay the broadcast, the Byzantine node must continue to expend its broadcast budget.


This has led to a need for keeping track of different ontology versions [8], as the operation of software will change as the ontologies it uses change.

existing approaches to ontology versioning have worked on static ontologies.


Note that C++ has a similar feature to Java s static initializers: a code module may declare global variables of object type, and the respective classes may have constructors with arbitrary code.

unlike our implementation that uses injected checks, C++ uses sophisticated linker techniques to reduce the performance penalty.


Further, it opens up new opportunities to remove redundant work at a .ner granularity.

issues like increase in static (and dynamic) code size and performance degradation cannot be neglected (refer to Figure 1).


We see that BAL always achieves peak temperature reduction, since our balancing step after the original performance-oriented scheduling can take care of the load of the functional units and re-distribute the loads from the highly loaded functional units to the lightly loaded ones.

iPC does increase the gap between functional units, since it always tries to use a subset of functional units.


As we obtained 34 answers, the confidence level is about 85% using the formula described on section 2.3.

this confidence level could be higher if we could count the real number of researchers that have received and read the invitation email.


Weaving a Social Fabric into Existing Software Li-Te Cheng, John Patterson, Steven L. Rohall, Susanne Hupfer, Steven Ross IBM Research Collaborative User Experience Group Cambridge, Massachusetts  {li-te_cheng,john_patterson,steven_rohall,susanne_hupfer,steven_ross}@us.ibm.com ABSTRACT Contextual collaboration is a promising approach to embedding new collaborative features into existing applications.

incorporating such new features may be too difficult for applications without extensible frameworks or too complex for legacy, custom, and mission-critical applications.


Thus, OP may suspect correct processes .nitely many times in any execution.

oP must converge at some point, after which the oracle provides reliable information about process crashes.


Indeed, some of these are expected to ensure sists today of an ensemble of Java classes distributed over up to 98% of availability.


[16], a gateway node is selected per cluster, and connections are established among all gateway nodes: all inter-cluster communication goes through gateway nodes.

this can be unnecessarily prohibitive and introduces bottlenecks at gateway nodes.


Excess communication overheads (e.g., the SU requires the intervention of the OS to talk to the network) can also hurt performance.

our simulations made conservative assumptions about hardware capabilities, and similar results should be obtained on any system with adequate network bandwidth and low overheads.


To minimize the overhead, there is no built-in support for a user-level task to know whether it is adopted or not.

if such knowledge is needed in speci.c cases, it could be implemented at the application (or framework) level on top of the basic primitives provided by Resilient X10.


An exponential distribution exactly models systems in which service times are memoryless that is, the probability that a task will complete in the next unit time is independent of how long the task has been running.

not all systems have memoryless service times.


unless great care is exercised, .rst-class behaviours can lead to a number of performance problems.


For the case when f =1,with one failure and no batching(b = 1), Zyzzyva and  50 40 30 20 10 0  0 1 2 3 4 5 0 1 2 3 4 5 Faults tolerated Faults tolerated Batch size = 1 Batch size = 10 Bottleneck server cryptographic operations  Faults tolerated Faults tolerated Batch size = 1 Batch size = 10 Bottleneck server messages Figure 7: Fault scalability using analytical model Zyzzyva5 provide 1.8 and 2.6 times higher throughput than PBFT, respectively,becauseof additionalcryptographicand message overheads as described above.

with the batch size of 10, PBFTperforms 15%better than Zyzzyva as the cryptographic overhead of Zyzzyva is 16% higher than PBFT.


The problem is typical of random testing: it is dif.cult to generate input values that will drive the program through all its different execution paths.

dART is able to dynamically gather knowledge about the execution of the program in what we call a directed search.


OGSA extends Web services to manage not only permanent services but also temporary services too.


It is rather clear that all the data provided from external environment must be recorded and properly reproduced.

when it comes to events, we need a close look at their di.erent types and sources.


By using them, we can encode context transitions like that explained in this paper and their associated procedures.

in ECaesarJ, the context activation does not cause the change to the context dependent behaviors that is supported in EventCJ.


Essentially, Alice must complete the write herself by performing a data write-back, involving a full write of the data she reads [5] in both executions.

if she somehow knew that the write in Figure 1(a) was in fact complete, Alice could safely skip data writeback, since Bob would anyway observe recent data.


Our approach is optimal with respect to the number of partitions we evaluate.

this does not guarantee a minimal execution time.


Flatt and Findler provide support for kill-safe abstractions, extending the semantics of some of the CML-style primitives.

demaine focuses on ef.ciency by exploiting communication patterns that involve either single receivers or single transmitters.


In comparison, pre vious work indicates that .xing vulnerabilities can take as little as three minutes of a developer s time if found early enough [6].

.nding these vulnerabilities in order to .x them can require signi.cant skill and resources.


The sampled African countries which fall under relatively low levels of e-Governance, retain high levels of inequalities.

some counties such as Algeria and Kenya, although falling under low levels of e-Governance, they interestingly perform better in terms of social equality than South Africa, Lesotho and Botswana which rank amongst the top African countries in the e-Governance survey.


[4] employ the regressionbased approaches to predict parallel program scalability and their method shows good accuracy for some applications.

the number of processors used for training is still very large for better accuracy and their method only supports load-balanced workload.


mobile agents dispatched to visit the sites of di.erent companies in order to .nd out the price at which they sell a given product so as to select the cheapest one.

to make the use of the mobile agent paradigm really acceptable, it is necessary to face all the numerous security threats that arise from it.


Commonly, output values .ow into caller-allocated memory.

some interfaces return callee-allocated results.


More sophisticated approaches that permit development of systems to allow parameterization and choice of implementation have been proposed [1, 21].

in addressing the basic question of how to specify reusable component performance, almost all previous results defer to classical big-O analysis [3, 10].


For example, permission to access contacts and pro.le information allows an app to read personal information of user, thus will have a read score in user space.

this permission does not protect any information related to other spaces apart from user space.


Any user can then create a regular page as an instance of this template, .lling in variables as they see .t.

the method for creating an instance of a template page requires the user to follow explicit, di.cult to remember notations in MediaWiki markup language.


be allowed if signi.cant business success is tied to the possibility to have projects outside the respective standards.

this introduces the issue of who receives the bene.ts derived from breaking the standard, and who bears the costs induced thereby.


We have shown that while TV can be e.ective for this purpose, it is not as good as the widely used Manifold Regularization.

this .nding is meant to be suggestive rather than conclusive as our work in this paper remains preliminary.


In this paper, we present a di.erencing algorithm to work with programs written in the popular AOP language AspectJ [23].

the techniques we employ deal with general programming and design paradigms which are applicable to other AOP realizations as well.


Here, a full understanding of the HW-speci.c handshake protocols and interfaces is necessary.

this also would be the case in any normal non-HPC transaction-level model, although with the di.erence that there the HW access must be implemented in the SW processes.


A static type system, present in programming languages such as Java, reveals information about the program s structure, which can be used by refactoring tools [16, 27].

a dynamic type system, such as the one of Smalltalk, provides no precise information to refactoring tools about dependencies in the program.


In a similar spirit to DaRPC, mTPC [9] manages packet processing, TCP connection management and application interface in userspace for best parallelism.

the primary focus of mTCP is high small-packet throughput that is achieved by eschewing the kernel as well as by ef.cient packet-and event-level batching on the I/O path.


Adaptation Scenario I In the AMS architectural configuration two nodes (Provider: P and Bidder: B) are connected in a peer-to-peer connection for online bidding process.

as the number of bidder B increases over time (B1, B2, ,Bn) the AMS architecture must self-adapt by integrating a bidding server S that mediates the bidding process between the providers and bidders.


This Interceptor approach does not provide the in- herent portability of the Java-based interceptor described in Section 4.1 due to its use of native JNI code.

the portability of our interceptor is not as issue because the interceptor lies within the f~amework of the JVM; the portability offered by the JVM is implicitly extended to the Interceptor.


Structured methodology using Likert or semantic scales has been frequently applied in the literature, including tangible attributes [27] and affective attributes [28], [20] to measure the destination image.

it is widely recognised that this technique cannot capture those attributes that could be considered of special relevance by the respondents [29] and the unique component of the destination [30].


For example, tools such as NMap [13] or Xprobe [24] can determine the availability of hosts and accessible services.

they are not concerned with higher-level vulnerability analysis.


INTRODUCTION Program control-.ow traces can be valuable aids to reverseengineering[2,25],debugging[24], andprogramcomprehension and are essentialfor dynamic slicing[1, 8] and instruction scheduling.

at the speed of modern processors, control-.ow traces of even a few seconds of execution can be too large to store on disks, transfer on networks, let alone to manipulate and analyze.


Since we start from the artifacts in the framework, we follow the second approach.

in order to transform such artifacts into core assets, we identify two main challenges to face: 1.


Such methods are strictly speaking not necessary, as every advertisement and .lter will expire within its validity interval TI plus the broker dependent extension.

it is possible to provide an extended API to the brokers (see Listing 2) which allows to unadvertise or unsubscribe messages prior to the expiration of their validity intervals.


It is not dependent on the business contents of the models, it can execute indi.erently any model.

activating the stop state of a model is dependent of the model contents as it requires to know that there exists such a state.


To reduce the number of messages for coordination, we reuse the candidate paths computed for candidate sensors at later stages of the algorithm.

the centralized algorithm recomputes the (best) candidate paths for each candidate sensor at each stage and picks the most bene.cial candidate path.


Since the collector knows the exact volume of live data in each old generation window and also the total free space available in the heap, it may collect multiple windows in a single pass.

since the remembered sets are unidirectional, the windows must be collected strictly in order of window number, and not in any arbitrary order.


What we have found, and discuss in much more detail in Section 5, is that some con.icts arise between the safety policy (i.e., constraints) and the speci.ed assignments.

many of these constraints are exceptions to constraints that are basically correct.


com/professional/critical_care_medicine/ respiratory_failure_and_mechanical_ ventilation/overview_of_mechanical_ ventilation.html attempts to locally compensate if the device states are within the boundary conditions.

if the device settings have reached the control limits or inter-organ-system coordination is required, the PAE is propagated to the surgery and anesthesia layer.


We have used Simulink and Lustre as our modeling and implementation languages rather than more common languages such as C or C++.

systems written in Lustre are similar in style to traditional imperative code produced by code generators used in embedded systems development.


HIL systems, while commonly used to test the device hardware and software, are not so commonly used to evaluate the user interfaces of HMI systems like an IC.

the proposed platform is a way to extend the use of HIL systems.


MSR 08, May 10-11, 2008, Leipzig, Germany.

tao Xie Department of Computer Science North Carolina State University Raleigh, USA xie@csc.ncsu.edu  the documentation is often missing for many existing frameworks.


There are many other tools on BTs [14, 18, 20, 23], some of them support validation and veri.cation as well.

the integration of the BTs is still informal, adhoc and manual.


3.3 Scalability and Responsiveness To decrease protocol handling overhead, we use UDP as the default protocol.

tCP is supported for requests that exceed one MTU.


Also, we might have been biased by choosing a participant who had previous knowledge of the tool and the approach.

since the purpose of the study is to investigate the usefulness of the OOG, we chose a participant who did not require extensive training to avoid much of the learning curve involved in adopting a new tool and diagram, as is often desired for high-quality case studies [19, p. 68].


The language and compiler we present in this paper also fall into this class.

in contrast to previous works which were restricted to using homomorphic encryption only, our compiler TASTY allows arbitrary combinations of computations under encryption based on garbled circuits and/or homomorphic encryption for highly e.cient SFE protocols.


ABSTRACT Fine-grained binaryinstrumentations, such as those for tainttracking, have become very popular in computer security due to their applications in exploit detection, sandboxing, malware analysis, etc.

practical application of taint-tracking has been limited by high performance overheads.


Our approach avoids such syntactic quanti.cation and relies on explicit composition of aspects and programs.

for massively cross-cutting concerns, a lot of compositions are required.


That still leaves the problem of .tting L1, L2, L3, and even TLB cache with nested iterations (on tiles within tiles) with more nested iterations.

we have found that the block recursion .ts all these caches eventually and so no multilevel or prefetching .tting is necessary; the recursive codes come out to be cache-oblivious [10].


2.0 [11] proposed by Java Grande Forum Applica- tion and Concurrency Working Group (JGACWG) contains only 64 objects.

the number of objects in each scene we used here is in the order of 100,000 to 200,000.


The scalability deteriorates when using more than one NUMA node for all data structures.

the performance seems to degradate most for set.


The built in parameter types Boolean, Switch, and Enum could theoretically also be represented as primitive parameters, since they each can be translated directly to a small integer representation.

in the context of search techniques they make more sense as complex parameters.


This means that given range query qry(L,U), RstRS is the query result on the ordered data set ERS with respect to state Statek.

if localRstRS = RstRS , there exist two different query results with respect to qry(a,b), which contradicts with the soundness of .RS .


For example, the Pex team could extend its man power (with only two full-time employees) to a larger scope in order to feasibly explore both short-term and longterm research goals.

the academic researchers could (1) focus on important research problems (in practice) determined with the help of the Pex team, and (2) leverage powerful tool infrastructures developed by the Pex team so that the academic researchers can focus main efforts on research innovations other than infrastructure-building engineering efforts, which are also critical to enable applying proposed tool features (developed for the research innovations) on real-world code bases but which themselves may not be research innovations.


Consider the following example: square :: (Elt e, IsNum e, Shape dim) => Array dim e -> Acc (Array dim e) square xs = zipWith (*) (use xs) (use xs) Here we use a single array twice.

device arrays can be safely shared because our skeletons do not mutate data, so we use the memory table to ensure xs is transferred only once.


In the implementation using pure actor primitives because of the absence of a blocking send operation in Actors the multicaller simulates the desired blocking behavior by .rst capturing its current continuation, then changing its behavior to collect all messages other than the one expected from the facilitator in an internal queue, and .nally resuming the original behavior to process the queued messages.

the implementation using ABCL/1 s select statement  which is essentially a synchronous operation blocked on receipt of a certain message, while all other messages are internally queued signi.cantly simpli.es how the multicaller can block, delivering a more elegant-looking solution.


In addition, the accurate estimation of the variance of noise is inevitable.

the simpli.ed detector requires no additional information and estimation at the calculation of correlation score from a given pirated codeword.


If these relations are lost during the analysis, this one can be unsound in some cases, or very imprecise in others.

it is not feasible to maintain explicitly these relations during the analysis.


To guarantee that an individual node does not request a block from the server that has already been requested by other nodes in the system, that individual node needs to know what the other nodes have downloaded and what they are currently downloading.

a particular node often only knows about the content in the nodes in its neighborhood.


The resulting optimized program in shown in Figure 1(b).

in general we may compute di.erent sets V along di.erent maximal paths.


Until the number of stations is 10, total transmission rates of the proposed algorithm and the Reference Scheduler are identical.

when the number of station is more than 11, to- Figure 11: Comparison of channel occupancy in scenario 1 tal transmission rate of the proposed algorithm continues to increase until the number of station reaches to 20.


For instance, when a user performs a copy or rename refactor operation, a refactoring event is .red to RefactoringExecutionEvent listeners.

this event does not give enough information to fully resolve the changes that will be performed.


This restricts the set of gadgets an attacker can use, making ROP-based attacks more complicated.

recent work has showed that practical ROP attacks are feasible on RISC machines [4, 7, 19].


Therefore, query trimming is a key problem in mobile and wireless environment, and devices in this environment have limited connection time, bandwidth, and battery power.

the existing methods for query trimming have a number of limitations such as, inefficiency in time, space and the complexity of the algorithm used for trimming.


This is especially bene.cial on Windows, where the de reg <load [A]  Figure 2: Analysis-Atomicity Problem analysis routine knows the effective address and the value that will be read by the instruction, which is 0 in the example.

before the load instruction executes, thread 2 modi.es the value to 1.


Much experience shows that this method is often efficacious and is not overly difficult.

it gets no respect from academic researchers.


Aiming at ensuring an unbiased selection process, we de.ned research questions in advance and devised inclusion and exclusion criteria we believe are detailed enough to provide an assessment of how the .nal set of primary studies was obtained.

we cannot rule out threats from a quality assessment perspective, we simply selected studies without assigning any scores.


This way, we do not need to adapt existing analysis tools, but would face severe scalability problems for larger sets of products.

a developer could analyze only a subset of all products, which is again incomplete.


The limit-average property is not precisely inductive, i.e., by knowing only the limit-average value of the subsegments of a segment, we cannot estimate the limit-average accurately without knowing the length of the subsegments.

strengthening it to the property set ((minp), (maxp, limavg, hasInfPath)) makes it precisely inductive.


Inversion of Control Dependency inversion and dependency injection are patterns to invert the dependency relations between modules.

in each of those patterns, modules are still parameterized with other dependent modules or execution control is directed by new modules.


The random check sounds like a good idea since the instructor could likely spend minimal time and reach maximal learning outcome.

without the scientific policy such as reward and punishment mentioned above, the desire to save time will be a cause of a lazy instructor.


TBB makes use of a dynamic work-stealing model, which may result in design changes when modifying TBB to support changing the number of threads used at runtime and require additional methods for estimating parallel e.ciency.

openMP is the de-facto standard for shared memory programs today, and is far more prevalent.


Our methodology is compatible with the BOID approach, which develops an architecture in order to study the conflicts between beliefs, obligations, intentions, and agent desires.

our usage of the word 'obligation' is rather different.


The attention of the one single controller is switched among banks for command setup and data transfer.

small requests may poorly utilize all the banks, because the entire system has only one request queue.


All of this research highlights important issues related to our approach and could be valuable in complementing our solution.

problems have only been considered in isolation.


We choose such a design, since the programmer must ensure that concurrent calls yield a legal program execution.

the current design can be changed easily and changing the design (i.e., relaxing the constraints which methods can be annotated with @Concurrent and @Sync) has no effect on the runtime system extensions.


In [23], high-level usage patterns are used to conduct prefetching.


A sound and complete analysis of the variability in Linux requires both option-and value-like feature types as well as their constraints.

we observe that value-like features generally don t enable feature code in practice, but (at least in Linux) are used to con.gure non-functional features such as timer frequencies, page sizes or the kernel version.


This contradicts that we chose u to not be a su.x of L(Tr).


The impact of the change must be high enough to change the ordering of the test goals.

adding an arbitrary pro.t value to each test goal reduces the importance of the 1e/ pro.t values.


Therein, the best SUS value has been 92.5, the weakest 75.

the .nal good average value of 84 needs to be con sidered critically, because it could be caused by participants that are already a bit familiar with the tool.


The former is accepted by Java whereas the latter is rejected.

should Java permit type parameters to have lower-bound requirements, then the class Super might also be declared as class Super<P super Q, Q> {} Using Java s completely syntactic approach to implicit-constraint inference, under this declaration now Super would be rejected and Super would be accepted.


If the details of the analysed routine change due to software evolution, the self-configuring component mirrors these changes to the query site.

the self-configuring component can be used to configure multiple different routines, thus improving reusability of the software.


ST(U)Array implementation was faster for all slab width.

4 3.5 3 2.5 2 1.5 1 0.5 0 2 3 4 6 8 16 32 64 Slab Width in the subsequent work on code parallelization reported in the next section, Judy arrays turned out to have better performance.


Workflows and Tasks The institution that managed the Falcon project has had decades of experience developing and using similar (but less capable) simulations.

that experience was in serial development (i.e.


It features an interpreter and dynamic translator architecture more akin to CMS.

it does only single-block translations, and weaknesses like keeping target floating- point register images in memory likely cause severe performance problems on significant classes of code.


Cloud Application Portability: An Initial View Fotis Gonidis South East European Research Centre International Faculty of the University of Sheffield 24 Proxenou Koromila street Thessaloniki, 54622, Greece fgonidis@seerc.org Anthony J. H. Simons Department of Computer Science University of Sheffield Regent Court, 211 Portobello Street Sheffield S1 4DP, United Kingdom  A.Simons@dcs.shef.ac.uk Iraklis Paraskakis South East European Research Centre International Faculty of the University of Sheffield 24 Proxenou Koromila street Thessaloniki, 54622, Greece iparaskakis@seerc.org Dimitrios Kourtesis South East European Research Centre International Faculty of the University of Sheffield 24 Proxenou Koromila street Thessaloniki, 54622, Greece  dkourtesis@seerc.org ABSTRACT Growing interest towards cloud application platforms has resulted in a large number of platform offerings to be already available on the market and new related products to be continuously launched.

there are a number of challenges that prevent cloud application platforms from becoming widely adopted.


It means that multiple shading instances (work-item) are coalesced into a loop.

cGRA provides excellent performance for loops, it is week at conditional branches and small loop counts.


When a failure occurs, Pig will reschedule the failed task t toadi.erent nodeavailablefor re-execution.

the re-execution of t cannot proceed right away, because some portion of its input is lost by the failed node.


Such an approach is, by de.nition, highly portable from one processor to the next and provides additional bene.t to the manufacturer s highly tuned compiler.


if s] spawns P at s2 with eval, no closure is sent: P will refer to s2 when using self and dynamic seeping is used.


Thedownsideis that when aCRC mismatch occurs,the slave needsto resend all of the messagesfromitspreviousslot.

inthe case ofshort slotdurationsthisis not aproblem, especiallybecause collisions and messagefailures arelesslikely inTDMAprotocols.


During this call, nt is temporarily shared with the parameter of runTests and possibly with other local variables of that method.

runTests doesn t escape its last parameter, i.e., doesn t store this reference into memory locations that outlive the call.


However, their models appear to be quite complicated and have to be manually constructed.

our models are simple and automatically constructed using machine learning.


6.3 Test Data Generation Commercialrandomtestingtoolsgeneratetestdatain limiteddomains,withthegoalofmatchingthedistribution ofactualdataforthesystemundertest{theso-calledoperationalprofle.Inthiscase,statisticalinferencesaboutthe meantimebetweensystemfailurescanbedrawnfromthe testresults.


Also, even in the cases where types and other information cannot be statically inferred, performance of dynamic languages can be quite competitive, since modern compilers and abstract machines have evolved signi.cantly and offer a high degree of optimization.

the same high degree of specialization and optimization that brings about the performance of modern compilers and abstract machines implies signi.cant complexity in their design which in turn makes it very dif.cult to explore a large design space of modi.cations in order to obtain signi.cant further advances, at least by hand.


We brie.y discuss our main .nding after analyzing the generated clusters: Cluster #1 and Cluster #2 grouped together more than 60% of the considered requests (44 out of 72 requests).

the maintainers spent almost twice as long to perform the software engineering activities (i.e.


Because replication provides multiple choices from which to obtain the same data, it is possible to use replication to reduce the total number of nodes one needs to contact when using vector RPCs: a multiget for two keys that map to different physical nodes can be satis.ed by a single node if it contains a replica for both keys.

the type of replication used determines whether replication can maintain the bene.t of using vector RPCs for higher performance.


This should make it straightforward to introduce a generic tool that talks either locally or remotely to Ganeti.

when trying to integrate our Haskell program with Ganeti, we quickly found out that:  not all APIs exported the same data; the data available via each API was only a sub-set of the data available in Ganeti  even for the same data, the actual naming of various properties differed across the APIs  While any program (independent of the language used) would have discovered these inconsistencies, static vs. dynamic typing makes a difference here.


Prior work has focused on reducing this overhead somewhat; for example, using checkpointing or nested transactions [3].

little attention has been paid to which boosted transaction needs to be aborted and when.


That is mainly because the technological platforms existing in the telemedicine ecosystem are not telemedical platforms per se.

we argue for the use of software ecosystem theories in analysing the telemedicine ecosystem for two reasons: (i) the actor structure commits to a SECO actor structure both in terms of symbiotic relationships, business models motivating them and having as products software and services and (ii) we identify that part of the problems in the telemedicine ecosystem is due to the lack of a common and widely used technologic platform.


The tightened energy constraint forces ADAE to activate the Degraded mode which causes the sampling frequency to drop signi.cantly, as can be seen in the top of the .gure.

even in this Degraded mode, the diurnal temperature pattern and two rain events are clearly distinguishable in the remaining measurements.


5.4.3 Spawning A process P spawning a process Q is considered an outward sideeffect for P , and thus P does not have to block.

pULSE must be informed of the existence of the new process Q, and Q needs to be brought under its control.


The x86-32 architecture was not designed to support full virtualization in the sense that Popek and Goldberg described [13], hence the VMM implementations solved this by trapping privileged instructions with low-level complex solutions.

the recent Intel s x86-32 and Itanium architectures support virtualization through extensions called VT-x for x86-32 and VT-i for Itanium [20] and AMD procesor s extensions through its virtualization solution Paci.ca [1].


proposed a suf.cient condition to check the schedulability for mandatory jobs with R-pattern.

their approach needs to scan through all mandatory jobs as well as check all possible time intervals within the hyper period and, on the other hand, it is hard to incorporate other important factors like release jitters and blocking factors in it.


In this work, the term architecture documentation summarizes all the different forms mentioned above and is therefore not to be mistaken for architecture documents , as it is a more general term, subsuming more than one documentation form.

the focus in this work lies on types of documentation that are relevant in practice.


Many computational scientists begin their careers working on local departmental or institutional resources, progressing to larger national or international resources as their scienti.c objectives and their own capabilities evolve.

the barriers that have to be overcome when moving from campus based resources to national or international resources made available by a computational grid are often too great for most users.


Work-based scheduling is relatively simple to implement and doesnotrelyon real-time operatingfacilitiessuchas high-precision timers.

it often suffers from poor MMU and considerable variation in pause times (in one study, Bacon et al.


The scheduling logic does not exploit fused operations to enable pipelined scheduling.

our approach dynamically constructs MOPs and issues multiple instructions as a single unit when all source operands are ready, enabling non-speculative pipelined scheduling logic that issues dependent instructions consecutively.


such parallelization strategies are hard to use for most software developers and limit the e.ectivity of the load balancer.


For readability purposes, the model presented in Figure 3 features a limited set of fingers properties: position and pressure.

more complex finger models have been described offering various properties such as finger tilt angle, acceleration and direction of the movements.


It suggests an abstract model how to generally characterize service and quality variants as well as the opposing interests of service provider and client.

it does not suggest concrete quality models or matching algorithms, which strongly depend on the application domain.


Accurate interface identi.cation is fundamental for many of these techniques, as the components of a web application communicate extensively via implicitly-de.ned interfaces to generate customized and dynamic content.

current techniques for identifying web application interfaces can be incomplete or imprecise, which hinders the e.ectiveness of quality assurance techniques.


Figure 8 shows that the modi.ed compiler, using a pressure threshold value of 5, produces lower execution time overheads relative to the baseline.

the differences are not large; while the baseline compiler yielded runtime overheads of roughly 9-16%, the modi.ed compiler reduces these overheads to 9-13% only a modest 3% reduction at the high end.


Knuth s literate programming [17] envisioned a single document encompassing both the implementation and documentation of a system and used techniques from book typography to describe relationships within this document.

we picture a large collection of documents, linked into a literate whole by versioned hypermedia.


This runtime type support is essential to ORBs in order to check the integrity of the CDR-formatted messages exchanged between clients and servers.

cORBA objects (clients or servers) have also access to the IR.


The experiments showed that LBE not only has a much better performance, but even a better precision (because it is feasible to use boolean instead of cartesian predicate abstraction).

lBE has two drawbacks: First, it operates on a modi.ed CFA which makes combinations with other abstract domains that operate on single edges impossible.


This violates Assumption 1 because applying the same substitution to the old result does not yield the new result.

it is easy to recover this problem by expanding the pattern matching of plus2: plus2 : (Plus Zero n) --+ n Given this rule, the rewrite function would fail for the input term (Plus x Zero), which is consistent with Assumption 1.


Such functions may communicate on channels, but may not start other functions in parallel or call functions that communicate.

a leaf function may call other functions that do not communicate or invoke functions in parallel, i.e., those that behave like standard C functions.


.$10.00 ifying such analysis problems are desirable for ensuring the correctness of analyses while reducing the effort of implementations.

higher-level query languages often lack ef.cient implementations or complexity guarantees.


INTRODUCTION With the rapid technological advancements in computer networks, video streaming services are gaining more popularity among users and content providers [16].

due to the inadequacy of infrastructural support, IP-multicast Permission to make digital or hard copies of all or part of this work forpersonal or classroom use is granted without fee provided that copies arenot made or distributed for pro.t or commercial advantage and that copiesbear this notice and the full citation on the .rst page.


By itself, this mechanism does not address many of the concerns of array programming, such as memory access order and parallelism.

we feel it provides a useful increment of power to dynamic language users who would like to begin to tackle these and other related problems.


Polyglot[33]isacompiler frontend framework for building Java language extensions.

it uses a LALR parser, which means that perfectly valid grammar extensions can be rejected.


Reflex: Using Low-Power Processors in Smartphones without Knowing Them Felix Xiaozhu Lin, Zhen Wang, Robert LiKamWa, and Lin Zhong Rice University {xzl, zhen.wang, roblkw, lzhong}@rice.edu   Abstract To accomplish frequent, simple tasks with high efficiency, it is necessary to leverage low-power, microcontroller-like processors that are increasingly available on mobile systems.

exist-ing solutions require developers to directly program the low-power processors and carefully manage inter-processor communi-cation.


There are no bug ID references in the change log therefore traditional heuristics cannot identify which bug the revision 148 has fixed.

our manual examination found that this change log can be actually linked to a bug report: we searched through all bug reports and found that the bug report #18 contained similar problem descriptions as the change log.


In particular, Function Points (FP) [1][2] are most often used for estimation purposes.

several organizations are considering to change their functional size measurement method from Function Point Analysis (FPA) to COSMIC [3], mainly because the latter is more easily and generally applicable than FPA.


If the user is editing the nights in order to correct his last edit to the check-out date, then he might expect the check-out date to change accordingly.

since the checkout date was edited more recently, our system assumes that the user would rather preserve that value, so it changes the oldest value: the check-in date.


In order to be trustworthy, mitigation techniques should given the ingenuity of would-be attackers and the wealth of current and undiscovered software vulnerabilities be simple to comprehend and to enforce, yet provide strong guarantees against powerful adversaries.

in order to be deployable in practice, mitigation techniques should be applicable to existing code (preferably even to legacy binaries) and incur low overhead.


Recent work on race detection for client-side web applications [20, 24, 30] considers the happens-before relation for single threaded event-driven programs and framework-speci.c rules to capture the semantics of browsers and JavaScript.

their analysis is not immediately applicable to Android because there is additional interference through multi-threading.


5.2.4 CoSIP Security: Conclusions Security mechanisms for CoSIP have not been implemented yet.

it is expected that having centralized authorities, such as CoSIP servers that are more intelligent than a simple CA, will cope with the typical security threats in a P2P network.


The edges selected during this walk, designates what execution paths are taken in the actual CFG.

in order to estimate the dynamic execution time, we need pro.le information of regions of code that correspond to edges in the ECG H. We acquire this by generating a collapsed control .ow graph G. =(V ,E) from the control-.ow graph G =(V, E) of the program.


Pattern languages have recently emerged as a promising classification technique and in providing ways to build frameworks.


For lack of suitable notations, methodologies, and integration between abstraction levels, more abstract system descriptions typically take a back seat in the design process.

working at higher levels of abstraction will be a key factor in tackling the prevalent complexity issues in automotive software engineering: increasing functional complexity stemming from software being the implementation technology of choice for new innovative functionality as well as for functionality being traditionally implemented in mechanics etc.


Subtrees in fault trees, as shown in Figure 6 on the right, as well as optional risks and hazardous events in the risk analysis are only some practical conceivable examples.

the safety analyst must always be aware of the variant management and the implications of using it to derive variants of safety analysis, why such tool support is essential to tackle that task.


Comparing to grid computing, grid system disintegrates a huge task into many tiny tasks and operates them paralleled in different groups and servers emphasizing on the operation of scientific computing application systems.

cloud computing is a computing platform with broader implications, sustaining the nongrid application, such as sustaining the three-layer application architecture model of foreground network server, application server and database server in network service program as well as sustaining the present network service program of Web 2.0 model.


This learning methodology is based on the use of physical models (mannequins, cadavers or even living animals) for training.

such models present restrictions of different nature: economic (for the mannequins), logistic (for the cadavers) or even ethical (in the particular case of the living animals).


General percolation [8] speculatively hoists instructions  9 Proceedings of the International Symposium on Code Generation and Optimization (CGO 05) 0-7695-2298-X/05 $ 20.00 IEEE including loads beyond conditional branches in order to exploit instruction level parallelism.

it does not ensure correct semantics when a speculatively hoisted load causes an exception.


This is a common problem in distributed computing that is typically solved using a consensus protocol such as two-phase commit.

the majority of the RESTful transaction models do not cover this scenario and the challenge is the design a stateful consensus protocol without violating REST constraints.


Two recent efforts [6, 26] use metrics related to numerical error and staleness to measure database freshness.

these systems do not provide mechanisms to bound data consistency using the proposed metrics.


In other words, highly scalable programs can fully utilize the CPU time allocated by the OS.

programs which do not scale well have opposite characteristics, meaning that threads are dependent with each other having communications and synchronizations.


** (BZ2_bzCompressInit; BZ2_bzCompress ; BZ2_bzCompressEnd ) A speci.cation mining tool is expected to learn it from running trace.

if the trace is noisy, e.g., containing some unrelated function BZ2_bzDecompress, the resulting automaton would be imprecise [25].


Limiting the buffer length allows BULLET ' to quickly react to changing network conditions and application requests,sincebuffered messagescannotbecancelled.

bULLET ' actively detects when message blocks will not .t in the queue, and schedulesatimertosend themlater.Diff messages,or thosethatinform apeer aboutblocks a nodepossesses, are also sent overthedatatransport, and are not similarlyprotected against afull buffer.


A transaction that explicitly aborts is one that can never be chosen by the nondeterministic semantics.

this typeofabort complicates stating type-safety because we would have to accommodate an abort preventing progress.


Starvation also occurs if the client crashes while accessing the resource and before releasing it.

if the client crashes after releasing, then the program behaves correctly.


In order to be successful, applications need to adapt continuously to their environment and therefore require information from the environment for the adaptation to be e.ective.

mobile devices have not bene.ted to the same extend as other high-end systems from the latest advancements in context toolkits, frameworks and architectures.


In fact, ownership types is a special case of effective ownership where all methods belong to the owner of the de.ning object.

in effective ownership, an object may have methods which do not belong to its owner.


Another potential solution would be to add more descriptive textual documentation.

programmers in our studies often skim or completely skip over textual class documentation, choosing to refer to the list of methods and fields instead.


because the client expects some output data from the service call.

it might be interesting to specify service calls which just provide input data for the triggered service, and which immediately return to let either the system or the environment component go on executing.


On the one hand, offloading frees CPU cycles on the client system.

offloading might add a significant load on the client s kernel and the I/O subsystems to handle data transfers to and from the device.


Also, hardware prefetches and pipelines are not modeled and , hence, our estimates are higher than actual time.

the prediction is quite reasonable as the major execution time is consumed by memory latency.


This comes at the cost of implementing the needed compilers/interpreter and other tools by oneself or with the help of a language development environment.

internal DSLs are built on top of an existing programming language, also called the host language.


Separate unboxing decisions are made for each instance of a worker class (indeed, each instance may have different input and output types).

the multiple outputs or inputs of a splitter or joiner instance will either all be unboxed or not unboxed.


CommentWeaver is useful for writing doc comments for that concern.

if an aspect implements a nonfunctional concern, then doc comments are unnecessary for that aspect.


This allows more instruction re-ordering, increasing the potential for instruction level parallelism and better performance.

for this same reason, it is more di.cult to reason about the order of events in programs that follow a relaxed model.


The product-line uses a sophisticated set of ant scripts, including a custom ant task for compilation, and maintains separate files that define the classes in each component.

in about one person day of effort the team was able to integrate AspectJ compilation into the process completely.


While CE may be unfair to high coverage tests with extended running times, the metric does furnish a time sensitive measurement of e.ectiveness.

prior metrics such as APFD [7], APBC, APDC, and APRC [14], do not factor time into the evaluation of a prioritization technique.


Our approach is closely related to [20] in that both approaches try to identify failure causes from failing test cases.

our approach identi.es and investigates a suf.cient set of failing testing cases by decomposing failing test cases based on their grammatical structures, and eventually identi.es a set of common failing input patterns, which can be used to understand fault causes in a comprehensive way.


2 We use the full path to represent the domain type.

for brevity we use only the class name in this paper.


Security management in IoT environments is of fundamental importance [4, 10, 11, 14].

to the best of our knowledge there is little work on trust management in IoT environments for security enhancement, especially for dealing with misbehaving nodes who are legit members of an IoT community.


Both data and interaction models are useful for analyzing and verifying speci.c aspects of system execution: Daikon describes important properties of the monitored variables, and FSM inference engines capture and generalize component interaction patterns.

none of these models captures the complex interplay between data values and component interactions.


The basic process of searching answers for factual questions may be the same when the user searches for list answers.

the level of complexity in list question should be taken into account.


Therefore, it is often (na¨ively) expected that always applying (turning ON) all available optimizations to all program regions should generate the best quality code.

optimizations operating on the same program code and competing for .nite machine resources (registers) may interact with each other.


Note that WordPad's specifications do not allow Open to terminate the component unless a file has been se- lected.

cancel can always be used to terminate the component.


if we registered a handler with the event constructed in section 2.2 and then lost reference to the event chain).

if backward links were weak, the GC could collect parts of a chain before registering the first handler (e.g.


A na¨ive algorithm would enumerate all paths and, thus, all outputs, and parse each output string to identify inline JavaScript.

even without loops, the number of unique paths even in a simple web page may quickly explode and become unmanageable (this is the path-explosion problem faced in static analysis).


The runtime customization in Tessellation is in.uenced by Exokernel [12].

tessellation tries to mitigate some of the problems of exokernels by providing runtimes and services for the applications.


SPL captures the data .ow of an algorithm.

all data reorganization steps are described explicitly as stages that perform passes through the data.


Therefore, at this level the mechanism is not appropriate to provide acceptable service concurrency bindings, since many second best solutions are extremely cognitively taxing to the user.

this drawbacks are offset by the total elimination of cognitive interferences.


The links are con.gured in two logical interfaces, referred to asInput/OutputInterfaces(IOIF).Eachlink operates at 5GHz andtheIOIFprovides rawbandwidthof35GB/s outbound and 25 GB/s inbound.

the actual data and commands are transmitted as packets, which incur an overhead due to presence of metadata such as command identi.er,datatags, anddatasize[45].


A server system execution is often composed of many concurrent requests.

speci.cally, we de.ne a request or a request execution as the set of server activities to service a user call, like a request for retrieving a web object, or a request for processing an e-commercetransaction.The execution of a single requesttypically consumes afraction of a secondinCPU time.there may exist large variation of hardware characteristics during its course.


4.3 Different Perspectives on Software  While evaluating a system, customers might consider the response time and user interface functionality as a measure of software quality.

programmers might consider code readability and reusability as their measure of software quality.


Babel s purpose is to make it easier to add support for a new language to the Visual Studio editor, in this sense Babel is highly successful.

babel doesn t provide any support for Visual Studio features outside the editor (for example Projects), and it is lacking support for some editor features.


Note that both GREE and GREE-L might reject jobs that the MILP formulation accepts, as they do not consider moving previously accepted jobs or stages.

they are very fast and scalable and accept a competitive fraction of production jobs, as illustrated in Section 5.3.


The notion of types proposed in [20] is just a set of classes.

prior to the type inference process, the inheritance hierarchy is expanded by augmenting each class with all the members it inherits from its supertypes, and making corresponding changes to statements in the code.


3 of these subpractices are at level 1).

the medical device regulations request additional information in relation to usage, traceability and the participation of a software development team member in the RM activity.


The central findings regarding the announced vulnerabilities are: MS Office has attracted about 7 times more vulnerabilities than OpenOffice has.

we have to consider that probably more vulnerabilities in OpenOffice than in MS Office might have been existed, detected, potentially discussed in forums, and finally removed, before they could have become a CVE vulnerability.


One important reason for this is that NL can help various stakeholders articulate and communicate requirements during the entire life cycle of the software development.

nL requirements also suffer from typical NL problems such as ambiguity.


R3 together with this set of open-methods: R1* foo(virtual A&, virtual A&); R2* foo(virtual A&, virtual B&); R3* foo(virtual B&, virtual A&); A call foo(b,b) appears to be ambiguous and the rules outlined so far would indeed make it an error.

choosing R2* foo(A&,B&) would throw away information compared to using R3* foo(B&,A&): An R3 can be used wherever an R2 can, but R2 cannot be used wherever an R3 can.


This increases dramatically to 43% when we move up to 16384x16384.

since the overhead is only 4.5% when we do everything but record the application state, it is clear that the reason for the increased overhead is that size of application state.


endfm and the set of pairs P = {H(f(X)) -> H(g(X))}.

note that there is an in.nite minimal (R, P)-chain if we consider the OSsubstitution s(X)= a: H(f(a)) .P H(g(a)) .R H(g(b)) .R H(f(a)) .P ··· since H(g(X)) is not OS-narrowable, we would obtain P ' = Ø in Theorem 6, thus making the previous in.nite chain unfeasible as an (R, P ' )-chain.


Tansey and Tilevich s approach [33] infers generalized transformation rules fromgivenexamples so that application developers use the inferred rules to refactor legacyapplications.

this approach focuses on annotation refactorings that replace the type and naming requirements to the annotation requirementsofatarget framework.


The language itself especially suffers from lack of visual richness with highly visually similar, square elements.

yAWL s interface has a very low clutter value and high degrees of ef.ciency.


Our approach is sound in the sense that (1) test cases are generated only for feasible paths and (2) test cases actually trigger execution paths where a tainted variable is used in a sink statement.

test cases trigger vulnerable paths, they do not trigger (exploit) vulnerabilities.


HOOD can even observe function values, displaying them as a table of observed arguments and results the same information that an algorithmic debugger would use to track down the bug location.

hOOD leaves locating the bug to the programmer.


Of course, given the wide-spread use of Java, and the constraints on backwards compatibility of Java bytecode, such a change to the Java semantics is possibly not a viable solution, and the concrete problem at hand would better be solved by changing the implementation of the JML run-time checker.

we believe that for future language designs, it is important to consider the issues discussed in this paper.


From our perspective, this relates to the traditional object-oriented refactoring, because such updates to references are common as well.

dimensions D1 and D3 involve multiple features and thus all of these features and their dependencies, revealed by the feature model, have to be considered for the refactoring of the feature-oriented SPL.