Christensen, Henrik Bærbak
, and collaboration. The leitmotif is the software architecture, which is extended to handle managerial data in addition to source code; this extended software architecture is put under tight version- and configuration management control and furthermore used as basis for visualisation. Preliminary results of using......Ragnarok is an experimental software development environment that focuses on enhanced support for managerial activities in large scale software development taking the daily work of the software developer as its point of departure. The main emphasis is support in three areas: management, navigation...
Izygon, Michel E.
The Software Developer's Assistant (SDA) helps software teams more efficiently and accurately conduct or execute software processes associated with NASA mission-critical software. SDA is a process enactment platform that guides software teams through project-specific standards, processes, and procedures. Software projects are decomposed into all of their required process steps or tasks, and each task is assigned to project personnel. SDA orchestrates the performance of work required to complete all process tasks in the correct sequence. The software then notifies team members when they may begin work on their assigned tasks and provides the tools, instructions, reference materials, and supportive artifacts that allow users to compliantly perform the work. A combination of technology components captures and enacts any software process use to support the software lifecycle. It creates an adaptive workflow environment that can be modified as needed. SDA achieves software process automation through a Business Process Management (BPM) approach to managing the software lifecycle for mission-critical projects. It contains five main parts: TieFlow (workflow engine), Business Rules (rules to alter process flow), Common Repository (storage for project artifacts, versions, history, schedules, etc.), SOA (interface to allow internal, GFE, or COTS tools integration), and the Web Portal Interface (collaborative web environment
The book "Object-Oriented Environments - The Mjølner Approach" presents the collective results of the Mjølner Project. The project was set up to work on the widely recognized problems of developing, maintaining and understanding large software systems. The starting point was to use object...... and realizations User interfaces for environments and realizations Grammar-based software architectures Structure-based editing Language implementation, runtime organization, garbage collection Incremental compilation techniques...
a specific and narrow domain of application. This statement is substantiated by a noted expert on the subject of software development environments...terms much closer to our own english langauge . The other techniques analyzed for possible use in defining the "As-Is" model of the software development...tool for the SDW. Furthermore, with the abundance of suc- tools in the public domain or under the propriety of the U.S. Air Force, AFIT should not have
software is “checked-in.” Another limitation of inspections is that the Agile method- ology recommends formal inspections and Scrum uses pair...Agile Software Development with Scrum , Upper Saddle River, NJ: Prentice Hall, 2002, pp. 1-158. 6. “SAMATE - Software Assurance Metrics and Tool
PETERSEN,MARJORIE B.; MITCHINER,JOHN L.
Sandia National Laboratories has been developing technologies to support person-to-person collaboration and the efforts of teams in the business and research communities. The technologies developed include knowledge-based design advisors, knowledge management systems, and streamlined manufacturing supply chains. These collaborative environments in which people can work together sharing information and knowledge have required a new approach to software development. The approach includes an emphasis on the requisite change in business practice that often inhibits user acceptance of collaborative technology. Leveraging the experience from this work, they have established a multidisciplinary approach for developing collaborative software environments. They call this approach ``A Holistic Software Development Methodology''.
Berman, Eileen [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Gurbani, Vijay [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Mackinnon, Bryan [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Newberg, Heidi [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Nicinski, Tom [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Petravick, Don [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Pordes, Ruth [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Sergey, Gary [Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States); Stoughton, C [Fermi National Accelerator Lab., Batavia, IL (United States); Lupton, Robert [Princeton Univ., NJ (United States)
The authors present an integrated science software development environment, code maintenance and support system for the Sloan Digital Sky Survey (SDSS) now being actively used throughout the collaboration. The SDSS is a collaborative effort between Fermi National Accelerator Laboratory, the Univ. of Chicago, Princeton University, the Institute for Advanced Study, The John Hopkins University, Univ. of Washington, the U.S. Naval Observatory and the Japan Promotion Group. Its main results will be an imaging survey of 104deg2 and a red shift spectroscopic survey of 106 galaxies and 105 quasars producing approximately 1.2 x 1013 bytes of data over the 5 year running period (1995-2000). This will produce a three dimensional map of the Universe.
National Aeronautics and Space Administration — The goal of this proposed research is to investigate and develop a workflow based tool, the Software Developers Assistant, to facilitate the collaboration between...
Dossick, Stephen E; Kaiser, Gail E
We introduce CHIME, the Columbia Hypermedia IMmersion Environment, a metadata-based information environment, and describe its potential applications for internet and intranet-based distributed software development...
Christensen, Henrik Bærbak
: A visualisation model where entities in a software architecture are organised geographically in a two-dimensional plane, their visual appearance determined by processing a subset of the data in the entities, and interaction with the project's underlying data performed by direct manipulation of the landscape...... Management Model: A software configuration management model where the abstractions and hierarchy of the logical aspect of software architecture forms the basis for version control and configuration management. The second main contribution is the Geographic Space Architecture Visualisation Model....... The main results from the three case studies are the following: The architectural software configuration management model is a natural and viable model for configuration management, at least for small- to medium-sized systems. The model's main assets are that it minimises the gap between the concepts used...
acquisition system for information technology ” (para. 2). The DoD is subject to a changing operational environment , budgetary constraints, the rapid...Agile Software Development in the Department of Defense Environment Lareina Adams March 31, 2017...Defense (DoD) information technology (IT) programs are plagued by immense bureaucracy, seemingly endless documentation, cost overruns, and poorly
Ge, Xun; Huang, Kun; Dong, Yifei
A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study…
Amrit, Chintan Amrit; van Hillegersberg, Jos
Software development is rarely an individual effort and generally involves teams of developers collaborating to generate good reliable code. Among the software code there exist technical dependencies that arise from software components using services from other components. The different ways of
Full Text Available This paper shows how Quality Costs can be a measure of software quality. The relationship between Quality Costs and other software quality metrics is briefly explained, and software development oriented versions of the two principal Quality Cost models are described. Finally the paper discusses the major issues involved in setting up a software Quality Cost programme. The concepts are based on previous research on Quality Costs in manufacturing, coupled with work on software metrics and the work currently being undertaken by the authors in a number of industries.
Guo, Yu; Guan, Wei; Sierszecki, Krzysztof
-based development of embedded software. The technological issues discussed come largely from the experience gained duringthe implementation of the prototype version of the COMDES development environment. The issues investigated and problemsdiscovered will offer hints to other research and development efforts...... dealing with software development environments based on models and components....
now is directed to other related problems such as tools for model selection, multiversion programming, and software fault tolerance modeling... multiversion programming, 7. Hlardware can be repaired by spare modules, which is not. the case for software, 2-6 N. Preventive maintenance is very important
Kats, L.C.L.; Vogelij, R.G.; Kalleberg, K.T.; Visser, E.
Preprint of paper published in: Onward! 2012 - Proceedings of the 11th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software, 19-26 October 2012; 10.1145/2384592.2384603 Software is rapidly moving from the desktop to theWeb. The Web provides a generic user
Church, Victor E.; Long, D.; Hartenstein, Ray; Perez-Davila, Alfredo
A set of functional requirements for software configuration management (CM) and metrics reporting for Space Station Freedom ground systems software are described. This report is one of a series from a study of the interfaces among the Ground Systems Development Environment (GSDE), the development systems for the Space Station Training Facility (SSTF) and the Space Station Control Center (SSCC), and the target systems for SSCC and SSTF. The focus is on the CM of the software following delivery to NASA and on the software metrics that relate to the quality and maintainability of the delivered software. The CM and metrics requirements address specific problems that occur in large-scale software development. Mechanisms to assist in the continuing improvement of mission operations software development are described.
SOFTWARE CONFIGURATION MANAGEMENT ACROSS - -* PROJECT BOUNDARIES AND IN DISTRIBUTED DEVELOPMENT ENVIRONMENTS Author: Mamrgt Stanley C S 0 PROCUREMENT ...SCM . . . . . . . . . . . . . . 23 - 4.2 Centralised SCM Database. . . . . . . . . . . . 24 4.3 Sharing Software Between Host PSEs. . . . . . . 24...changing one of the databases. .0 4.2 Centralised SCM Database. It my be desirable for overall anagement control to have some central form of configuration
Watanabe, Tetsuya; Araki, Kosuke; Yamaguchi, Toshimitsu; Minatani, Kazunori
We have developed software that uses the R statistics software environment to automatically generate tactile graphs — i.e. graphs that can be read by blind people using their sense of touch. We released this software as a Web application to make it available to anyone, from anywhere. This Web application can automatically generate images for tactile graphs from numerical data in a CSV file. It is currently able to generate four types of graph — scatter plots, line graphs, bar charts and pie c...
Wellisch, J P
One of the most challenging issues faced in HEP in recent years is the question of how to capitalise on software development and maintenance experience in a continuous manner. To capitalise means in our context to evaluate and apply new process technologies as they arise, and to further evolve technologies already widely in use. It also implies the definition and adoption of standards. The CMS off- line software improvement effort aims at continual software quality improvement, and continual improvement in the efficiency of the working environment with the goal to facilitate doing great new physics. To achieve this, we followed a process improvement program based on ISO-15504, and Rational Unified Process. This experiment in software process improvement in HEP has been progressing now for a period of 3 years. Taking previous experience from ATLAS and SPIDER into account, we used a soft approach of continuous change within the limits of current culture to create of de facto software process standards within th...
Jiang, Yiping; Chen, C. L. Philip; Duan, Junwei
Cyber-physical system (CPS) is an emerging area, which cannot work efficiently without proper software handling of the data and business logic. Software and middleware is the soul of the CPS. The software development of CPS is a critical issue because of its complicity in a large scale realistic system. Furthermore, object-oriented approach (OOA) is often used to develop CPS software, which needs some improvements according to the characteristics of CPS. To develop software in a CPS environment, a new systematic approach is proposed in this paper. It comes from practice, and has been evolved from software companies. It consists of (A) Requirement analysis in event-oriented way, (B) architecture design in data-oriented way, (C) detailed design and coding in object-oriented way and (D) testing in event-oriented way. It is a new approach based on OOA; the difference when compared with OOA is that the proposed approach has different emphases and measures in every stage. It is more accord with the characteristics of event-driven CPS. In CPS software development, one should focus on the events more than the functions or objects. A case study of a smart home system is designed to reveal the effectiveness of the approach. It shows that the approach is also easy to be operated in the practice owing to some simplifications. The running result illustrates the validity of this approach.
Field studies were conducted by MCC to determine areas of research of mutual interest to MCC and JSC. NASA personnel from the Information Systems Directorate and research faculty from UHCL/RICIS visited MCC in Austin, Texas to examine tools and applications under development in the MCC Software Technology Program. MCC personnel presented workshops in hypermedia, design knowledge capture, and design recovery on site at JSC for ISD personnel. The following programs were installed on workstations in the Software Technology Lab, NASA/JSC: (1) GERM (Graphic Entity Relations Modeler); (2) gIBIS (Graphic Issues Based Information System); and (3) DESIRE (Design Recovery tool). These applications were made available to NASA for inspection and evaluation. Programs developed in the MCC Software Technology Program run on the SUN workstation. The programs do not require special configuration, but they will require larger than usual amounts of disk space and RAM to operate properly.
Persson, John Stouby; Mathiassen, Lars; Aaen, Ivan
While face-to-face interaction is fundamental in agile software development, distributed environments must rely extensively on mediated interactions. Practicing agile principles in distributed environments therefore poses particular control challenges related to balancing fixed vs. evolving quality...... requirements and people vs. process-based collaboration. To investigate these challenges, we conducted an in-depth case study of a successful agile distributed software project with participants from a Russian firm and a Danish firm. Applying Kirsch’s elements of control framework, we offer an analysis of how...
Software Development is moving towards a more agile and more flexible approach. It turns out that the traditional 'waterfall' model is not supportive in an environment where technical, financial and strategic constraints are changing almost every day. But what is agility? What are today's major approaches? And especially: What is the impact of agile development principles on the development teams, on project management and on software architects? How can large enterprises become more agile and improve their business processes, which have been existing since many, many years? What are the limit
Sauer, Sebastian; Müller, Tobias; Haag, Sebastian; Zontar, Daniel
The assembly of optical components for laser systems is proprietary knowledge and typically done by well-trained personnel in clean room environment as it has major impact on the overall laser performance. Rising numbers of laser systems drives laser production to industrial-level automation solutions allowing for high volumes by simultaneously ensuring stable quality, lots of variants and low cost. Therefore, an easy programmable, expandable and reconfigurable machine with intuitive and flexible software environment for process configuration is required. With Fraunhofer IPT's expertise on optical assembly processes, the next step towards industrializing the production of optical systems is made.
In previous work we described how the process algebra based language PSF can be used in software engineering, using the ToolBus, a coordination architecture also based on process algebra, as implementation model. In this article we summarize that work and describe the software development process more formally by presenting the tools we use in this process in a CASE setting, leading to the PSF-ToolBus software engineering environment. We generalize the refine step in this environment towards ...
Hendrick, Robert; Kistler, David; Valett, Jon
This document presents the components and algorithms of the Software Management Environment (SME), a management tool developed for the Software Engineering Branch (Code 552) of the Flight Dynamics Division (FDD) of the Goddard Space Flight Center (GSFC). The SME provides an integrated set of visually oriented experienced-based tools that can assist software development managers in managing and planning software development projects. This document describes and illustrates the analysis functions that underlie the SME's project monitoring, estimation, and planning tools. 'SME Components and Algorithms' is a companion reference to 'SME Concepts and Architecture' and 'Software Engineering Laboratory (SEL) Relationships, Models, and Management Rules.'
Liaw, Morris; Evesson, Donna
Software Engineering and Ada Database (SEAD) was developed to provide an information resource to NASA and NASA contractors with respect to Ada-based resources and activities which are available or underway either in NASA or elsewhere in the worldwide Ada community. The sharing of such information will reduce duplication of effort while improving quality in the development of future software systems. SEAD data is organized into five major areas: information regarding education and training resources which are relevant to the life cycle of Ada-based software engineering projects such as those in the Space Station program; research publications relevant to NASA projects such as the Space Station Program and conferences relating to Ada technology; the latest progress reports on Ada projects completed or in progress both within NASA and throughout the free world; Ada compilers and other commercial products that support Ada software development; and reusable Ada components generated both within NASA and from elsewhere in the free world. This classified listing of reusable components shall include descriptions of tools, libraries, and other components of interest to NASA. Sources for the data include technical newletters and periodicals, conference proceedings, the Ada Information Clearinghouse, product vendors, and project sponsors and contractors.
Biju, Soly Mathew
Many software development firms are now adopting the agile software development method. This method involves the customer at every level of software development, thus reducing the impact of change in the requirement at a later stage. In this article, the principles of the agile method for software development are explored and there is a focus on…
Javier Valencia Mendez
Full Text Available The recent global economic downturn has increased an already perceived need in organizations for cost savings. To cope with such need, companies can opt for different strategies. This paper focuses on optimizing processes and, more specifically, determining the optimal lot production. To determine the optimal lot of a specific production process, a new software was developed that not only incorporates various productive and logistical elements in its calculations but also affords users a practical way to manage the large number of input parameters required to determine the optimal batch. The developed software has not only been validated by several companies, both Spanish and Mexican, who achieved significant savings, but also used as a teaching tool in universities with highly satisfactory results from the point of view of student learning. A special contribution of this work is that the developed tool can be sent to the interested reader free of charge upon request.
Javier Valencia Mendez
Full Text Available The recent global economic downturn has increased an already perceived need in organizations for cost savings. To cope with such need, companies can opt for different strategies. This paper focuses on optimizing processes and, more specifically, determining the optimal lot production. To determine the optimal lot of a specific production process, a new software was developed that not only incorporates various productive and logistical elements in its calculations but also affords users a practical way to manage the large number of input parameters required to determine the optimal batch. The developed software has not only been validated by several companies, both Spanish and Mexican, who achieved significant savings, but also used as a teaching tool in universities with highly satisfactory results from the point of view of student learning. A special contribution of this work is that the developed tool can be sent to the interested reader free of charge upon request.
Uncertainty and sensitivity analysis of complex simulation models are prominent issues, both in scientific research and education. ReSUS (Repository Simulation, Uncertainty propagation and Sensitivity analysis) is an integrated platform to perform such analysis with numerical models that simulate the THMC (Thermal Hydraulical Mechanical and Chemical) coupled processes via different programs, in particular in the context of safety assessments for radioactive waste repositories. This thesis presents the idea behind the software platform ReSUS and its working mechanisms. Apart from the idea and the working mechanisms, the thesis describes applications related to the safety assessment of radioactive waste disposal systems. In this thesis, previous simulation tools (including the preceding version of ReSUS) are analyzed in order to provide a comprehensive view of the state of the art. In comparison to this state, a more sophisticated software tool is developed here, which provides features which are not offered by previous simulation tools. To achieve this objective, the software platform ReSUS provides a framework for handling probabilistic data uncertainties using deterministic external simulation tools, thus enhancing uncertainty and sensitivity analysis. This platform performs probabilistic simulations of various models, in particular THMC coupled processes, using stand-alone deterministic simulation software tools. The complete software development process of the ReSUS Platform is discussed in this thesis. ReSUS components are developed as libraries, which are capable of being linked to other code implementations. In addition, ASCII template files are used as means for uncertainty propagation into the input files of deterministic simulation tools. The embedded input sampler and analysis tools allow for sensitivity analysis in several kinds of simulation designs. The novelty of the ReSUS platform consists in the flexibility to assign external stand-alone software
A brief review of software development history. Software complexity crisis. Software development ROI. The case for global software development and testing. Software quality and test ROI. How do you implement global software development and testing. Case studies.
Filman, R.E.; Elrad, T.; Clarke, S.; Aksit, Mehmet; Unknown, [Unknown
Software development is changing. The opportunities of the Internet, computerized businesses, and computer-savvy consumers, the exponential decline in the cost of computation and communication, and the increasingly dynamic environment for longer-living systems are pressing software developers to
This work is a study of simulation environments as tools for product software development from architecture definition phase to testing the actual end product software code. The purpose of the work was to find a feasible way to utilize simulation environments for improving product time to market. The work was initiated to renew the existing simulation methods to correspond the demands of the present-day process of developing products. Work effort mainly consisted of studying the e...
Operating in mission-critical environments requires trusted solutions, and the preference for "tried and true" approaches presents a potential barrier to infusing innovation into mission-critical systems. This presentation explores opportunities to overcome this barrier in the software domain. It outlines specific areas of innovation in software development achieved by the Johnson Space Center (JSC) Engineering Directorate in support of NASA's major human spaceflight programs, including International Space Station, Multi-Purpose Crew Vehicle (Orion), and Commercial Crew Programs. Software engineering teams at JSC work with hardware developers, mission planners, and system operators to integrate flight vehicles, habitats, robotics, and other spacecraft elements for genuinely mission critical applications. The innovations described, including the use of NASA Core Flight Software and its associated software tool chain, can lead to software that is more affordable, more reliable, better modelled, more flexible, more easily maintained, better tested, and enabling of automation.
Abrahamsson, Pekka; Kautz, Karlheinz; Sieppi, Heikki
Emerging agile software development methods are people oriented development approaches to be used by the software industry. The personal software process (PSP) is an accepted method for improving the capabilities of a single software engineer. Five original hypotheses regarding the impact...... and time estimation skills but that the productivity did not decrease and the resulting product quality was improved. The implications of these findings are briefly addressed....
This Software Guide (SG) describes the software developed to test the Assessment Environment for Complex Systems (AECS) by the West Virginia High Technology Consortium (WVHTC) Foundation's Mission Systems Group (MSG) for the National Aeronautics and Space Administration (NASA) Aeronautics Research Mission Directorate (ARMD). This software is referred to as the AECS Test Project throughout the remainder of this document. AECS provides a framework for developing, simulating, testing, and analyzing modern avionics systems within an Integrated Modular Avionics (IMA) architecture. The purpose of the AECS Test Project is twofold. First, it provides a means to test the AECS hardware and system developed by MSG. Second, it provides an example project upon which future AECS research may be based. This Software Guide fully describes building, installing, and executing the AECS Test Project as well as its architecture and design. The design of the AECS hardware is described in the AECS Hardware Guide. Instructions on how to configure, build and use the AECS are described in the User's Guide. Sample AECS software, developed by the WVHTC Foundation, is presented in the AECS Software Guide. The AECS Hardware Guide, AECS User's Guide, and AECS Software Guide are authored by MSG. The requirements set forth for AECS are presented in the Statement of Work for the Assessment Environment for Complex Systems authored by NASA Dryden Flight Research Center (DFRC). The intended audience for this document includes software engineers, hardware engineers, project managers, and quality assurance personnel from WVHTC Foundation (the suppliers of the software), NASA (the customer), and future researchers (users of the software). Readers are assumed to have general knowledge in the field of real-time, embedded computer software development.
Schmidt, Richard F
Software Engineering: Architecture-driven Software Development is the first comprehensive guide to the underlying skills embodied in the IEEE's Software Engineering Body of Knowledge (SWEBOK) standard. Standards expert Richard Schmidt explains the traditional software engineering practices recognized for developing projects for government or corporate systems. Software engineering education often lacks standardization, with many institutions focusing on implementation rather than design as it impacts product architecture. Many graduates join the workforce with incomplete skil
Dingsoyr, Torgeir; Moe, Nils Brede
Agile software development has become an umbrella term for a number of changes in how software developers plan and coordinate their work, how they communicate with customers and external stakeholders, and how software development is organized in small, medium, and large companies, from the telecom and healthcare sectors to games and interactive media. Still, after a decade of research, agile software development is the source of continued debate due to its multifaceted nature and insufficient synthesis of research results. Dingsoyr, Dyba, and Moe now present a comprehensive snapshot of the kno
Momcheva, Ivelina G.
Astronomical software is used by each and every member of our scientific community. Purpose-build software is becoming ever more critical as we enter the regime of large datasets and simulations of increasing complexity. However, financial investments in building, maintaining and renovating the software infrastructure have been uneven. In this talk I will summarize past and current funding sources for astronomical software development, discuss other models of funding and introduce a new initiative for supporting community software at STScI. The purpose of this talk is to prompt discussion about how we allocate resources to this vital infrastructure.
Nor, Mohd Zali Mohd; Abdullah, Rusli; Murad, Masrah Azrifah Azmi; Selamat, Mohd Hasan
In recent years, many organizations consider knowledge management (KM) to be strategically important to their business. In general, Knowledge Sharing (KS), Knowledge Transfer (KT) and Knowledge Management System (KMS) are among the themes to bring synergies among different teams, units or departments, to accelerate innovation, improve quality and reduce costs and exposure to business risks. In Software Engineering area, KM have been studied mostly on Software Development environment, but Soft...
Brown, David B.
The results of research and development efforts are described for Task one, Phase two of a general project entitled The Development of a Program Analysis Environment for Ada. The scope of this task includes the design and development of a prototype system for testing Ada software modules at the unit level. The system is called Query Utility Environment for Software Testing of Ada (QUEST/Ada). The prototype for condition coverage provides a platform that implements expert system interaction with program testing. The expert system can modify data in the instrument source code in order to achieve coverage goals. Given this initial prototype, it is possible to evaluate the rule base in order to develop improved rules for test case generation. The goals of Phase two are the following: (1) to continue to develop and improve the current user interface to support the other goals of this research effort (i.e., those related to improved testing efficiency and increased code reliable); (2) to develop and empirically evaluate a succession of alternative rule bases for the test case generator such that the expert system achieves coverage in a more efficient manner; and (3) to extend the concepts of the current test environment to address the issues of Ada concurrency.
Dyer, M.; Mills, H. D.
The 'cleanroom' software development process is a technical and organizational approach to developing software with certifiable reliability. Key ideas behind the process are well structured software specifications, randomized testing methods and the introduction of statistical controls; but the main point is to deny entry for defects during the development of software. This latter point suggests the use of the term 'cleanroom' in analogy to the defect prevention controls used in the manufacturing of high technology hardware. In the 'cleanroom', the entire software development process is embedded within a formal statistical design, in contrast to executing selected tests and appealing to the randomness of operational settings for drawing statistical inferences. Instead, random testing is introduced as a part of the statistical design itself so that when development and testing are completed, statistical inferences are made about the operation of the system.
Full Text Available Programs in education and business often require learners to develop and demonstrate competence in specified areas and then be able to effectively apply this knowledge. One method to aid in developing a skill set in these areas is through the use of software simulations. These simulations can be used for learner demonstrations of competencies in a specified course as well as a review of the basic skills at the beginning of subsequent courses. The first section of this paper discusses ToolBook, the software used to develop our software simulations. The second section discusses the process of developing software simulations. The third part discusses how we have used software simulations to assess student knowledge of research design by providing simulations that allow the student to practice using SPSS and Excel.
Kuhrmann, Marco; Méndez Fernández, Daniel
makes these countries an attractive host for software companies. Often, high-quality engineering and excellent quality of products, e.g., machinery and equipment, are mentioned. Yet, the question is: Can such arguments be also found for the software industry? We aim at investigating the degree...... project- and quality management and their implementation in practice. So far, our results suggest that the necessity for a systematic software development is well recognized, while software development still follows an ad-hoc rather than a systematized style. Our results provide initial findings, which we......The speed of innovation and the global allocation of resources to accelerate development or to reduce cost put pressure on the software industry. In the global competition, especially so-called high-price countries have to present arguments why the higher development cost is justified and what...
M. de Jonge (Merijn); E. Visser; J.M.W. Visser (Joost)
textabstractWe present an approach to collaborative software development where obtaining components and contributing components across organizational boundaries are explicit phases in the development process. A lightweight generative infrastructure supports this approach with an online package base,
This overview presents the mid stages of my doctoral research-based on ethnographic work conducted in IT companies in India and in Denmark-on collaborative work within global software development (GSD). In the following I briefly introduce how this research seeks to spark a debate in CSCW...... by challenging contemporary ideals about software development outsourcing through the exploration of the multiplicities and asymmetric dynamics inherent in the collaborative work of GSD....
Hops, J. M.; Sherif, J. S.
A great deal of effort is now being devoted to the study, analysis, prediction, and minimization of software maintenance expected cost, long before software is delivered to users or customers. It has been estimated that, on the average, the effort spent on software maintenance is as costly as the effort spent on all other software costs. Software design methods should be the starting point to aid in alleviating the problems of software maintenance complexity and high costs. Two aspects of maintenance deserve attention: (1) protocols for locating and rectifying defects, and for ensuring that noe new defects are introduced in the development phase of the software process; and (2) protocols for modification, enhancement, and upgrading. This article focuses primarily on the second aspect, the development of protocols to help increase the quality and reduce the costs associated with modifications, enhancements, and upgrades of existing software. This study developed parsimonious models and a relative complexity metric for complexity measurement of software that were used to rank the modules in the system relative to one another. Some success was achieved in using the models and the relative metric to identify maintenance-prone modules.
Tayntor, Christine B
Since Six Sigma has had marked success in improving quality in other settings, and since the quality of software remains poor, it seems a natural evolution to apply the concepts and tools of Six Sigma to system development and the IT department. Until now however, there were no books available that applied these concepts to the system development process. Six Sigma Software Development fills this void and illustrates how Six Sigma concepts can be applied to all aspects of the evolving system development process. It includes the traditional waterfall model and in the support of legacy systems,
separate comment section for events that affected individual CSCIs. I C-31 S% S g S. SYSTEM LEVEL OR CSCI LEVEL DOCUMENTATION PORN INSTRUCTIONS This...J*~ *.p.N. COMPUTER SOFTVARE CONFIGURATION ITEM SUMMART DATA PORN INSTRUCTIONS 4.1.4. Development Methods Experience Enter the average number of...users see what is happening and view results). It is often a video display terminal of some sort, although it could be a hard copy printer and keyboard or
Gurram, Chaitanya; Bandi, Srinivas Goud
Context: Distributed software development has become a most desired way of software development. Application of agile development methodologies in distributed environments has taken a new trend in developing software due to its benefits of improved communication and collaboration. Teamwork is an important concept that agile methodologies facilitate and is one of the potential determinants of team performance which was not focused in distributed agile software development. Objectives: This res...
Pelupessy, F. I.; van Elteren, A.; de Vries, N.; McMillan, S. L. W.; Drost, N.; Portegies Zwart, S. F.
We present the open source Astrophysical Multi-purpose Software Environment (AMUSE), a component library for performing astrophysical simulations involving different physical domains and scales. It couples existing codes within a Python framework based on a communication layer using MPI. The interfaces are standardized for each domain and their implementation based on MPI guarantees that the whole framework is well-suited for distributed computation. It includes facilities for unit handling and data storage. Currently it includes codes for gravitational dynamics, stellar evolution, hydrodynamics and radiative transfer. Within each domain the interfaces to the codes are as similar as possible. We describe the design and implementation of AMUSE, as well as the main components and community codes currently supported and we discuss the code interactions facilitated by the framework. Additionally, we demonstrate how AMUSE can be used to resolve complex astrophysical problems by presenting example applications. http://www.amusecode.org The current version of the code is available at the CDS via anonymous ftp to http://cdsarc.u-strasbg.fr (ftp://18.104.22.168) or via http://cdsarc.u-strasbg.fr/viz-bin/qcat?J/A+A/557/A84
This slide presentation reviews the use of modular infrastructure to assist in the development of flight software. A feature of this program is the use of model based approach for application unique software. A review of two programs that this approach was use on are: the development of software for Hover Test Vehicle (HTV), and Lunar Atmosphere and Dust Environment Experiment (LADEE).
Søderberg, Anne-Marie; Krishna, S.; Bjørn, Pernille
accounts of close collaboration processes in two large and complex projects, where off-shoring of software development is moved to a strategic level, we found that the vendor was able to establish a strategic partnership through long-term engagement with the field of banking and insurance as well...
Moniruzzaman, A. B. M.; Hossain, Dr Syed Akhter
Today-s business environment is very much dynamic, and organisations are constantly changing their software requirements to adjust with new environment. They also demand for fast delivery of software products as well as for accepting changing requirements. In this aspect, traditional plan-driven developments fail to meet up these requirements. Though traditional software development methodologies, such as life cycle-based structured and object oriented approaches, continue to dominate the sys...
software- development environment. ▶ Frank W. Bentrem, Ph.D., John T. Sample, Ph.D., and Michael M. Harris he Naval Research Labor - atory (NRL) is the...sonars (Through-the-Sensor technology), supercomputer generated numer- ical models, and historical/ clima - tological databases. It uses a vari- ety of
In mobile communications age, environment changes rapidly, the requirements change is the software project must face challenge. Able to overcome the impact of requirements change, software development risk can be effectively decreased. In order to reduce software requirements change risk, the paper investigates the major software development models and recommends the adaptable requirements change software development. Agile development applied the Iterative and Incremental Develop...
Jain, Abhinandan; Biesiadecki, Jeffrey
YAM is a software development framework with tools for facilitating the rapid development and integration of software in a concurrent software development environment. YAM provides solutions for thorny development challenges associated with software reuse, managing multiple software configurations, the development of software product-lines, multiple platform development and build management. YAM uses release-early, release-often development cycles to allow developers to incrementally integrate their changes into the system on a continual basis. YAM facilitates the creation and merging of branches to support the isolated development of immature software to avoid impacting the stability of the development effort. YAM uses modules and packages to organize and share software across multiple software products. It uses the concepts of link and work modules to reduce sandbox setup times even when the code-base is large. One side-benefit is the enforcement of a strong module-level encapsulation of a module s functionality and interface. This increases design transparency, system stability as well as software reuse. YAM is in use by several mid-size software development teams including ones developing mission-critical software.
Wetherholt, Martha S.; Radley, Charles F.
Until recently, NASA did not consider allowing computers total control of flight systems. Human operators, via hardware, have constituted the ultimate safety control. In an attempt to reduce costs, NASA has come to rely more and more heavily on computers and software to control space missions. (For example. software is now planned to control most of the operational functions of the International Space Station.) Thus the need for systematic software safety programs has become crucial for mission success. Concurrent engineering principles dictate that safety should be designed into software up front, not tested into the software after the fact. 'Cost of Quality' studies have statistics and metrics to prove the value of building quality and safety into the development cycle. Unfortunately, most software engineers are not familiar with designing for safety, and most safety engineers are not software experts. Software written to specifications which have not been safety analyzed is a major source of computer related accidents. Safer software is achieved step by step throughout the system and software life cycle. It is a process that includes requirements definition, hazard analyses, formal software inspections, safety analyses, testing, and maintenance. The greatest emphasis is placed on clearly and completely defining system and software requirements, including safety and reliability requirements. Unfortunately, development and review of requirements are the weakest link in the process. While some of the more academic methods, e.g. mathematical models, may help bring about safer software, this paper proposes the use of currently approved software methodologies, and sound software and assurance practices to show how, to a large degree, safety can be designed into software from the start. NASA's approach today is to first conduct a preliminary system hazard analysis (PHA) during the concept and planning phase of a project. This determines the overall hazard potential of
Victor S. Gorbatov
Full Text Available Information security is one of the most important criteria for the quality of developed software. To obtain a sufficient level of application security companies implement security process into software development life cycle. At this stage software companies encounter with deficit employees who able to solve problems of software design, implementation and application security. This article provides a description of the secure software development training course. Training course of application security is designed for co-education students of different IT-specializations.
Filman, Robert E.; Norvig, Peter (Technical Monitor)
The NASA's Intelligent Synthesis Environment (ISE) program is a grand attempt to develop a system to transform the way complex artifacts are engineered. This paper discusses a "middleware" architecture for enabling the development of ISE. Desirable elements of such an Intelligent Synthesis Architecture (ISA) include remote invocation; plug-and-play applications; scripting of applications; management of design artifacts, tools, and artifact and tool attributes; common system services; system management; and systematic enforcement of policies. This paper argues that the ISA extend conventional distributed object technology (DOT) such as CORBA and Product Data Managers with flexible repositories of product and tool annotations and "plug-and-play" mechanisms for inserting "ility" or orthogonal concerns into the system. I describe the Object Infrastructure Framework, an Aspect Oriented Programming (AOP) environment for developing distributed systems that provides utility insertion and enables consistent annotation maintenance. This technology can be used to enforce policies such as maintaining the annotations of artifacts, particularly the provenance and access control rules of artifacts-, performing automatic datatype transformations between representations; supplying alternative servers of the same service; reporting on the status of jobs and the system; conveying privileges throughout an application; supporting long-lived transactions; maintaining version consistency; and providing software redundancy and mobility.
In previous work we described how the process algebra based language PSF can be used in software engineering, using the ToolBus, a coordination architecture also based on process algebra, as implementation model. In this article we summarize that work and describe the software development process
Velden, van der M.J.; Hendriks, P.R.H.; Udink ten Cate, A.J.
Research organizations pay much attention to the quality of their work, but not always to the quality of the software they produce within research projects. This is not a healthy situation since research organizations are becoming more and more dependent on software development. This paper describes
Tkachuk, Oksana; Dwyer, Matthew B.; Pasareanu, Corina S.
A key problem in model checking open systems is environment modeling (i.e., representing the behavior of the execution context of the system under analysis). Software systems are fundamentally open since their behavior is dependent on patterns of invocation of system components and values defined outside the system but referenced within the system. Whether reasoning about the behavior of whole programs or about program components, an abstract model of the environment can be essential in enabling sufficiently precise yet tractable verification. In this paper, we describe an approach to generating environments of Java program fragments. This approach integrates formally specified assumptions about environment behavior with sound abstractions of environment implementations to form a model of the environment. The approach is implemented in the Bandera Environment Generator (BEG) which we describe along with our experience using BEG to reason about properties of several non-trivial concurrent Java programs.
This book describes the software for creating networked, 3D multi-user virtual environments that allow users to create and remotely share visualizations of program behavior. The authors cover the major features of collaborative virtual environments and how to program them in a very high level language, and show how visualization can enable important advances in our ability to understand and reduce the costs of maintaining software. The book also examines the application of popular game-like software technologies. • Discusses the acquisition of program behavior data to be visualized • Demonstrates the integration of multiple 2D and 3D dynamic views within a 3Dscene • Presents the network messaging capabilities to share those visualizations
Even though there are many software development and project management methodologies available, research and practice both show that IT software development projects still fail, and that the quality of software products does not always meet customers' expectations. There might be multiple causes for such failures, but some of these reasons can be seen to influence or create others. Therefore, the larger the project is, the higher its risk of failure, especially if the teams involved work remo...
Tausworthe, Robert C.
Software Cost Estimation Model program, SOFTCOST, developed to provide consistent automated resource-and-schedule mathematical model more formalized than guesswork model. Combines several software-cost models found in open literature into one comprehensive set of algorithms compensating for nearly 50 implementation factors relative to size of task, inherited baseline, organizational and system environment, and difficulty of task. Produces mean and variance estimates of software size, implementation productivity, recommended staff level, probable duration, amount of computer resources required, and amount and cost of software documentation. Written in Microsoft BASIC.
Brown, David B.
The results of research and development efforts of the first six months of Task 1, Phase 3 of the project are presented. The goals of Phase 3 are: (1) to further refine the rule base and complete the comparative rule base evaluation; (2) to implement and evaluate a concurrency testing prototype; (3) to convert the complete (unit-level and concurrency) testing prototype to a workstation environment; and (4) to provide a prototype development document to facilitate the transfer of research technology to a working environment. These goals were partially met and the results are summarized.
Armstrong, Timothy C.; Loane, Russell F.
Examines the current status and short-term future of computer software development in higher education. Topics discussed include educational advantages of software; current program development techniques, including object oriented programming; and market trends, including IBM versus Macintosh and multimedia programs. (LRW)
Aaen, Ivan; Boelsmand, Jeppe Vestergaard; Jensen, Rasmus
This paper proposes a new review approach for innovative software development. Innovative software development implies that requirements are rarely available as a basis for reviewing and that the purpose of a review is as much to forward additional ideas, as to validate what has been accomplished...
Gill, C.; Reedy, A.; Baker, L.
The Carnegie Group Incorporated and Boeing Computer Services Company are developing a testbed which will provide a framework for integrating conventional software engineering tools with Artifical Intelligence (AI) tools to promote automation and productivity. The emphasis is on the transfer of AI technology to the software development process. Experiments relate to AI issues such as scaling up, inference, and knowledge representation. In its first year, the project has created a model of software development by representing software activities; developed a module representation formalism to specify the behavior and structure of software objects; integrated the model with the formalism to identify shared representation and inheritance mechanisms; demonstrated object programming by writing procedures and applying them to software objects; used data-directed and goal-directed reasoning to, respectively, infer the cause of bugs and evaluate the appropriateness of a configuration; and demonstrated knowledge-based graphics. Future plans include introduction of knowledge-based systems for rapid prototyping or rescheduling; natural language interfaces; blackboard architecture; and distributed processing
Sneed, Harry M.; Verhoef, Chris
The lack of skilled programming personnel and the growing burden of maintaining customized software are forcing organizations to quit producing their own software. It's high time they turned to ready-made, standard components to fulfill their business requirements. Cloud services might be one way to
Eulisse, G; Osborne, I; Taylor, L; Tuura, L A
CMS has developed approximately one million lines of C++ code and uses many more from HEP, Grid and public domain projects. We describe a suite of tools which help to manage this complexity by measuring software dependencies, quality metrics, and CPU and memory performance. This coherent environment integrates and extends existing open-source tools where possible and provides new in-house components where a suitable solution does not already exist. This is a freely available environment with graphical user interface which can be run on any software without the need to recompile or instrument it. We have developed ignominy which performs software dependency analysis of source code, binary products and external software. CPU profiling is provided based on oprofile, with added features such as profile snapshots, distributed profiling and aggregate profiles for farm systems including server-side tools for collecting profile data. Finally, we have developed a low-overhead performance and memory profiling tool, Mem...
Osborne, Haywood S.
Automatic programming generally involves the construction of a formal specification; i.e., one which allows unambiguous interpretation by tools for the subsequent production of the corresponding software. Previous practical efforts in this direction have focused on the serious problems of: (1) designing the optimum specification language; and (2) mapping (translating or compiling) from this specification language to the program itself. The approach proposed bypasses the above problems. It postulates that the specification proper should be an intermediate form, with the sole function of containing information sufficient to facilitate construction of programs and also of matching documentation. Thus, the means of forming the intermediary becomes a human factors task rather than a linguistic one; human users will read documents generated from the specification, rather than the specification itself.
Kuhr, Thomas; Hauth, Thomas
Belle II is a next generation B-factory experiment that will collect 50 times more data than its predecessor Belle. This requires not only a major upgrade of the detector hardware, but also of the simulation, reconstruction, and analysis software. The challenges of the software development at Belle II and the tools and procedures to address them are reviewed in this article.
Full Text Available Software methodologies provide guidelines for the development of software applications. Studies reveal that customer interaction in the software development process improves the chances that software applications will meet customers’ needs. Despite...
This book illustrates how goal-oriented, automated measurement can be used to create Lean organizations and to facilitate the development of Lean software, while also demonstrating the practical implementation of Lean software development by combining tried and trusted tools. In order to be successful, a Lean orientation of software development has to go hand in hand with a company's overall business strategy. To achieve this, two interrelated aspects require special attention: measurement and experience management. In this book, Janes and Succi provide the necessary knowledge to establish "
Goshkoderov, A. A.; Khlebnikov, N. A.; Obabkov, I. N.; Serkov, K. V.; Gajniyarov, I. M.; Aliev, A. A.
A framework for the analysis and calculation of teleroentgenograms was developed. Software development was carried out in the Department of Children's Dentistry and Orthodontics in Ural State Medical University. The software calculates the teleroentgenogram by the original method which was developed in this medical department. Program allows designing its own methods for calculating the teleroentgenograms by new methods. It is planned to use the technology of machine learning (Neural networks) in the software. This will help to make the process of calculating the teleroentgenograms easier because methodological points will be placed automatically.
Manikas, Konstantinos; Hämäläinen, Mervi; Tyrväinen, Pasi
The notion of software ecosystems has been popular both in research and industry for more than a decade, but how software ecosystems are created still remains unclear. This becomes more of a challenge if one examines the "creation'' of ecosystems that have high probability in surviving...... in the future, i.e. with respect to ecosystem health. In this paper, we focus on the creation of software ecosystems and propose a process for designing, developing, and establishing software ecosystems based on three basic steps and a set of activities for each step. We note that software ecosystem research...... infrastructure (platform). We identify that ecosystems can emerge out of two more distinct types of environments and thus the design should be based on the characteristics of this categorization. Moreover, we follow the approach that design, development, and establishment are not three distinct phases but rather...
Full Text Available In the forthcoming highly dynamic and complex business environment high-speed and cost-effective development of software applications for targeting a precise, unique and momentary set of requirements (no more-no less associated to a customized business case will bring sig-nificant benefits both for producers and users. This requires a life cycle change-oriented ap-proach in software development. In this respect, designing software with intrinsic evolutionary resources for reconfiguration represents the sound approach. A methodology for concurrent deployment of reconfigurability characteristics in software applications is introduced in this paper. Its potential is exemplified in a case study dealing with web-based software tools to support systematic product innovation projects.
In this paper, the author discusses two types of challenges facing software engineers as they develop software for scientists. The first type is those challenges that arise from the experience that scientists might have of developing their own software. From this experience, they internalise a model of software development but may not realise the contextual factors which make such a model successful. They thus have expectations and assumptions which prove challenging to software engineers. Th...
A JPL-created set of standard processes is to be used throughout the lifecycle of software development. These SDSPs cover a range of activities, from management and engineering activities, to assurance and support activities. These processes must be applied to software tasks per a prescribed set of procedures. JPL s Software Quality Improvement Project is currently working at the behest of the JPL Software Process Owner to ensure that all applicable software tasks follow these procedures. The SDSPs are captured as a set of 22 standards in JPL s software process domain. They were developed in-house at JPL by a number of Subject Matter Experts (SMEs) residing primarily within the Engineering and Science Directorate, but also from the Business Operations Directorate and Safety and Mission Success Directorate. These practices include not only currently performed best practices, but also JPL-desired future practices in key thrust areas like software architecting and software reuse analysis. Additionally, these SDSPs conform to many standards and requirements to which JPL projects are beholden.
This article talks about project management in a software development area. The emphasis is given to the process of software development and the main responsibilities of the project manager. Furthermore, some aspects of different management topics that can be found in almost all projects nowadays are also described. To have a successful project one needs to have a team of persons who will participate in the project according to their professional expertise. The teams and sub-teams are defined...
Giuffrida, Rosalba; Dittrich, Yvonne
variety of tools such as: instant messaging, internet forums, mailing lists, blogs, wikis, social network sites, social bookmarking, social libraries, virtual worlds. Though normally rather belonging to the private realm, the use of social software in corporate context has been reported, e.g. as a way...
Full Text Available In accordance with European efforts related to Critical Information Infrastructure Protection, in Hungary a special department called LRL-IBEK has been formed which is designated under the Disaster Management. While specific security issues of commercial applications are well understood and regulated by widely applied standards, increasing share of information systems are developed partly or entirely in a different way, by the community. In this paper different issues of the open development style will be discussed regarding the high requirements of Critical Information Infrastructures, and possible countermeasures will be suggested for the identified problems.
Gawali, Ajay R.
Software maintenance and support costs account for up to 60% of the overall software life cycle cost and often burdens tightly budgeted information technology (IT) organizations. Agile software development approach delivers business value early, but implications on software maintainability are still unknown. The purpose of this quantitative study…
Pankratius, Victor; Tichy, Walter F
With multicore processors now in every computer, server, and embedded device, the need for cost-effective, reliable parallel software has never been greater. By explaining key aspects of multicore programming, Fundamentals of Multicore Software Development helps software engineers understand parallel programming and master the multicore challenge. Accessible to newcomers to the field, the book captures the state of the art of multicore programming in computer science. It covers the fundamentals of multicore hardware, parallel design patterns, and parallel programming in C++, .NET, and Java. It
Corry, Aino Vonge
of abstract solutions often occurring problems, and the benefits they are claimed to provide, are: common vocabulary, enhanced documentation and shared experience. In the writing of our masters thesis, it occurred to us that things could be better, and that something had to be done to actually achieve...... Görel Hedin at Lund Institute of Technology. During my months there we developed the idea of a class library for design patterns further. The result was a CASE tool that uses reference attribute grammars to ease the application of, and documentation with, design patterns. All in all the research...
Risk management is an effective tool to control risks in software projects and increases the likelihood of project success. Risk management needs to be integrated as early as possible in the project. This dissertation proposes a Goal-driven Software Development Risk Management Model (GSRM) and explicitly integrates it into requirements engineering phase. This integration provides an early warning of potential problems so that both preventive and corrective actions can be undertaken to avoid t...
Mar 1, 2013 ... product design, development, and manufacture. Traditionally, the house of quality has been used in the automobile industry and other factory environments, but the same challenge of managing design complexity that Quality Function. Deployment tackles in the product industry also plagues the software ...
Agerfalk, Par J.; Fitzgerald, Brian
peer-reviewed The minitrack on Flexible and Distributed Software Development Processes addresses two important and partially intertwined current themes in software development: process flexibility and globally distributed software development
Walker, Carrie K.; Turkovich, John J.
A new software engineering discipline is Computer-Aided Software Engineering (CASE), a technology aimed at automating the software development process. This paper explores the development of CASE technology, particularly in the area of real-time/scientific/engineering software, and a history of CASE is given. The proposed software development environment for the Advanced Launch System (ALS CASE) is described as an example of an advanced software development system for real-time/scientific/engineering (RT/SE) software. The Automated Programming Subsystem of ALS CASE automatically generates executable code and corresponding documentation from a suitably formatted specification of the software requirements. Software requirements are interactively specified in the form of engineering block diagrams. Several demonstrations of the Automated Programming Subsystem are discussed.
Narkawicz, Anthony; Munoz, Cesar A.; Dutle, Aaron M.
This paper presents a software development process for safety-critical software components of cyber-physical systems. The process is called MINERVA, which stands for Mirrored Implementation Numerically Evaluated against Rigorously Verified Algorithms. The process relies on formal methods for rigorously validating code against its requirements. The software development process uses: (1) a formal specification language for describing the algorithms and their functional requirements, (2) an interactive theorem prover for formally verifying the correctness of the algorithms, (3) test cases that stress the code, and (4) numerical evaluation on these test cases of both the algorithm specifications and their implementations in code. The MINERVA process is illustrated in this paper with an application to geo-containment algorithms for unmanned aircraft systems. These algorithms ensure that the position of an aircraft never leaves a predetermined polygon region and provide recovery maneuvers when the region is inadvertently exited.
Andreasen, M. S.; Nielsen, H. V.; Schrøder, S. O.
Open Source Software (OSS) development has gained significant importance in the production of soft-ware products. Open Source Software developers have produced systems with a functionality that is competitive with similar proprietary software developed by commercial software organizations. Yet OSS...
nair, T. R. GopalaKrishnan; Suma, V.; Tiwari, Pranesh Kumar
One of the prerequisites of any organization is an unvarying sustainability in the dynamic and competitive industrial environment. Development of high quality software is therefore an inevitable constraint of any software industry. Defect management being one of the highly influencing factors for the production of high quality software, it is obligatory for the software organizations to orient them towards effective defect management. Since, the time of software evolution, testing is deemed a...
Basili, Victor R.; Selby, Richard W., Jr.
Since both cost/quality and production environments differ, this study presents an approach for customizing a characteristic set of software metrics to an environment. The approach is applied in the Software Engineering Laboratory (SEL), a NASA Goddard production environment, to 49 candidate process and product metrics of 652 modules from six (51,000 to 112,000 lines) projects. For this particular environment, the method yielded the characteristic metric set (source lines, fault correction effort per executable statement, design effort, code effort, number of I/O parameters, number of versions). The uses examined for a characteristic metric set include forecasting the effort for development, modification, and fault correction of modules based on historical data.
Anderson, D; Dragu, M; Fuchsberger, K; Garnier, JC; Gorzawski, AA; Koza, M; Krol, K; Misiowiec, K; Stamos, K; Zerlauth, M
The Controls software for the Large Hadron Collider (LHC) at CERN, with more than 150 millions lines of code, resides amongst the largest known code bases in the world1. Industry has been applying Agile software engineering techniques for more than two decades now, and the advantages of these techniques can no longer be ignored to manage the code base for large projects within the accelerator community. Furthermore, CERN is a particular environment due to the high personnel turnover and manpower limitations, where applying Agile processes can improve both, the codebase management as well as its quality. This paper presents the successful application of the Agile software development process Scrum for machine protection systems at CERN, the quality standards and infrastructure introduced together with the Agile process as well as the challenges encountered to adapt it to the CERN environment.
Full Text Available In today's world, the key to meeting the demand for improved security is to implement repeatable processes that reliably deliver measurably improved security. While many organizations have announced efforts to institutionalize a secure software development process, there is little or no industry acceptance for a common process improvement framework for secure software development. Motorola has taken the initiative to develop such a framework, and plans to share this with the Software Engineering Institute for possible inclusion into its Capability Maturity Model Integration (CMMI®. This paper will go into the details of how Motorola is addressing this issue. The model that is being developed is designed as an extension of the existing CMMI structure. The assumption is that the audience will have a basic understanding of the SEI CMM® / CMMI® process framework. The paper will not describe implementation details of a security process model or improvement framework, but will address WHAT security practices are required for a company with many organizations operating at different maturity levels. It is left to the implementing organization to answer the HOW, WHEN, WHO and WHERE aspects. The paper will discuss how the model is being implemented in the Motorola Software Group.
Filman, Robert E.
The history of software development includes elements of art, science, engineering, and fashion(though very little manufacturing). In all domains, old ideas give way or evolve to new ones: in the fine arts, the baroque gave way to rococo, romanticism, modernism, postmodernism, and so forth. What is the postmodern programming equivalent? That is, what comes after object orientation?
This book presents an overview of ergonomics/human factors in software development, recent research, and classic papers. Articles are drawn from the following areas of psychological research on programming: cognitive ergonomics, cognitive psychology, and psycholinguistics. Topics examined include: theoretical models of how programmers solve technical problems, the characteristics of programming languages, specification formats in behavioral research and psychological aspects of fault diagnosis.
Sandro Javier Bolaños Castro
Full Text Available "Times New Roman","serif";mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA">This article presents a set of patterns that can be found to perform best practices in software processes that are directly related to the problem of implementing the activities of the process, the roles involved, the knowledge generated and the inputs and outputs belonging to the process. In this work, a definition of the architecture is encouraged by using different recurrent configurations that strengthen the process and yield efficient results for the development of a software project. The patterns presented constitute a catalog, which serves as a vocabulary for communication among project participants , , and also can be implemented through software tools, thus facilitating patterns implementation . Additionally, a tool that can be obtained under GPL (General Public license is provided for this purpose
This report presents the HALDEN (Halden Algebraic Language and Design ENvironment) Prover and provides a guide to its application in automated software development. A frame- work for formal software development based on the algebraic specification language HALDEN ASL, the HALDEN Prover supports many different tasks related to formal software development, including automated theorem proving, transformation of specifications, translation of specifications into Prolog, generation of formatted text documents, integration of Petri nets and algebraic specifications, etc. Formal methods and automated code generation constitute the basis of the automation-based paradigm, which represents a promising approach to ensuring traceability and correct implementation of requirements. Formal development with the HALDEN Prover can be carried out in a manner that reflects this paradigm. Accordingly, formal specifications are first developed from informal requirements, then elaborated into detailed formal descriptions by repeated validation, which are finally translated into some conventional programming language. Integrating formal methods with automated software development, the HALDEN Prover supports a methodology where formality is utilized in the automation of the software process. This is reflected in the report, which gives guidance to the tool support provided for the different elements of the process, including specification,animation, walk-through, automated theorem proving, translation, and documentation. The present report is complemented by HWR-646, which covers transformation and combination of specifications, and the Petri net support tool HALDEN CE. (Author)
Townsend, J. C.; Salas, A. O.
Over the past decade, the NASA Langley Research Center developed a series of 'grand challenge' applications demonstrating the use of parallel and distributed computation and multidisciplinary design optimization. All but the last of these applications were focused on the high-speed civil transport vehicle; the final application focused on reusable launch vehicles. Teams of discipline experts developed these multidisciplinary applications by integrating legacy engineering analysis codes. As teams became larger and the application development became more complex with increasing levels of fidelity and numbers of disciplines, the need for applying software engineering practices became evident. This paper briefly introduces the application projects and then describes the approaches taken in project management and software engineering for each project; lessons learned are highlighted.
Full Text Available Agile software development can be made successful, but there is no well-defined way how to achieve this. The problem is that the successful adoption of agile methods and practices is a complex process and this process should be customizable for a particular organization or a team. This research focuses on identification of agile methods and practices. Result of the research is the ranking of agile methods, practices and their usage trends. As some terms of agile software development are interpreted differently in different organizations and teams, terminology used is analyzed. Results of the research can be used as a reference material for those who are planning to adopt agile methods or are looking for the next agile practice to implement. Results will be used for the development of an expert system to support agile adoption.
Full Text Available Any major software development starts with the Initiating process group. Once the charter document is approved, the Planning and then to the Executing stages will follow. Monitoring and Controlling is measuring the potential performance deviation of the project in terms of schedule and costs and performs the related Integrated Change Control activities. At the end, during the Closing, the program/project manager will check the entire work is completed and the objectives are met.
Mihai Liviu DESPA
This paper focuses on the current state of knowledge in the field of software development methodologies. It aims to set the stage for the formalization of a software development methodology dedicated to innovation orientated IT projects. The paper starts by depicting specific characteristics in software development project management. Managing software development projects involves techniques and skills that are proprietary to the IT industry. Also the software development project manager han...
Chapman, Barbara [Univ. of Houston, TX (United States); Gabriel, Edgar [Univ. of Houston, TX (United States)
Exascale systems, with a thousand times the compute capacity of today’s leading edge petascale computers, are expected to emerge during the next decade. Their software systems will need to facilitate the exploitation of exceptional amounts of concurrency in applications, and ensure that jobs continue to run despite the occurrence of system failures and other kinds of hard and soft errors. Adapting computations at runtime to cope with changes in the execution environment, as well as to improve power and performance characteristics, is likely to become the norm. As a result, considerable innovation is required to develop system support to meet the needs of future computing platforms. The XPRESS project aims to develop and prototype a revolutionary software system for extreme-scale computing for both exascale and strongscaled problems. The XPRESS collaborative research project will advance the state-of-the-art in high performance computing and enable exascale computing for current and future DOE mission-critical applications and supporting systems. The goals of the XPRESS research project are to: A. enable exascale performance capability for DOE applications, both current and future, B. develop and deliver a practical computing system software X-stack, OpenX, for future practical DOE exascale computing systems, and C. provide programming methods and environments for effective means of expressing application and system software for portable exascale system execution.
Brown, Andrew R.
This paper discusses how software development can be used as a method for music education research. It explains how software development can externalize ideas, stimulate action and reflection, and provide evidence to support the educative value of new software-based experiences. Parallels between the interactive software development process and…
Software development project is often faced with unanticipated problems which pose any potential risks within the development environment. Controlling these risks arises from both the technical and non-technical development components already from the early stages of the development is crucial to arrive at a successful project. Therefore, software development risk management is becoming recognized as a best practice in the software industry for reducing these risks before they occur. This the...
CERN. Geneva; Haapio, Petri; Liukkonen, Juha-Matti
What are the ingredients of high-performing software? Software development, especially for large high-performance systems, is one the most complex tasks mankind has ever tried. Technological change leads to huge opportunities but challenges our old ways of working. Processing large data sets, possibly in real time or with other tight computational constraints, requires an efficient solution architecture. Efficiency requirements span from the distributed storage and large-scale organization of computation and data onto the lowest level of processor and data bus behavior. Integrating performance behavior over these levels is especially important when the computation is resource-bounded, as it is in numerics: physical simulation, machine learning, estimation of statistical models, etc. For example, memory locality and utilization of vector processing are essential for harnessing the computing power of modern processor architectures due to the deep memory hierarchies of modern general-purpose computers. As a r...
Software development process: A case of Nigerian Software Development Organization. EA Anibere, FA Egbokhare. Abstract. No Abstract. Te Information Technologist Vol. 4(1) 2007: pp.1-13. Full Text: EMAIL FULL TEXT EMAIL FULL TEXT · DOWNLOAD FULL TEXT DOWNLOAD FULL TEXT.
If you are a software developer or administrator who wishes to create simple, reusable environments using Vagrant, this book is the perfect choice for you. Whether you are a system administrator with extensive experience in virtualization or a developer wishing to create development scripts for cloud deployment, you will find easy-to-follow recipes and techniques in this book that will allow you to create robust and reproducible virtual environments.
Schmidt, Matthew; Galyen, Krista; Laffey, James; Babiuch, Ryan; Schmidt, Carla
Design-based research (DBR) and open source software are both acknowledged as potentially productive ways for advancing learning technologies. These approaches have practical benefits for the design and development process and for building and leveraging community to augment and sustain design and development. This report presents a case study of…
Very few software projects are completed on time, on budget, and to their original specification causing the global IT software industry to lose billions each year in project overruns and reworking software. Research supports that projects usually fail because of management mistakes rather than technical mistakes. Risk Management in Software Development Projects focuses on what the practitioner needs to know about risk in the pursuit of delivering software projects. Risk Management in Softwar...
Z. Obrenovic; D. Gasevic; A. Eliëns
htmlabstractUsing opportunistic software development principles in computer engineering education encourages students to be creative and to develop solutions that cross the boundaries of diverse technologies. A framework for opportunistic software development education helps to create a space in
Ahmed, Zeeshan; Zeeshan, Saman; Dandekar, Thomas
Software design and sustainable software engineering are essential for the long-term development of bioinformatics software. Typical challenges in an academic environment are short-term contracts, island solutions, pragmatic approaches and loose documentation. Upcoming new challenges are big data, complex data sets, software compatibility and rapid changes in data representation. Our approach to cope with these challenges consists of iterative intertwined cycles of development (" Butterfly" paradigm) for key steps in scientific software engineering. User feedback is valued as well as software planning in a sustainable and interoperable way. Tool usage should be easy and intuitive. A middleware supports a user-friendly Graphical User Interface (GUI) as well as a database/tool development independently. We validated the approach of our own software development and compared the different design paradigms in various software solutions.
Aziz Ahmad Rais
Full Text Available TOGAF is an Enterprise Architecture framework that provides a method for developing Enterprise Architecture called architecture development method (ADM. The purpose of this paper is whether TOGAF ADM can be used for developing software application architecture. Because the software application architecture is one of the disciplines in application development life cycle, it is important to find out how the enterprise architecture development method can support the application architecture development. Having an open standard that can be used in the application architecture development could help in outsourcing of software development. If ADM could be used for software application architecture development, then we could consider its usability in outsourcing of software development.
Bonnal, R.J.P.; Smant, G.; Prins, J.C.P.
Biogem provides a software development environment for the Ruby programming language, which encourages community-based software development for bioinformatics while lowering the barrier to entry and encouraging best practices. Biogem, with its targeted modular and decentralized approach, software
Perkey, Nadine; Smith, Shirley C.
Two papers describe the roles of the Software Development Group (SDG) and the Software Review Center (SRC) at Drexel University. The first paper covers the primary role of the SDG, which is designed to assist Drexel faculty with the technical design and programming of courseware for the Apple Macintosh microcomputer; the relationship of the SDG…
Nose, Hideo; Shiraishi, Junji
In order to manage relationship between patients' movements and operating efficiency, we developed a special software which can make patient flow visible on a display monitor by use of actual data obtained from the radiology information system (RIS). In this software, a simple floor map of the radiology department in our hospital was drawn on the monitor and each patient was indicated with a small figure. This software was developed with commercialized computer software [Excel 2007 visual basic applications (VBA) Microsoft]. Movements of the patient figures were simulated by use of actual time data such as registration of radiology department, and start and ending time of examinations. The patient figures were moved along with predetermined flow lines every second. The movements of the patient figures were controlled by several buttons (i.e., play and stop) and setting switches for determining reproduction date and time. In conclusion, by use of this software, the patient flows could be analyzed systematically by checking efficient operation such as average waiting time of the patients and/or standby time of radiological technologists.
Graves, v.b.; kelley, g; welch, j.c.
A project was initiated at the Oak Ridge Y-12 Plant to implement software geometric error compensation within a PC-based machine tool controller from Manufacturing Data Systems, Inc. This project may be the first in which this type of compensation system was implemented in a commercially available machine tool controller totally in software. Previous implementations typically required using an external computer and hardware to interface through the position feedback loop of the controller because direct access to the controller software was not available. The test-bed machine for this project was a 2-axis Excello 921 T-base lathe. A mathematical error model of the lathe was created using homogeneous transformation matrices to relate the positions of the machine's slides to each other and to a world reference system. Equations describing the effects of the geometric errors were derived from the model. A software architecture was developed to support geometric error compensation for machine tools with up to 3 linear axes. Rotary axes were not supported in this implementation, but the developed architecture would not preclude their support in the future. Specific implementations will be dependent upon the configuration of the machine tool. A laser measuring system from Automated Precision, Inc. was used to characterize the lathe's geometric errors as functions of axis position and direction of motion. Multiple data files generated by the laser system were combined into a single Error File that was read at system startup and used by the compensation system to provide real-time position adjustments to the axis servos. A Renishaw Ballbar was used to evaluate the compensation system. Static positioning tests were conducted in an attempt to observe improved positioning accuracy with the compensation system enabled. These tests gave inconsistent results due to the lathe's inability to position the tool repeatably. The development of the architecture and
Mihai Liviu DESPA
The paper is aimed at depicting the ISDF software development methodology by emphasizing quality management and software development lifecycle. The ISDF methodology was built especially for innovative software development projects. The ISDF methodology was developed empirically by trial and error in the process of implementing multiple innovative projects. The research process began by analysing key concepts like innovation and software development and by settling the important dilemma of wha...
Tekinerdogan, B.; Saeki, Motoshi; Sunyé, Gerson; van den Broek, P.M.; Hruby, Pavel; Tekinerdogan, B.; van den Broek, P.M.; Saeki, M.; Hruby, P.; Sunye, G.
Current software projects have generally to deal with producing and managing large and complex software products. It is generally believed that applying software development methods are useful in coping with this complexity and for supporting quality. As such numerous object-oriented software
Noppen, J.A.R.; van den Broek, P.M.; Aksit, Mehmet; Sawyer, Pete; Paech, Barbara; Heymans, Patrick
Requirement Specifications are very difficult to define. Due to lack of information and differences in interpretation, software engineers are faced with the necessity to redesign and iterate. This imperfection in software requirement specifications is commonly addressed by incremental design. In
Software development is an increasingly influential factor in today's business environment, and a major issue affecting software development is how an organization estimates projects. If the organization underestimates cost, schedule, and quality requirements, the end results will not meet customer needs. On the other hand, if the organization overestimates these criteria, resources that could have been used more profitably will be wasted. There is no accurate model or measure available that can guide an organization in a quest for software development, with existing estimation models often underestimating software development efforts as much as 500 to 600 percent. To address this issue, existing models usually are calibrated using local data with a small sample size, with resulting estimates not offering improved cost analysis. This study presents a conceptual model for accurately estimating software development, based on an extensive literature review and theoretical analysis based on Sociotechnical Systems (STS) theory. The conceptual model serves as a solution to bridge organizational and technological factors and is validated using an empirical dataset provided by the DoD. Practical implications of this study allow for practitioners to concentrate on specific constructs of interest that provide the best value for the least amount of time. This study outlines key contributing constructs that are unique for Software Size E-SLOC, Man-hours Spent, and Quality of the Product, those constructs having the largest contribution to project productivity. This study discusses customer characteristics and provides a framework for a simplified project analysis for source selection evaluation and audit task reviews for the customers and suppliers. Theoretical contributions of this study provide an initial theory-based hypothesized project productivity model that can be used as a generic overall model across several application domains such as IT, Command and Control
Li, Wei; Tsai, Wei-Tek; Wu, Wenjun
This book presents the latest research on the software crowdsourcing approach to develop large and complex software in a cloud-based platform. It develops the fundamental principles, management organization and processes, and a cloud-based infrastructure to support this new software development approach. The book examines a variety of issues in software crowdsourcing processes, including software quality, costs, diversity of solutions, and the competitive nature of crowdsourcing processes. Furthermore, the book outlines a research roadmap of this emerging field, including all the key technology and management issues for the foreseeable future. Crowdsourcing, as demonstrated by Wikipedia and Facebook for online web applications, has shown promising results for a variety of applications, including healthcare, business, gold mining exploration, education, and software development. Software crowdsourcing is emerging as a promising solution to designing, developing and maintaining software. Preliminary software cr...
Hughitt, V. K.; Ireland, J.; Christe, S.; Mueller, D.
We discuss two ongoing software projects in solar physics that have adopted best practices of the open source software community. The first, the Helioviewer Project, is a powerful data visualization tool which includes online and Java interfaces inspired by Google Maps (tm). This effort allows users to find solar features and events of interest, and download the corresponding data. Having found data of interest, the user now has to analyze it. The dominant solar data analysis platform is an open-source library called SolarSoft (SSW). Although SSW itself is open-source, the programming language used is IDL, a proprietary language with licensing costs that are prohibative for many institutions and individuals. SSW is composed of a collection of related scripts written by missions and individuals for solar data processing and analysis, without any consistent data structures or common interfaces. Further, at the time when SSW was initially developed, many of the best software development processes of today (mirrored and distributed version control, unit testing, continuous integration, etc.) were not standard, and have not since been adopted. The challenges inherent in developing SolarSoft led to a second software project known as SunPy. SunPy is an open-source Python-based library which seeks to create a unified solar data analysis environment including a number of core datatypes such as Maps, Lightcurves, and Spectra which have consistent interfaces and behaviors. By taking advantage of the large and sophisticated body of scientific software already available in Python (e.g. SciPy, NumPy, Matplotlib), and by adopting many of the best practices refined in open-source software development, SunPy has been able to develop at a very rapid pace while still ensuring a high level of reliability. The Helioviewer Project and SunPy represent two pioneering technologies in solar physics - simple yet flexible data visualization and a powerful, new data analysis environment. We
Jovanović Aca D.
Full Text Available The paper presents the potentials for the development of software using agile methodologies. Special consideration is devoted to the potentials and advantages of use of the Scrum methodology in the development of software and the relationship between the implementation of agile methodologies and the software development projects.
Carlos Gonzalez-Flores; Ernesto Liñan-García
A simple and robust approach for developing secure software. A Four Phase methodology consists in developing the non-secure software in phase one, and for the next three phases, one phase for each of the secure developing types (i.e. self-protected software, secure code transformation, and the secure shield). Our methodology requires first the determination and understanding of the type of security level needed for the software. The methodology proposes the use of several teams to accomplish ...
Embedding Quality Function Deployment In Software Development: A Novel Approach. ... Therefore the software engineer has enormous task in engineering functional software that can work and be delivered on time..This paper focuses on how customers' voice can be heard in order to reduce development and ...
Hadar, Irit; Sherman, Sofia; Hazzan, Orit
Collaboration has become increasingly widespread in the software industry as systems have become larger and more complex, adding human complexity to the technological complexity already involved in developing software systems. To deal with this complexity, human-centric software development methods, such as Extreme Programming and other agile…
Yildiz, Bugra Mehmet; Tekinerdogan, B.
Global Software Development (GSD) can be considered as the coordinated activity of software development that is not localized and central but geographically distributed. Designing an appropriate software architecture of a GSD system is important to meet the requirements for the communication,
Sanders, Brandon T.
The era of the shuttle program has come to an end, but only to give rise to newer and more exciting projects. Now is the time of the Orion spacecraft, a work of art designed to exceed all previous endeavors of man. NASA is exiting the time of exploration and is entering a new period, a period of pioneering. With this new mission, many of NASAs organizations must undergo a great deal of change and development to support the Orion missions. The Spaceport Command and Control System (SCCS) is the new system that will provide NASA the ability to launch rockets into orbit and thus control Orion and other spacecraft as the goal of populating Mars becomes ever increasingly tangible. Since the previous control system, Launch Processing System (LPS), was primarily designed to launch the shuttles, SCCS was needed as Kennedy Space Center (KSC) reorganized to a multiuser spaceport for commercial flights, providing a more versatile control over rockets. Within SCCS, is the Launch Control System (LCS), which is the remote software behind the command and monitoring of flight and ground system hardware. This internship at KSC has involved two main components in LCS, including Remote Software Application and Display development. The display environment provides a graphical user interface for an operator to view and see if any cautions are raised, while the remote applications are the backbone that communicate with hardware, and then relay the data back to the displays. These elements go hand in hand as they provide monitoring and control over hardware and software alike from the safety of the Launch Control Center. The remote software applications are written in Application Control Language (ACL), which must undergo unit testing to ensure data integrity. This paper describes both the implementation and writing of unit tests in ACL code for remote software applications, as well as the building of remote displays to be used in the Launch Control Center (LCC).
Vogel, David A
Where does risk management belong, at the beginning of a project or at the end? Many managers choose one or the other, or both. The correct answer is that risk management needs to be considered throughout the software development life cycle. When the risks include the safety of patients or the users of the software, the methods need to be more formal. This article will explain why, and then will provide the how and the how much.
Despite the central role of the computer in corpus research, programming is generally not seen as a core skill within corpus linguistics. As a consequence, limitations in software for text and corpus analysis slow down the progress of research while analysts often have to rely on third party software or even manual data analysis if no suitable…
Goparaju Purna Sudhakar
Full Text Available This paper gives an exhaustive literature review of the techniques and models available tomeasure the productivity of software development teams. Definition of productivity, measuringindividual programmer’s productivity, and measuring software development team productivity arediscussed. Based on the literature review it was found that software productivity measurement canbe done using SLOC (Source Lines of Code, function points, use case points, object points, andfeature points. Secondary research findings indicate that the team size, response time, taskcomplexity, team climate and team cohesion have an impact on software development teamproductivity. List of factors affecting the software development team productivity are studied andreviewed.
Williams, L.G. [Software Engineering Research, Boulder, CO (United States)
As the use of computers in critical control systems such as aircraft controls, medical instruments, defense systems, missile controls, and nuclear power plants has increased, concern for the safety of those systems has also grown. Much of this concern has focused on the software component of those computer-based systems. This is primarily due to historical experience with software systems that often exhibit larger numbers of errors than their hardware counterparts and the fact that the consequences of a software error may endanger human life, property, or the environment. A number of different techniques have been used to address the issue of software safety. Some are standard software engineering techniques aimed at reducing the number of faults in a software protect, such as reviews and walkthroughs. Others, including fault tree analysis, are based on identifying and reducing hazards. This report examines the role of one such technique, formal methods, in the development of software for safety critical systems. The use of formal methods to increase the safety of software systems is based on their role in reducing the possibility of software errors that could lead to hazards. The use of formal methods in the development of software systems is controversial. Proponents claim that the use of formal methods can eliminate errors from the software development process, and produce programs that are probably correct. Opponents claim that they are difficult to learn and that their use increases development costs unacceptably. This report discusses the potential of formal methods for reducing failures in safety critical software systems.
Bjørn, Pernille; Søderberg, Anne-Marie; Krishna, S.
What happens when agile methods are introduced in global outsourcing set-ups? Agile methods are designed to empower IT developers in decision-making through self-managing collocated teams. We studied how agile methods were introduced into global outsourcing from the Indian IT vendor’s perspective....... We explored how agile processes in global outsourcing impacts work conditions of the Indian IT developers, and were surprised to find that agile methodologies, even after 3 years of implementation, created a stressful and inflexible work environment negatively impacting their personal lives. Many...... of the negative aspects of work, which agile methodologies were developed to reduce, were evident in the global agile outsourcing set-up. We propose translocality to repudiate the dichotomy of global/local reminding us that methodologies and technologies must be understood as immediately localized and situated...
Full Text Available Nowadays, software is becoming a major part of enterprise business. Software development is activity connected with advanced technology and high level of knowledge. Risks on software development projects must be successfully mitigated to produce successful software systems. Lack of a defined approach to risk management is one of the common causes for project failures. To improve project chances for success, this work investigates common risk impact areas to perceive a foundation that can be used to define a common approach to software risk management. Based on typical risk impact areas on software development projects, we propose three risk management strategies suitable for a broad area of enterprises and software development projects with different amounts of connected risks. Proposed strategies define activities that should be performed for successful risk management, the one that will enable software development projects to perceive risks as soon as possible and to solve problems connected with risk materialization. We also propose a risk-based approach to software development planning and risk management as attempts to address and retire the highest impact risks as early as possible in the development process. Proposed strategies should improve risk management on software development projects and help create a successful software solution.
Full Text Available Despite the central role of the computer in corpus research, programming is generally not seen as a core skill within corpus linguistics. As a consequence, limitations in software for text and corpus analysis slow down the progress of research while analysts often have to rely on third party software or even manual data analysis if no suitable software is available. Apart from software itself, data formats are also of great importance for text processing. But again, many practitioners are not very aware of the options available to them, and thus idiosyncratic text formats often make sharing of resources difficult if not impossible. This article discusses some issues relating to both data and processing which should aid researchers to become more aware of the choices available to them when it comes to using computers in linguistic research. It also describes an easy way towards automating some common text processing tasks that can easily be acquired without knowledge of actual computer programming.
Hofmann, Holger D.; Muench, Volker; Stynes, Jeanne
Explains componentware, a new paradigm in software development that is based on the concept of a software component, a self-contained unit of software which can be distributed over large networks. Discusses the need for new, Internet-based search and retrieval mechanisms, and the architectural requirements and mechanisms of componentware.…
Devedzic, V.; Milenkovic, S. R.
This paper describes the authors' experience of teaching agile software development to students of computer science, software engineering, and other related disciplines, and comments on the implications of this and the lessons learned. It is based on the authors' eight years of experience in teaching agile software methodologies to various groups…
Alan J. Thomson; Daniel L. Schmoldt
Over the past 20 years, computer software has become integral and commonplace for operational and management tasks throughout agricultural and natural resource disciplines. During this software infusion, however, little thought has been afforded human impacts, both good and bad. This paper examines current ethical issues of software system design and development in...
Cagle West, Marsha
Software is a critical component of systems ranging from simple consumer appliances to complex health, nuclear, and flight control systems. The development of quality, reliable, and effective software solutions requires the incorporation of effective software engineering processes and leadership. Processes, approaches, and methodologies for…
Hendrick, R.; Kistler, D.; Manter, K.
This document contains user reference material for the Software Management Environment (SME) prototype, developed for the Systems Development Branch (Code 552) of the Flight Dynamics Division (FDD) of Goddard Space Flight Center (GSFC). The SME provides an integrated set of management tools that can be used by software development managers in their day-to-day management and planning activities. This document provides an overview of the SME, a description of all functions, and detailed instructions concerning the software's installation and use.
Lin, Fuhua, Ed.
"Designing Distributed Learning Environments with Intelligent Software Agents" reports on the most recent advances in agent technologies for distributed learning. Chapters are devoted to the various aspects of intelligent software agents in distributed learning, including the methodological and technical issues on where and how intelligent agents…
A unique resource to help software developers create a desirable user experience Today, top-flight software must feature a desirable user experience. This one-of-a-kind book creates a design process specifically for software, making it easy for developers who lack design background to create that compelling user experience. Appealing to both tech-savvy designers and creative-minded technologists, it establishes a hybrid discipline that will produce first-rate software. Illustrated in full color, it shows how to plan and visualize the design to create software that works on every l
Lucas T. Khoza
Full Text Available Background: ‘Knowledge is power’ and software developing organisations are dependent on knowledge to achieve and maintain a competitive advantage. Subsequently, knowledge sharing is a key factor for modern software developing organisations to succeed in today’s competitive environment. For software developing organisations to reach their goals and objectives, knowledge sharing – and in particular the sharing of useful knowledge – needs to be targeted. To promote knowledge sharing, factors influencing knowledge sharing need to be identified and understood.Objective: This study seeks to identify factors that negatively influence knowledge sharing in software development in the developing country context.Method: Expert sampling as a subcategory of purposive sampling was employed to extract information, views and opinions from experts in the field of information and communication technology, more specifically from those who are involved in software development projects. Four Johannesburg-based software developing organisations listed on the Johannesburg Stock Exchange (JSE, South Africa, participated in this research study. Quantitative data were collected using an online questionnaire with closed-ended questions.Results: Findings of this research reveal that job security, motivation, time constraints, physiological factors, communication, resistance to change and rewards are core factors negatively influencing knowledge sharing in software developing organisations.Conclusions: Improved understanding of factors negatively influencing knowledge sharing is expected to assist software developing organisations in closing the gap for software development projects failing to meet the triple constraint of time, cost and scope.
Open Source Software (OSS) has introduced a new dimension in software community. As the development and use of OSS becomes prominent, the question of its integration in education arises. In this paper, the following practices fundamental to projects and processes in software engineering are examined from an OSS perspective: project management;…
Blum, Robert L.; Walker, Michael G.
The LISP language provides a useful set of features for prototyping knowledge-intensive, clinical applications software that is not found In most other programing environments. Medical computer programs that need large medical knowledge bases, such as programs for diagnosis, therapeutic consultation, education, simulation, and peer review, are hard to design, evolve continually, and often require major revisions. They necessitate an efficient and flexible program development environment. The LISP language and programming environments bullt around it are well suited for program prototyping. The lingua franca of artifical intelligence researchers, LISP facllitates bullding complex systems because it is simple yet powerful. Because of its simplicity, LISP programs can read, execute, modify and even compose other LISP programs at run time. Hence, it has been easy for system developers to create programming tools that greatly speed the program development process, and that may be easily extended by users. This has resulted in the creation of many useful graphical interfaces, editors, and debuggers, which facllitate the development of knowledge-intensive medical applications.
Software has become increasingly determinative for development of mechatronic systems, which underscores the importance of demands for shortened time-to-market, increased productivity, higher quality, and improved dependability. As the complexity of systems is dramatically increasing, these demands...... present a challenge to the practitioners who adopt conventional software development approach. An effective approach towards industrial production of software for mechatronic systems is needed. This approach requires a disciplined engineering process that encompasses model-driven engineering and component......-based software engineering, whereby we enable incremental software development using component models to address the essential design issues of real-time embedded systems. To this end, this dissertation presents a software development platform that provides an incremental model-driven development process based...
Buur, Hanne; Subramaniam, Annapurni; Gillies, Kim; Dumas, Christophe; Bhatia, Ravinder
The purpose of the Observatory Software System (OSW) is to integrate all software and hardware components of the Thirty Meter Telescope (TMT) to enable observations and data capture; thus it is a complex software system that is defined by four principal software subsystems: Common Software (CSW), Executive Software (ESW), Data Management System (DMS) and Science Operations Support System (SOSS), all of which have interdependencies with the observatory control systems and data acquisition systems. Therefore, the software development process and plan must consider dependencies to other subsystems, manage architecture, interfaces and design, manage software scope and complexity, and standardize and optimize use of resources and tools. Additionally, the TMT Observatory Software will largely be developed in India through TMT's workshare relationship with the India TMT Coordination Centre (ITCC) and use of Indian software industry vendors, which adds complexity and challenges to the software development process, communication and coordination of activities and priorities as well as measuring performance and managing quality and risk. The software project management challenge for the TMT OSW is thus a multi-faceted technical, managerial, communications and interpersonal relations challenge. The approach TMT is using to manage this multifaceted challenge is a combination of establishing an effective geographically distributed software team (Integrated Product Team) with strong project management and technical leadership provided by the TMT Project Office (PO) and the ITCC partner to manage plans, process, performance, risk and quality, and to facilitate effective communications; establishing an effective cross-functional software management team composed of stakeholders, OSW leadership and ITCC leadership to manage dependencies and software release plans, technical complexities and change to approved interfaces, architecture, design and tool set, and to facilitate
Motivation is a strong tool in the hand of managers and leaders. This tool can only be utilized when the factors that motivate subordinates are known and built into the leadership process. This study investigated the factors that motivate software developers in Nigeria with aid of questionnaires and informal interaction with ...
This paper describes the quantitative process of managing the size of software development projects by Purchasers (Clients) and Vendors (Development Houses) where there are no historical databases. Probabilistic approach was used to estimate the software project size, using the data collected when we developed a ...
Roush, George B.; Reini, William
COSTMODL is automated software development-estimation tool. Yields significant reduction in risk of cost overruns and failed projects. Accepts description of software product developed and computes estimates of effort required to produce it, calendar schedule required, and distribution of effort and staffing as function of defined set of development life-cycle phases. Written for IBM PC(R)-compatible computers.
software technology, which is largely based on informal design methods and manual coding techniques. That is why it is necessary to develop new design methods and tools that will eventually help improve existing practices. These considerations have motivated the development of the framework -- Component......-Based Design of Software for Distributed Embedded Systems (COMDES) and the related software design methodology, in an attempt to provide a solution to the problems formulated above. The essence of this methodology is the adoption of formal models used to systematically develop embedded software applications...... that are correct by construction, and ultimately -- configure applications from prefabricated reusable components, with the support of appropriate tools. It combines component-based design with a model-driven software development approach, which reduces development time through design automation, enhances software...
Cawley, Oisin; Richardson, Ita; Wang, Xiaofeng
A growing number of companies are discovering that their software development processes must be in compliance with some form of regulation. This is particularly so when it comes to safety-critical or business-critical systems such as Automotive Software, Robotics, Medical Devices or Financial...... Management systems. These regulations affect the software development process itself in various forms. Furthermore , much attention is being given to ways of improving the efficiency of businesses, for example, by adopting lean principles. This raises the question for how to adopt lean principles...... for software development within a regulated environment? This poster presents the results of our empirical research into lean and regulated software development. Built from a combination of data sources, we have developed a conceptual framework comprising five primary components. In addition the relationships...
Mayer, Richard J.; Blinn, Thomas M.; Mayer, Paula S. D.; Reddy, Uday; Ackley, Keith; Futrell, Mike
The Framework Programmable Software Development Platform (FPP) is a project aimed at combining effective tool and data integration mechanisms with a model of the software development process in an intelligent integrated software development environment. Guided by this model, this system development framework will take advantage of an integrated operating environment to automate effectively the management of the software development process so that costly mistakes during the development phase can be eliminated.
Mihai Liviu DESPA
Full Text Available The paper is aimed at depicting the ISDF software development methodology by emphasizing quality management and software development lifecycle. The ISDF methodology was built especially for innovative software development projects. The ISDF methodology was developed empirically by trial and error in the process of implementing multiple innovative projects. The research process began by analysing key concepts like innovation and software development and by settling the important dilemma of what makes a web application innovative. Innovation in software development is presented from the end-user, project owner and project manager’s point of view. The main components of a software development methodology are identified. Thus a software development methodology should account for people, roles, skills, teams, tools, techniques, processes, activities, standards, quality measuring tools, and team values. Current software development models are presented and briefly analysed. The need for a dedicated innovation oriented software development methodology is emphasized by highlighting shortcomings of current software development methodologies when tackling innovation. The ISDF methodology is presented in the context of developing an actual application. The ALHPA application is used as a case study for emphasizing the characteristics of the ISDF methodology. The development life cycle of the ISDF methodology includes research, planning, prototyping, design, development, testing, setup and maintenance. Artefacts generated by the ISDF methodology are presented. Quality is managed in the ISDF methodology by assessing compliance, usability, reliability, repeatability, availability and security. In order to properly asses each quality component a dedicated indicator is built. A template for interpreting each indicator is provided. Conclusions are formulated and new related research topics are submitted for debate.
Ahmed, Syed Rizwan
Today’s software is more vulnerable to attacks due to increase in complexity, connectivity and extensibility. Securing software is usually considered as a post development activity and not much importance is given to it during the development of software. However the amount of loss that organizations have incurred over the years due to security flaws in software has invited researchers to find out better ways of securing software. In the light of research done by many researchers, this thesis...
Vetter, Jeffrey [Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States); Georgia Inst. of Technology, Atlanta, GA (United States)
Petascale computing systems will soon be available to the DOE science community. Recent studies in the productivity of HPC platforms point to better software environments as a key enabler to science on these systems. To prepare for the deployment and productive use of these petascale platforms, the DOE science and general HPC community must have the software development tools, such as performance analyzers and debuggers that meet application requirements for scalability, functionality, reliability, and ease of use. In this report, we identify and prioritize the research opportunities in the area of software development tools for high performance computing. To facilitate this effort, DOE hosted a group of 55 leading international experts in this area at the Software Development Tools for PetaScale Computing (SDTPC) Workshop, which was held in Washington, D.C. on August 1 and 2, 2007. Software development tools serve as an important interface between the application teams and the target HPC architectures. Broadly speaking, these roles can be decomposed into three categories: performance tools, correctness tools, and development environments. Accordingly, this SDTPC report has four technical thrusts: performance tools, correctness tools, development environment infrastructures, and scalable tool infrastructures. The last thrust primarily targets tool developers per se, rather than end users. Finally, this report identifies non-technical strategic challenges that impact most tool development. The organizing committee emphasizes that many critical areas are outside the scope of this charter; these important areas include system software, compilers, and I/O.
Ooms, M.; Doornik, J.A.
We give a short international history of econometric software development, with an emphasis on the origin of the main existing econometric packages. We provide a Dutch perspective on this development. We identify the characteristics of econometric software in comparison with mathematical and
Most innovations have contextual pre-cursors that prompt new ways of thinking and in their turn help to give form to the new reality. This was the case with the e-scape software development process. The origins of the system existed in software components and ideas that we had developed through previous projects, but the ultimate direction we took…
We hereby introduce a software development framework for electronically administering the records of Land Titles. The model is computer dependent, and the graphical presentations in the designs will simplify the job of software developers in the process of systems conversion from the existing cumbersome, disorganized ...
Managing software development is a very complex activity because it must deal with people, organizations, technologies, and business processes. My dissertation consists of three studies that examine software development management from various perspectives. The first study empirically investigates the impacts of prior experience with similar…
Marcelloni, Francesco; Aksit, Mehmet; Damiani, Ernesto; Jain, Lakhmi C.; Madravio, Mauro
In this chapter, we aim to highlight how fuzzy logic can be a valid expressive tool to manage the software development process. We characterize a software development method in terms of two major components: artifact types and methodological rules. Classes, attributes, operations, and inheritance
Babb, Jeffry; Hoda, Rashina; Nørbjerg, Jacob
While small software development shops have trended towards the adoption of Agile methods, local conditions and high iteration pressure typically cause adaptations and appropriations of Agile methods. This paper shares evidence from a study concerning how a small software development company adopts...
The Engineering and Technology Directorate (NE) at National Aeronautics and Space Administration (NASA) Kennedy Space Center (KSC) is designing a new command and control system for the checkout and launch of Space Launch System (SLS) and future rockets. The purposes of the semester long internship as a remote application software developer include the design, development, integration, and verification of the software and hardware in the firing rooms, in particular with the Mobile Launcher (ML) Launch Accessories (LACC) subsystem. In addition, a software test verification procedure document was created to verify and checkout LACC software for Launch Equipment Test Facility (LETF) testing.
van Schooten, B.W.; Nijholt, Antinus; van Dijk, Elisabeth M.A.G.; Isaias, P.T.; Karmakar, N.; Rodrigues, L.; Barbosa, P.
We propose a software toolkit for developing complex web-based user interfaces, incorporating such things as multi-user facilities, virtual environments (VEs), and interface agents. The toolkit is based on a novel software architecture that combines ideas from multi-agent platforms and user
Software development in most developing nations such as Nigeria were categorised as non standard while these nations still request for software from developed nations. These call for the assessment of the best practice and the way forward. ICT firms that specialized in software development were involved using ...
Burton, J.; Cormell, L.
Past efforts to implement a Software Engineering approach to High Energy Physics computing have been met with significant resistance and have been, in many cases, only marginally successful. At least a portion of the problem has been the Lick of an integrated development environment, tailored to High Energy Physics and incorporating a suite of Computer Aided Software Engineering tools. The Superconducting Super Collider Physics Research Division Computing Department is implementing pilot projects to develop just such an environment.
Kaur, Rupinder; Sengupta, Jyotsna
The software process model consists of a set of activities undertaken to design, develop and maintain software systems. A variety of software process models have been designed to structure, describe and prescribe the software development process. The software process models play a very important role in software development, so it forms the core of the software product. Software project failure is often devastating to an organization. Schedule slips, buggy releases and missing features can me...
Full Text Available Over time, information and communications technology development has made a direct impact on human activity in the individual context as well as familial, economic and social. This has laid the premise for adoption of new and modern paradigms in individual and organizational activity management. The evolutionary climax of the social universe is called nowadays knowledge society. The knowledge society succeeds the information society, emphasizing the development of the opportunities brought by collaborative work environment and agile approach. In this paper we will highlight the use of collaborative environment in agile software development, as an instrument for managing organizations in knowledge society. Thus, we will emphasize the paradigms of agile testing, validation and verification in collaborative environment.
Tucker, Allen; de Silva, Chamindra
Overview and Motivation Software Free and Open Source Software (FOSS)Two Case Studies Working with a Project Team Key FOSS Activities Client-Oriented vs. Community-Oriented Projects Working on a Client-Oriented Project Joining a Community-Oriented Project Using Project Tools Collaboration Tools Code Management Tools Run-Time System ConstraintsSoftware Architecture Architectural Patterns Layers, Cohesion, and Coupling Security Concurrency, Race Conditions, and DeadlocksWorking with Code Bad Smells and Metrics Refactoring Testing Debugging Extending the Software for a New ProjectDeveloping the D
Roush, George B.
The cost of developing computer software continues to consume an increasing portion of many organizations' total budgets, both in the public and private sector. As this trend develops, the capability to produce reliable estimates of the effort and schedule required to develop a candidate software product takes on increasing importance. The COSTMODL program was developed to provide an in-house capability to perform development cost estimates for NASA software projects. COSTMODL is an automated software development cost estimation tool which incorporates five cost estimation algorithms including the latest models for the Ada language and incrementally developed products. The principal characteristic which sets COSTMODL apart from other software cost estimation programs is its capacity to be completely customized to a particular environment. The estimation equations can be recalibrated to reflect the programmer productivity characteristics demonstrated by the user's organization, and the set of significant factors which effect software development costs can be customized to reflect any unique properties of the user's development environment. Careful use of a capability such as COSTMODL can significantly reduce the risk of cost overruns and failed projects.
Heiskanen, A.; Newman, M.; Simila, J.
A variety of experiences in software development processes between a public sector organisation and several software vendors over a decade-long period are described and interpreted. Three information systems histories are presented as case examples and their analysis is based on detailed insider
Software vulnerabilities originating from insecure code are one of the leading causes of security problems people face today. Unfortunately, many software developers have not been adequately trained in writing secure programs that are resistant from attacks violating program confidentiality, integrity, and availability, a style of programming…
Full Text Available The software industry is deemed an ideal target for a developing country to integrate into the world information and communications technology (ICT market. On the one hand the industry is labor intensive, and the developing countries have a large labor surplus; on the other hand, it is a worldwide trend for developed countries to outsource a vast amount of low-end, software-related tasks to the low-cost countries and regions, which fits into some developing countries’ caliber nicely. India has often been cited as the role model for a developing country to tap into the world software market for its continuous success in the software export sector. In comparison, China’s software industry is still negligible in the world despite its sustained high economic growth rate since the economic reform took off in the late 1970s.This paper aims at examining strategies for developing China’s software industry. We use India as a reference because of the similarities of the two countries’ stages of economic development and the clear divergence in their ICT structures and development paths. Although the language barrier has often been singled out as the major obstacle for China’s software exports, we believe the major reasons for its underdevelopment can be ascribed to the following factors. On the national level, the government attention has been skewed toward the hardware sector in the ICT industry, and there is no clear national vision for the strategic direction for the software industry.On the industry and ªrm level, software development has been regarded as the art of individual creativity rather than an engineering process. As a result, the importance of quality and standards, the two important critical factors in software development, have been largely neglected. Perhaps an even more fundamental factor lies in the deeply rooted notion that software is an attachment to the hardware and should be a free product. The lack of intellectual
Amrit, Chintan Amrit; van Hillegersberg, Jos; Kumar, Kuldeep
Today’s dynamic and iterative development environment brings significant challenges for software project management. In distributed project settings, “management by walking around” is no longer an option and project managers may miss out on key project insights. The TESNA (TEchnical Social Network
Amrit, Chintan Amrit; van Hillegersberg, Jos; Kumar, Kuldeep
Today’s dynamic and iterative development environment brings significant challenges for software project management. In distributed project settings, “management by walking around” is no longer an option and project managers may miss out on key project insights. The TESNA (TEchnical Social Network
Full Text Available The rapid increase and availability of mathematics software, either for classroom or individual learning activities, presents a challenge for teachers. It has been argued that many products are limited in quality. Some of the more commonly used software products have been criticized for poor content, activities which fail to address some learning issues, poor graphics presentation, inadequate documentation, and other technical problems. The challenge for schools is to ensure that the educational software used in classrooms is appropriate and effective in supporting intended outcomes and goals. This paper aimed to develop instrument for evaluating mathematics educational software in order to help teachers in selecting the appropriate software. The instrument considers the notion of educational including content, teaching and learning skill, interaction, and feedback and error correction; and technical aspects of educational software including design, clarity, assessment and documentation, cost and hardware and software interdependence. The instrument use a checklist approach, the easier and effective methods in assessing the quality of educational software, thus the user needs to put tick in each criteria. The criteria in this instrument are adapted and extended from standard evaluation instrument in several references. Keywords: mathematics educational software, educational aspect, technical aspect.
A narrow approach to risk analysis and understanding the scope of a software project has contributed to significant software failures. A process is presented which expands the concept of software risk to include social, professional, and ethical risks that lead to software failure. Using an expanded risk analysis will enlarge the project scope considered by software developers. This process also is incorporated into a software development life cycle. A tool to develop Software Development Imp...
Sandra Lais Pedroso
Full Text Available Software developing companies work in a competitive market and are often challenged to make business decisions with impact on competitiveness. Models accessing maturity for software development processes quality, such as CMMI and MPS-BR, comprise process measurements systems (PMS. However, these models are not necessarily suitable to support business decisions, neither to achieve strategic goals. The objective of this work is to analyze how the PMS of software development projects could support business strategies for software developing companies. Results taken from this work show that PMS results from maturity models for software processes can be suited to help evaluating operating capabilities and supporting strategic business decisions.
J. H. Yeom
Full Text Available Korea-Japan Joint VLBI Correlator (KJJVC is being developed by collaborating KASI (Korea Astronomy and Space Science Institute, Korea, and NAOJ(National Observatory of Japan, Japan. In early 2010, KJJVC will work in normal operation. In this study, we developed the software correlator which is based on VCS (VLBI Correlation Subsystem hardware specification as the core component of KJJVC. The main specification of software correlator is 8 Gbps, 8192 output channels, and 262,144-points FFT (Fast Fourier Transform function same as VCS. And the functional algorithm which is same as specification of VCS and arithmetic register are adopted in this software correlator. To verify the performance of developed software correlator, the correlation experiments were carried out using the spectral line and continuum sources which were observed by VERA (VLBI Exploration of Radio Astrometry, NAOJ. And the experimental results were compared to the output of Mitaka FX correlator by referring spectrum shape, phase rate, and fringe detection and so on. Through the experimental results, we confirmed that the correlation results of software correlator are the same as Mitaka FX correlator and verified the effectiveness of it. In future, we expect that the developed software correlator will be the possible software correlator of KVN (Korean VLBI Network with KJJVC by introducing the correlation post-processing and modifying the user interface as like GUI (Graphic User Interface.
Guareis de farias, Cléver; van Sinderen, Marten J.; Ferreira Pires, Luis
Component-based software development enables the construction of software artefacts by assembling prefabricated, configurable and independently evolving building blocks, called software components. This paper presents an approach for the development of component-based software artefacts. This
Cianciolo, Alicia D.; Maddock, Robert W.; Prince, Jill L.; Bowes, Angela; Powell, Richard W.; White, Joseph P.; Tolson, Robert; O'Shaughnessy, Daniel; Carrelli, David
NASA has used aerobraking at Mars and Venus to reduce the fuel required to deliver a spacecraft into a desired orbit compared to an all-propulsive solution. Although aerobraking reduces the propellant, it does so at the expense of mission duration, large staff, and DSN coverage. These factors make aerobraking a significant cost element in the mission design. By moving on-board the current ground-based tasks of ephemeris determination, atmospheric density estimation, and maneuver sizing and execution, a flight project would realize significant cost savings. The NASA Engineering and Safety Center (NESC) sponsored Phase 1 and 2 of the Autonomous Aerobraking Development Software (AADS) study, which demonstrated the initial feasibility of moving these current ground-based functions to the spacecraft. This paper highlights key state-of-the-art advancements made in the Phase 2 effort to verify that the AADS algorithms are accurate, robust and ready to be considered for application on future missions that utilize aerobraking. The advancements discussed herein include both model updates and simulation and benchmark testing. Rigorous testing using observed flight atmospheres, operational environments and statistical analysis characterized the AADS operability in a perturbed environment.
Software Development on the SAP HANA Platform is a general tutorial guide to SAP HANA.This book is written for beginners to the SAP HANA platform. No knowledge of SAP HANA is necessary to start using this book.
J. Kotlarsky (Julia)
textabstractGlobally Distributed Component-Based Development (GD CBD) is expected to become a promising area, as increasing numbers of companies are setting up software development in a globally distributed environment and at the same time are adopting CBD methodologies. Being an emerging area, the
Riecks, Jung; Storm, Walter; Hollingsworth, Mark
This report documents the work performed by Lockheed Martin Aeronautics (LM Aero) under NASA contract NNL06AA08B, delivery order NNL07AB06T. The Concept Development for Software Health Management (CDSHM) program was a NASA funded effort sponsored by the Integrated Vehicle Health Management Project, one of the four pillars of the NASA Aviation Safety Program. The CD-SHM program focused on defining a structured approach to software health management (SHM) through the development of a comprehensive failure taxonomy that is used to characterize the fundamental failure modes of safety-critical software.
Zengin, Yilmaz; Tatar, Enver
The aim of this study was to evaluate the implementation of the cooperative learning model supported with dynamic mathematics software (DMS), that is a reflection of constructivist learning theory in the classroom environment, in the teaching of mathematics. For this purpose, a workshop was conducted with the volunteer teachers on the…
8217 Structured design - 110 Detail Design HIPO - t99’ Coding Data abstraction - 67 Testing DAVE - 1771 DISSECT - 471 * Maintenance Phase - Enhancements...Environments, ACM, Pittsburgh, Pennsylvania. April, 1984, pp. 57-64. 99. Stay, J. F. HIPO and Interactive Program Design. In Tutorial on Software Design
Johnson, Lynn A; Schleyer, Titus K L
The development of effective educational software requires a systematic process executed by a skilled development team. This article describes the core skills required of the development team members for the six phases of successful educational software development. During analysis, the foundation of product development is laid including defining the audience and program goals, determining hardware and software constraints, identifying content resources, and developing management tools. The design phase creates the specifications that describe the user interface, the sequence of events, and the details of the content to be displayed. During development, the pieces of the educational program are assembled. Graphics and other media are created, video and audio scripts written and recorded, the program code created, and support documentation produced. Extensive testing by the development team (alpha testing) and with students (beta testing) is conducted. Carefully planned implementation is most likely to result in a flawless delivery of the educational software and maintenance ensures up-to-date content and software. Due to the importance of the sixth phase, evaluation, we have written a companion article on it that follows this one. The development of a CD-ROM product is described including the development team, a detailed description of the development phases, and the lessons learned from the project.
Alf Inge Wang
Full Text Available This paper describes a case study of how a game project using the XNA Game Studio from Microsoft was implemented in a software architecture course. In this project, university students have to construct and design a type of software architecture, evaluate the architecture, implement an application based on the architecture, and test this implementation. In previous years, the domain of the software architecture project has been a robot controller for navigating a maze. Robot controller was chosen as the domain for the project, as there exist several papers and descriptions on reference architectures for managing mobile robots. This paper describes the changes we had to make to introduce an XNA game development project to the software architecture course, and our experiences from running a software architecture project focusing on game development and XNA. The experiences described in this paper are based on feedback from the course staff, the project reports of the students, and a mandatory course evaluation. The evaluation shows among other things that the majority of the students preferred the game project to the robot project, that XNA was considered to be suitable platform for a software architecture project, that the students found it useful to learn XNA and C#, and that some students were carried away when developing the game in the software architecture project.
Mejuev, I; Kadokura, E
Tailoring is further evolution of an application after deployment in order to adapt it to requirements that were not accounted for in the original design. End-user customization has been extensively researched in applied computer science from HCI and software engineering perspectives. Customization allows coping with flexibility requirements, decreasing maintenance and development costs of software products. In general, dynamic or diverse software requirements constitute the need for implementing end-user customization in computer systems. In accelerator physics research the factor of dynamic requirements is especially important, due to frequent software and hardware modifications resulting in correspondingly high upgrade and maintenance costs. We introduce the results of feasibility study on implementing end-user tailorability in the software for accelerator control system, considering the design and implementation of a distributed monitoring application for the 12 GeV KEK Proton Synchrotron as an example. T...
Persson, John Stouby; Aaen, Ivan; Mathiassen, Lars
Agile distributed environments pose particular challenges related to control of quality and collaboration in software development. Moreover, while face-to-face interaction is fundamental in agile development, distributed environments must rely extensively on mediated interactions. On this backdrop......-time mediated control exchanges; and, that the actors, despite distances in space and culture, developed a clan-like pattern mediated by technology to help control quality and collaboration in software development......., we report from an in-depth case study of an agile distributed software project. Applying Kirsch’s elements of control framework, we analyze how actors in this context used different elements of control. We offer a description of the general management context and provide a detailed analysis of how...
Bosse, T.; Memon, Z.A.; Oorburg, R.; Umair, M.; Treur, J.; de Vos, M.
This paper presents a software environment providing human-aware ambient support for a human performing a task that demands substantial amounts of attention. The agent obtains human attention-awareness in an adaptive manner by use of a dynamical model of human attention, gaze sensoring by an
Saad Masood Butt
Full Text Available Agile methods are the best fit for tremendously growing software industry due to its flexible and dynamic nature. But the software developed using agile methods do meet the usability standards? To answer this question we can see that majority of agile software development projects currently involve interactive user interface designs, which can only be possible by following User Centered Design (UCD in agile methods. The question here is, how to integrate UCD with agile models. Both Agile models and UCD are iterative in nature but agile models focus on coding and development of software; whereas, UCD focuses on user interface of the software. Similarly, both of them have testing features where the agile model involves automated tested code while UCD involves an expert or a user to test the user interface. In this paper, a new agile usability model is proposed and the evaluation is of the proposed model is presented by practically implementing it in three real life projects. . Key results from these projects clearly show: the proposed agile model incorporates usability evaluation methods, improves the relationship between usability experts to work with agile software experts; in addition, allows agile developers to incorporate the result from UCD into subsequent interactions.
Hansen, Henrik A.B.; Koch, Christian; Pleman, Allan
to different benefits and short comings for the collaborative companies depending on the specific context. In this paper we discuss three types of networks: collaboration between users and producer(s), collaboration between a software house and third party suppliers, and a collaboration between academics......Summary form only given. The topics addressed in this paper is how networking can be used as a way for small software houses to enhances their innovative capabilities by using different kinds of collaboration in order to overcome the problems of lacking knowledge as well as resources in order...... to develop their software. In small software houses operating in markets with complex products such as ERP (enterprise resource planning) systems, networking is necessary in order to gain the needed knowledge and resources in the production development process. Network is not seen as a magic word but leads...
ACCESS provides a generic capability to develop software information system applications which are explicitly intended to facilitate software reuse. In addition, it provides the capability to retrofit existing large applications with a user friendly front end for preparation of input streams in a way that will reduce required training time, improve the productivity even of experienced users, and increase accuracy. Current and past work shows that ACCESS will be scalable to much larger object bases.
Full Text Available The present paper describes the main features and an application to a real Nuclear Power Plant (NPP of an Integrated Software Environment (in the following referred to as “platform” developed at University of Pisa (UNIPI to perform Pressurized Thermal Shock (PTS analysis. The platform is written in Java for the portability and it implements all the steps foreseen in the methodology developed at UNIPI for the deterministic analysis of PTS scenarios. The methodology starts with the thermal hydraulic analysis of the NPP with a system code (such as Relap5-3D and Cathare2, during a selected transient scenario. The results so obtained are then processed to provide boundary conditions for the next step, that is, a CFD calculation. Once the system pressure and the RPV wall temperature are known, the stresses inside the RPV wall can be calculated by mean a Finite Element (FE code. The last step of the methodology is the Fracture Mechanics (FM analysis, using weight functions, aimed at evaluating the stress intensity factor (KI at crack tip to be compared with the critical stress intensity factor KIc. The platform automates all these steps foreseen in the methodology once the user specifies a number of boundary conditions at the beginning of the simulation.
Full Text Available A successful software project is the result of a complex process involving, above all, people. Developers are the key factors for the success of a software development process, not merely as executors of tasks, but as protagonists and core of the whole development process. This paper investigates social aspects among developers working on software projects developed with the support of Agile tools. We studied 22 open-source software projects developed using the Agile board of the JIRA repository. All comments committed by developers involved in the projects were analyzed and we explored whether the politeness of comments affected the number of developers involved and the time required to fix any given issue. Our results showed that the level of politeness in the communication process among developers does have an effect on the time required to fix issues and, in the majority of the analysed projects, it had a positive correlation with attractiveness of the project to both active and potential developers. The more polite developers were, the less time it took to fix an issue.
Pelupessy, Inti; van Werkhoven, Ben; van Elteren, Arjen; Viebahn, Jan; Candy, Adam; Portegies Zwart, Simon; Dijkstra, Henk
In this paper we present the Oceanographic Multipurpose Software Environment (OMUSE). OMUSE aims to provide a homogeneous environment for existing or newly developed numerical ocean simulation codes, simplifying their use and deployment. In this way, numerical experiments that combine ocean models representing different physics or spanning different ranges of physical scales can be easily designed. Rapid development of simulation models is made possible through the creation of simple high-level scripts. The low-level core of the abstraction in OMUSE is designed to deploy these simulations efficiently on heterogeneous high-performance computing resources. Cross-verification of simulation models with different codes and numerical methods is facilitated by the unified interface that OMUSE provides. Reproducibility in numerical experiments is fostered by allowing complex numerical experiments to be expressed in portable scripts that conform to a common OMUSE interface. Here, we present the design of OMUSE as well as the modules and model components currently included, which range from a simple conceptual quasi-geostrophic solver to the global circulation model POP (Parallel Ocean Program). The uniform access to the codes' simulation state and the extensive automation of data transfer and conversion operations aids the implementation of model couplings. We discuss the types of couplings that can be implemented using OMUSE. We also present example applications that demonstrate the straightforward model initialization and the concurrent use of data analysis tools on a running model. We give examples of multiscale and multiphysics simulations by embedding a regional ocean model into a global ocean model and by coupling a surface wave propagation model with a coastal circulation model.
Full Text Available In this paper we present the Oceanographic Multipurpose Software Environment (OMUSE. OMUSE aims to provide a homogeneous environment for existing or newly developed numerical ocean simulation codes, simplifying their use and deployment. In this way, numerical experiments that combine ocean models representing different physics or spanning different ranges of physical scales can be easily designed. Rapid development of simulation models is made possible through the creation of simple high-level scripts. The low-level core of the abstraction in OMUSE is designed to deploy these simulations efficiently on heterogeneous high-performance computing resources. Cross-verification of simulation models with different codes and numerical methods is facilitated by the unified interface that OMUSE provides. Reproducibility in numerical experiments is fostered by allowing complex numerical experiments to be expressed in portable scripts that conform to a common OMUSE interface. Here, we present the design of OMUSE as well as the modules and model components currently included, which range from a simple conceptual quasi-geostrophic solver to the global circulation model POP (Parallel Ocean Program. The uniform access to the codes' simulation state and the extensive automation of data transfer and conversion operations aids the implementation of model couplings. We discuss the types of couplings that can be implemented using OMUSE. We also present example applications that demonstrate the straightforward model initialization and the concurrent use of data analysis tools on a running model. We give examples of multiscale and multiphysics simulations by embedding a regional ocean model into a global ocean model and by coupling a surface wave propagation model with a coastal circulation model.
Perez-Poveda, Gus; Ciavarella, Tony; Nieten, Dan
The Real-Time Control (RTC) Application Framework is a high-level software framework written in C++ that supports the rapid design and implementation of object-oriented application programs. This framework provides built-in functionality that solves common software development problems within distributed client-server, multi-threaded, and embedded programming environments. When using the RTC Framework to develop software for a specific domain, designers and implementers can focus entirely on the details of the domain-specific software rather than on creating custom solutions, utilities, and frameworks for the complexities of the programming environment. The RTC Framework was originally developed as part of a Space Shuttle Launch Processing System (LPS) replacement project called Checkout and Launch Control System (CLCS). As a result of the framework s development, CLCS software development time was reduced by 66 percent. The framework is generic enough for developing applications outside of the launch-processing system domain. Other applicable high-level domains include command and control systems and simulation/ training systems.
Full Text Available Adoption of agile methods in the software development organization is considered as a powerful solution to deal with the quickly changing and regularly developing business environment and fully-educated customers with constantly rising expectation, such as shorter time periods and an extraordinary level of response and service. This study investigates the adoption of agile approaches in software development organizations by using systematic mapping. Six research questions are identified, and to answer these questions a number of research papers have been reviewed in electronic databases. Finally, 25 research papers are examined and answers to all research questions are provided.
Elzamly, Abdelrafe; Hussin, Burairah
Risk is not always avoidable, but it is controllable. The aim of this paper is to present new techniques which use the stepwise regression analysis tomodel and evaluate the risks in planning software development and reducing risk with software process improvement. Top ten software risk factors in planning software development phase and thirty control factors were presented to respondents. This study incorporates risk management approach and planning software development to mitigate software p...
Bitzer, J.; W., Schrettl,; Schröder, Philipp
This papers sheds light on the puzzling evidence that even though open source software (OSS) is a public good, it is developed for free by highly qualified, young and motivated individuals, and evolves at a rapid pace. We show that once OSS development is understood as the private provision...
Scientific software development at ESO involves defined processes for the main phases of project inception, monitoring of development performed by instrument consortia, application maintenance, and application support. We discuss the lessons learnt and evolution of the process for the next generation of tools and observing facilities.
The design and development of agricultural robots, consists of both mechan- ical, electrical and software components. All these components must be de- signed and combined such that the overall goal of the robot is fulfilled. The design and development of these systems require collaboration between...... processing, control engineering, etc. This thesis proposes a Model-Driven Software Develop- ment based approach to model, analyse and partially generate the software implementation of a agricultural robot. Furthermore, Guidelines for mod- elling the architecture of an agricultural robots are provided......, assisting with bridging the different engineering disciplines. Timing play an important role in agricultural robotic applications, synchronisation of robot movement and implement actions is important in order to achieve precision spraying, me- chanical weeding, individual feeding, etc. Discovering...
Schlichter, Bjarne Rerup; Persson, John Stouby
Software development projects are increasingly geographical distributed with offshoring. Co-sourcing is a highly integrative and cohesive approach, seen successful, to software development offshoring. However, research of how dynamic aspects of trust are shaped in co-sourcing activities is limited....... We present a case study of how the co-sourcing relationship between a certified CMMI-level 5 Danish software company and an offshoring supplier can be conceptualized as an Abstract System. An Abstract System is a dis-embedded social system (such as banking) that is trusted despite lack of detailed...... understanding or personal trust relations. The paper suggests how certain work practices among developers and managers can be explained using a dynamic trust lens based on Abstract Systems, especially dis- and re-embedding mechanisms...
Olszak, Andrzej; Jørgensen, Bo Nørregaard
software maintenance and evolution, this situation needs to change. In this paper, we present Featureous, an integrated development environment built on top of the NetBeans IDE that facilitates feature-centric analysis of object-oriented software. Our integrated development environment encompasses......The decentralized nature of collaborations between objects in object-oriented software makes it difficult to understand the implementations of user-observable program features and their respective interdependencies. As feature-centric program understanding and modification are essential during...... a lightweight feature location mechanism, a number of reusable analytical views, and necessary APIs for supporting future extensions. The base of the integrated development environment is a conceptual framework comprising of three complementary dimensions of comprehension: perspective, abstraction...
CERN is considering outsourcing as a solution to the reduction of staff. To need to re-engineer the SPS Software Interlock System provided an opportunity to explore the applicability of outsourcing to our specific controls environment and the ESA PSS-05 standards were selected for the requirements specification, the development, the control and monitoring and the project management. The software produced by the contractor is now fully operational. After outlining the scope and the complexity of the project, a discussion on the ESA PSS-05 will be presented: the choice, the way these standards improve the outsourcing process, the quality induced but also the need to adapt them and their limitation in the definition of the customer-supplier relationship. The success factors and the difficulties of development under contract will also be discussed. The maintenance aspect and the impact on in-house developments will finally be addressed.
Yara, Pavan; Ramachandran, Ramaseshan; Balasubramanian, Gayathri; Muthuswamy, Karthik; Chandrasekar, Divya
Offshore and outsourced distributed software development models and processes are facing challenges, previously unknown, with respect to computing capacity, bandwidth, storage, security, complexity, reliability, and business uncertainty. Clouds promise to address these challenges by adopting recent advances in virtualization, parallel and distributed systems, utility computing, and software services. In this paper, we envision a cloud-based platform that addresses some of these core problems. We outline a generic cloud architecture, its design and our first implementation results for three cloud forms - a compute cloud, a storage cloud and a cloud-based software service- in the context of global distributed software development (GSD). Our ”compute cloud” provides computational services such as continuous code integration and a compile server farm, ”storage cloud” offers storage (block or file-based) services with an on-line virtual storage service, whereas the on-line virtual labs represent a useful cloud service. We note some of the use cases for clouds in GSD, the lessons learned with our prototypes and identify challenges that must be conquered before realizing the full business benefits. We believe that in the future, software practitioners will focus more on these cloud computing platforms and see clouds as a means to supporting a ecosystem of clients, developers and other key stakeholders.
Full Text Available It’s difficult to state exact timelines in software development and it is even more difficult to say when features that users want will be delivered. We propose changes to current software development methodologies that enable companies to be predictably adaptable and deliver both on time and what customer asked for. We do so through research of current literature, interviews and personal experience working at an international company that builds products for millions of customers and is facing exactly the challenges described above.
Happel, Hans-Jörg; Maalej, Walid; Seedorf, Stefan
Making distributed teams more efficient is one main goal of Collaborative Software Development (CSD) research. To this end, ontologies, which are models that capture a shared understanding of a specific domain, provide key benefits. Ontologies have formal, machine-interpretable semantics that allow to define semantic mappings for heterogeneous data and to infer implicit knowledge at run-time. Extending development infrastructures and software architectures with ontologies (of problem and solution domains) will address coordination and knowledge sharing challenges in activities such as documentation, requirements specificationrequirements specification , component reuse, error handling, and test case management. The purpose of this article is to provide systematic account of how ontologies can be applied in CSD, and to describe benefits of both existing applications such as "semantic wikissemantic wikis " as well as visionary scenarios such as a "Software Engineering Semantic Websemantic web ".
Persson, John Stouby; Schlichter, Bjarne Rerup
Software companies are increasingly offshoring development to countries with high expertise at lower cost. Offshoring involves particular risk areas that if ignored increase the likelihood of failure. However, the offshoring client’s maturity level may influence the management of these risk areas...... of the offshoring risk areas in accordance with the findings of previous research. However, the risk area of task distribution is a notable exception. In this case, managers perceive high task uncertainty, equivocality, and coupling across sites as risk mitigation rather than risk taking. The paper discusses how....... Against this backdrop, we present an interpretive case study of how managers perceive and mitigate the risk areas in software development offshoring with a mature CMMI level 5 (Capability Maturity Model, Integrated) software company as the client. We find that managers perceive and mitigate most...
Dietsch, Daniel; Podelski, Andreas; Nam, Jaechang
by weekly meetings with teaching assistants and instructors regarding group progress, code quality, and management issues. Through these meetings and their interactions with the software tools, students leave a detailed trace of data related to their individual engagement and their collaboration behavior......This paper presents data analysis from a course on Software Engineering in an effort to identify metrics and techniques that would allow instructor to act proactively and identify patterns of low engagement and inefficient peer collaboration. Over the last two terms, 106 students in their second...... year of studies formed 20 groups and worked collaboratively to develop video games. Throughout the lab, students have to use a variety of tools for managing and developing their projects, such as software version control, static analysis tools, wikis, mailing lists, etc. The students are also supported...
H. J. Roth
Full Text Available A strategy for a new type of platform for chemoinformatics software development and its first implementation are presented. The basic task of such a platform is to apply sequences of computational methods to high numbers of molecules. The implementation presented is based on four major components: (a the application manager, responsible for running programs and for data management; (b executable applications that supply limited pieces of functionality; (c syntax definitions for data and control files and (d the runtime library which comprises routines for data handling and user interface. This simple concept is implemented in the software package marvin. Different computational methods are available within marvin, including parts of commercial software packages (e.g. molecular modeling, bioinformatics, statistics, etc. as well as newly developed and innovative algorithms. The basic layout of marvin is described and a simple example illustrates its application.
F. Guidec; P. Calégari; P. Kuonen; M. Pahud
The objective of the European project STORMS (Software Tools for the Optimization of Resources in Mobile Systems) is to develop a software tool to be used for design and planning of the future Universal Mobile Telecommunication System (UMTS). In this context the ParFlow method permits the simulation of outdoor radio wave propagation in urban environment, modeling the physical system in terms of the motion of fictitious microscopic particles over a lattice. This paper gives an overview of the ...
Guidec, Frédéric; Calégari, Patrice; Kuonen, Pierre; Pahud, Michel
International audience; The objective of the European project STORMS (Software Tools for the Optimization of Resources in Mobile Systems) is to develop a software tool to be used for the design and the planning of the future Universal Mobile Telecommunication System (UMTS). In this context the ParFlow method permits the simulation of outdoor radio wave propagation in urban environment, modeling the physical system in terms of the motion of fictitious microscopic particles over a lattice. This...
Parker, Linda L.
The study explored the relationship between global software development teams, effective software requirements, and stakeholders' perception of successful software development projects within the field of information technology management. It examined the critical relationship between Global Software Development (GSD) teams creating effective…
Full Text Available A low-level language is the right tool to develop applications for some embedded systems. Notwithstanding, a high-level language provides a proper environment to develop the programming tools. The target device is a system-on-chip consisting of an array of processors with only local communication. Applications include typical streaming applications for digital signal processing. We describe the hardware model and stress the advantages of a flexible device. We introduce IDEA, a graphical integrated development environment for an array. A proper foundation for software development is a UML and standard programming abstractions in object-oriented languages.
Full Text Available As an answer to today’s growing challenges in software industry, wide spectrum of new approaches of software development has occurred. One prominent direction is currently most promising software development paradigm called Model Driven Development (MDD. Despite a lot of skepticism and problems, MDD paradigm is being used and improved to accomplish many inherent potential benefits. In the methodological approach of software development it is necessary to use some kind of development process. Modern methodologies can be classified into two main categories: formal or heavyweight and agile or lightweight. But when it is a question about MDD and development process for MDD, currently known methodologies are very poor or better said they don't have any explanation of MDD process. As the result of research, in this paper, author examines the possibilities of using existing modern software methodologies in context of MDD paradigm.
Sadasivam, Rajani S; Tanik, Murat M
Translational researchers conduct research in a highly data-intensive and continuously changing environment and need to use multiple, disparate tools to achieve their goals. These researchers would greatly benefit from meta-composite software development or the ability to continuously compose and recompose tools together in response to their ever-changing needs. However, the available tools are largely disconnected, and current software approaches are inefficient and ineffective in their support for meta-composite software development. Building on the composite services development approach, the de facto standard for developing integrated software systems, we propose a concept-map and agent-based meta-composite software development approach. A crucial step in composite services development is the modeling of users' needs as processes, which can then be specified in an executable format for system composition. We have two key innovations. First, our approach allows researchers (who understand their needs best) instead of technicians to take a leadership role in the development of process models, reducing inefficiencies and errors. A second innovation is that our approach also allows for modeling of complex user interactions as part of the process, overcoming the technical limitations of current tools. We demonstrate the feasibility of our approach using a real-world translational research use case. We also present results of usability studies evaluating our approach for future refinements.
Title Revision Date Document Number Software Estimating Guide Document Date ISO 9001 Quality Program Document Date ISO /IEC 15939 Software...commercial standards such as ISO 9001 as well as the SEI’s CMMI . 22.214.171.124 XMPL Program Policies and Practices Software development activities are also...2005 J-STD-016-1995 Standard for Information Technology September 1995 ANSI/ ISO /IEC 9899 c 1990 ISO /IEC 14882 c++ July 1998 Document Number
Silva, Luis Bastiao; Jimenez, Rafael C.; Blomberg, Niklas; Luis Oliveira, José
Most bioinformatics tools available today were not written by professional software developers, but by people that wanted to solve their own problems, using computational solutions and spending the minimum time and effort possible, since these were just the means to an end. Consequently, a vast number of software applications are currently available, hindering the task of identifying the utility and quality of each. At the same time, this situation has hindered regular adoption of these tools in clinical practice. Typically, they are not sufficiently developed to be used by most clinical researchers and practitioners. To address these issues, it is necessary to re-think how biomedical applications are built and adopt new strategies that ensure quality, efficiency, robustness, correctness and reusability of software components. We also need to engage end-users during the development process to ensure that applications fit their needs. In this review, we present a set of guidelines to support biomedical software development, with an explanation of how they can be implemented and what kind of open-source tools can be used for each specific topic. PMID:28443186
Dubinsky, Yael; Hazzan, Orit
This article presents a study that aims at constructing a teaching framework for software development methods in higher education. The research field is a capstone project-based course, offered by the Technion's Department of Computer Science, in which Extreme Programming is introduced. The research paradigm is an Action Research that involves…
Spaeth, Sebastian; Haefliger, Stefan; von Krogh, Georg; Renzl, Birgit
Introduction: Virtual communities play an important role in innovation. The paper focuses on the particular form of collective action in virtual communities underlying as Open Source software development projects. Method: Building on resource mobilization theory and private-collective innovation, we propose a theory of collective action in…
Mccluskey, E. J.; Andrews, D. M.
The research to develop a testing methodology for flight software is described. An experiment was conducted in using assertions to dynamically test digital flight control software. The experiment showed that 87% of typical errors introduced into the program would be detected by assertions. Detailed analysis of the test data showed that the number of assertions needed to detect those errors could be reduced to a minimal set. The analysis also revealed that the most effective assertions tested program parameters that provided greater indirect (collateral) testing of other parameters. In addition, a prototype watchdog task system was built to evaluate the effectiveness of executing assertions in parallel by using the multitasking features of Ada.
de Oliveira Lopes, Marcos Venícios; da Silva, Viviane Martins; de Araújo, Thelma Leite
In this article, we propose a mathematical analysis model for the generation of a proportional value of defining characteristics in nursing diagnoses. The study results are based on the logical-mathematical development of software specifically built for the generation of diagnosis hypotheses. The final calculation creates the sum of all defining characteristics found in each diagnosis, comparing it with the value of the V variable of the diagnosis, according to a mathematical rule that was set. It is concluded that the software needs to go through clinical validation in order to evaluate the pertinence of the rule proposed here.
This doctoral dissertation describes a series of empirical investigations into representation, dissemination and coordination of software architecture design in the context of global software development. A particular focus is placed on model-centric and model-driven software development.
Chadli, Saad Yasser; Idri, Ali; Ros, Joaquín Nicolás; Fernández-Alemán, José Luis; de Gea, Juan M Carrillo; Toval, Ambrosio
Global software development (GSD) which is a growing trend in the software industry is characterized by a highly distributed environment. Performing software project management (SPM) in such conditions implies the need to overcome new limitations resulting from cultural, temporal and geographic separation. The aim of this research is to discover and classify the various tools mentioned in literature that provide GSD project managers with support and to identify in what way they support group interaction. A systematic mapping study has been performed by means of automatic searches in five sources. We have then synthesized the data extracted and presented the results of this study. A total of 102 tools were identified as being used in SPM activities in GSD. We have classified these tools, according to the software life cycle process on which they focus and how they support the 3C collaboration model (communication, coordination and cooperation). The majority of the tools found are standalone tools (77%). A small number of platforms (8%) also offer a set of interacting tools that cover the software development lifecycle. Results also indicate that SPM areas in GSD are not adequately supported by corresponding tools and deserve more attention from tool builders.
Macedo, R.; Budd, G.; Ross, E.; Wells, P.
The software section of this journal presented new software programs that have been developed to help in the exploration and development of hydrocarbon resources. Software provider IHS Inc. has made additions to its geological and engineering analysis software tool, IHS PETRA, a product used by geoscientists and engineers to visualize, analyze and manage well production, well log, drilling, reservoir, seismic and other related information. IHS PETRA also includes a directional well module and a decline curve analysis module to improve analysis capabilities in unconventional reservoirs. Petris Technology Inc. has developed a software to help manage the large volumes of data. PetrisWinds Enterprise (PWE) helps users find and manage wellbore data, including conventional wireline and MWD core data; analysis core photos and images; waveforms and NMR; and external files documentation. Ottawa-based Ambercore Software Inc. has been collaborating with Nexen on the Petroleum iQ software for steam assisted gravity drainage (SAGD) producers. Petroleum iQ integrates geology and geophysics data with engineering data in 3D and 4D. Calgary-based Envirosoft Corporation has developed a software that reduces the costly and time-consuming effort required to comply with Directive 39 of the Alberta Energy Resources Conservation Board. The product includes an emissions modelling software. Houston-based Seismic Micro-Technology (SMT) has developed the Kingdom software that features the latest in seismic interpretation. Holland-based Joa Oil and Gas and Calgary-based Computer Modelling Group have both supplied the petroleum industry with advanced reservoir simulation software that enables reservoir interpretation. The 2010 software survey included a guide to new software applications designed to facilitate petroleum exploration, drilling and production activities. Oil and gas producers can use the products for a range of functions, including reservoir characterization and accounting. In
Mora, Angel; Galan, Jose Luis; Aguilera, Gabriel; Fernandez, Alvaro; Merida, Enrique; Rodriguez, Pedro
In this work we will present the ScilabUMA environment we have developed as an alternative to Matlab. This environment connects Scilab (for numerical analysis) and Maxima (for symbolic computations). Furthermore, the developed interface is, in our opinion at least, as powerful as the interface of Matlab. (Contains 3 figures.)
Full Text Available In a software factory, the applications are developed in the same way Henri Ford started manufacturing cars. In such a way, a customized solution could be obtained within a reasonable budget and within the foreseen timeframe. This development method offers a flexible solution that can be readapted rapidly and automatically to the changing business needs, so the Project Management becomes a real challenge.
Here is the first published description of the processes and practices, tools, and methods this industry giant uses to develop its software products. This 'shirt-sleeves' guide is packed with diagrams and tables that illustrate each step in the complexsoftware development process. You'll learn all about Digital's standard 'phase review process,' the role of teams and their leaders, how CASE tools work, and how to control a project while improving productivity and product quality.
Antonella Del Rosso
Hundreds of developers work on many different projects at CERN – from data analysis to beam operations and administrative applications. As of this September, they will have an opportunity to meet each other at the newly established Developers@CERN Forum. “We go to conferences elsewhere but we hardly ever meet here at CERN, where we all work on our own separate software projects,” says José Carlos Luna, a member of the IT department and one of the organisers of the first Developers@CERN Forum. Indeed, although several CERN departments have software developers working in their teams, there is no proper “community” built around them. The first Developers@CERN Forum will be held on 28 and 29 September. The event is being organised by a few developers from the IT department, together with colleagues from the GS and EN departments. Its main scope is to reach out to all the departments in an effort to bring all CERN’s software dev...
Full Text Available Why is it so difficult to learn to develop software? This question has been trying to answer for a long time, but has not yet found a solution to this issue. Moreover, it tends to confuse development with programming, and this also creates problems to elucidate the question. In an era in which urgently required improve the quality, and reliability, and safety of software it becomes urgent to potentiate or develop skills and abilities in professionals to meet these needs. But students are not interested in making careers involving these concepts, they prefer other less demanding and easier to achieve a certification. This article attempts to answer the question and present some suggestions for overcoming this difficulty.
Shaw, Hui-Yin; Sherif, Joseph S.
This paper describes the MLS software safety analysis activities and documents the SSA results. The scope of this software safety effort is consistent with the MLS system safety definition and is concentrated on the software faults and hazards that may have impact on the personnel safety and the environment safety.
This study explores how project managers, working for private federal IT contractors, experience and understand managing the development of software applications for U.S. federal government agencies. Very little is known about how they manage their projects in this challenging environment. Software development is a complex task and only grows in…
Elmsheuser, Johannes; The ATLAS collaboration; Obreshkov, Emil; Undrus, Alexander
The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million C++ and 1.4 million python lines. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This presentation describes t...
AUTHOR|(INSPIRE)INSPIRE-00132984; The ATLAS collaboration; Elmsheuser, Johannes; Obreshkov, Emil; Krasznahorkay, Attila
The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million C++ and 1.4 million python lines. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This paper describes the CI ...
Full Text Available Software exports have the potential to make a significant contribution to the economies of developing countries and to the global IT industry. Developing countries have demonstrated a comparative advantage in this export sector and the global IT industry can benefit from this developing country advantage. Today, IT is high investment, high risk, and high reward and has graduated from being a critical support function to a key partner, sometimes responsible for directing the strategy of an enterprise. Business and technology managers cannot afford to miss the opportunities provided by the comparative advantage of developing countries in the IT arena.
Stephenson, James H.
Computers and other digital devices have become ubiquitous in our lives. Almost all aspects of our lives are in part or wholly impacted by computers and the software that runs on them. Unknowingly, we are placing our livelihoods and even our lives in the hands unknown software developers. Ethical and moral decisions made during software…
Software development is hard enough for specialist software companies to get right. For people outside the industry it can be a minefield full of hidden surprises. This articles hopes to explain why software development is so hard, how to go about approaching a software development project, and how to get the best out of any collaboration with a development team. It should be read by anyone who is considering developing a software product, including websites, from a non-development.
Full Text Available Software development is hard enough for specialist software companies to get right. For people outside the industry it can be a minefield full of hidden surprises. This articles hopes to explain why software development is so hard, how to go about approaching a software development project, and how to get the best out of any collaboration with a development team. It should be read by anyone who is considering developing a software product, including websites, from a non-development.
Miller, Samuel James [Iowa State Univ., Ames, IA (United States)
This research describes Fountain, a suite of programs used to monitor the resources of a cluster. A cluster is a collection of individual computers that are connected via a high speed communication network. They are traditionally used by users who desire more resources, such as processing power and memory, than any single computer can provide. A common drawback to effectively utilizing such a large-scale system is the management infrastructure, which often does not often scale well as the system grows. Large-scale parallel systems provide new research challenges in the area of systems software, the programs or tools that manage the system from boot-up to running a parallel job. The approach presented in this thesis utilizes a collection of separate components that communicate with each other to achieve a common goal. While systems software comprises a broad array of components, this thesis focuses on the design choices for a node monitoring component. We will describe Fountain, an implementation of the Scalable Systems Software (SSS) node monitor specification. It is targeted at aggregate node monitoring for clusters, focusing on both scalability and fault tolerance as its design goals. It leverages widely used technologies such as XML and HTTP to present an interface to other components in the SSS environment.
Kacpura, Thomas J.; Varga, Denise M.
National Aeronautics and Space Administration (NASA) has developed an on-orbit, adaptable, Software Defined Radio (SDR)Space Telecommunications Radio System (STRS)-based testbed facility to conduct a suite of experiments to advance technologies, reduce risk, and enable future mission capabilities on the International Space Station (ISS). The SCAN Testbed Project will provide NASA, industry, other Government agencies, and academic partners the opportunity to develop and field communications, navigation, and networking technologies in the laboratory and space environment based on reconfigurable, SDR platforms and the STRS Architecture.The SDRs are a new technology for NASA, and the support infrastructure they require is different from legacy, fixed function radios. SDRs offer the ability to reconfigure on-orbit communications by changing software for new waveforms and operating systems to enable new capabilities or fix any anomalies, which was not a previous option. They are not stand alone devices, but required a new approach to effectively control them and flow data. This requires extensive software to be developed to utilize the full potential of these reconfigurable platforms. The paper focuses on development, integration and testing as related to the avionics processor system, and the software required to command, control, monitor, and interact with the SDRs, as well as the other communication payload elements. An extensive effort was required to develop the flight software and meet the NASA requirements for software quality and safety. The flight avionics must be radiation tolerant, and these processors have limited capability in comparison to terrestrial counterparts. A big challenge was that there are three SDRs onboard, and interfacing with multiple SDRs simultaneously complicatesd the effort. The effort also includes ground software, which is a key element for both the command of the payload, and displaying data created by the payload. The verification of
van den Berg, Klaas; Demeyer, S.; Bosch, J.
In this paper we discuss how software quality assurance is realized in Rational Objectory. Although much support is given through guidelines and checkpoints, the tool fails to provide clear goals and metrics for quality assessments and it only partially supports the phases in a measurement program.
Mayer, Richard J.; Blinn, Thomas M.; Mayer, Paula S. D.; Ackley, Keith A.; Crump, Wes; Sanders, Les
The design of the Framework Processor (FP) component of the Framework Programmable Software Development Platform (FFP) is described. The FFP is a project aimed at combining effective tool and data integration mechanisms with a model of the software development process in an intelligent integrated software development environment. Guided by the model, this Framework Processor will take advantage of an integrated operating environment to provide automated support for the management and control of the software development process so that costly mistakes during the development phase can be eliminated.
Software quality is one of the primary determinants of project management success. Stakeholders involved in software development widely agree that quality is important (Barney and Wohlin 2009). However, they may differ on what constitutes software quality, and which of its attributes are more important than others. Although, software quality…
Shelton, Robert O.; Smith, Stephanie L.; Dexter, Dan E.; Hodgson, Terry R.
The Math Description Engine Software Development Kit (MDE SDK) can be used by software developers to make computer-rendered graphs more accessible to blind and visually-impaired users. The MDE SDK generates alternative graph descriptions in two forms: textual descriptions and non-verbal sound renderings, or sonification. It also enables display of an animated trace of a graph sonification on a visual graph component, with color and line-thickness options for users having low vision or color-related impairments. A set of accessible graphical user interface widgets is provided for operation by end users and for control of accessible graph displays. Version 1.0 of the MDE SDK generates text descriptions for 2D graphs commonly seen in math and science curriculum (and practice). The mathematically rich text descriptions can also serve as a virtual math and science assistant for blind and sighted users, making graphs more accessible for everyone. The MDE SDK has a simple application programming interface (API) that makes it easy for programmers and Web-site developers to make graphs accessible with just a few lines of code. The source code is written in Java for cross-platform compatibility and to take advantage of Java s built-in support for building accessible software application interfaces. Compiled-library and NASA Open Source versions are available with API documentation and Programmer s Guide at http:/ / prim e.jsc.n asa. gov.
Lewis, L.C.; Dronkers, J.J.; Pitsker, B.
The Nuclear Waste Policy Act of 1982 directs the Department of Energy (DOE) to dispose permanently high level radioactive waste and civilian spent nuclear fuel by January 31, 1998. DOE has responded by creating an organizational structure that directs all the activities necessary to carry out the legislative demands. LLNL is conducting research in the earth sciences and is developing some unique computer codes to help establish the feasibility of geologic repositories for nuclear waste. LLNL has several codes under development. This paper examines the administrative and organizational measures that were and still are being undertaken in order to control the development of the two major codes. In the case of one code, the software quality assurance requirements were imposed five years after the code began its development. This required a retroactive application of requirements. The other code is still in the conceptual stages of development and here requirements can be applied as soon as the initial code design begins. Both codes are being developed by scientists, not computer programmers, and both are modeling codes, not data acquisition and reduction codes. Also the projects for which these codes are being developed have slightly different software quality assurance requirements. All these factors contribute unique difficulties in attempts to assure that the development not only results in a reliable prediction, but that whatever the reliability, it can be objectively shown to exist. The paper will examine a software management model. It will also discuss the reasons why it is felt that this particular model would stand a reasonable chance for success. The paper will then describe the way in which the model should be integrated into the existing management configuration and tradition.
Elmsheuser, J.; Krasznahorkay, A.; Obreshkov, E.; Undrus, A.; ATLAS Collaboration
The ATLAS software infrastructure facilitates efforts of more than 1000 developers working on the code base of 2200 packages with 4 million lines of C++ and 1.4 million lines of python code. The ATLAS offline code management system is the powerful, flexible framework for processing new package versions requests, probing code changes in the Nightly Build System, migration to new platforms and compilers, deployment of production releases for worldwide access and supporting physicists with tools and interfaces for efficient software use. It maintains multi-stream, parallel development environment with about 70 multi-platform branches of nightly releases and provides vast opportunities for testing new packages, for verifying patches to existing software and for migrating to new platforms and compilers. The system evolution is currently aimed on the adoption of modern continuous integration (CI) practices focused on building nightly releases early and often, with rigorous unit and integration testing. This paper describes the CI incorporation program for the ATLAS software infrastructure. It brings modern open source tools such as Jenkins and GitLab into the ATLAS Nightly System, rationalizes hardware resource allocation and administrative operations, provides improved feedback and means to fix broken builds promptly for developers. Once adopted, ATLAS CI practices will improve and accelerate innovation cycles and result in increased confidence in new software deployments. The paper reports the status of Jenkins integration with the ATLAS Nightly System as well as short and long term plans for the incorporation of CI practices.
Buur, Hanne; Subramaniam, Annapurni; Gillies, Kim; Dumas, Christophe; Bhatia, Ravinder
The purpose of the Observatory Software System (OSW) is to integrate all software and hardware components of the Thirty Meter Telescope (TMT) to enable observations and data capture; thus it is a complex software system that is defined by four principal software subsystems: Common Software (CSW), Executive Software (ESW), Data Management System (DMS) and Science Operations Support System (SOSS), all of which have interdependencies with the observatory control systems and data acquisition syst...
Lauer, L.J.; Lynam, M.; Muniz, T. [Sandia National Labs., Albuquerque, NM (United States). Financial Systems Dept.
The Web Interface Template System (WITS) is a tool for software developers. WITS is a three-tiered, object-oriented system operating in a Client/Server environment. This tool can be used to create software applications that have a Web browser as the user interface and access a Sybase database. Development, modification, and implementation are greatly simplified because the developer can change and test definitions immediately, without writing or compiling any code. This document explains WITS functionality, the system structure and components of WITS, and how to obtain, install, and use the software system.
Schlichter, Bjarne Rerup; Persson, John Stouby
-sourcing shapes the perception and alleviation of common offshoring risks is limited. We present a case study of how a certified CMMI-level 5 Danish software supplier approaches these risks in offshore co-sourcing. The paper explains how common offshoring risks are perceived and alleviated when adopting the co......-sourcing strategy in a mature (CMMI level 5) software development organization. We found that most of the common offshoring risks were perceived and alleviated in accordance with previous research, with the exception of the task distribution risk area. In this case, high task uncertainty, equivocality, and coupling...... across sites was perceived more as risk alleviation than risk taking. This perception of task distribution was combined with high attention to the closely interrelated structure and technology components in terms of CMMI and the actors’ cohesion and integration in terms of Scrum....
Øvad, Tina; Bornoe, Nis; Larsen, Lars Bo
Good UX design is becoming important within the industry when developing new products. This entails that UX skills have to be available in the development processes. This paper investigates the opportunities of using software developers as a UX work resource in the day-to-day working practice....... This is done via an action research study where the developers were provided with material concerning a modified AB usability test, by training them in performing this type of work, and by using their feedback to improve the method and the material. The overall result of the study is positive and it is found...... that by using the developers' feedback in the modification process, the method has truly become applicable within an agile, industrial setting. In combination with a guideline and template this has induced the developers to feel confident in independently performing this type of work....
Biery, Kurt; Flumerfelt, Eric; Freeman, John; Ketchum, Wesley; Lukhanin, Gennadiy; Rechenmacher, Ron
For a few years now, the artdaq data acquisition software toolkit has provided numerous experiments with ready-to-use components which allow for rapid development and deployment of DAQ systems. Developed within the Fermilab Scientific Computing Division, artdaq provides data transfer, event building, run control, and event analysis functionality. This latter feature includes built-in support for the art event analysis framework, allowing experiments to run art modules for real-time filtering, compression, disk writing and online monitoring. As art, also developed at Fermilab, is also used for offline analysis, a major advantage of artdaq is that it allows developers to easily switch between developing online and offline software. artdaq continues to be improved. Support for an alternate mode of running whereby data from some subdetector components are only streamed if requested has been added; this option will reduce unnecessary DAQ throughput. Real-time reporting of DAQ metrics has been implemented, along with the flexibility to choose the format through which experiments receive the reports; these formats include the Ganglia, Graphite and syslog software packages, along with flat ASCII files. Additionally, work has been performed investigating more flexible modes of online monitoring, including the capability to run multiple online monitoring processes on different hosts, each running its own set of art modules. Finally, a web-based GUI interface through which users can configure details of their DAQ system has been implemented, increasing the ease of use of the system. Already successfully deployed on the LArlAT, DarkSide-50, DUNE 35ton and Mu2e experiments, artdaq will be employed for SBND and is a strong candidate for use on ICARUS and protoDUNE. With each experiment comes new ideas for how artdaq can be made more flexible and powerful. The above improvements will be described, along with potential ideas for the future.
produce a complete parser for that syntax. It is also possible to include actions in the syntax description that YACC will cause to happen at the...Lex A tool that is complementary with YACC is Lex. LeX interfaces with YACC and is used by YACC to scan a file and provide tokens to the parser ...82174-4 60 4,12 a-4 / E- ’i, -a-N E-4. 126. Q .. C-, E-4, r4 9 Lr ’% H 0 4.4 W127 .. ,~. ..-. ..- . - * . P - * * *-. --- ,*.~. S 5-. - - CD C’\\J E-1 0 4
Beaver, Justin M.; Schiavone, Guy A.
This paper provides an analysis of the effect of the skill/experience of the software development team on the quality of the final software product. A method for the assessment of software development team skill and experience is proposed, and was derived from a workforce management tool currently in use by the National Aeronautics and Space Administration. Using data from 26 smallscale software development projects, the team skill measures are correlated to 5 software product quality metrics from the ISO/IEC 9126 Software Engineering Product Quality standard. in the analysis of the results, development team skill is found to be a significant factor in the adequacy of the design and implementation. In addition, the results imply that inexperienced software developers are tasked with responsibilities ill-suited to their skill level, and thus have a significant adverse effect on the quality of the software product. Keywords: software quality, development skill, software metrics
Software metrics are measures of software products and processes. Metrics are widely used by software organizations to help manage projects, improve product quality and increase efficiency of the software development process. However, metrics programs tend to have a high failure rate in organizations, and developer pushback is one of the sources…
Kruithof, G. H.; Meijler, T. D.; Barry, C; Conboy, K; Lang, M; Wojtkowski, G; Wojtkowski, W
This chapter explores the relationship between characteristics of a software market and strategic management of software development in a supply chain. The typical characteristics of software markets and software supply chains are described. A decision framework is developed which connects specific
Clausen, Christian; Nielsen, Klaus T.; Jensen, Per Langaa
The paper describes the purpose, themes, overarching research questions and specific projects of the programme: Working Environment and Technological Development. The major research themes are:1) Management concepts and the working environment, which considers the visions...... and their and their concept of working environment2) Technology renewal, which considers the role of the working environment in connection with the development and use of concrete technologies3) Working environment planning, which considers the existing efforts to place the working environment in a planning process....
Ichu, Emmanuel A.
Software quality is perhaps one of the most sought-after attributes in product development, however; this goal is unattained. Problem factors in software development and how these have affected the maintainability of the delivered software systems requires a thorough investigation. It was, therefore, very important to understand software…
Full Text Available There is a need for metrics for inter-organizational collaborative software development projects, encompassing management and technical concerns. In particular, metrics are needed that are aimed at the collaborative aspect itself, such as readiness for collaboration, the quality and/or the costs and benefits of collaboration in a specific ongoing project. We suggest questions and directions for such metrics, spanning the full lifespan of a collaborative project, from considering the suitability of collaboration through evaluating ongoing projects to final evaluation of the collaboration.
Hihn, Jairus M.; Menzies, Tim
Identify simple fully validated cost models that provide estimation uncertainty with cost estimate. Based on COCOMO variable set. Use machine learning techniques to determine: a) Minimum number of cost drivers required for NASA domain based cost models; b) Minimum number of data records required and c) Estimation Uncertainty. Build a repository of software cost estimation information. Coordinating tool development and data collection with: a) Tasks funded by PA&E Cost Analysis; b) IV&V Effort Estimation Task and c) NASA SEPG activities.
Aized Amin Soof
Full Text Available Open Source Software (OSS is one of the emerging areas in software engineering. Reuse of OSS is employed in reuse-intensive software development such as Component Based Software Development and Software Product Lines. OSS is gaining the interest of the software development community due to its enormous benefits. The context of this study is the identification and quantification of factors affecting reusability of OSS in reuse-intensive software development. The use of OSS in the systematic reuse of software, such as in Software Product Lines (SPLs is a new phenomenon. Therefore, the aim of this study is to identify and quantify the factors affecting the reusability of OSS in reuse-intensive software development, especially for SPLs. In this study, a mixed methods based approach is employed to identify the factors affecting the reusability of OSS. Interviews are conducted with experts in this field as the qualitative part, followed by a survey, experiments and a statistical analysis. The factors identified during the interviews are ranked by software engineers in a survey. Experiment is conducted to assess the reusability of open source packages. The factors are validated by conducting a statistical analysis of the results of the experiments. A set of nine factors were identified as a result of the qualitative study. A model was formed on the basis of the findings of interviews and a survey. It includes five factors. These were statistically analyzed by applying the model to 77 open source packages. A set of nine factors were identified as affecting reusability of OSS in a reuse-intensive development environment. Five of them were validated at the code level. The statistical results show a positive correlation between reusability and the identified factors.
Ahmed, Zeeshan; Zeeshan, Saman; Dandekar, Thomas
Software design and sustainable software engineering are essential for the long-term development of bioinformatics software. Typical challenges in an academic environment are short-term contracts, island solutions, pragmatic approaches and loose documentation. Upcoming new challenges are big data, complex data sets, software compatibility and rapid changes in data representation. Our approach to cope with these challenges consists of iterative intertwined cycles of development (“ Butterfly” paradigm) for key steps in scientific software engineering. User feedback is valued as well as software planning in a sustainable and interoperable way. Tool usage should be easy and intuitive. A middleware supports a user-friendly Graphical User Interface (GUI) as well as a database/tool development independently. We validated the approach of our own software development and compared the different design paradigms in various software solutions. PMID:25383181
Dr.B.R.Sastry,; M.V.Vijaya Saradhi
An attempt is made to implement software metrics with aid of GUI and several programs were developed to calculate the metrics, which can be used as a stand alone system. Further an emphasis is made on differentrelationships of metrics, which will help to determine quality and quantity of software attributes measured with regard of Object-oriented Software development life cycle. In this paper, we present existing and new Software metrics useful in the different phase of the Object-Oriented So...
Mayer, Richard J.; Blinn, Thomas M.; Mayer, Paula S. D.; Ackley, Keith A.; Crump, John W., IV; Henderson, Richard; Futrell, Michael T.
The Framework Programmable Software Development Platform (FPP) is a project aimed at combining effective tool and data integration mechanisms with a model of the software development process in an intelligent integrated software environment. Guided by the model, this system development framework will take advantage of an integrated operating environment to automate effectively the management of the software development process so that costly mistakes during the development phase can be eliminated. The focus here is on the design of components that make up the FPP. These components serve as supporting systems for the Integration Mechanism and the Framework Processor and provide the 'glue' that ties the FPP together. Also discussed are the components that allow the platform to operate in a distributed, heterogeneous environment and to manage the development and evolution of software system artifacts.
Høegh, Rune Thaarup
This paper presents a study of the strengths and weaknesses of written, multimedia and oral feedback from usability evaluations to developers. The strengths and weaknesses are related to how well the feedback supports the developers in addressing usability problems in a software system. The study...... concludes that using the traditional written usability report, as the only form of feedback from usability evaluations is associated with problems related to the report not supporting the process of addressing the usability problems. The report is criticized for representing an overwhelming amount...... of information, while still not offering the required information to address usability problems. Other forms of feedback, such as oral or multimedia feedback helps the developer in understanding the usability problems better, but are on the other hand less cost-effective than a written description....
Mahlin, Jonathan Nicholas
There is an immense challenge in organizing personnel across a large agency such as NASA, or even over a subset of that, like a center's Engineering directorate. Workforce inefficiencies and challenges are bound to grow over time without oversight and management. It is also not always possible to hire new employees to fill workforce gaps, therefore available resources must be utilized more efficiently. The goal of this internship was to develop software that improves organizational efficiency by aiding managers, making employee information viewable and editable in an intuitive manner. This semester I created an application for managers that aids in optimizing allocation of employee resources for a single division with the possibility of scaling upwards. My duties this semester consisted of developing frontend and backend software to complete this task. The application provides user-friendly information displays and documentation of the workforce to allow NASA to track diligently track the status and skills of its workforce. This tool should be able to prove that current employees are being effectively utilized and if new hires are necessary to fulfill skill gaps.
Mathiasen, Helle; Dalsgaard, Christian
The paper will argue that new possibilities of digital media, especially social software, have a potential regarding development of self-organized learning environments and facilitating self-governed activities. Based on a sociological perspective, the paper will clarify the concepts of informal...... and formal learning used in this paper. It is argued that formal and informal conditions of learning can supplement each other within an educational setting. A formal setting of project work forms the basis of informal, selfgoverned activities of students. The paper will argue that social software tools can...
The development of software for spacecraft represents a particular challenge and is, in many ways, a worst case scenario from a design perspective. Spacecraft software must be "bulletproof" and operate for extended periods of time without user intervention. If the software fails, it cannot be manually serviced. Software failure may…
Le Corre, Yves; Schwartz, Jacob
Prepared for a 1984 Organisation for Economic Cooperation and Development (OECD) conference, this report on the educational applications of new information technologies focuses primarily on the use of interactive audiovisual systems. Potential advantages of interactive multimedia educational environments are discussed and examples are given of…
Overview of the Qt framework, new features of Qt 5.10 and preview of the Qt roadmap Introduction of the Qt framework as well as the new features and improvements of Qt 5.10. Showcase the different Qt UI technologies such as Widgets and Qml, overview of the automation suite and preview of the new features to come in Qt Creator. Elaborating on the Qt 3D offering and preview of the Qt roadmap. Presenting use cases of Qt integration in the medical and automation sectors. About the speaker Ionut is a serial entrepreneur, now working as Qt Adviser for The Qt Company. He studied biomedical engineering in Montreal, Canada and worked for 4 years as a Senior Software Developer at a software company in the life science and medical imaging area. He founded two interactive media companies, one in Montreal, Canada and another one in Berlin, Germany. Ionut has also more than 10 years of experience in the digital signage industry. He has been working with the Qt framework since 2006 and is a huge fan of it. &...
Kim, Minjung; Mandal, Subhasish; Mikida, Eric; Jindal, Prateek; Bohm, Eric; Jain, Nikhil; Kale, Laxmikant; Martyna, Glenn; Ismail-Beigi, Sohrab
Electronic excitations are important in understanding and designing many functional materials. In terms of ab initio methods, the GW and Bethe-Saltpeter Equation (GW-BSE) beyond DFT methods have proved successful in describing excited states in many materials. However, the heavy computational loads and large memory requirements have hindered their routine applicability by the materials physics community. We summarize some of our collaborative efforts to develop a new software framework designed for GW calculations on massively parallel supercomputers. Our GW code is interfaced with the plane-wave pseudopotential ab initio molecular dynamics software ``OpenAtom'' which is based on the Charm++ parallel library. The computation of the electronic polarizability is one of the most expensive parts of any GW calculation. We describe our strategy that uses a real-space representation to avoid the large number of fast Fourier transforms (FFTs) common to most GW methods. We also describe an eigendecomposition of the plasmon modes from the resulting dielectric matrix that enhances efficiency. This work is supported by NSF through Grant ACI-1339804.
Zykov, Sergey V
This well structured book discusses lifecycle optimization of software projects for crisis management by means of software engineering methods and tools. Its outcomes are based on lessons learned from the software engineering crisis which started in the 1960s. The book presents a systematic approach to overcome the crisis in software engineering depends which not only depends on technology-related but also on human-related factors. It proposes an adaptive methodology for software product development, which optimizes the software product lifecycle in order to avoid “local” crises of software production. The general lifecycle pattern and its stages are discussed, and their impact on the time and budget of the software product development is analyzed. The book identifies key advantages and disadvantages for various models selected and concludes that there is no “silver bullet”, or universal model, which suits all software products equally well. It approaches software architecture in terms of process, dat...
The National Aeronautics and Space Administration (NASA) is creating a way to send humans beyond low Earth orbit, and later to Mars. Kennedy Space Center (KSC) is working to make this possible by developing a Spaceport Command and Control System (SCCS) which will allow the launch of Space Launch System (SLS). This paper's focus is on the work performed by the author in her first and second part of the internship as a remote application software developer. During the first part of her internship, the author worked on the SCCS's software application layer by assisting multiple ground subsystems teams including Launch Accessories (LACC) and Environmental Control System (ECS) on the design, development, integration, and testing of remote control software applications. Then, on the second part of the internship, the author worked on the development of robot software at the Swamp Works Laboratory which is a research and technology development group which focuses on inventing new technology to help future In-Situ Resource Utilization (ISRU) missions.
The purpose of this letter is to submit the Reactor Instrumentation and Control (I&C) software life cycle, development methodology, and programming language selections and rationale for project Prometheus to NR for approval. This letter also provides the draft Reactor I&C Software Development Process Manual and Reactor Module Software Development Plan to NR for information.
The paper discusses how the latest trend in the management of software development: software process improvement (SPI) may affect user-developer relations. At the outset, SPI concerns the "internal workings" of software organisations, but it may also be interpreted as one way to give the developer...
Roush, G. B.
The cost of developing computer software consumes an increasing portion of many organizations' budgets. As this trend continues, the capability to estimate the effort and schedule required to develop a candidate software product becomes increasingly important. COSTMODL is an automated software development estimation tool which fulfills this need. Assimilating COSTMODL to any organization's particular environment can yield significant reduction in the risk of cost overruns and failed projects. This user-customization capability is unmatched by any other available estimation tool. COSTMODL accepts a description of a software product to be developed and computes estimates of the effort required to produce it, the calendar schedule required, and the distribution of effort and staffing as a function of the defined set of development life-cycle phases. This is accomplished by the five cost estimation algorithms incorporated into COSTMODL: the NASA-developed KISS model; the Basic, Intermediate, and Ada COCOMO models; and the Incremental Development model. This choice affords the user the ability to handle project complexities ranging from small, relatively simple projects to very large projects. Unique to COSTMODL is the ability to redefine the life-cycle phases of development and the capability to display a graphic representation of the optimum organizational structure required to develop the subject project, along with required staffing levels and skills. The program is menu-driven and mouse sensitive with an extensive context-sensitive help system that makes it possible for a new user to easily install and operate the program and to learn the fundamentals of cost estimation without having prior training or separate documentation. The implementation of these functions, along with the customization feature, into one program makes COSTMODL unique within the industry. COSTMODL was written for IBM PC compatibles, and it requires Turbo Pascal 5.0 or later and Turbo
Rusu, Lazar; Lin, Yifeng; Hodosi, Georg
Worldwide job market for database developers (DBDs) is continually increasing in last several years. In some companies, DBDs are organized as a special team (DBDs team) to support other projects and roles. As a new role, the DBDs team is facing a major problem that there are not any management guidelines for them. The team manager does not know which kinds of tasks should be assigned to this team and what practices should be used during DBDs work. Therefore in this paper we have developed a set of management guidelines, which includes 8 fundamental tasks and 17 practices from software development process, by using two methodologies Capability Maturity Model (CMM) and agile software development in particular Scrum in order to improve the DBDs team work. Moreover the management guidelines developed here has been complemented with practices from authors' experience in this area and has been evaluated in the case of a software company. The management guidelines for DBD teams presented in this paper could be very usefully for other companies too that are using a DBDs team and could contribute towards an increase of the efficiency of these teams in their work on software development projects.
Greaves, John O. B.
While much of the software developed in research laboratories is narrow in focus and suited for a specific experiment, some of it is broad enough and of high enough quality to be useful to others in solving similar problems. Several biomechanical assessment packages are now beginning to emerge, including: * 3D research biomechanics (5- and 6-DOF) with kinematics, kinetics, 32-channel analog data subsystem, and project management. * 3D full-body gait analysis with kinematics, kinetics, EMG charts, and force plate charts. * 2D dynamic rear-foot assessment. * 2D occupational biomechanics lifting task and personnel assessments. * 2D dynamic gait analysis. * Multiple 2D dynamic spine assessments. * 2D sport and biomechanics assessments with kinematics and kinetics. * 2D and 3D equine gait assessments.
DR. NACHAMAI. M; M. SENTHIL VADIVU; VINITA TAPASKAR
Software Engineering gives the procedures and practices to be followed in the software development and acts as a backbone for computer science engineering techniques. This paper deals with current trends in software engineering methodologies, Agile and Agent Oriented software development process. Agile Methodology is to meet the needs of dynamic changing requirements of the customers. This model is iterative and incremental and accepts the changes in requirements at any stage of development. ...
Kennedy Space Center has been the heart of human space flight for decades. From the Apollo Program to the Space Shuttle Program, and now to the coming Space Launch System (SLS) and Orion, NASA will be a leader in deep space exploration for mankind. Before any rockets blast off, there is significant work to be done in preparation for launch. People working on all aspects of spaceflight must contribute by developing new technology that has yet to participate in a successful launch, and which can work with technology already proven in flight. These innovations, whether hardware or software, must be tried and true, and includes the projects to which interns contribute to. For this internship, the objective was to create a data recording system for the developers of a LCS section that records certain messages in the traffic of the system. Developers would then be able to use these recordings for analysis later on, either manually or by an automated test. The tool would be of convenience to a developer as it would be used if the system's main data recorder was not available for tests.
Nicolaysen, Torstein; Sassoon, Richard; Bartnes, Maria; Jaatun, Martin Gilje
In this article, we contrast the results of a series of interviews with agile software development organizations with a case study of a distributed agile development effort, focusing on how information security is taken care of in an agile context. The interviews indicate that small and medium-sized agile software development organizations do not use any particular methodology to achieve security goals, even when their software is web-facing and potential targets of attack, and our case study...
Gordon, George Kenneth
The author presents some generalizations about nursing home employees and recommendations for cultivating and maintaining a motivating environment for staff. Recommendations concern nursing home administration, employee recruitment and selection, stability of work groups, supervisory training, employee recognition, and public relations. (CT)
Software development is widely considered to be a bottleneck in the development of complex systems, both in terms of development and in terms of maintenance of deployed systems. Cost of software development and maintenance can also be very high. One approach to reducing costs and relieving this bottleneck is increasing the reuse of software designs and software components. A method for achieving such reuse is a software parts composition system. Such a system consists of a language for modeling software parts and their interfaces, a catalog of existing parts, an editor for combining parts, and a code generator that takes a specification and generates code for that application in the target language. The Advanced Software Development Workstation is intended to be an expert system shell designed to provide the capabilities of a software part composition system.
Full Text Available As long as software has been produced, there have been efforts to strive for quality in software products. In order to understand quality in software products, researchers have built models of software quality that rely on metrics in an attempt to provide a quantitative view of software quality. The aim of these models is to provide software producers with the capability to define and evaluate metrics related to quality and use these metrics to improve the quality of the software they produce over time. The main disadvantage of these models is that they require effort and resources to define and evaluate metrics from software projects. This article briefly describes some prominent models of software quality in the literature and continues to describe a new approach to gaining insight into quality in software development projects. A case study based on this new approach is described and results from the case study are discussed.
During this reporting period, all technical responsibilities were accomplished as planned. A close working relationship was maintained with personnel of the MSFC Avionics Department Software Group (ED14), the MSFC EXPRESS Project Office (FD31), and the Huntsville Boeing Company. Accomplishments included: performing special tasks; supporting Software Review Board (SRB), Avionics Test Bed (ATB), and EXPRESS Software Control Panel (ESCP) activities; participating in technical meetings; and coordinating issues between the Boeing Company and the MSFC Project Office.
Full Text Available In this paper, we present the hardware and software architectures of an experimental real time control system of a mobile manipulator that performs tasks of manipulating objects in an environment of a large space. The mechanical architecture is a manipulator arm mounted on a mobile platform. In this work we show how one can implement an imbedded system, which includes the hardware and the software. The system makes use of a PC as the host and constitutes the high level layer. It is configured in such a way that it performs all the input-output interface operations; and is composed of different modules that constitute the software making up the required operations to be executed in a scheduling manner in order to meet the requirements of the real time control. In this paper, we also focus on the development of the generalized trajectory generation for the case of tasks where only one subsystem is considered to move and when the whole system is in permanent movement to achieve a particular task either in a free environment, or in presence of obstacles.
The resultant network-based software tool was developed on object-oriented technology using Java. The study established that good management practices may still be applied by the Nigerian software industry that lacks expertise in software management. Multi-site development approach facilitates large projects by using ...
Liebenberg, Janet; Huisman, Magda; Mentz, Elsa
Despite a widely-acknowledged shortage of software developers, and reports of a gap between industry needs and software education, the possible gap between students' needs and software development education has not been explored in detail. In their university education, students want to take courses and carry out projects that clearly relate to…
Cheng, Lee; Leong, Samuel
Although music software has become increasingly affordable and widely adopted in today's classrooms, concerns have been raised about a lack of consideration for users' needs during the software development process. This paper examines intra- and inter-sectoral communication pertaining to software development and music education to shed light on…
Falbo, R.A.; Guizzardi, G.; Duarte, K.C.; Natali, A.C.C.
Software reuse has been pointed as one of the most promising technique to deal with quality and productivity problems. To support reuse, software processes have to consider two facets: developing for reuse and developing with reuse. In this paper we present an ontology-based approach for software
Billestrup, Jane; Stage, Jan; Nielsen, Lene
The Personas technique has been promoted as a strong tool for providing software developers with a better understanding of the prospective users of their software. This paper reports from a questionnaire survey regarding knowledge about Personas and their usage in software development companies. ...
Full Text Available The multi format test signal generator mentioned in this paper is the video signal generator named TG8000 produced by Tektronix Company. I will introduce the function about remote control for signal generator, how to connect the computer to the instrument, and how to remote control. My topic uses my computer to connect the instrument through the 10/100/1000 BASE-T port on the rear panel of TG8000. Then I write program to transmit SCPI (Standard Commands for Programmable Instruments to control TG8000. The application is running on the Windows operating system, the programming language is C#, development environment is Microsoft Visual Studio 2010, using the TCP/IP protocol based on Socket. And the method of remote control refers to the application called TGSetup which is developed by Tektronix Company. This paper includes a brief summary of the basic principle, and introduce for details about the process of remote control software development, and how to use my software. In the end, I will talk about the advantages of my software compared with another one.
Over the past few decades the advance of computer technology have undoubtedly increased the rate of information exchange. It progresses every day and thus communication across the globe is now done with ease, convinience, and speed.However, in tremendous contrast to its development years ago, it can be seen that computer technology, and moreover computer software development has changed a lot. It is why in the thesis, that you have before you, we concentrates around the problem of computer...
Wang, X. H.; Ma, R.; Cao, X.; Cao, L.; Chu, D. Z.; Zhang, L.; Zhang, T. P.
The automatic integrated monitoring software for marine ecological environment based on MCGS configuration software is designed and developed to realize real-time automatic monitoring of many marine ecological parameters. The DTU data transmission terminal performs network communication and transmits the data to the user data center in a timely manner. The software adopts the modular design and has the advantages of stable and flexible data structure, strong portability and scalability, clear interface, simple user operation and convenient maintenance. Continuous site comparison test of 6 months showed that, the relative error of the parameters monitored by the system such as temperature, salinity, turbidity, pH, dissolved oxygen was controlled within 5% with the standard method and the relative error of the nutrient parameters was within 15%. Meanwhile, the system had few maintenance times, low failure rate, stable and efficient continuous monitoring capabilities. The field application shows that the software is stable and the data communication is reliable, and it has a good application prospect in the field of marine ecological environment comprehensive monitoring.
Stressing the global dimension to the adversary relationship between economic development and environmental conservation, this monograph examines the philosophical, historical, cultural, and ethnic underpinnings of modern science and technology. In addition, the monograph spells out policy implications of an alternative concept of development and…
Vandervelde, W. E.; Abdel-Hamid, T.
Rather than continuing to focus on software development projects per se, the system dynamics modeling approach outlined is extended to investigate a broader set of issues pertaining to the software development organization. Rather than trace the life cycle(s) of one or more software projects, the focus is on the operations of a software development department as a continuous stream of software products are developed, placed into operation, and maintained. A number of research questions are ""ripe'' for investigating including: (1) the efficacy of different organizational structures in different software development environments, (2) personnel turnover, (3) impact of management approaches such as management by objectives, and (4) the organizational/environmental determinants of productivity.
Collis, Betty A.; Gore, Marilyn
This study suggests a new model for the evaluation of educational software authoring systems and applies this model to a particular authoring system, CSR Trainer 4000. The model used is based on an integrated set of software engineering and instructional design principles. (Author/LRW)
Graziotin, Daniel; Wang, Xiaofeng; Abrahamsson, Pekka
For more than thirty years, it has been claimed that a way to improve software developers' productivity and software quality is to focus on people and to provide incentives to make developers satisfied and happy. This claim has rarely been verified in software engineering research, which faces an additional challenge in comparison to more traditional engineering fields: software development is an intellectual activity and is dominated by often-neglected human factors (called human aspects in software engineering research). Among the many skills required for software development, developers must possess high analytical problem-solving skills and creativity for the software construction process. According to psychology research, affective states-emotions and moods-deeply influence the cognitive processing abilities and performance of workers, including creativity and analytical problem solving. Nonetheless, little research has investigated the correlation between the affective states, creativity, and analytical problem-solving performance of programmers. This article echoes the call to employ psychological measurements in software engineering research. We report a study with 42 participants to investigate the relationship between the affective states, creativity, and analytical problem-solving skills of software developers. The results offer support for the claim that happy developers are indeed better problem solvers in terms of their analytical abilities. The following contributions are made by this study: (1) providing a better understanding of the impact of affective states on the creativity and analytical problem-solving capacities of developers, (2) introducing and validating psychological measurements, theories, and concepts of affective states, creativity, and analytical-problem-solving skills in empirical software engineering, and (3) raising the need for studying the human factors of software engineering by employing a multidisciplinary viewpoint.
Mizell, Carolyn; Curley, Charles; Nayak, Umanath
A discrete-event simulation model, and a computer program that implements the model, have been developed as means of analyzing a spiral software-development process. This model can be tailored to specific development environments for use by software project managers in making quantitative cases for deciding among different software-development processes, courses of action, and cost estimates. A spiral process can be contrasted with a waterfall process, which is a traditional process that consists of a sequence of activities that include analysis of requirements, design, coding, testing, and support. A spiral process is an iterative process that can be regarded as a repeating modified waterfall process. Each iteration includes assessment of risk, analysis of requirements, design, coding, testing, delivery, and evaluation. A key difference between a spiral and a waterfall process is that a spiral process can accommodate changes in requirements at each iteration, whereas in a waterfall process, requirements are considered to be fixed from the beginning and, therefore, a waterfall process is not flexible enough for some projects, especially those in which requirements are not known at the beginning or may change during development. For a given project, a spiral process may cost more and take more time than does a waterfall process, but may better satisfy a customer's expectations and needs. Models for simulating various waterfall processes have been developed previously, but until now, there have been no models for simulating spiral processes. The present spiral-process-simulating model and the software that implements it were developed by extending a discrete-event simulation process model of the IEEE 12207 Software Development Process, which was built using commercially available software known as the Process Analysis Tradeoff Tool (PATT). Typical inputs to PATT models include industry-average values of product size (expressed as number of lines of code
Schlichter, Bjarne Rerup; Persson, John Stouby
-sourcing shapes the perception and alleviation of the well-known risks related to offshoring is limited. We present a case study of how a certified CMMI-level 5 Danish software supplier approaches these risks in offshore co-sourcing. The paper explains how co-sourcing from a mature software company may shape......-taking by high attention to of the closely interrelated structure and technology components in terms of CMMI and the actors’ cohesion and integration in terms of Scrum....
17 Appendix B. Software-Defined Radio Receiver Cascade Calculations 19 Appendix C. Spurious Free Dynamic Range (SFDR) Test Setup 23 Appendix D...frequency range of 50 MHz to 5.5 GHz. A description of the test setup for calculating SFDR is presented in Appendix C. 3. Software A 2-channel phase...then the data buffer will overflow and cause LabVIEW to crash . The indicator of the number of elements in the producer loop buffer should be monitored
Bui, Minh Q.
With the success of offshoring within the American software industry, corporate executives are moving their software developments overseas. The member countries of the Association of Southeast Asian Nations (ASEAN) have become a preferred destination. However, there is a lack of published studies on the region's software competitiveness in…
Full Text Available For more than thirty years, it has been claimed that a way to improve software developers’ productivity and software quality is to focus on people and to provide incentives to make developers satisfied and happy. This claim has rarely been verified in software engineering research, which faces an additional challenge in comparison to more traditional engineering fields: software development is an intellectual activity and is dominated by often-neglected human factors (called human aspects in software engineering research. Among the many skills required for software development, developers must possess high analytical problem-solving skills and creativity for the software construction process. According to psychology research, affective states—emotions and moods—deeply influence the cognitive processing abilities and performance of workers, including creativity and analytical problem solving. Nonetheless, little research has investigated the correlation between the affective states, creativity, and analytical problem-solving performance of programmers. This article echoes the call to employ psychological measurements in software engineering research. We report a study with 42 participants to investigate the relationship between the affective states, creativity, and analytical problem-solving skills of software developers. The results offer support for the claim that happy developers are indeed better problem solvers in terms of their analytical abilities. The following contributions are made by this study: (1 providing a better understanding of the impact of affective states on the creativity and analytical problem-solving capacities of developers, (2 introducing and validating psychological measurements, theories, and concepts of affective states, creativity, and analytical-problem-solving skills in empirical software engineering, and (3 raising the need for studying the human factors of software engineering by employing a
Cordemans, Piet; Van Landschoot, Sille; Boydens, Jeroen
Modern software development strategies emphasize on iterative development, because shorter cycles deliver feedback on quality more quickly. However programming embedded software is considered too slow for this process. A technique called remote prototyping delegates hardware dependent calls to the effective target, while software is developed on host. A proof of concept was developed, which delivered first indications of added value of the technique. Furthermore a critical reflection is pr...
A development status evaluation is presented for practical software performance measurement, or 'metrics', in which major innovations have recently occurred. Metrics address such aspects of software performance as whether a software project is on schedule, how many errors can be expected from it, whether the methodology being used is effective and the relative quality of the software employed. Metrics may be characterized as explicit, analytical, and subjective. Attention is given to the bases for standards and the conduct of metrics research.
Lucas T. Khoza
Objective: This study seeks to identify factors that negatively influence knowledge sharing in software development in the developing country context. Method: Expert sampling as a subcategory of purposive sampling was employed to extract information, views and opinions from experts in the field of information and communication technology, more specifically from those who are involved in software development projects. Four Johannesburg-based software developing organisations listed on the Johannesburg Stock Exchange (JSE, South Africa, participated in this research study. Quantitative data were collected using an online questionnaire with closed-ended questions. Results: Findings of this research reveal that job security, motivation, time constraints, physiological factors, communication, resistance to change and rewards are core factors negatively influencing knowledge sharing in software developing organisations. Conclusions: Improved understanding of factors negatively influencing knowledge sharing is expected to assist software developing organisations in closing the gap for software development projects failing to meet the triple constraint of time, cost and scope.
Hierarchy Software Development Framework provides a lightweight tool for building portable modular applications for performing automated data analysis tasks in a batch mode. The history of design and development activities devoted to the project has begun in March 2005 and from the very beginning it was targeting the case of building experimental data processing applications for the CMD-3 experiment which is being commissioned at Budker Institute of Nuclear Physics (BINP, Novosibirsk, Russia). Its design addresses the generic case of modular data processing application operating within the well defined distributed computing environment. The main features of the framework are modularity, built-in message and data exchange mechanisms, XInclude and XML schema enabled XML configuration management tools, dedicated log management tools, internal debugging tools, both dynamic and static module chains support, internal DSO version and consistency checking, well defined API for developing specialized frameworks. It is supported on Scientific Linux 4 and 5 and planned to be ported to other platforms as well. The project is provided with the comprehensive set of technical documentation and users' guides. The licensing schema for the source code, binaries and documentation implies that the product is free for non-commercial use. Although the development phase is not over and many features are to be implemented yet the project is considered ready for public use and creating applications in various fields including development of events reconstruction software for small and moderate scale HEP experiments.
Full Text Available The paper presents an overview of research findings on influence of family environment, especially parental behaviour, on child's development. Contemporary authors question early socialization researchers' claims that family characteristics and parental behaviour have important influence on behaviour of their children. Later researchers examined the size and durability of possible effects of family environment on child development. In addition, they focused on establishing whether it is actually the parental behaviour that influences child's development or, on the contrary, parental behaviour represents mainly a reaction to child's characteristics. Behaviour genetic studies have provided evidence that many traditional measures of family environment, including measures of parental behaviour, show genetic influence, thus reflecting genetically influenced child characteristics. Behaviour geneticists also suggest that environmental influences on child (personality development include predominantly non-shared environment, i.e. individual child's specific experiences, his/her own perceptions and interpretations of objectively same events. Based on empirically determined significant genetic effects on most behavioural traits and inconclusive results of studies on effects of family environment on child development some authors believe that it is not the parents, but rather genetic factor and/or peers who have the key role in child development. With respect to findings of behaviour genetics numerous recent studies of relations between family environment and child development involve child specific measures of (extrafamilial environment and examine the interactions between characteristics of an individual and those of his/her environment.
Amrit, Chintan Amrit; van Hillegersberg, Jos
Software development is rarely an individual effort and generally involves teams of developers collaborating together in order to generate reliable code. Such collaborations require proper communication and regular coordination among the team members. In addition, coordination is required to sort
Giacomozzi, Claudia; Martelli, Francesco
The increasing spread of software components in the healthcare context renders explanatory guides relevant and mandatory to interpret laws and standards, and to support safe management of software products in healthcare. In 2012 a working group has been settled for the above purposes at Italian Electrotechnical Committee (CEI), made of experts from Italian National Institute of Health (ISS), representatives of industry, and representatives of the healthcare organizations. As a first outcome of the group activity, Guide CEI 62-237 was published in February 2015. The Guide incorporates an innovative approach based on the proper contextualization of software products, either medical devices or not, to the specific healthcare scenario, and addresses the risk management of IT systems. The Guide provides operators and manufacturers with an interpretative support with many detailed examples to facilitate the proper contextualization and management of health software, in compliance with related European and international regulations and standards.
Axion is a candidate of dark matter, and is a consequence of a solution to the strong CP problem. CULTASK (CAPP Ultra-Low Temperature Axion Search in Korea) is an axion search experiment which is being developed in Korea. As a part of the project, homegrown software, which governs the data acquisition and control systems, has been developed. The software governs the data acquisition as well as equipment control. In this proceeding, the development of the software is discussed.
Emanuel Herteliu; Mihai Liviu Despa
This paper tackles the subject of risk management in the specific context of citizen oriented innovative software development projects. Research hypotheses are enunciated. Research standards and methodology are defined. Using data collected from specialized scientific literature, the risk management issue is highlighted as an important aspect of fighting software development projects failure. Methods for identifying risk in innovative software development projects are submitted for debate. Ri...
Requirements Engineering and Management for Software Development Projects presents a complete guide on requirements for software development including engineering, computer science and management activities. It is the first book to cover all aspects of requirements management in software development projects. This book introduces the understanding of the requirements, elicitation and gathering, requirements analysis, verification and validation of the requirements, establishment of requirements, different methodologies in brief, requirements traceability and change management among other topic
Software effort estimation is a key element of software project planning and management. Yet, in industrial practice, the important role of effort estimation is often underestimated and/or misunderstood. In this book, Adam Trendowicz presents the CoBRA method (an abbreviation for Cost Estimation, Benchmarking, and Risk Assessment) for estimating the effort required to successfully complete a software development project, which uniquely combines human judgment and measurement data in order to systematically create a custom-specific effort estimation model. CoBRA goes far beyond simply predictin
Giuffrida, Rosalba; Dittrich, Y.
We present a PhD project that investigates the use of Social Software (SoSo) in Global Software Development (GSD) teams. Since SoSo in unstructured and informal in its own nature, we explore how informal communication, which is challenging in GSD, is supported by SoSo in distributed teams and how...
Nittari, Giulio; Peretti, Alessandro; Sibilio, Fabio; Ioannidis, Nicholas; Amenta, Francesco
Ships are required to carry a given amount of medicinal products and medications depending on the flag and the type of vessel. These medicines are stored in the so called ship's "medicine chest" or more properly - a ship pharmacy. Owing to the progress of medical sciences and to the increase in the mean age of seafarers employed on board ships, the number of pharmaceutical products and medical devices required by regulations to be carried on board ships is increasing. This may make handling of the ship's medicine chest a problem primarily on large ships sailing on intercontinental routes due to the difficulty in identifying the correspondence between medicines obtained abroad with those available at the national market. To minimise these problems a tool named Pharmacy Ship (acronym: PARSI) has been developed. The application PARSI is based on a database containing the information about medicines and medical devices required by different countries regulations. In the first application the system was standardised to comply with the Italian regulations issued on the 1st October, 2015 which entered into force on the 18 January 2016. Thanks to PARSI it was possible to standardize the inventory procedures, facilitate the work of maritime health authorities and make it easier for the crew, not professional in the field, to handle the 'medicine chest' correctly by automating the procedures for medicines management. As far as we know there are no other similar tools available at the moment. The application of the software, as well as the automation of different activities, currently carried out manually, will help manage (qualitatively and quantitatively) the ship's pharmacy. The system developed in this study has proved to be an effective tool which serves to guarantee the compliance of the ship pharmacy with regulations of the flag state in terms of medicinal products and medications. Sharing the system with the Telemedical Maritime Assistance Service may result in
As an important part of software engineering, the software process decides the success or failure of software product. The design and development feature of security software process is discussed, so is the necessity and the present significance of using such process. Coordinating the function software, the process for security software and its testing are deeply discussed. The process includes requirement analysis, design, coding, debug and testing, submission and maintenance. In each process, the paper proposed the subprocesses to support software security. As an example, the paper introduces the above process into the power information platform.
Bolotin, Sergei; Gipson, John M.; MacMillan, Daniel S.
We present an overview of a new VLBI analysis software under development at NASA GSFC. The new software will replace CALC/SOLVE and many related utility programs. It will have the capabilities of the current system as well as incorporate new models and data analysis techniques. In this paper we give a conceptual overview of the new software. We formulate the main goals of the software. The software should be flexible and modular to implement models and estimation techniques that currently exist or will appear in future. On the other hand it should be reliable and possess production quality for processing standard VLBI sessions. Also, it needs to be capable of processing observations from a fully deployed network of VLBI2010 stations in a reasonable time. We describe the software development process and outline the software architecture.
Tjørnehøj, Gitte; B. Balogh, Maria; Iversen, Cathrine
of distributed software teams, based on a practice study and informed by well-known theories. Our work pinpoints the difficulties of handling the vital informal processes in distributed collaboration that are so vulnerable because the distances risk detaining their growth and increasing their decay rate...
Schlichter, Bjarne Rerup; Persson, John Stouby
. We present a case study of how the co-sourcing relationship between a certified CMMI-level 5 Danish software company and an offshoring supplier can be conceptualized as an Abstract System. An Abstract System is a dis-embedded social system (such as banking) that is trusted despite lack of detailed...
Du Bois, E.
This PhD researches the domain of industrial design engineering starting from the strong technological evolutions and changing economic, social and ecological needs. Our current products are not only build from hardware components, but are a complex mix of hardware, software and services (in
Vargas, Daniel Eduardo
ECS hardware: (1) Provides controlled purge to SLS Rocket and Orion spacecraft. (2) Provide mission-focused engineering products and services. ECS software: (1) NASA requires Compact Unique Identifiers (CUIs); fixed-length identifier used to identify information items. (2) CUI structure; composed of nine semantic fields that aid the user in recognizing its purpose.
In the talk, the SOLID principles will be presented, every one of them will be explained and some examples will be given and I I will tell why should we use every one of them to improve the quality of our software as well its maintainability and extensibility.
Ardito, Luca; Procaccianti, Giuseppe; Torchiano, Marco; Vetrò, Antonio
The energy efficiency of IT has become one of the hottest topics in the last few years. The problem has been typically addressed by hardware manufacturers and designers, but recently the attention of industry and academia has shifted to the role of software for IT sustainability. Writing
Petersen, Mogens K.; Bjørn, Pernille; Frank, L.
The paper suggests a framework advocating an integrated approach to software development stipulating the interconnection between Design, Organization and Business value networks (DOB). These three focus areas span collaborative development processes applying a range of facilitating tools, including...... of knowledge management tools in software development. The paper does not represent the viewpoint of SIG but outline our framework and major research questions....
This viewgraph presentation describes NASA's guidance navigation and control flight software development background. The contents include: 1) NASA/Goddard Guidance Navigation and Control (GN&C) Flight Software (FSW) Development Background; 2) GN&C FSW Development Improvement Concepts; and 3) GN&C FSW Application Framework.
Schryer, N. L.
The UNIX operating system supports a number of software tools; a mathematical equation-setting language, a phototypesetting language, a FORTRAN preprocessor language, a text editor, and a command interpreter. The design, implementation, documentation, and maintenance of a portable FORTRAN test of the floating-point arithmetic unit of a computer is used to illustrate these tools at work.
Portegies Zwart, S.; McMillan, S.; Harfst, S.; Groen, D.; Fujii, M.; Ó Nualláin, B.; Glebbeek, E.; Heggie, D.; Lombardi, J.; Hut, P.; Angelou, V.; Banerjee, S.; Belkus, H.; Fragos, T.; Fregeau, J.; Gaburov, E.; Izzard, R.; Jurić, M.; Justham, S.; Sottoriva, A.; Teuben, P.; van Bever, J.; Yaron, O.; Zemp, M.
We present MUSE, a software framework for combining existing computational tools for different astrophysical domains into a single multiphysics, multiscale application. MUSE facilitates the coupling of existing codes written in different languages by providing inter-language tools and by specifying
Brennan, Sean M. [Univ. of New Mexico, Albuquerque, NM (United States)
The distributed sensor network (DSN) presents a novel and highly complex computing platform with dif culties and opportunities that are just beginning to be explored. The potential of sensor networks extends from monitoring for threat reduction, to conducting instant and remote inventories, to ecological surveys. Developing and testing for robust and scalable applications is currently practiced almost exclusively in hardware. The Distributed Sensors Simulator (DSS) is an infrastructure that allows the user to debug and test software for DSNs independent of hardware constraints. The exibility of DSS allows developers and researchers to investigate topological, phenomenological, networking, robustness and scaling issues, to explore arbitrary algorithms for distributed sensors, and to defeat those algorithms through simulated failure. The user speci es the topology, the environment, the application, and any number of arbitrary failures; DSS provides the virtual environmental embedding.
Fraser, Ryan; Gross, Lutz; Wyborn, Lesley; Evans, Ben; Klump, Jens
Recent investments in HPC, cloud and Petascale data stores, have dramatically increased the scale and resolution that earth science challenges can now be tackled. These new infrastructures are highly parallelised and to fully utilise them and access the large volumes of earth science data now available, a new approach to software stack engineering needs to be developed. The size, complexity and cost of the new infrastructures mean any software deployed has to be reliable, trusted and reusable. Increasingly software is available via open source repositories, but these usually only enable code to be discovered and downloaded. As a user it is hard for a scientist to judge the suitability and quality of individual codes: rarely is there information on how and where codes can be run, what the critical dependencies are, and in particular, on the version requirements and licensing of the underlying software stack. A trusted software framework is proposed to enable reliable software to be discovered, accessed and then deployed on multiple hardware environments. More specifically, this framework will enable those who generate the software, and those who fund the development of software, to gain credit for the effort, IP, time and dollars spent, and facilitate quantification of the impact of individual codes. For scientific users, the framework delivers reviewed and benchmarked scientific software with mechanisms to reproduce results. The trusted framework will have five separate, but connected components: Register, Review, Reference, Run, and Repeat. 1) The Register component will facilitate discovery of relevant software from multiple open source code repositories. The registration process of the code should include information about licensing, hardware environments it can be run on, define appropriate validation (testing) procedures and list the critical dependencies. 2) The Review component is targeting on the verification of the software typically against a set of
Hayhurst, Kelly J. (Editor)
The Guidance and Control Software (GCS) project was the last in a series of software reliability studies conducted at Langley Research Center between 1977 and 1994. The technical results of the GCS project were recorded after the experiment was completed. Some of the support documentation produced as part of the experiment, however, is serving an unexpected role far beyond its original project context. Some of the software used as part of the GCS project was developed to conform to the RTCA/DO-178B software standard, "Software Considerations in Airborne Systems and Equipment Certification," used in the civil aviation industry. That standard requires extensive documentation throughout the software development life cycle, including plans, software requirements, design and source code, verification cases and results, and configuration management and quality control data. The project documentation that includes this information is open for public scrutiny without the legal or safety implications associated with comparable data from an avionics manufacturer. This public availability has afforded an opportunity to use the GCS project documents for DO-178B training. This report provides a brief overview of the GCS project, describes the 4-volume set of documents and the role they are playing in training, and includes the development documents from the GCS project. Volume 2 contains three appendices: A. Guidance and Control Software Development Specification; B. Design Description for the Pluto Implementation of the Guidance and Control Software; and C. Source Code for the Pluto Implementation of the Guidance and Control Software
In CY 2005, three collaborations between software engineering technology providers and NASA software development personnel deployed three software engineering technologies on NASA development projects (a different technology on each project). The main purposes were to benefit the projects, infuse the technologies if beneficial into NASA, and give feedback to the technology providers to improve the technologies. Each collaboration project produced a final report. Section 2 of this report summarizes each project, drawing from the final reports and communications with the software developers and technology providers. Section 3 indicates paths to further infusion of the technologies into NASA practice. Section 4 summarizes some technology transfer lessons learned. Also included is an acronym list.
Development of a game in the form of software for game-based learning poses significant technical challenges for educators, researchers, game designers, and software engineers. The game development consists of a set of complex processes requiring multi-faceted knowledge in multiple disciplines such as digital graphic design, education, gaming, instructional design, modeling and simulation, psychology, software engineering, visual arts, and the learning subject area. Planning and managing such...
Berić Ivana M.
Full Text Available This paper presents the web-oriented software solution focused on supporting the efficient management of operations and projects in SMEs. The development of this software is treated as a separate project and has used agile software development methodologies and specific principles and project management solutions to deliver product in the desired time and in accordance with the requirements of the client.
Teka, Degif; Dittrich, Yvonne; Kifle, Mesfin
Usability and user centered design (UCD) are central to software development. In developing countries, the gap between IT development and the local use situation is larger than in western countries. However, usability is neither well addressed in software practice nor at the policy making level...... in Ethiopia. Software practitioners focus on functional requirements, meeting deadlines and budget. The software development industry in Ethiopia is in its early stage. The article aims at understanding usability practices in an Ethiopian software development company. Developers, system analysts, product...... configuration, their experience, cultural knowledge and common sense regarding the users' situation guided the design. Prototypes and fast delivery of working versions helped in getting user feedback even if early user focus proved to be a challenge as communication between developers and users suffered from...
Bogdan Ghilic-Micu; Marian Stoica; Marinela Mircea
.... The evolutionary climax of the social universe is called nowadays knowledge society. The knowledge society succeeds the information society, emphasizing the development of the opportunities brought by collaborative work environment and agile approach...
Skov, Mikael B.; Stage, Jan
is based on an empirical study where 36 teams with a total of 234 first-year university students on software development and design educations were trained in a simple approach for user-based website usability testing that was taught in a 40 hour course. This approach supported them in planning, conducting......Many improvements of the interplay between usability evaluation and software development rely either on better methods for conducting usability evaluations or on better formats for presenting evaluation results in ways that are useful for software designers and developers. Both approaches involve...... a complete division of work between developers and evaluators, which is an undesirable complexity for many software development projects. This paper takes a different approach by exploring to what extent software developers and designers can be trained to carry out their own usability evaluations. The paper...
Kim, Chang Ho; Oh, Do Young; Kim, Koh Eun; Choi, Woong Seock; Sohn, Se Do; Kim, Jae Hack; Kim, Hang Bae [KEPCO E and C, Daejeon (Korea, Republic of)
The Integrated SOftware Development Environment (ISODE) is developed to provide the major S/W life cycle processes that are composed of development process, V/V process, requirements traceability process, and automated document generation process and target importing process to Programmable Logic Controller (PLC) platform. This provides critical safety software developers with a certified, domain optimized, model-based development environment, and the associated services to reduce time and efforts to develop software such as debugging, simulation, code generation and document generation. This also provides critical safety software verifiers with integrated V/V features of each phase of the software life cycle using appropriate tools such as model test coverage, formal verification, and automated report generation. In addition to development and verification, the ISODE gives a complete traceability solution from the SW design phase to the testing phase. Using this information, the coverage and impact analysis can be done easily whenever software modification is necessary. The final source codes of ISODE are imported into the newly developed PLC environment, as a module based after automatically converted into the format required by PLC. Additional tests for module and unit level are performed on the target platform.
Mayer, Richard J.; Blinn, Thomas M.; Dewitte, Paul S.; Crump, John W.; Ackley, Keith A.
The Framework Programmable Software Development Platform (FPP) is a project aimed at effectively combining tool and data integration mechanisms with a model of the software development process to provide an intelligent integrated software development environment. Guided by the model, this system development framework will take advantage of an integrated operating environment to automate effectively the management of the software development process so that costly mistakes during the development phase can be eliminated. The Advanced Software Development Workstation (ASDW) program is conducting research into development of advanced technologies for Computer Aided Software Engineering (CASE).
In this paper, an undergraduate capstone course in software engineering is described that not only exposes students to agile software development, but also makes it possible to observe the behavior of developers using Scrum for the first time. The course requires students to work as Scrum Teams, responsible for the implementation of a set of user…
Anthropometric data of Nigerian paraplegics was used to design wheel chair for the paraplegics. This was done by developing suitable software using Visual Basic, AutoCAD, Access and Corel- Draw programs. The software developed is capable of designing an ergonomically viable wheelchair for any category of ...
an ontology allowing interoperability and communication between different software development tools. Lenci defines ontologies as a core ingredient ...Variable, Market Segment, Market Research, Brand Image, Feature, Need, Market Need, Promotion, Competitor. Time Time Line, Time Interval, Time...Software Development Tools,” Draft PhD Dessertation , Computer Science Department, Naval Postgraduate School, Monterey California, 2003. [RATI02
Skov, Mikael Brasholt; Stage, Jan
Many efforts to improve the interplay between usability evaluation and software development rely either on better methods for conducting usability evaluations or on better formats for presenting evaluation results in ways that are useful for software designers and developers. Both of these approaches depend on a complete division of work between…
Perry, Sandra; Jordan, Leon; Decker, William; Page, Gerald; Mcgarry, Frank E.; Valett, Jon
The product assurance policies and procedures necessary to support flight dynamics software development projects for Goddard Space Flight Center are presented. The quality assurance and configuration management methods and tools for each phase of the software development life cycles are described, from requirements analysis through acceptance testing; maintenance and operation are not addressed.
Gentleman, R.C.; Carey, V.J.; Bates, D.M.
The Bioconductor project is an initiative for the collaborative creation of extensible software for computational biology and bioinformatics. The goals of the project include: fostering collaborative development and widespread use of innovative software, reducing barriers to entry into interdisci......The Bioconductor project is an initiative for the collaborative creation of extensible software for computational biology and bioinformatics. The goals of the project include: fostering collaborative development and widespread use of innovative software, reducing barriers to entry...... into interdisciplinary scientific research, and promoting the achievement of remote reproducibility of research results. We describe details of our aims and methods, identify current challenges, compare Bioconductor to other open bioinformatics projects, and provide working examples....
Wortmann, Andreas; Beet, Martin
We present the motivation and an approach for the efficient development of satellite control software (flight software, onboard software) based on domain specific languages. Significant technological advances in the field of language workbenches have enabled us to develop extensions to the C programming language specific to the needs of satellite flight software. The approach is very promising as it combines the flexibility and efficiency of the C language with high-level abstractions known from modeling-tools and allows for additional adaptation specific to the space domain.
Cook, Kris A.; Scholtz, Jean; Whiting, Mark A.
The VAST Challenge has been a popular venue for academic and industry participants for over ten years. Many participants comment that the majority of their time in preparing VAST Challenge entries is discovering elements in their software environments that need to be redesigned in order to solve the given task. Fortunately, there is no need to wait until the VAST Challenge is announced to test out software systems. The Visual Analytics Benchmark Repository contains all past VAST Challenge tasks, data, solutions and submissions. This paper details the various types of evaluations that may be conducted using the Repository information. In this paper we describe how developers can do informal evaluations of various aspects of their visual analytics environments using VAST Challenge information. Aspects that can be evaluated include the appropriateness of the software for various tasks, the various data types and formats that can be accommodated, the effectiveness and efficiency of the process supported by the software, and the intuitiveness of the visualizations and interactions. Researchers can compare their visualizations and interactions to those submitted to determine novelty. In addition, the paper provides pointers to various guidelines that software teams can use to evaluate the usability of their software. While these evaluations are not a replacement for formal evaluation methods, this information can be extremely useful during the development of visual analytics environments.
Full Text Available Under the current economic conditions many organizations strive to continue the trend towards adopting better software development processes, in order to take advantage of the numerous benefits that these can offer. Those benefits include quicker return on investment, better software quality, and higher customer satisfaction. To date, however, there is little body of research that can guide organizations in adopting modern software development practices, especially when it comes to Lean thinking and principles. To address this situation, the current paper identifies and structures the main wastes (or muda in Lean terms in software development as described by Lean principles, in an attempt to bring into researchers’ and practitioners’ attention Lean Software Development, a modern development methodology based on well-established practices such as Lean Manufacturing or Toyota Production System.
Section 508 Subpart B 1194.21 outlines requirements for operating system and software development in order to create a product that is accessible to users with various disabilities. This portion of Section 508 contains a variety of standards to enable those using assistive technology and with visual, hearing, cognitive and motor difficulties to access all information provided in software. The focus on requirements was limited to the Microsoft Windows® operating system as it is the predominant operating system used at this center. Compliance with this portion of the requirements can be obtained by integrating the requirements into the software development cycle early and by remediating issues in legacy software if possible. There are certain circumstances with software that may arise necessitating an exemption from these requirements, such as design or engineering software using dynamically changing graphics or numbers to convey information. These exceptions can be discussed with the Section 508 Coordinator and another method of accommodation used.
As a software engineer, you recognize at some point that there's much more to your career than dealing with code. Is it time to become a manager? Tell your boss he's a jerk? Join that startup? Author Michael Lopp recalls his own make-or-break moments with Silicon Valley giants such as Apple, Netscape, and Symantec in Being Geek -- an insightful and entertaining book that will help you make better career decisions. With more than 40 standalone stories, Lopp walks through a complete job life cycle, starting with the job interview and ending with the realization that it might be time to find an
Wiedenmann, W; Baines, J T M; Bee, C P; Biglietti, M; Bogaerts, A; Boisvert, V; Bosman, M; Brandt, S; Caron, B; Casado, M P; Cataldi, G; Cavalli, D; Cervetto, M; Comune, G; Corso-Radu, A; Di Mattia, A; Díaz-Gómez, M; Dos Anjos, A; Drohan, J; Ellis, Nick; Elsing, M; Epp, B; Etienne, F; Falciano, S; Farilla, A; George, S; Ghete, V M; González, S; Grothe, M; Kaczmarska, A; Karr, K M; Khomich, A; Konstantinidis, N P; Krasny, W; Li, W; Lowe, A; Luminari, L; Meessen, C; Mello, A G; Merino, G; Morettini, P; Moyse, E; Nairz, A; Negri, A; Nikitin, N V; Nisati, A; Padilla, C; Parodi, F; Pérez-Réale, V; Pinfold, J L; Pinto, P; Polesello, G; Qian, Z; Resconi, S; Rosati, S; Scannicchio, D A; Schiavi, C; Schörner-Sadenius, T; Segura, E; De Seixas, J M; Shears, T G; Sivoklokov, S Yu; Smizanska, M; Soluk, R A; Stanescu, C; Tapprogge, Stefan; Touchard, F; Vercesi, V; Watson, A T; Wengler, T; Werner, P; Wheeler, S; Wickens, F J; Wielers, M; Zobernig, G; NSS-MIC 2003 - IEEE Nuclear Science Symposium and Medical Imaging Conference, Part 1
The Atlas High Level Trigger's primary function of event selection will be accomplished with a Level-2 trigger farm and an Event Filter farm, both running software components developed in the Atlas offline reconstruction framework. While this approach provides a unified software framework for event selection, it poses strict requirements on offline components critical for the Level-2 trigger. A Level-2 decision in Atlas must typically be accomplished within 10 ms and with multiple event processing in concurrent threads. In order to address these constraints, prototypes have been developed that incorporate elements of the Atlas Data Flow -, High Level Trigger -, and offline framework software. To realize a homogeneous software environment for offline components in the High Level Trigger, the Level-2 Steering Controller was developed. With electron/gamma- and muon-selection slices it has been shown that the required performance can be reached, if the offline components used are carefully designed and optimized ...
Software Development with C++: Maximizing Reuse with Object Technology is about software development and object-oriented technology (OT), with applications implemented in C++. The basis for any software development project of complex systems is the process, rather than an individual method, which simply supports the overall process. This book is not intended as a general, all-encompassing treatise on OT. The intent is to provide practical information that is directly applicable to a development project. Explicit guidelines are offered for the infusion of OT into the various development phases.
Bergholz, Richard; Rossel, Mirjam; Dutescu, Ralf M; Vöge, Klaas P; Salchow, Daniel J
The large amount of data rendered by the multifocal electroretinogram (mfERG) can be analyzed and visualized in various ways. The evaluation and comparison of more than one examination is time-consuming and prone to create errors. Using the free software environment R we developed a solution to average the data of multiple examinations and to allow a comparison of different patient groups. Data of single mfERG recordings as exported in .csv format from a RETIport 21 system (version 7/03, Roland Consult) or manually compiled .csv files are the basis for the calculations. The R software extracts response densities and implicit times of N1 and P1 for the sum response, each ring eccentricity, and each single hexagon. Averages can be calculated for as many subjects as needed. The mentioned parameters can then be compared to another group of patients or healthy subjects. Application of the software is illustrated by comparing 11 patients with chloroquine maculopathy to a control group of 7 healthy subjects. The software scripts display response density and implicit time 3D plots of each examination as well as of the group averages. Differences of the group averages are presented as 3D and grayscale 2D plots. Both groups are compared using the t-test with Bonferroni correction. The group comparison is furthermore illustrated by the average waveforms and by boxplots of each eccentricity. This software solution on the basis of the programming language R facilitates the clinical and scientific use of the mfERG and aids in interpretation and analysis.
Brightwell, Ron; Sterling, Thomas; Koniges, Alice; Kaiser, Hartmut; Gabriel, Edgar; Porterfield, Allan; Malony, Allen
The XPRESS Project is one of four major projects of the DOE Office of Science Advanced Scientific Computing Research X-stack Program initiated in September, 2012. The purpose of XPRESS is to devise an innovative system software stack to enable practical and useful exascale computing around the end of the decade with near-term contributions to efficient and scalable operation of trans-Petaflops performance systems in the next two to three years; both for DOE mission-critical applications. To this end, XPRESS directly addresses critical challenges in computing of efficiency, scalability, and programmability through introspective methods of dynamic adaptive resource management and task scheduling.
Pařízek, P.; Plášil, František
Roč. 176, - (2007), s. 143-154 ISSN 1571-0661 R&D Projects: GA AV ČR 1ET400300504 Institutional research plan: CEZ:AV0Z10300504 Keywords : software components * behavior protocols * model checking * automated generation of environment Subject RIV: JC - Computer Hardware ; Software
Giuffrida, Rosalba; Dittrich, Yvonne
of empirical studies on the usage of SoSo are available in related fields, there exists no comprehensive overview of what has been investigated to date across them. Objective: The aim of this review is to map empirical studies on the usage of SoSo in Software Engineering projects and in distributed teams...... of supporting GSD teams. Four emerging themes in global software engineering were identified: the appropriation and development of usage structures; understanding how an ecology of communication channels and tools are used by teams; the role played by SoSo either as a subtext or as an explicit goal; and finally......Background: In Global Software Development (GSD), informal communication and knowledge sharing play an important role. Social Software (SoSo) has the potential to support and foster this key responsibility. Research on the use of SoSo in GSD is still at an early stage: although a number...
Bornoe, Nis; Stage, Jan
Despite an interest and use of different usability engineering methods small software development organizations find it challenging to implement usability engineering into the software development process. We present the results from a study about usability engineering in practice. Through a series...... of semistructured interviews we want to get an understanding of how usability is implemented into the organizations and how it’s practiced in reality. We found that the developers found it problematic to combine agile software development methods with classic usability engineering methods. A lack of solid usability...... engineering into the organizations....
Full Text Available This paper presents a programming education support method based on Agile Development that encourages and builds on communication between students. Through mutual discussion, students using our approach transform their ideas into software and cooperate to write a program. The students complete the software through repetition and programming. Before completing the software program, the students learn to solve problems by working together. The students are encouraged to think and share ideas, and gain experience writing software. With this approach, students not only learn how to write programs, but also increase their logical thinking, problem-solving, and communication skills.
Yurkovich, James T.; Yurkovich, Benjamin J.; Dräger, Andreas
With the rapid adoption of computational tools in the life sciences, scientists are taking on the challenge of developing their own software libraries and releasing them for public use. This trend is being accelerated by popular technologies and platforms, such as GitHub, Jupyter, R......, based on our own experiences, for developing software libraries along with real-world examples to help provide context for scientists who are learning about these concepts for the first time. While we can only scratch the surface of these topics, we hope that this article will act as a guide....../Shiny, that make it easier to develop scientific software and by open-source licenses that make it easier to release software. But how do you build a software library that people will use? And what characteristics do the best libraries have that make them enduringly popular? Here, we provide a reference guide...
Buday, R; Tapia, R; Maze, G R
Dietary researchers need new software to improve nutrition data collection and analysis, although the creation of information technology is difficult. Software development projects may be unsuccessful as a result of an inadequate understanding of needs, management problems, technology barriers or legal hurdles. Cost over-runs and schedule delays are common. Barriers facing scientific researchers developing software include workflow, cost, schedule and team issues. Different methods of software development and the role that intellectual property rights play are discussed. A dietary researcher must carefully consider multiple issues to maximise the likelihood of success when creating new software. © 2012 The Authors. Journal of Human Nutrition and Dietetics © 2012 The British Dietetic Association Ltd.
Full Text Available This study is a more detailed follow-up to a preliminary investigation of the practices of software engineers in New Zealand. The focus of this study is on the methods and tools used by software developers in their current organisation. The project involved detailed questionnaires being piloted and sent out to several hundred software developers. A central part of the research involved the identification of factors affecting the use and take-up of existing software development tools in the workplace. The full spectrum of tools from fully integrated I-CASE tools to individual software applications, such as drawing tools was investigated. This paper describes the project and presents the findings.
The dependence of today's society on Information and Communications technology has necessitated the need for software project managers to strive for continuous process improvement. A major challenge faced by most software project managers especially in developing countries however centers on effective ...
Despain, Ronald R.; Tharpe, Roy, Jr.; Davis, Leon; Hauss, Sharon; Shawaga, Larry; Biro, Ron
Report describes first phase in development of digital image-processing subsystem recognizing parts of plants. Subsystem part of robotic system tending and harvesting plants in automated plant-growth chamber. Initial focus on image-processing software that distinguishes among seed heads, stems, and leaves of wheat plants and further distinguishes between these parts and background. Software adaptable to other types of plants.
theoretical computer scientists and software engineers (researchers and practitioners) with a view to discussing how formal methods can usefully be applied in software development. The volume contains seven invited papers, among them one by Vaugham Pratt on the recently revealed bug in the Pentium chip...
An ontology, ie., a formalised set of strongly interrelated definitions, is given for an approach to software development that spans domain engineering, requirements engineering and software design - and which is otherwise based on a judicious use of both informal and formal, mathematics...
Full Text Available In the recent decades, the amount of data produced by scientific, engineering, and life science applications has increased with several orders of magnitude. In parallel with this development, the applications themselves have become increasingly complex in terms of functionality, structure, and behavior. In the same time, development and production cycles of such applications exhibit a tendency of becoming increasingly shorter, due to factors such as market pressure and rapid evolution of supporting and enabling technologies. As a consequence, an increasing fraction of the cost of creating new applications and manufacturing processes shifts from the creation of new artifacts to the adaption of existing ones. A key component of this activity is the understanding of the design, operation, and behavior of existing manufactured artifacts, such as software code bases, hardware systems, and mechanical assemblies. For instance, in the software industry, it is estimated that maintenance costs exceed 80% of the total costs of a software product's lifecycle, and software understanding accounts for as much as half of these maintenance costs. To facilitate the software development process, it would be ideal to have tools that automatically generate or help to generate UML (Unified Modeling Language models from source code. Reverse engineering the software architecture from source code provides a valuable service to software practitioners. Case tools implementing MDA and reverse-engineering constitute an important opportunity of software development engineers. So MDA and reverse engineering is an important key witch make makerspace more productive and more efficient.
Noppen, J.A.R.; Tekinerdogan, B.; Aksit, Mehmet; Glandrup, Maurice; Nicola, V.F.
Anticipating future software requirements might support the evolution of software systems and as such reduce the cost of development and maintenance in due time. Unfortunately identifying the right set of evolution scenarios is difficult due to the uncertainty of occurrence of future requirements.
Full Text Available Today Computing technologies are becoming the pioneers of the organizations and helpful in individual functionality i.e. added to computing device we need to add softwares. Set of instruction or computer program is known as software. The development of software is done through some traditional or some new or evolutionary models. Software development is becoming a key and a successful business nowadays. Without software all hardware is useless. Some collective steps that are performed in the development of these are known as Software development life cycle SDLC. There are some adaptive and predictive models for developing software. Predictive mean already known like WATERFALL Spiral Prototype and V-shaped models while Adaptive model include agile Scrum. All methodologies of both adaptive and predictive have their own procedure and steps. Predictive are Static and Adaptive are dynamic mean change cannot be made to the predictive while adaptive have the capability of changing. The purpose of this study is to get familiar with all these and discuss their uses and steps of development. This discussion will be helpful in deciding which model they should use in which circumstance and what are the development step including in each model.
Chaichana, A.; Tocharoenchai, C.
Currently, many software packages for the internal radiation dosimetry have been developed. Many of them do not provide sufficient tools to perform all of the necessary steps from nuclear medicine image analysis for dose calculation. For this reason, we developed a CALRADDOSE software that can be performed internal dosimetry using MIRD method within a single environment. MATLAB software version 2015a was used as development tool. The calculation process of this software proceeds from collecting time-activity data from image data followed by residence time calculation and absorbed dose calculation using MIRD method. To evaluate the accuracy of this software, we calculate residence times and absorbed doses of 5 Ga- 67 studies and 5 I-131 MIBG studies and then compared the results with those obtained from OLINDA/EXM software. The results showed that the residence times and absorbed doses obtained from both software packages were not statistically significant differences. The CALRADDOSE software is a user-friendly, graphic user interface-based software for internal dosimetry. It provides fast and accurate results, which may be useful for a routine work.
San Jose, I. Ignacio; Martinez, J.; Alvarez, N.; Fernandez, J. J.; Delgado, F.; Martinez, R.; Puche, J. C.; Finat, J.
In this work we present a new software platform for interactive volumetric visualization of complex architectural objects and their applications to teaching and training conservation interventions in Architectural Cultural Heritage. Photogrammetric surveying is performed by processing the information arising from image- and range-based devices. Our visualization application is based on an adaptation of WebGL open standard; the performed adaptation allows to import open standards and an interactive navigation of 3D models in ordinary web navigators with a good performance. The Visualization platform is scalable and can be applied to urban environments, provided open source files be used; CityGML is an open standard based on a geometry -driven Ontology which is compatible with this approach. We illustrate our results with examples concerning to very damaged churches and a urban district of Segovia (World Cultural Heritage). Their connection with appropriate database eases the building evolution and interventions tracking. We have incorporated some preliminary examples to illustrate Advanced Visualization Tools and architectural e-Learning software platform which have been created for assessing conservation and restoration tasks in very damaged buildings. First version of the Advanced Visualization application has been developed in the framework of ADISPA Spanish Project Results. Our results are illustrated with the application of these software applications to several very damaged cultural heritage buildings in rural zones of Castilla y Leon (Spain).
Baker, Dan; Hihn, Jairus; Lum, Karen
COCOMOST is a computer program for use in estimating software development costs. The goal in the development of COCOMOST was to increase estimation accuracy in three ways: (1) develop a set of sensitivity software tools that return not only estimates of costs but also the estimation error; (2) using the sensitivity software tools, precisely define the quantities of data needed to adequately tune cost estimation models; and (3) build a repository of software-cost-estimation information that NASA managers can retrieve to improve the estimates of costs of developing software for their project. COCOMOST implements a methodology, called '2cee', in which a unique combination of well-known pre-existing data-mining and software-development- effort-estimation techniques are used to increase the accuracy of estimates. COCOMOST utilizes multiple models to analyze historical data pertaining to software-development projects and performs an exhaustive data-mining search over the space of model parameters to improve the performances of effort-estimation models. Thus, it is possible to both calibrate and generate estimates at the same time. COCOMOST is written in the C language for execution in the UNIX operating system.
Full Text Available Agile Software Development (ASD promotes flexibility to change and emphasis the importance of individuals and interactions in producing software. The study presents the development of agile practices in Romanian software community. A literature review is conducted and the main agile methods are described. The characteristics of Romanian ICT sector is presented in relation with agile methodology. Practices are identified by a survey and an analysis on the groups of interests formed on Meetup website is performed. Future directions and development of agile practices is evaluated.
Full Text Available Continuous Integration is a practice proposed by eXtreme Programming, one of the most popular agile methodologies, which implementation involves automating one of the most heavy and complex task to predict the process of integration in software development. In this work it is described general aspects related to the practice of Continuous Integration in software development, so it is presented the feasibility of its application due the benefits it provides and the risks that can be mitigated with the use of it. It constitutes a theoretical basis for understanding and showing that this practice is an essential piece for software development.
Due to the large number of product, project, and people parameters which impact large custom software development efforts, measurement of software product quality is a complex undertaking. Furthermore, the absolute perspective from which quality is measured (customer satisfaction) is intangible. While we probably can't say what the absolute quality of a software product is, we can determine the relative quality, the adequacy of this quality with respect to pragmatic considerations, and identify good and bad trends during development. While no two software engineers will ever agree on an optimum definition of software quality, they will agree that the most important perspective of software quality is its ease of change. We can call this flexibility, adaptability, or some other vague term, but the critical characteristic of software is that it is soft. The easier the product is to modify, the easier it is to achieve any other software quality perspective. This paper presents objective quality metrics derived from consistent lifecycle perspectives of rework which, when used in concert with an evolutionary development approach, can provide useful insight to produce better quality per unit cost/schedule or to achieve adequate quality more efficiently. The usefulness of these metrics is evaluated by applying them to a large, real world, Ada project.
Neidhardt, A.; Ettl, M.
The development of software is a creative process, which offers a huge degree of freedom. In scientific fields a lot of researchers develop their own software for specific needs. Everyone has their own preferences and backgrounds regarding the used programming languages, styles, and platforms. This complexity results in software which is not always directly usable by others in the communities. In addition, the software is often error-prone as hidden bugs are not always revealed. Therefore ideas came up to solve these problems at the Geodetic Observatory Wettzell. The results were coding layouts and policies, documentation strategies, the usage of version control, and a consistent process of continuous integration. Within this, the discussed quality factors can define quality metrics which help to quantize code quality. The resulting software is a repository of tested modules that can be used in different programs for the geodetic space techniques. This is one possible contribution to future GGOS stations.
Okika, Joseph C.; Ravn, Anders Peter; Siddalingaiah, Lokesh
We describe a prototype test harness for an embedded system which is the control software for a modern marine diesel engine. The operations of such control software requires complete certification. We adopt Testing and Test Control Notation (TTCN-3) to define test cases for this purpose. The main...... challenge in developing the test harness is to interface a generic test driver to the legacy software and provide a suitable interface for test engineers. The main contribution of this paper is a demonstration of a suitable design for such a test harness. It includes: a TTCN-3 test driver in C++, the legacy...... control software in C, a Graphical User Interface (GUI) and the connectors in Java. Our experience shows that it is feasible to use TTCN-3 in developing a test harness for a legacy software for an embedded system, even when it involves different heterogeneous components....
Marenzi, Ivana; Demidova, Elena; Nejdl, Wolfgang; Olmedilla, Daniel; Zerr, Sergej
Marenzi, I., Demidova, E., Nejdl, W., Olmedilla, D., & Zerr, S. (2008). Social Software for Lifelong Competence Development: Challenges and Infrastructure. International Journal of Emerging Technologies in Learning (iJET), 3, 18-23.
Ponisio, Laura; Vruggink, P.
In our study of four outsourcing projects we discover mechanisms to support managerial decision making during software development processes. We report on Customer Office, a framework used in practice that facilitates reasoning about projects by highlighting information paths and making
.... The purpose of this technical note is to present overview information about existing processes, standards, life cycle models, frameworks, and methodologies that support or could support secure software development...
Kirby, Randy L.; Mann, David; Prenger, Stephen G.; Craig, Wayne; Greenwood, Andrew; Morsics, Jonathan; Fricker, Charles H.; Quach, Son; Lechese, Paul
United Space Alliance (USA) developed and used a new software development method to meet technical, schedule, and budget challenges faced during the development and delivery of the new Shuttle Telemetry Ground Station at Kennedy Space Center. This method, called Collaborative Software Development, enabled KSC to effectively leverage industrial software and build additional capabilities to meet shuttle system and operational requirements. Application of this method resulted in reduced time to market, reduced development cost, improved product quality, and improved programmer competence while developing technologies of benefit to a small company in California (AP Labs Inc.). Many modifications were made to the baseline software product (VMEwindow), which improved its quality and functionality. In addition, six new software capabilities were developed, which are the subject of this article and add useful functionality to the VMEwindow environment. These new software programs are written in C or VXWorks and are used in conjunction with other ground station software packages, such as VMEwindow, Matlab, Dataviews, and PVWave. The Space Shuttle Telemetry Ground Station receives frequency-modulation (FM) and pulse-code-modulated (PCM) signals from the shuttle and support equipment. The hardware architecture (see figure) includes Sun workstations connected to multiple PCM- and FM-processing VersaModule Eurocard (VME) chassis. A reflective memory network transports raw data from PCM Processors (PCMPs) to the programmable digital-to-analog (D/A) converters, strip chart recorders, and analysis and controller workstations.
Westera, Wim; Van der Vegt, Wim; Bahreini, Kiavash; Dascalu, Mihai; Van Lankveld, Giel
The large upfront investments required for game development pose a severe barrier for the wider uptake of serious games in education and training. Also, there is a lack of well-established methods and tools that support game developers at preserving and enhancing the games’ pedagogical
Nowadays, organizations cannot afford maintaining people who evidently are not contributing to fulfill the objectives of the project. Project Manager not only must know in a subjective way the development of the staff, but he/she should perform a monitoring what permit him/she knows the human resources development in ...
Neghină Mihai; Petruse Radu Emanuil; Olteanu Sebastian; Bondrea Ioan; Lobonț Lucian; Stanciu Gabriel
In this paper, we propose an electrical design (implemented on a PCB board) and an accompanying software design for controlling the automatic gear change. The designs complement the mechanical solutions developed in Part 1. The paper also analyses the issues encountered during the intermediate steps of the development of the electronic module, which is expected to be small and adaptable enough to be installed on a motorcycle without changing its ergonomics. The control software runs on the Ar...
Abrahão, Silvia; Baldassarre, Maria Teresa; Caivano, Danilo
Software Engineering and Human-Computer Interaction look at the development process from different perspectives. They apparently use very different approaches, are inspired by different principles and address different needs. But, they definitively have the same goal: develop high quality software...... in the most effective way. The second edition of the workshop puts particular attention on efforts of the two communities in enhancing system quality. The research question discussed is: who, what, where, when, why, and how should we evaluate?...
Globally distributed teams can frequently have problems specifically related to the distance and differences among team members. This paper synthesizes literature related to globally distributed software development teams to find the factors that inhibit team success. This research indicates that cultural differences, trust, communication, shared mental models, temporal agility, and work transitions can all cause problems on globally distributed software development teams. This research ca...
Karnavel, K; Dillibabu, R
The IT industry tries to employ a number of models to identify the defects in the construction of software projects. In this paper, we present COQUALMO and its limitations and aim to increase the quality without increasing the cost and time. The computation time, cost, and effort to predict the residual defects are very high; this was overcome by developing an appropriate new quality model named the software testing defect corrective model (STDCM). The STDCM was used to estimate the number of remaining residual defects in the software product; a few assumptions and the detailed steps of the STDCM are highlighted. The application of the STDCM is explored in software projects. The implementation of the model is validated using statistical inference, which shows there is a significant improvement in the quality of the software projects.
Musil, Juergen; Schweda, Angelika; Winkler, Dietmar; Biffl, Stefan
Based on our observations of Austrian video game software development (VGSD) practices we identified a lack of systematic processes/method support and inefficient collaboration between various involved disciplines, i.e. engineers and artists. VGSD includes heterogeneous disciplines, e.g. creative arts, game/content design, and software. Nevertheless, improving team collaboration and process support is an ongoing challenge to enable a comprehensive view on game development projects. Lessons learned from software engineering practices can help game developers to increase game development processes within a heterogeneous environment. Based on a state of the practice survey in the Austrian games industry, this paper presents (a) first results with focus on process/method support and (b) suggests a candidate flexible process approach based on Scrum to improve VGSD and team collaboration. Results showed (a) a trend to highly flexible software processes involving various disciplines and (b) identified the suggested flexible process approach as feasible and useful for project application.
Already in use by hundreds of independent vendors and developers, here at your fingertips are the groundbreaking packaging and design guidelines that Digital recommends and uses for products headed overseas.
Nugroho, Suryanto; Waluyo, Sigit Hadi; Hakim, Luqman
Any organization that will develop software is faced with a difficult choice of choosing the right software development method. Whereas the software development methods used, play a significant role in the overall software development process. Software development methods are needed so that the software development process can be systematic so that it is not only completed within the right time frame but also must have good quality. There are various methods of software development in System ...
Schramm, Joachim; Dohrmann, Patrick; Kuhrmann, Marco
Context: Software processes evolve over time and several approaches were proposed to support the required flexibility. Yet, little is known whether these approaches sufficiently support the development of large software processes. A software process line helps to systematically develop and manage...... families of processes and, as part of this, variability operations provide means to modify and reuse pre-defined process assets. Objective: Our goal is to evaluate the feasibility of variability operations to support the development of flexible software process lines. Method: We conducted a longitudinal...... study in which we studied 5 variants of the V-Modell XT process line for 2 years. Results: Our results show the variability operation instrument feasible in practice. We analyzed 616 operation exemplars addressing various customization scenarios, and we found 87 different operation types contributed...
Coplien, James O
More and more Agile projects are seeking architectural roots as they struggle with complexity and scale - and they're seeking lightweight ways to do it: Still seeking? In this book the authors help you to find your own path; Taking cues from Lean development, they can help steer your project toward practices with longstanding track records; Up-front architecture? Sure. You can deliver an architecture as code that compiles and that concretely guides development without bogging it down in a mass of documents and guesses about the implementation; Documentation? Even a whiteboard diagram, or a CRC
Søderberg, Anne-Marie; Romani, Laurence
, and which skills and competencies they draw on in their efforts to deal with emerging cross-cultural issues in a way that paves ground for developing a shared understanding and common platform for the client and vendor representatives. A framework of boundary spanning leadership practices is adapted...
AL-TP-1992-0052 AD-A261 088 3 INTEGRATED DEVELOPMENT r SUPPORT ENVIRONMENT R (IDSE) 3 Richard J. Mayer Martha S. Wells KNOWLEDGE BASED SYSTEMS...PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 8. PERFORMING ORGANIZATION Knowledge Based Systems Laboratory,-` REPORT NUMBER Department of Industrial...43 Figure 14 File Check-In Form ................................................... 44 Figure 15 Level 0 Librarian Check-In Process
Full Text Available In the modern business and management of business processes, the standardization of procedures allows the creation of added value, increasing competitiveness and success in the business of an organization. Evaluation of the budget for software development is crucial to the success of an IT project, because the inability to make a realistic assessment leads to inadequate project plans, customer dissatisfaction, poor quality of software products, and reduced profits. In order to minimize such situations, making accurate and reliable software cost estimation should be carried out at all stages of the project life cycle. Although hundreds of research articles focusing on the application of different methods of budget estimates of the software product have been published so far, there is no comprehensive review of the current situation or review of research trends in the budget estimates of the software product. This paper aims to create a framework for estimation of costs of development of software products by providing an overview of the most influential researchers, the most influential articles published in the WoS database, the most used keywords for searching the articles, as well as a review of the estimation techniques used in budget estimates of the software product.
Søderberg, Anne-Marie; Romani, Laurence
How does a global company deal with inter-organizational boundary spanning activities? If the company is an Indian vendor, and the client a Western multinational company in need of major transformations, the answer to this question challenges prior research. This paper builds on a field study...... of Indian IT vendor managers who are responsible for developing client relations and coordinating complex global development projects. The authors revise a framework of boundary spanning leadership practices to adapt it to an offshore outsourcing context. The empirical investigation highlights how...... imbalances of power, exacerbated in the case of an Indian vendor and a European client, need to be taken into account. The paper thus contributes with a more context sensitive understanding of inter-organizational boundary work. Taking the vendor perspective also leads to problematization of common...
Common lnfrastrucuture •Common SOA Stack •Common Commercial Technologies • Re-use of Common Services • Pattern discovery and Template Development...lacking is a common acquisition approach as to how to acquire an integrated solution. As an example, SOA benefits are dependent on strong governance ...needs or capabilities, but heavily governed by mandates and policies. SOA is another example of a derived requirement. It is an implementation
decil-e :h- optimal quantity of an input to utilize i the sof- waze development process. Programmer labor will be used as a rspresenta-:ivs inpu-i. It...analysis of the importance of several elements of organizational structure, and of how they can use this knowledge to make decisions which will have a... use :his knowledge m ake decision: which wil. have a: positive impact On the success c- thar projects. The structural elements discussed are
Athanasiadis, Ioannis N.; Mitkas, Pericles A.
This article presents a unifying methodology for developing environmental information systems with software agents. Based on the experience reported in recent literature, we abstract common requirements of environmental information systems into agent types, combine state-of-the-art tools from computer science, service-oriented software engineering and artificial intelligence domains, as software agents and machine learning, and illustrate their potential for solving real-world problems. Specifically, two generic agent types are specified that behave as information carriers and decision makers, which provide an appropriate abstraction for deployment of added-value services in environmental information systems.
Christensen, Henrik B
…This book brings together a careful selection of topics that are relevant, indeed crucial, for developing good quality software with a carefully designed pedagogy that leads the reader through an experience of active learning. The emphasis in the content is on practical goals-how to construct reliable and flexible software systems-covering many topics that every software engineer should have studied. The emphasis in the method is on providing a practical context, hands-on projects, and guidance on process. … The text discusses not only what the end product should be like, but also how to get
Kuhrmann, Marco; Münch, Jürgen
Software development consists to a large extent of human-based processes with continuously increasing demands regarding interdisciplinary team work. Understanding the dynamics of software teams can be seen as highly important to successful project execution. Hence, for future project managers...... about the importance of communication by experiencing the impact of limitations of communication channels and the effects on collaboration and team performance. The course unit presented uses the controlled experiment instrument to provide the basic organization of a small software project carried out...
Zou, Lian; Xie, Zhao; Wu, Qi
In this paper, we present a 3D virtual phantom design software, which was developed based on object-oriented programming methodology and dedicated to medical physics research. This software was named Magical Phan tom (MPhantom), which is composed of 3D visual builder module and virtual CT scanner. The users can conveniently construct any complex 3D phantom, and then export the phantom as DICOM 3.0 CT images. MPhantom is a user-friendly and powerful software for 3D phantom configuration, and has passed the real scene's application test. MPhantom will accelerate the Monte Carlo simulation for dose calculation in radiation therapy and X ray imaging reconstruction algorithm research.
Full Text Available Abstract Background Direct gene synthesis is becoming more popular owing to decreases in gene synthesis pricing. Compared with using natural genes, gene synthesis provides a good opportunity to optimize gene sequence for specific applications. In order to facilitate gene optimization, we have developed a stand-alone software called Visual Gene Developer. Results The software not only provides general functions for gene analysis and optimization along with an interactive user-friendly interface, but also includes unique features such as programming capability, dedicated mRNA secondary structure prediction, artificial neural network modeling, network & multi-threaded computing, and user-accessible programming modules. The software allows a user to analyze and optimize a sequence using main menu functions or specialized module windows. Alternatively, gene optimization can be initiated by designing a gene construct and configuring an optimization strategy. A user can choose several predefined or user-defined algorithms to design a complicated strategy. The software provides expandable functionality as platform software supporting module development using popular script languages such as VBScript and JScript in the software programming environment. Conclusion Visual Gene Developer is useful for both researchers who want to quickly analyze and optimize genes, and those who are interested in developing and testing new algorithms in bioinformatics. The software is available for free download at http://www.visualgenedeveloper.net.
Jung, Sang-Kyu; McDonald, Karen
Direct gene synthesis is becoming more popular owing to decreases in gene synthesis pricing. Compared with using natural genes, gene synthesis provides a good opportunity to optimize gene sequence for specific applications. In order to facilitate gene optimization, we have developed a stand-alone software called Visual Gene Developer. The software not only provides general functions for gene analysis and optimization along with an interactive user-friendly interface, but also includes unique features such as programming capability, dedicated mRNA secondary structure prediction, artificial neural network modeling, network & multi-threaded computing, and user-accessible programming modules. The software allows a user to analyze and optimize a sequence using main menu functions or specialized module windows. Alternatively, gene optimization can be initiated by designing a gene construct and configuring an optimization strategy. A user can choose several predefined or user-defined algorithms to design a complicated strategy. The software provides expandable functionality as platform software supporting module development using popular script languages such as VBScript and JScript in the software programming environment. Visual Gene Developer is useful for both researchers who want to quickly analyze and optimize genes, and those who are interested in developing and testing new algorithms in bioinformatics. The software is available for free download at http://www.visualgenedeveloper.net.
Wagenaar, G.; Overbeek, S.J.; Lucassen, G.G.; Brinkkemper, S.; Schneider, K.
Context: Agile software development (ASD) uses ‘agile’ artefacts such as user stories and product backlogs as well as ‘non-agile’ artefacts, for instance designs and test plans. Rationales for incorporating especially non-agile artefacts by an agile team mainly remain unknown territory. Goal: We
Full Text Available Background and Aim: Designing removable partial dentures is one of the most important phases of prosthetic treatments. Computer can be used to facilitate and increase accuracy of removable partial denture design. The aim of this study was to develop a software for removable partial denture design.Materials and Methods: A questionnaire (discussed in part I and major textbooks, were used to determine the design rules. The software (RPD Graph was developed using Visual C++ and Maryam program. The RPD Graph can determine the classification of partial edentulous arch. With defining the missing teeth and providing data about prognosis and conditions of abutment teeth, the removable partial design will be developed by RPD Graph. This software is a knowledge-based system which has specific characteristics. It can be used as an educational tool for teaching RPD design and as a clinical tool for supporting clinician's decision. In addition it can be developed to more complete softwares.
Möller-Nilsson, Ole; Pavlov, Alexey; Feldt, Markus
The Spectro-Polarimetric High-contrast Exoplanet Research (SPHERE) instrument for the VLT is designed for discovering new giant planets orbiting nearby stars by direct imaging. The accuracy demands on this complex instrument and its data reduction handling are high. Here, we outline the design of the data reduction software for SPHERE and argue that SPHERE can be seen as one of the first of a new generation of instruments. We discuss what can be learned from SPHERE about new challenges in reduction software design, management and development. Along with the key issues, we formulate some general principles to help overcoming these challenges.
John A van der Poll
Full Text Available An integration of traditional verification techniques and formal specifications in software engineering is presented. Advocates of such techniques claim that mathematical formalisms allow them to produce quality, verifiably correct, or at least highly dependable software and that the testing and maintenance phases are shortened. Critics on the other hand maintain that software formalisms are hard to master, tedious to use and not well suited for the fast turnaround times demanded by industry. In this paper some popular formalisms and the advantages of using these during the early phases of the software development life cycle are presented. Employing the Floyd-Hoare verification principles during the formal specification phase facilitates reasoning about the properties of a specification. Some observations that may help to alleviate the formal-methods controversy are established and a number of formal methods successes is presented. Possible conditions for an increased acceptance of formalisms in oftware development are discussed.
Pressburger, Tom; Markosian, Lawrance
In 2004, six collaborations between software engineering technology providers and NASA software development personnel deployed a total of five software engineering technologies (for references, see Section 7.2) on the NASA projects. The main purposes were to benefit the projects, infuse the technologies if beneficial into NASA, and give feedback to the technology providers to improve the technologies. Each collaboration project produced a final report (for references, see Section 7.1). Section 2 of this report summarizes each project, drawing from the final reports and communications with the software developers and technology providers. Section 3 indicates paths to further infusion of the technologies into NASA practice. Section 4 summarizes some technology transfer lessons learned. Section 6 lists the acronyms used in this report.
Ritter, George; Guillebeau, Pat; McNair, Ann R. (Technical Monitor)
The Marshall Space Flight Center's (MSFC) Payload Operations Center (POC) ground system has evolved over a period of about 10 years. During this time the software processes have migrated from more traditional to more contemporary development processes in an effort to minimize unnecessary overhead while maximizing process benefits. The Software processes that have evolved still emphasize requirements capture, software configuration management, design documenting, and making sure the products that have been developed are accountable to initial requirements. This paper will give an overview of how the Software Processes have evolved, highlighting the positives as well as the negatives. In addition, we will mention the COTS tools that have been integrated into the processes and how the COTS have provided value to the project.
Abdi, Frank; Minnetyan, Levon
A capability consisting of software development and experimental techniques has been developed and is described. The capability is integrated into GENOA-PFA to model polymer matrix composite (PMC) structures. The capability considers the physics and mechanics of composite materials and structure by integration of a hierarchical multilevel macro-scale (lamina, laminate, and structure) and micro scale (fiber, matrix, and interface) simulation analyses. The modeling involves (1) ply layering methodology utilizing FEM elements with through-the-thickness representation, (2) simulation of effects of material defects and conditions (e.g., voids, fiber waviness, and residual stress) on global static and cyclic fatigue strengths, (3) including material nonlinearities (by updating properties periodically) and geometrical nonlinearities (by Lagrangian updating), (4) simulating crack initiation. and growth to failure under static, cyclic, creep, and impact loads. (5) progressive fracture analysis to determine durability and damage tolerance. (6) identifying the percent contribution of various possible composite failure modes involved in critical damage events. and (7) determining sensitivities of failure modes to design parameters (e.g., fiber volume fraction, ply thickness, fiber orientation. and adhesive-bond thickness). GENOA-PFA progressive failure analysis is now ready for use to investigate the effects on structural responses to PMC material degradation from damage induced by static, cyclic (fatigue). creep, and impact loading in 2D/3D PMC structures subjected to hygrothermal environments. Its use will significantly facilitate targeting design parameter changes that will be most effective in reducing the probability of a given failure mode occurring.
Fleming, David P.
COBRA-AHS (Computer Optimized Ball & Roller Bearing Analysis--Advanced High Speed, J.V. Poplawski & Associates, Bethlehem, PA) is used for the design and analysis of rolling element bearings operating at high speeds under complex mechanical and thermal loading. The code estimates bearing fatigue life by calculating three-dimensional subsurface stress fields developed within the bearing raceways. It provides a state-of-the-art interactive design environment for bearing engineers within a single easy-to-use design-analysis package. The code analyzes flexible or rigid shaft systems containing up to five bearings acted upon by radial, thrust, and moment loads in 5 degrees of freedom. Bearing types include high-speed ball, cylindrical roller, and tapered roller bearings. COBRA-AHS is the first major upgrade in 30 years of such commercially available bearing software. The upgrade was developed under a Small Business Innovation Research contract from the NASA Glenn Research Center, and incorporates the results of 30 years of NASA and industry bearing research and technology.
information. Information provides a source of power but can also be an incapacitating weakness if not protected. Mastering the information domain is...As the lead systems engineer for the DoD Application Storefront, he is responsible for monitoring the design and development of product architecture ...Information provides a source of power but can also be an incapacitating weakness if not protected. Mastering the information domain is critical to
Kane, David W; Hohman, Moses M; Cerami, Ethan G; McCormick, Michael W; Kuhlmman, Karl F; Byrd, Jeff A
Background Agile is an iterative approach to software development that relies on strong collaboration and automation to keep pace with dynamic environments. We have successfully used agile development approaches to create and maintain biomedical software, including software for bioinformatics. This paper reports on a qualitative study of our experiences using these methods. Results We have found that agile methods are well suited to the exploratory and iterative nature of scientific inquiry. They provide a robust framework for reproducing scientific results and for developing clinical support systems. The agile development approach also provides a model for collaboration between software engineers and researchers. We present our experience using agile methodologies in projects at six different biomedical software development organizations. The organizations include academic, commercial and government development teams, and included both bioinformatics and clinical support applications. We found that agile practices were a match for the needs of our biomedical projects and contributed to the success of our organizations. Conclusion We found that the agile development approach was a good fit for our organizations, and that these practices should be applicable and valuable to other biomedical software development efforts. Although we found differences in how agile methods were used, we were also able to identify a set of core practices that were common to all of the groups, and that could be a focus for others seeking to adopt these methods. PMID:16734914
Kuhlmman Karl F
Full Text Available Abstract Background Agile is an iterative approach to software development that relies on strong collaboration and automation to keep pace with dynamic environments. We have successfully used agile development approaches to create and maintain biomedical software, including software for bioinformatics. This paper reports on a qualitative study of our experiences using these methods. Results We have found that agile methods are well suited to the exploratory and iterative nature of scientific inquiry. They provide a robust framework for reproducing scientific results and for developing clinical support systems. The agile development approach also provides a model for collaboration between software engineers and researchers. We present our experience using agile methodologies in projects at six different biomedical software development organizations. The organizations include academic, commercial and government development teams, and included both bioinformatics and clinical support applications. We found that agile practices were a match for the needs of our biomedical projects and contributed to the success of our organizations. Conclusion We found that the agile development approach was a good fit for our organizations, and that these practices should be applicable and valuable to other biomedical software development efforts. Although we found differences in how agile methods were used, we were also able to identify a set of core practices that were common to all of the groups, and that could be a focus for others seeking to adopt these methods.
System of modular, reusable hardware and software assembled for use in developing remotely controlled robotic arms. Includes (1) central computer and peripheral equipment at control and monitoring station and (2) remote mechanical platform that supports robotic arm. Central computer controls motor drives of robotic arm, but optically, platform holds on-board computer for autonomous operation. Consists mostly of commercial hardware and software. Simulated results of commands viewed in three dimensions.
Full Text Available Thanks to the technological advances, language teaching classrooms, along with the other classroom settings, have been exposed to a shift. Due to the fact that the contributions of technological software and Web tools to language skills are a requirement in this world of education, language teachers try various ways to use technology in their classroom settings. In this respect, the present study aims to see the effects of cartoon software on developing reading skills of A2 level students
Chavoya, Arturo; Lopez-Martin, Cuauhtemoc; Andalon-Garcia, Irma R; Meda-Campaña, M E
Statistical and genetic programming techniques have been used to predict the software development effort of large software projects. In this paper, a genetic programming model was used for predicting the effort required in individually developed projects. Accuracy obtained from a genetic programming model was compared against one generated from the application of a statistical regression model. A sample of 219 projects developed by 71 practitioners was used for generating the two models, whereas another sample of 130 projects developed by 38 practitioners was used for validating them. The models used two kinds of lines of code as well as programming language experience as independent variables. Accuracy results from the model obtained with genetic programming suggest that it could be used to predict the software development effort of individual projects when these projects have been developed in a disciplined manner within a development-controlled environment.
Full Text Available Statistical and genetic programming techniques have been used to predict the software development effort of large software projects. In this paper, a genetic programming model was used for predicting the effort required in individually developed projects. Accuracy obtained from a genetic programming model was compared against one generated from the application of a statistical regression model. A sample of 219 projects developed by 71 practitioners was used for generating the two models, whereas another sample of 130 projects developed by 38 practitioners was used for validating them. The models used two kinds of lines of code as well as programming language experience as independent variables. Accuracy results from the model obtained with genetic programming suggest that it could be used to predict the software development effort of individual projects when these projects have been developed in a disciplined manner within a development-controlled environment.
Giambiagi, Pablo; Owe, Olaf; Ravn, Anders Peter
COSoDIS (Contract-Oriented Software Development for Internet Services) develops novel approaches to implement and reason about contracts in service oriented architectures (SOA). The rationale is that system developers benefit from abstraction mechanisms to work with these architectures. Therefore...
Jensen, Rasmus Eskild
We report on an ethnographic study of an offshore global software development project between Danish and Philippine developers in a Danish company called GlobalSoft. We investigate why the IT- developers chose to engage in more closely coupled work as the project progressed and argue that closely...
Daniels, Charles B.
Paramax Space Systems began its mission as a member of the Rockwell Space Operations Company (RSOC) team which was the successful bidder on a massive operations consolidation contract for the Mission Operations Directorate (MOD) at JSC. The contract awarded to the team was the Space Transportation System Operations Contract (STSOC). Our initial challenge was to accept responsibility for a very large, highly complex and fragmented collection of software from eleven different contractors and transform it into a coherent, operational baseline. Concurrently, we had to integrate a diverse group of people from eleven different companies into a single, cohesive team. Paramax executives recognized the absolute necessity to develop a business culture based on the concept of employee involvement to execute and improve the complex process of our new environment. Our executives clearly understood that management needed to set the example and lead the way to quality improvement. The total quality management policy and the metrics used in this endeavor are presented.
Buckley, Cathal; Mechan, Sarah; Macken-Walsh, Aine; Heanue, Kevin
Over the last number of decades intensification in the use nitrogen (N) and phosphorus (P) in agricultural production has lead to excessive accumulations of these nutrients in soils, groundwaters and surface water bodies (Sutton et al., 2011). According to the European Environment Agency (2012) despite some progress diffuse pollution from agriculture is still significant in more than 40% of Europe's water bodies in rivers and coastal waters, and in one third of the water bodies in lakes and transitional waters. Recently it was estimated that approximately 29% of monitored river channel length is polluted to some degree across the Republic of Ireland. Agricultural sources were suspected in 47 per cent of cases (EPA, 2012). Farm level management practices to reduce nutrient transfers from agricultural land to watercourses can be divided into source reduction and source interception approaches (Ribaudo et al., 2001). Source interception approaches involve capturing nutrients post mobilisation through policy instruments such as riparian buffer zones or wetlands. Conversely, the source reduction approach is preventative in nature and promotes strict management of nutrient at farm and field level to reduce risk of mobilisation in the first instance. This has the potential to deliver a double dividend of reduced nutrient loss to the wider ecosystem while maximising economic return to agricultural production at the field and farm levels. Adoption and use of nutrient management plans among farmers is far from the norm. This research engages key farmer and extension stakeholders to explore how current nutrient management planning software and outputs should be developed to make it more user friendly and usable in a practical way. An open innovation technology co-development approach was adopted to investigate what is demanded by the end users - farm advisors and farmers. Open innovation is a knowledge management strategy that uses the input of stakeholders to improve
Bernardi, Simona; Merseguer, José; Petriu, Dorina C
Assessment of software nonfunctional properties (NFP) is an important problem in software development. In the context of model-driven development, an emerging approach for the analysis of different NFPs consists of the following steps: (a) to extend the software models with annotations describing the NFP of interest; (b) to transform automatically the annotated software model to the formalism chosen for NFP analysis; (c) to analyze the formal model using existing solvers; (d) to assess the software based on the results and give feedback to designers. Such a modeling→analysis→assessment approach can be applied to any software modeling language, be it general purpose or domain specific. In this paper, we focus on UML-based development and on the dependability NFP, which encompasses reliability, availability, safety, integrity, and maintainability. The paper presents the profile used to extend UML with dependability information, the model transformation to generate a DSPN formal model, and the assessment of the system properties based on the DSPN results.
Yurkovich, James T; Yurkovich, Benjamin J; Dräger, Andreas; Palsson, Bernhard O; King, Zachary A
With the rapid adoption of computational tools in the life sciences, scientists are taking on the challenge of developing their own software libraries and releasing them for public use. This trend is being accelerated by popular technologies and platforms, such as GitHub, Jupyter, R/Shiny, that make it easier to develop scientific software and by open-source licenses that make it easier to release software. But how do you build a software library that people will use? And what characteristics do the best libraries have that make them enduringly popular? Here, we provide a reference guide, based on our own experiences, for developing software libraries along with real-world examples to help provide context for scientists who are learning about these concepts for the first time. While we can only scratch the surface of these topics, we hope that this article will act as a guide for scientists who want to write great software that is built to last. Copyright © 2017 Elsevier Inc. All rights reserved.
Okumura, Naoki; Ishida, Naoya; Kakutani, Kazuya; Hongo, Akane; Hiwa, Satoru; Hiroyasu, Tomoyuki; Koizumi, Noriko
To develop analysis software for cultured human corneal endothelial cells (HCECs). Software was designed to recognize cell borders and to provide parameters such as cell density, coefficient of variation, and polygonality of cultured HCECs based on phase contrast images. Cultured HCECs with high or low cell density were incubated with Ca-free and Mg-free phosphate-buffered saline for 10 minutes to reveal the cell borders and were then analyzed with software (n = 50). Phase contrast images showed that cell borders were not distinctly outlined, but these borders became more distinctly outlined after phosphate-buffered saline treatment and were recognized by cell analysis software. The cell density value provided by software was similar to that obtained using manual cell counting by an experienced researcher. Morphometric parameters, such as the coefficient of variation and polygonality, were also produced by software, and these values were significantly correlated with cell density (Pearson correlation coefficients -0.62 and 0.63, respectively). The software described here provides morphometric information from phase contrast images, and it enables subjective and noninvasive quality assessment for tissue engineering therapy of the corneal endothelium.
Bonn 1 Federal Republic of Ger- Federal Republic of Ger- many Mr. P. D. Chinn many GEC Avionics Limited ITALY Elstree Way Dr. H. M. Hessel Borehamwood...Analyser JSD Jackson System Development JSP Jackson Structured Programming LISKOV- Named for Barbara Liskov and Stephan Zilles ZILLES LITTON-DSD Litton
Guo, Zhongwen; Hu, Keyong; Jiang, Yongguo; Sun, Zhaosui
Ocean information management is of great importance as it has been employed in many areas of ocean science and technology. However, the developments of Ocean Information Systems (OISs) often suffer from low efficiency because of repetitive work and continuous modifications caused by dynamic requirements. In this paper, the basic requirements of OISs are analyzed first, and then a novel platform DPOI is proposed to improve development efficiency and enhance software quality of OISs by providing off-the-shelf resources. In the platform, the OIS is decomposed hierarchically into a set of modules, which can be reused in different system developments. These modules include the acquisition middleware and data loader that collect data from instruments and files respectively, the database that stores data consistently, the components that support fast application generation, the web services that make the data from distributed sources syntactical by use of predefined schemas and the configuration toolkit that enables software customization. With the assistance of the development platform, the software development needs no programming and the development procedure is thus accelerated greatly. We have applied the development platform in practical developments and evaluated its efficiency in several development practices and different development approaches. The results show that DPOI significantly improves development efficiency and software quality.
Bennett, Christopher L; McNeer, Richard R
Recent reports by The Joint Commission as well as the Anesthesia Patient Safety Foundation have indicated that medical audible alarm effectiveness needs to be improved. Several recent studies have explored various approaches to improving the audible alarms, motivating the authors to develop real-time software capable of comparing such alarms. We sought to devise software that would allow for the development of a variety of audible alarm designs that could also integrate into existing operating room equipment configurations. The software is meant to be used as a tool for alarm researchers to quickly evaluate novel alarm designs. A software tool was developed for the purpose of creating and annunciating audible alarms. The alarms consisted of annunciators that were mapped to vital sign data received from a patient monitor. An object-oriented approach to software design was used to create a tool that is flexible and modular at run-time, can annunciate wave-files from disk, and can be programmed with MATLAB by the user to create custom alarm algorithms. The software was tested in a simulated operating room to measure technical performance and to validate the time-to-annunciation against existing equipment alarms. The software tool showed efficacy in a simulated operating room environment by providing alarm annunciation in response to physiologic and ventilator signals generated by a human patient simulator, on average 6.2 seconds faster than existing equipment alarms. Performance analysis showed that the software was capable of supporting up to 15 audible alarms on a mid-grade laptop computer before audio dropouts occurred. These results suggest that this software tool provides a foundation for rapidly staging multiple audible alarm sets from the laboratory to a simulation environment for the purpose of evaluating novel alarm designs, thus producing valuable findings for medical audible alarm standardization.
The use of formal methods and formal techniques in industry is steadily growing. In this survey we shall characterise what we mean by software development and by a formal method; briefly overview a history of formal specification languages - some of which are: VDM (Vienna Development Method, 1974......-..., ), Z (Z for Zermelo Fraenkel, 1980-..., ), RAISE (Rigorous Approach to Industrial Software Engineering, 1987-..., ) Event B (B for Bourbaki, 1990/2000-..., ) and Alloy ; and outline the basics of a formal development using, for example, RAISE: first developing a domain description D......, then a requirements prescription R, and finally a software design S - showing (arguing or formally proving) that S, in the context of D satisfies (is correct with respect to) R. We shall then mention industries in Japan, Europe and USA which, in a number of projects, use formal methods; discuss what it takes...
Mellor-Crummey, John [Rice Univ., Houston, TX (United States)
The Center for Scalable Application Development Software (CScADS) was established as a part- nership between Rice University, Argonne National Laboratory, University of California Berkeley, University of Tennessee – Knoxville, and University of Wisconsin – Madison. CScADS pursued an integrated set of activities with the aim of increasing the productivity of DOE computational scientists by catalyzing the development of systems software, libraries, compilers, and tools for leadership computing platforms. Principal Center activities were workshops to engage the research community in the challenges of leadership computing, research and development of open-source software, and work with computational scientists to help them develop codes for leadership computing platforms. This final report summarizes CScADS activities at Rice University in these areas.
of epistemic communities does indeed contribute to the understanding of open source software development. But, the important learning process of open source software development is not readily explained. The paper then introduces situated learning and legitimate peripheral participation as theoretical......This paper analyses open source software (OSS) development as an epistemic community where each individual project is perceived as a single epistemic community. OSS development is a learning process where the involved parties contribute to, and learn from the community. It is discovered that theory...... perspectives. This allows the learning process to be part of the activities in the epistemic community. The combination of situated learning and epistemic communities is shown to be fruitful and capable of explaining some of the empirical observations. In particular the combination of theories can shed light...
Acharya, Sushil; Manohar, Priyadarshan Anant; Wu, Peter; Maxim, Bruce; Hansen, Mary
Active learning tools are critical in imparting real world experiences to the students within a classroom environment. This is important because graduates are expected to develop software that meets rigorous quality standards in functional and application domains with little to no training. However, there is a well-recognized need for the…
Amrit, Chintan Amrit
Today’s dynamic and distributed development environment brings significant challenges for software project management. In distributed project settings, “management by walking around” is no longer an option, and project managers may miss out on key project insights. At the same time, the high
Asmild, Mette; Imperatore, Francisco
analysis, many of which are not limited to efficiency assessment of software development. Thus this paper, besides providing a thorough literature review and resulting guidelines specifically for the analysis of software development productivity, also aims at providing a practical "how to" guide...... for the empirical analysis that can be used more generally. In terms of actual empirical results, we find a clear indication of variable returns to scale, of differences between new and evolutions developments and some indications of differences between programming languages. We also include potentially relevant...
Arpaia, Pasquale; Buzio, Marco; Fiscarelli, Lucio; Inglese, Vitaliano
A framework for easily developing software for measurement and test applications under highly and fast-varying requirements is proposed. The framework allows the software quality, in terms of flexibility, usability, and maintainability, to be maximized. Furthermore, the development effort is reduced and finalized, by relieving the test engineer of development details. The framework can be configured for satisfying a large set of measurement applications in a generic field for an industrial test division, a test laboratory, or a research center. As an experimental case study, the design, the implementation, and the assessment inside the application to a measurement scenario of magnet testing at the European Organization for Nuclear Research is reported.
In developing the ATLAS  Trigger and Data Acquisition (TDAQ) software, the team is applying the iterative waterfall model, evolutionary process management, formal software inspection, and lightweight review techniques. The long preparation phase, with a geographically widespread development team required that the standard techniques be adapted to this HEP environment. The testing process is receiving special attention. Unit tests and check targets in nightly project builds form the basis for the subsequent software project release testing. The integrated software is then being run on computing farms that give further opportunites for gaining experience, fault finding, and acquiring ideas for improvement. Dedicated tests on a farm of up to 1000 nodes address the large-scale aspect of the project. Integration test activities on the experimental site include the special purpose-built event readout hardware. Deployment in detector commissioning starts the countdown towards running the final ATLAS experiment. T...
Full Text Available Abstract - To work in a project, timely is one of the main points of the business aspect. It said the major, because it can keep a relationship and trust of costumers. With so many projects undertaken have certainly require precision in monitoring. Projects in the field of software development has its own problems, ranging from lack of effective mode of administration tasks and problems that are not stored properly can hinder the smooth development of the software. Companies need to design a system to monitor all the activities that occur in the software development phase. By using the information system monitoring any information required by systems analysts and programmers have been stored properly, ranging from job information, job specifications, constraints that occur in the task to estimate when the work is completed. Monitoring information system software development at this stage of development is very helpful systems analyst will need detailing project progress and improve performance in developing software programmer. Keywords : Information System, Monitoring, Software Development, Web Abstrak - Tepat waktu dalam mengerjakan sebuah proyek merupakan salah satu point utama dari segi bisnis. Dikatakan utama, karena hal ini dapat menjaga hubungan dan juga kepercayaan dari konsumen. Dengan banyaknya proyek yang dikerjakan sudah pasti membutuhkan ketelitian dalam melakukan pemantauan. Proyek dibidang pengembangan perangkat lunak memiliki permasalahan tersendiri, mulai dari kurang efektifnya cara pemberian tugas dan permasalahan yang tidak tersimpan dengan baik dapat menghambat lancarnya pengembangan perangkat lunak. Perusahaan perlu merancang sistem untuk memantau segala aktifitas yang terjadi pada tahap pengembangan perangkat lunak. Dengan menggunakan sistem informasi monitoring setiap informasi yang diperlukan oleh sistem analis dan programmer sudah tersimpan dengan baik, mulai dari informasi tugas, spesifikasi tugas, kendala yang
Full Text Available We introduce in this work a new software architecture design, based on well-established web communication protocols and scripting languages, for implementing spatially-indexed media in smart environments. We based our approach on specific design guidelines. Our concept of spatially-indexed media enables users to readily instantiate mappings between digital content and specific regions of the physical space. We present an implementation of the architecture using a motion capture system, a large visualization display, and several smart devices. We also present an experimental evaluation of our new software architecture by reporting response times function of changes in the complexity of physical-digital environment.
A. Serdar YILMAZ
Full Text Available In this paper, a Delphi based interface software developed for energy analyzers is presented. Transferring the electrical parameters which is read from the energy analyzer to the computer in real-time has been achieved by using the developed software. It is also possible to record the parameters such as current, voltage, power, harmonic distortion and etc in real-time and to illustrate these recorded parameters in comparison with each other and graphically. Presented software is developed for Merlin Gerin Powerlogic PM 800 power analyzers and also it is usable for different trademarks and models which use Modbus protocol. Proposed software permits intercommunication and observation between maximum 256 devices. Recorded data can be monitorized in table and graphic form for requested time and date intervals by the users. In the study, Borland Delphi v.7.0 is preferred due to flexible and fast. Developed software can be easily used for energy distribution automation and monitoring of the power flow and power quality and also it is a user friendly interface.
Full Text Available Developing software to undertake complex, compute-intensive scientific processes requires a challenging combination of both specialist domain knowledge and software development skills to convert this knowledge into efficient code. As computational platforms become increasingly heterogeneous and newer types of platform such as Infrastructure-as-a-Service (IaaS cloud computing become more widely accepted for high-performance computing (HPC, scientists require more support from computer scientists and resource providers to develop efficient code that offers long-term sustainability and makes optimal use of the resources available to them. As part of the libhpc stage 1 and 2 projects we are developing a framework to provide a richer means of job specification and efficient execution of complex scientific software on heterogeneous infrastructure. In this updated version of our submission to the WSSSPE13 workshop at SuperComputing 2013 we set out our approach to simplifying access to HPC applications and resources for end-users through the use of flexible and interchangeable software components and associated high-level functional-style operations. We believe this approach can support sustainability of scientific software and help to widen access to it.
Bitzer, J; Schrettl, W; Schröder, P
This papers sheds light on the puzzling fact that even though open source software (OSS) is a public good, it is developed for free by highly qualified, young, motivated individuals, and evolves at a rapid pace. We show that when OSS development is understood as the private provision of a public...
Defranco-Tommarello, Joanna; Deek, Fadi P.
The experimental results of a collaborative problem solving and program development model that takes into consideration the cognitive and social activities that occur during software development is presented in this paper. This collaborative model is based on the Dual Common Model that focuses on individual cognitive aspects of problem solving and…
Many libraries have developed mobile versions of their websites. In order to understand their users, web developers have conducted both usability tests and focus groups, yet analytical software and web server logs can also be used to better understand users. Using data collected from these tools, the Ursula C. Schwerin Library has made informed…
Ponisio, Laura; van Eck, Pascal; Messnarz, R.; Ekert, D.; Christiansen, M.; Johansen, J.; Koinig, S.
Measurements serve as vital instruments to control projects involving software development outsourcing. However, managers have found it difficult to develop and implement effective measurement programs, in part because guidelines for choosing among concrete measure-ments are scarce. We address this
Tamblyn, Scott; Henry, Joel; Rapp, John
When the guidance, navigation, and control (GN&C) system for the Orion crew vehicle undergoes Critical Design Review (CDR), more than 90% of the flight software will already be developed - a first for NASA on a project of this scope and complexity. This achievement is due in large part to a new development approach using Model-Based Design.
Evans, Janet D.; Evans, Ian N.; Fabbiano, Giuseppina
Software development for the Chandra X-ray Center Data System began in the mid 1990's, and the waterfall model of development was mandated by our documents. Although we initially tried this approach, we found that a process with elements of the spiral model worked better in our science-based environment. High-level science requirements are usually established by scientists, and provided to the software development group. We follow with review and refinement of those requirements prior to the design phase. Design reviews are conducted for substantial projects within the development team, and include scientists whenever appropriate. Development follows agreed upon schedules that include several internal releases of the task before completion. Feedback from science testing early in the process helps to identify and resolve misunderstandings present in the detailed requirements, and allows review of intangible requirements. The development process includes specific testing of requirements, developer and user documentation, and support after deployment to operations or to users. We discuss the process we follow at the Chandra X-ray Center (CXC) to develop software and support operations. We review the role of the science and development staff from conception to release of software, and some lessons learned from managing CXC software development for over a decade.
Phillips, M.; Robinson, C.; Gupta, N.; Werth, D.
This report describes the development of a software tool, entitled “WildFire Ignition Resistance Estimator Wizard” (WildFIRE Wizard, Version 2.10). This software was developed within the Wildfire Ignition Resistant Home Design (WIRHD) program, sponsored by the U. S. Department of Homeland Security, Science and Technology Directorate, Infrastructure Protection & Disaster Management Division. WildFIRE Wizard is a tool that enables homeowners to take preventive actions that will reduce their home’s vulnerability to wildfire ignition sources (i.e., embers, radiant heat, and direct flame impingement) well in advance of a wildfire event. This report describes the development of the software, its operation, its technical basis and calculations, and steps taken to verify its performance.
Design decisions are continuously made during the development of software systems and are important artifacts for design documentation. Dedicated decision management systems are often used to capture such design knowledge. Most such systems are, however, separated from the design artifacts...... of the system. In model-based software development, where design models are used to develop a software system, outcomes of many design decisions have big impact on design models. The realization of design decisions is often manual and tedious work on design models. Moreover, keeping design models consistent...... to specify realizations of decisions in design models. This way, recurring realization work of design decisions can be automated. Since the concepts are generic and not bound to design decisions, other recurring work on models can be automated as well, for instance, design patterns and refactorings...
Dubuc, François; Guichoux, Bernard; Cormery, Patrick; Mescam, Jean Christophe
One of the key issues regularly mentioned in the current software crisis of the space domain is related to the software development process that must be performed while the system definition is not yet frozen. This is especially true for complex systems like launchers or space vehicles.Several more or less mature solutions are under study by EADS SPACE Transportation and are going to be presented in this paper. The basic principle is to develop the software through an iterative and incremental process instead of the classical waterfall approach, with the following advantages:- It permits systematic management and incorporation of requirements changes over the development cycle with a minimal cost. As far as possible the most dimensioning requirements are analyzed and developed in priority for validating very early the architecture concept without the details.- A software prototype is very quickly available. It improves the communication between system and software teams, as it enables to check very early and efficiently the common understanding of the system requirements.- It allows the software team to complete a whole development cycle very early, and thus to become quickly familiar with the software development environment (methodology, technology, tools...). This is particularly important when the team is new, or when the environment has changed since the previous development. Anyhow, it improves a lot the learning curve of the software team.These advantages seem very attractive, but mastering efficiently an iterative development process is not so easy and induces a lot of difficulties such as:- How to freeze one configuration of the system definition as a development baseline, while most of thesystem requirements are completely and naturally unstable?- How to distinguish stable/unstable and dimensioning/standard requirements?- How to plan the development of each increment?- How to link classical waterfall development milestones with an iterative approach: when
Pfeiffer, Rolf-Helge; Wasowski, Andrzej
Contemporary software systems contain a large number of artifacts expressed in multiple languages, ranging from domain-specific languages to general purpose languages. These artifacts are interrelated to form software systems. Existing development environments insufficiently support handling...... relations between artifacts in multiple languages. This paper presents a taxonomy for multi-language development environments, organized according to language representation, representation of relations between languages, and types of these relations. Additionally, we present TexMo, a prototype of a multi-language...... development environment, which uses an explicit relation model and implements visualization, static checking, navigation, and refactoring of cross-language relations. We evaluate TexMo by applying it to development of a web-application, JTrac, and provide preliminary evidence of its feasibility by running...
Antonio Cezar Bornia
Full Text Available The main goal of this article is to discuss the formulation of price strategies in the software sector. In the intention of reaching the proposed goal, strategies models of prices are introduced along with the procedure to the formulation of price strategies, composed by five stages: external and internal analyses, consolidation, positioning, price strategy formalization and market attendance. As for the methodology, the study is classified as qualitative, exploratory, descriptive, documental, of field and case study, according to the approach of Vergara (1998. In the case study, the model to the formulation of price strategies is applied in a company’s software sector, being analyzed the outsourcing of development and maintenance software product. As main contributions, it is highlighted the price procedure application that emphasizes strategic price logic and prices strategies formulations, with base in the analysis of five main factors: quality, comparison with the competition, company life cycle, product life cycle and characteristics of the segment-objective. Based on the analyzed factors, a possible strategy to be adopted considering the characteristics of the product and the company is the price strategy and superior value. Key-words: Pricing Strategies. Price Formulation. Software Enterprises.
Padilla, M. J.; Liu, Y.
Transverse beam emittance is a crucial property of charged particle beams that describes their angular and spatial spread. It is a fi gure of merit frequently used to determine the quality of ion beams, the compatibility of an ion beam with a given beam transport system, and the ability to suppress neighboring isotopes at on-line mass separator facilities. Generally a high quality beam is characterized by a small emittance. In order to determine and improve the quality of ion beams used at the Holifi eld Radioactive Ion beam Facility (HRIBF) for nuclear physics and nuclear astrophysics research, the emittances of the ion beams are measured at the off-line Ion Source Test Facilities. In this project, emittance analysis software was developed to perform various data processing tasks for noise reduction, to evaluate root-mean-square emittance, Twiss parameters, and area emittance of different beam fractions. The software also provides 2D and 3D graphical views of the emittance data, beam profi les, emittance contours, and RMS. Noise exclusion is essential for accurate determination of beam emittance values. A Self-Consistent, Unbiased Elliptical Exclusion (SCUBEEx) method is employed. Numerical data analysis techniques such as interpolation and nonlinear fi tting are also incorporated into the software. The software will provide a simplifi ed, fast tool for comprehensive emittance analysis. The main functions of the software package have been completed. In preliminary tests with experimental emittance data, the analysis results using the software were shown to be accurate.
Mckay, C. W.; Bown, R. L.
The space station data management system involves networks of computing resources that must work cooperatively and reliably over an indefinite life span. This program requires a long schedule of modular growth and an even longer period of maintenance and operation. The development and operation of space station computing resources will involve a spectrum of systems and software life cycle activities distributed across a variety of hosts, an integration, verification, and validation host with test bed, and distributed targets. The requirement for the early establishment and use of an apporopriate Computer Systems and Software Engineering Support Environment is identified. This environment will support the Research and Development Productivity challenges presented by the space station computing system.
Programming for the Newton: Software Development with NewtonScript focuses on the processes, approaches, operations, and principles involved in software development with NewtonScript.The publication first elaborates on Newton application design, views on the Newton, and protos. Discussions focus on system protos, creating and using user protos, linking and naming templates, creating the views of WaiterHelper, Newton application designs, and life cycle of an application. The text then elaborates on the fundamentals of NewtonScript, inheritance in NewtonScript, and view system and messages. Topi
Chauhan, Aufeef; Babar, Muhammad Ali
Organizations involve in Global Software Development (GSD) face challenges in terms of having access to appropriate set of tools for performing distributed engineering and development activities, integration between heterogeneous desktop and web-based tools, management of artifacts developed...... distributed environment. In this paper, we argue the need to have a cloud-enabled platform for supporting GSD and propose reference architecture of a cloud based Platform for providing support to provision ecosystem of the Tools as a Service (PTaaS)....
Samir Abou El-Seoud
Full Text Available System development methodologies which have being used in the academic and commercial environments during last two decades have advantages and disadvantages. Researchers had tried to identify objectives, scope …etc. of the methodologies by following different approaches. Each approach has its Limitation, specific interest, coverage …etc. In this paper, we tried to perform a comparative study of those methodologies which are popular and commonly used in banking and commercial environment. We tried in our study to determine objectives, scope, tools and other features of the methodologies. We also, tried to determine how and to what extent the methodologies incorporate the facilities such as project management, cost benefit analysis, documentation …etc. One of the most important aspects of our study was how to integrate the methodologies and develop a global methodology which covers the complete span of the software development life cycle? A prototype system which integrates the selected methodologies has been developed. The developed system helps analysts and designers how to choose suitable tools or to obtain guidelines on what to do in a particular situation. The prototype system has been tested during the development of a software for an ATM “Auto Teller Machine” by selecting and applying SASD methodology during software development. This resulted in the development of high quality and well documented software system.
Aberg, Bryce Robert
My summer was spent working as an intern at Kennedy Space Center in the Propulsion Avionics Branch of the NASA Engineering Directorate Avionics Division. The work that I was involved with was part of Rocket University's Project Neo, a small scale liquid rocket engine test bed. I began by learning about the layout of Neo in order to more fully understand what was required of me. I then developed software in LabView to gather and scale data from two flowmeters and integrated that code into the main control software. Next, I developed more LabView code to control an igniter circuit and integrated that into the main software, as well. Throughout the internship, I performed work that mechanics and technicians would do in order to maintain and assemble the engine.
Pfeiffer, Rolf-Helge; Wasowski, Andrzej
, (2) static checking, (3) navigation, and (4) refactoring of cross-language relations. We investigate whether these four mechanisms indeed improve efficiency and quality of development of multi-language systems. We run a controlled experiment in which 22 participants perform typical software evolution......Contemporary software systems combine many artifacts specified in various modeling and programming languages, domainspecific and general purpose as well. Since multi-language systems are so widespread, working on them calls for tools with cross-language support mechanisms such as (1) visualization...... tasks on the JTrac web application using a prototype tool implementing these mechanisms. The results speak clearly for integration of cross-language support mechanisms into software development tools, and justify research on automatic inference, manipulation and handling of cross-language relations....
Virtual platforms are finding widespread use in both pre- and post-silicon computer software and system development. They reduce time to market, improve system quality, make development more efficient, and enable truly concurrent hardware/software design and bring-up. Virtual platforms increase productivity with unparalleled inspection, configuration, and injection capabilities. In combination with other types of simulators, they provide full-system simulations where computer systems can be tested together with the environment in which they operate. This book is not only about what simulat
Full Text Available Background: Software development productivity is widely investigated in the Software Engineering literature. However, continuously updated evidence on productivity is constantly needed, due to the rapid evolution of software development techniques and methods, and also the regular improvement in the use of the existing ones. Objectives: The main goal of this paper is to investigate which factors affect productivity. It was also investigated whether economies or diseconomies of scale exist and whether they may be influenced by productivity factors. Method: An empirical investigation was carried out using a dataset available at the software project repository ISBSG. The major focus was on factors that may affect productivity from a functional point of view. The the conducted analysis was compared with the productivity data provided by Capers Jones in 1996 and 2013 and with an investigation on open-source software by Delorey et al. Results: This empirical study led to the discovery of interesting models that show how the different factors do (or do not affect productivity. It was also found out that some factors appear to allow for economies of scale, while others appear to cause diseconomies of scale. Conclusions: This paper provides some more evidence about how four factors, i.e., programming languages, business areas, architectural types, and the usage of CASE tools, influence productivity and highlights some interesting divergences in comparison with the results reported by Capers Jones and Delorey et al.
Bouchard, Ann Marie; Osbourn, Gordon Cecil (Org. 1001 : Complex Systems Science Department); Bartholomew, John Warren
This is the final report on the Sandia Fellow LDRD, project 117865, 08-0281. This presents an investigation of self-assembling software intended to create shared workspace environment to allow online collaboration and situational awareness for use by high level managers and their teams.
Salvatore, Richardo B
The convergence between personal computer-based games and virtual environments technologies dramatically reduced development costs and potentially increased the use of the technology in training activities...
Handayani, A. D.; Herman, T.; Fatimah, S.
The NCTM vision shows the importance of two things in school mathematics, which is knowing the mathematics of the 21st century and the need to continue to improve mathematics education to answer the challenges of a changing world. One of the competencies associated with the great challenges of the 21st century is the use of help and tools (including IT), such as: knowing the existence of various tools for mathematical activity. One of the significant challenges in mathematical learning is how to teach students about abstract concepts. In this case, technology in the form of mathematics learning software can be used more widely to embed the abstract concept in mathematics. In mathematics learning, the use of mathematical software can make high level math activity become easier accepted by student. Technology can strengthen student learning by delivering numerical, graphic, and symbolic content without spending the time to calculate complex computing problems manually. The purpose of this research is to design and develop teaching materials software assisted for numerical method. The process of developing the teaching material starts from the defining step, the process of designing the learning material developed based on information obtained from the step of early analysis, learners, materials, tasks that support then done the design step or design, then the last step is the development step. The development of teaching materials software assisted for numerical methods is valid in content. While validator assessment for teaching material in numerical methods is good and can be used with little revision.
Ganguly, P; Ray, P
Telemedicine involves the integration of information, human-machine, and healthcare technologies. Because different modalities of patient care require applications running on heterogeneous computing environment, software interoperability is a major issue in telemedicine. Software agent technology provides a range of promising techniques to solve this problem. This article discusses the development of a methodology for the design of interoperable telemedicine systems (illustrated with a tele-electrocardiography application). Software interoperability between different applications can be modeled at different levels of abstraction such as physical interoperability, data-type interoperability, specification-level interoperability, and semantic interoperability. Software agents address the issue of software interoperability at semantic level. A popular object-oriented software development methodology - unified modeling language (UML) - has been used for this development. This research has demonstrated the feasibility of the development of agent-based interoperable telemedicine systems. More research is needed before widespread deployment of such systems can take place.
Gulli, Michael A.
Deneb Robotics is a leader in the development of commercially available, leading edge three- dimensional simulation software tools for virtual prototyping,, simulation-based design, manufacturing process simulation, and factory floor simulation and training applications. Deneb has developed and commercially released a preliminary Virtual Collaborative Engineering (VCE) capability for Integrated Product and Process Development (IPPD). This capability allows distributed, real-time visualization and evaluation of design concepts, manufacturing processes, and total factory and enterprises in one seamless simulation environment.
Iannotti, Nicholas V.
The last several years have seen unprecedented advancements in the application of technology to the life sciences, particularly in the area of data generation. Novel scientific insights are now often driven primarily by software development supporting new multidisciplinary and increasingly multifaceted data analysis. However, despite the…
Schröder, Philipp J.H.; Bitzer, Jürgen
This chapter introduces the fundamentals of Open Source Software, its nature, the central economic aspects and the key mechanisms of its development. Furthermore, we present the themes of the book and provide a first overview for the reader by giving short summaries of its chapters....
This two-essay dissertation aims to study institutional logics in the context of Apple's independent third-party software developers. In essay 1, I investigate the embedded agency aspect of the institutional logics theory. It builds on the premise that logics constrain preferences, interests and behaviors of individuals and organizations, thereby…
Tell, Paolo; Jalaliniya, Shahram; Andersen, Kristian S. M.
Assessing the presence and availability of a remote colleague is key in coordination in global software development but is not easily done using existing computer-mediated channels. Previous research has shown that automated estimation of interruptibility is feasible and can achieve a precision...
Software development projects are logically divided into phases that are composing the project life cycle. Typically, the phases are scheduled sequentially but in some cases a project may take clear advantages by running the phases concurrently. The most common phase-to-phase relation-ships are sequential, overlapping, iterative and composite.
Bosch, J; Nord, RL
Several approaches to the development of shared artefacts in software product families exist. Each has advantages and disadvantages, but there is no clear framework for selecting among these alternatives. As a consequence, mismatches between the optimal approach and the one currently used by an
The present work is to develop software to predict the value yield and the distribution coefficient in the process of liquid-liquid extraction of components of a mixture, from mathematical models expressing these entities, based on equations equilibrium between liquid-liquid phases, and predict the conditions under which the ...
This paper presents a systematic approach to the analysis and design of an online banking system using the Use-Cases method of Jacobson. This analysis and design method will support the development of highly effective reuseable code, thus bringing the benefits of object orientation into important software projects.
The Development of an Analyses-Intensive Software for Improved Cams System Design. ... If you would like more information about how to print, save, and work with PDFs, Highwire Press provides a helpful Frequently Asked Questions about PDFs. Alternatively, you can download the PDF file directly to your computer, from ...
van den Berg, Klaas; Conejero, J.M.; Hernández, J.
Traceability of requirements and concerns enhances the quality of software development. We use trace relations to define crosscutting. As starting point, we set up a dependency matrix to capture the relationship between elements at two levels, e.g. concerns and representations of concerns. The
Full Text Available Software development projects are logically divided into phases that are composing the project life cycle. The name and number of these phases are industry dependent, so they are completely different from one field of activity to another. Typically, the phases are scheduled sequentially but in some cases a project may take clear advantages by running the phases concurrently.
The computer-aided software developed in this research work is used in designing cam systems by generating various follower motions and cam profiles. It is highly suited for extensive dynamics, kinematics and geometric design analysis based on some inherent features that are unique. The plate cam with either flat-face ...
Nimtz, Robert O.
Traces the history of the development of the law dealing with the protection of computer software. The available forms of protection are the patent, copyright, and trade secret laws. Available from Business Manager, P. O. Box 2600, Arlington, Virginia 22202; sc $1.25. (Author/IRT)
van den Berg, Klaas; Aksit, Mehmet; van den Broek, P.M.
In this document we describe use cases and its role in the software development process. There is no precise semantics of use cases. Use case descriptions can be formalized with control flowgraphs. Based on this formalization, the use of the standard technique of sequence charts can be improved, in
This qualitative exploratory single-case study was designed to examine and understand the use of volunteer community participants as software developers and other project related roles, such as testers, in completing a web-based application project by a non-profit organization. This study analyzed the strategic decision to engage crowd…
Abrahamsson, Pekka; Oza, Nilay; Siponen, Mikko T.
Although agile software development methods have caught the attention of software engineers and researchers worldwide, scientific research still remains quite scarce. The aim of this study is to order and make sense of the different agile approaches that have been proposed. This comparative review is performed from the standpoint of using the following features as the analytical perspectives: project management support, life-cycle coverage, type of practical guidance, adaptability in actual use, type of research objectives and existence of empirical evidence. The results show that agile software development methods cover, without offering any rationale, different phases of the software development life-cycle and that most of these methods fail to provide adequate project management support. Moreover, quite a few methods continue to offer little concrete guidance on how to use their solutions or how to adapt them in different development situations. Empirical evidence after ten years of application remains quite limited. Based on the results, new directions on agile methods are outlined.
McMaster, Kirby; Sambasivam, Samuel; Blake, Ashley
In this research, we examine how problem solving frameworks differ between Mathematics and Software Development. Our methodology is based on the assumption that the words used frequently in a book indicate the mental framework of the author. We compared word frequencies in a sample of 139 books that discuss problem solving. The books were grouped…
Full Text Available Software development projects are logically divided into phases that are composing the project life cycle. Typically, the phases are scheduled sequentially but in some cases a project may take clear advantages by running the phases concurrently. The most common phase-to-phase relation-ships are sequential, overlapping, iterative and composite.
van Hillegersberg, Jos; Harmsen, Frank; Hegeman, J.H.; Amrit, Chintan Amrit; Geisberger, Eva; Keil, Patrick; Kuhrmann, Marco
Coordination is difficult to achieve in a large globally distributed project setting. The problem is multiplied in open source software development projects, where most of the traditional means of coordination such as plans, system-level designs, schedules and defined process are not used. In order
Tolksdorf, Gregor; Fillinger, Sandra; Wozny, Guenter
This contribution deals with the mutual integration of existing CAPE software products developed at different universities in Germany, Denmark, and Italy. After the motivation MOSAIC is presented as the bridge building the connection between the modelling tool ICAS-MoT and the numerical processin...
Haxthausen, Anne Elisabeth
This document presents a method for effective development of software for a product line of similar railway control systems. The software is constructed in three steps: first a specifications in a domain-specific language is created, then a formal behavioural controller model is automatically...... created from the specification, and finally the model is compiled into executable object code. Formal verification is performed automatically by tools at three levels: (1) the specification is checked to follow the rules of the domain, (2) the controller model is checked to ensure safety, and (3...
Experience and knowledge gained from ongoing maintenance of Space Shuttle Flight Software and new development projects including Cockpit Avionics Upgrade are applied to projected needs of the National Space Exploration Vision through Spiral 2. Lessons learned from these current activities are applied to create a sustainable, reliable model for development of critical software to support Project Constellation. This presentation introduces the technologies, methodologies, and infrastructure needed to produce and sustain high quality software. It will propose what is needed to support a Vision for Space Exploration that places demands on the innovation and productivity needed to support future space exploration. The technologies in use today within FSW development include tools that provide requirements tracking, integrated change management, modeling and simulation software. Specific challenges that have been met include the introduction and integration of Commercial Off the Shelf (COTS) Real Time Operating System for critical functions. Though technology prediction has proved to be imprecise, Project Constellation requirements will need continued integration of new technology with evolving methodologies and changing project infrastructure. Targets for continued technology investment are integrated health monitoring and management, self healing software, standard payload interfaces, autonomous operation, and improvements in training. Emulation of the target hardware will also allow significant streamlining of development and testing. The methodologies in use today for FSW development are object oriented UML design, iterative development using independent components, as well as rapid prototyping . In addition, Lean Six Sigma and CMMI play a critical role in the quality and efficiency of the workforce processes. Over the next six years, we expect these methodologies to merge with other improvements into a consolidated office culture with all processes being guided by
Full Text Available Inspired by the potentials of web-based collaboration, in 2014, a group of social scientists, students and information specialists started tinkering with software and methodology for open online collaborative research. The results of their research led to a gathering of academics at the #ethnography Conference Amsterdam 2014, where new material was collected, shared and collaboratively interpreted. Following the conference, they continued to develop software and methodology. In this contribution, we report on the aims, methodology, inspiring examples, caveats and results from testing several prototypes of open online research software. We conclude that open online collaborative interpretation is both feasible and desirable. Dialogue and reflexivity, we hold, are able to transcend separated perspectives and stimulate agreement on a set of distinct interpretations; they simultaneously respect the multiplicity of understandings of social phenomena whilst bringing order into this diversity. URN: http://nbn-resolving.de/urn:nbn:de:0114-fqs160327
Uldall-Espersen, Tobias; Frøkjær, Erik
Usability, Case Study, Software Engineering, Software Quality, Organizational Impact, Usability Requirement Management, CHI 2007 workshop......Usability, Case Study, Software Engineering, Software Quality, Organizational Impact, Usability Requirement Management, CHI 2007 workshop...
Schnoor, Ulrike; The ATLAS collaboration
High-Performance Computing (HPC) and other research cluster computing resources provided by universities can be useful supplements to the collaboration’s own WLCG computing resources for data analysis and production of simulated event samples. The shared HPC cluster "NEMO" at the University of Freiburg has been made available to local ATLAS users through the provisioning of virtual machines incorporating the ATLAS software environment analogously to a WLCG center. The talk describes the concept and implementation of virtualizing the ATLAS software environment to run both data analysis and production on the HPC host system which is connected to the existing Tier-3 infrastructure. Main challenges include the integration into the NEMO and Tier-3 schedulers in a dynamic, on-demand way, the scalability of the OpenStack infrastructure, as well as the automatic generation of a fully functional virtual machine image providing access to the local user environment, the dCache storage element and the parallel file sys...
Ong, James; Remolina, Emilio; Prompt, Axel; Robinson, Peter; Sweet, Adam; Nishikawa, David
To implement fault tolerant autonomy in future space systems, it will be necessary to integrate planning, adaptive control, and state estimation subsystems. However, integrating these subsystems is difficult, time-consuming, and error-prone. This paper describes Intelliface/ADAPT, a software testbed that helps researchers develop and test alternative strategies for integrating planning, execution, and diagnosis subsystems more quickly and easily. The testbed's architecture, graphical data displays, and implementations of the integrated subsystems support easy plug and play of alternate components to support research and development in fault-tolerant control of autonomous vehicles and operations support systems. Intelliface/ADAPT controls NASA's Advanced Diagnostics and Prognostics Testbed (ADAPT), which comprises batteries, electrical loads (fans, pumps, and lights), relays, circuit breakers, invertors, and sensors. During plan execution, an experimentor can inject faults into the ADAPT testbed by tripping circuit breakers, changing fan speed settings, and closing valves to restrict fluid flow. The diagnostic subsystem, based on NASA's Hybrid Diagnosis Engine (HyDE), detects and isolates these faults to determine the new state of the plant, ADAPT. Intelliface/ADAPT then updates its model of the ADAPT system's resources and determines whether the current plan can be executed using the reduced resources. If not, the planning subsystem generates a new plan that reschedules tasks, reconfigures ADAPT, and reassigns the use of ADAPT resources as needed to work around the fault. The resource model, planning domain model, and planning goals are expressed using NASA's Action Notation Modeling Language (ANML). Parts of the ANML model are generated automatically, and other parts are constructed by hand using the Planning Model Integrated Development Environment, a visual Eclipse-based IDE that accelerates ANML model development. Because native ANML planners are currently