The recent rise of grassroots computing among both professional programmers and knowledge workers highlights an alternative approach to software development in the enterprise: Situational applications are created rapi...
详细信息
The recent rise of grassroots computing among both professional programmers and knowledge workers highlights an alternative approach to software development in the enterprise: Situational applications are created rapidly by teams or individuals who best understand the business need, but without the overhead and formality of traditional information technology (IT) methods. Corporate IT will be increasingly challenged to facilitate the development, integration, and management of both situational and enterprise applications. in this paper, we describe the emerging prevalence of situational application development and the changing role of IT. We also describe the experience at IBM in building, deploying, and managing the IBM Situational Applications Environment that enables employees to take responsibility for some of their own solutions. Finally, we discuss ways in which the situational application development paradigm may evolve in coming years to benefit enterprises, the demands that it will put on IT departments, and possible ways to address these challenges.
There is at least anecdotal evidence for factors greater than 10:1 withregard to ability on programming tasks performed by individuals. In software development it ispossible to notice, for example, that some professio...
详细信息
There is at least anecdotal evidence for factors greater than 10:1 withregard to ability on programming tasks performed by individuals. In software development it ispossible to notice, for example, that some professionals show skill in debugging while others areless successful. Little, however, is known about why there are such large performance variations.
While working my way through graduate school in the mid-90s, I took every chance I had on summer and holiday breaks to go back to work as a software developer. Luckily, I worked for a great boss and a flexible organiz...
详细信息
While working my way through graduate school in the mid-90s, I took every chance I had on summer and holiday breaks to go back to work as a software developer. Luckily, I worked for a great boss and a flexible organization, which could usefully put me back to work extending the applications I worked on during my previous visit. If there was a downside, it was that I usually got assigned to whichever random desk was open during each visit. All too often, I ended up at the dreaded solitary desk in the windowless server room, among the empty computer boxes and the walls of sheetrock and spackle. These experiences (which are not so uncommon, I suspect, among junior software developers) are probably among the reasons why I've found pair programming (PP) so interesting. Many developers, and not just those who have ended up programming alone in windowless offices, have been excited by the paradigm shift, while others seem extremely annoyed by it. In both cases, perhaps the most important result is that PP leads to rethinking about the concept of development teams and about how individual programmers can best contribute to the project. Now that PP is several years old and has seen increasing interest and adoption, it's useful to consider what has been learned about its more specific effects. The evidence certainly provides proof of its benefit, although not in all cases and perhaps not in the contexts that many developers would have thought.
It will come as no surprise to most of us in the software profession that itis difficult to determine what the state of software''s practice is. By contrast, it is easy todetermine the state of the art. There ...
详细信息
It will come as no surprise to most of us in the software profession that itis difficult to determine what the state of software''s practice is. By contrast, it is easy todetermine the state of the art. There are few sources to tell us about the state of the practice(what practitioners actually do), whereas there are many conferences and journals that tell us aboutthe state of the art (what theorists believe that practitioners should do).
The article examines multithreaded programming concepts to show how developers can take advantage of multicore processors. Multithreaded programming is becoming an even more critical technique for software developers ...
详细信息
The article examines multithreaded programming concepts to show how developers can take advantage of multicore processors. Multithreaded programming is becoming an even more critical technique for software developers to master as hardware architectures move to multicore processors. Programming strategies that include task parallelism, data parallelism, and pipelining may be implemented to further optimize performance after mastering the basics. Programming models and tools that express parallelism should be considered to assist in multithreading code and providing scalability benefits for future applications.
Aspect-Oriented Modeling (AOM) techniques allow software designers to isolate and address separately solutions for crosscutting concerns (such as security, reliability, new functional features, etc.). Current AOM rese...
详细信息
Aspect-Oriented Modeling (AOM) techniques allow software designers to isolate and address separately solutions for crosscutting concerns (such as security, reliability, new functional features, etc.). Current AOM research is concerned not only with the separate expression of concerns and their composition into a complete system model, but also with the analysis of different properties of such models. This paper proposes an approach for analyzing the performance effects of a given aspect on the overall system performance, after the composition of the aspect model with the system's primary model. Performance analysis of UML models is enabled by the "UML Performance Profile for Schedulability, Performance and Time" (SPT) standardized by OMG, which defines a set of quantitative performance annotations to be added to a UML model. The first step of the proposed approach is to add performance annotations to both the primary and the aspect models. An aspect model is generic at first, and therefore its performance annotations must be parameterized. A generic model is converted into a context-specific aspect model with concrete values assigned to its performance annotations. The latter is composed with the primary model, generating a complete annotated UML model. The composition is performed in both structural and behavioural views. A novel approach for composing activity diagrams based on graph-rewriting concepts is proposed in the paper. The next step is to transform automatically the composed model into a Layered Queueing Network (LQN) performance model, by using techniques developed in previous work. The proposed approach is illustrated with a case study system, whose primary model is enhanced with some security features by using AOM. The performance effects of the security aspect under consideration are analyzed in two design alternatives, by solving and analyzing the LQN model of the composed system.
We examined the main and interactive effects of general mental ability (GMA) and perceived organizational support (POS) on typical performance and maximum performance. Data from two field samples (96 programmers and 1...
详细信息
We examined the main and interactive effects of general mental ability (GMA) and perceived organizational support (POS) on typical performance and maximum performance. Data from two field samples (96 programmers and 181 cash vault employees) empirically supported distinguishing between typical performance and maximum performance. GMA was related to maximum performance but not to typical performance, and POS was related to two out of three measures of typical performance. Interactive effects of GMA and POS were detected in both samples for maximum performance outcomes but not found for typical performance outcomes.
Current approaches to integrate Web services are inflexible, affecting the short-term adaptability and long-term evolution of the service, network, and business environment. To enable the development of more flexible ...
详细信息
Current approaches to integrate Web services are inflexible, affecting the short-term adaptability and long-term evolution of the service, network, and business environment. To enable the development of more flexible and robust applications, the Web Services Management Layer defines middleware for the dynamic integration, selection, composition, and client-side management of Web services in service-oriented architectures. WSML uses dynamic aspect-oriented programming to solve several crosscutting concerns in SOAs. An industrial case study shows WSML used in the context of broadband service provisioning.
In recent years, the growth of extreme programming (XP) has broughtconsiderable attention to collaborative programming. Developed over a 15-year period by Kent Beckand his colleagues, Ron Jeffries and Ward Cunningham,...
详细信息
In recent years, the growth of extreme programming (XP) has broughtconsiderable attention to collaborative programming. Developed over a 15-year period by Kent Beckand his colleagues, Ron Jeffries and Ward Cunningham, XP is a computer software development approachthat credits much of its success to the use of pair programming by all programmers, regardless ofexperience. The pair programming dimension of XP requires that teams of two programmers worksimultaneously on the same design, algorithm, code, or test. Sitting shoulder to shoulder at onecomputer, one member of the pair is the 'designated driver,' actively creating code and controllingthe keyboard and mouse. The 'non-driver' constantly reviews the keyed data in order to identifytactical and strategic deficiencies, including erroneous syntax and logic, misspellings, andimplementations that don't map to the design. After a designated period of time, the partnersreverse roles. Code produced by only one partner is discarded, or reviewed collaboratively before itis integrated.
The article focuses on the use of Simple Object Access Protocol (SOAP) to determine and define the content of the XML document and to interoperate with other applications in Great Britain. SOAP is a lightweight protoc...
详细信息
The article focuses on the use of Simple Object Access Protocol (SOAP) to determine and define the content of the XML document and to interoperate with other applications in Great Britain. SOAP is a lightweight protocol used for exchange of information in a decentralized and distributed environment. It states that SOAP-based services are the basis on the inclination toward service-oriented architecture, but it also made mention of the difficulties because a software engineer has to master all the necessary specifications. It further stresses that though SOAP promises portability it would still be wise to consider factors such as network latency in the conversion of XML documents. INSET: SOAP Resources.
暂无评论