首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
Software evolution through rapid prototyping   总被引:1,自引:0,他引:1  
Luqi 《Computer》1989,22(5):13-25
Rapid prototyping is defined, and its role in software evolution is examined. Software evolution refers to all activities that change a software system. It differs from maintenance in that the latter is done after the initial development, whereas evolution activities are interleaved with the initial development and continue after the delivery of the initial version of the system. In the author's approach to rapid prototyping, software systems are delivered incrementally and requirements analysis continues throughout the process, interleaved with implementation and evolution. The focus is on reducing requirements errors through prototyping before undertaking the incremental implementation effort for each deliverable version of the system. The evolution of a hyperthermia system is considered as an example  相似文献   

2.
Software development methodologies present two major schools of thought: one is that of structured system development and the other is that of prototyping. Between these extremes, there are many mixed approaches. But any form of prototyping, though attractive, is difficult to implement for large systems because of its implied lack of structure. This paper proposes a framework for the integration of prototyping into structured system development. We first carry out structured analysis and design; these products are then used to support systematic prototyping. The resulting prototype serves to provide the user with an iterative process of understanding and improving the requirements until they are satisfactory. This methodology for structured prototyping has four elements: interface, data, process, and system prototypes. The methodology is based on a new unified approach to the analysis and design phases.  相似文献   

3.
Automated prototyping tool-kit (APT) is an integrated set of software tools that generate source programs directly from real-time requirements. The APT system uses a fifth-generation prototyping language to model the communication structure, timing constraints, I/O control, and data buffering that comprise the requirements for an embedded software system. The language supports the specification of hard real-time systems with reusable components from domain specific component libraries. APT has been used successfully as a research tool in prototyping large war-fighter control systems (e.g. the command-and-control station, cruise missile flight control system, patriot missile defense systems) and demonstrated its capability to support the development of large complex embedded software.  相似文献   

4.
Prototyping can be seen as the heart of the innovation process. Typically, engineers and designers both work on prototyping activities, but their diverse backgrounds make for different perspectives on prototyping. Based on earlier literature, this study investigates commonalities and differences in the prototyping behavior of engineers and designers. For this study, semi‐structured interviews and workshops with different experiments were conducted. Using low‐fidelity prototypes, our results indicated that there are differences in the early phase of prototyping. Engineers focused on the features and functions of a prototype and needed to meet specific goals in order to push the process forward. Designers, on the other hand, used prototypes to investigate the design space for new possibilities, and were more open to a variety of prototyping materials and tools, especially for low‐fidelity prototypes. In the later prototyping phases, the prototyping behaviors of engineers and designers became similar. Our study contributes to the understanding of prototyping purposes, activities, and processes across disciplines, and supports the management of prototyping in new product development processes.  相似文献   

5.
In a large organization, informal communication and simple backlogs are not sufficient for the management of requirements and development work. Many large organizations are struggling to successfully adopt agile methods, but there is still little scientific knowledge on requirements management in large-scale agile development organizations. We present an in-depth study of an Ericsson telecommunications node development organization which employs a large scale agile method to develop telecommunications system software. We describe how the requirements flow from strategy to release, and related benefits and problems. Data was collected by 43 interviews, which were analyzed qualitatively. The requirements management was done in three different processes, each of which had a different process model, purpose and planning horizon. The release project management process was plan-driven, feature development process was continuous and implementation management process was agile. The perceived benefits included reduced development lead time, increased flexibility, increased planning efficiency, increased developer motivation and improved communication effectiveness. The recognized problems included difficulties in balancing planning effort, overcommitment, insufficient understanding of the development team autonomy, defining the product owner role, balancing team specialization, organizing system-level work and growing technical debt. The study indicates that agile development methods can be successfully employed in organizations where the higher level planning processes are not agile. Combining agile methods with a flexible feature development process can bring many benefits, but large-scale software development seems to require specialist roles and significant coordination effort.  相似文献   

6.
Task-based and user-oriented user interfaces utilize knowledge about user tasks and user characteristics to the utmost extent. They support users throughout their work flows, and must be constructed by a development process that avoids loss of application context and involves user feedback, from requirements specification to code generation. The concepts behind the task analysis/design/end users systems (TADEUS) approach to enable seamless task-based development are a semantically rich representation scheme, a model-driven development procedure, a diagrammatic notation and unifying specification scheme. Thus, interactive applications can be developed seamlessly. Specifications comprise problem domain knowledge, work processes, user roles and personal profiles, as well as interaction modalities (required for task accomplishment). For user-interface prototyping the TADEUS environment contains a model interpreter that executes structure and behavior specifications. This way, early feedback on task-based portals can be provided by users. In this paper we detail the latest developments in the TADEUS project when implementing a work-process based usability life cycle. We review the underlying methodology and the features of the TADEUS environment, in order to demonstrate the benefits for developers and users resulting of smooth transition support for and between the different stages of development  相似文献   

7.
Requirements management is being recognized as one of the most important albeit difficult phases in software engineering. The literature repeatedly cites the role of well-defined requirements and requirements management process in problem analysis and project management as benefiting software development throughout the life cycle: during design, coding, testing, maintenance and documentation of software. This paper reports on the findings of an investigation into industrial practice of requirements management process improvement and its positive effects on downstream software development. The evidence reveals a strong relationship between a well-defined requirements process and increased developer productivity, improved project planning through better estimations and enhanced ability for stakeholders to negotiate project scope. These results are important since there is little empirical evidence of the actual benefits of sound requirements practice, in spite of the plethora of claims in the literature. An account of these effects not only adds to our understanding of good requirements practice but also provides strong motivation for software organizations to develop programs for improvement of their requirements processes.  相似文献   

8.
The process of determining user requirements for software systems is often plagued with uncertainty, ambiguity, and inconsistency. Rapid prototyping offers an iterative approach to requirements engineering that can be used to alleviate some of the problems with communication and understanding. Since the systems development process is characterized by changing requirements and assumptions, involving multiple stakeholders with often differing viewpoints, it is beneficial to capture the justifications for the decisions in the development process in a structured manner. Thisdesign rationale captured during requirements engineering can be used in conjunction with the rapid prototyping process to support various stakeholders involved in systems development. CAPS (the Computer Aided Prototyping System) has been built to help software engineers rapidly construct prototypes of proposed software systems. REMAP (Representation and MAintenance of Process knowledge) provides a conceptual model and mechanisms to represent and reason with (design) rationale knowledge. In this paper, we describe how in the context of evolving requirements, the CAPS system augmented with REMAP helps firm up software requirements through iterative negotiations via examination of executable prototypes and reasoning with design rationale knowledge.  相似文献   

9.
Prototyping has become a valuable tool for systems development because it accelerates the development process, helps define system requirements, and encourages end-user involvement. Because prototyping is a valuable tool, a study of the training environment and characteristics of systems analysts more likely to use the tool can help IS managers formulate policies to encourage its use. This article examines a nationwide survey of 104 systems analysts in education, government, and for-profit organizations and is designed to elicit information concerning the personal characteristics and training backgrounds of systems developers who choose the prototyping technique. The study also analyzes organizational environments in which prototyping is used.  相似文献   

10.
Requirements engineering is an important component of effective software engineering, yet more research is needed to demonstrate the benefits to development organizations. While the existing literature suggests that effective requirements engineering can lead to improved productivity, quality, and risk management, there is little evidence to support this. We present empirical evidence showing how requirements engineering practice relates to these claims. This evidence was collected over the course of a 30-month case study of a large software development project undergoing requirements process improvement. Our findings add to the scarce evidence on RE payoffs and, more importantly, represent an in-depth explanation of the role of requirements engineering processes in contributing to these benefits. In particular, the results of our case study show that an effective requirements process at the beginning of the project had positive outcomes throughout the project lifecycle, improving the efficacy of other project processes, ultimately leading to improvements in project negotiation, project planning, and managing feature creep, testing, defects, rework, and product quality. Finally, we consider the role collaboration had in producing the effects we observed and the implications of this work to both research and practice.  相似文献   

11.
12.
Designing and reasoning about real-time systems are difficult activities, in which timing and reactive behaviour requirements add significant complexity to system validation. In this paper, a new technique for distributed prototyping of real-time systems is presented. It enables system prototypes to be concurrently developed and tested by a geographically distributed team, in such a way that each developer can validate his or her part of the system against the other parts which are being built in other development sites. A set of tools has been implemented that supports validation of functional and time behaviour through distributed animation of graphical prototypes with a consistent vision of simulated time.  相似文献   

13.
Selecting the architecture that meets the requirements, both functional and non-functional, is a challenging task, especially at the early stage when more uncertainties exist. Architectural prototyping is a useful approach in supporting the evaluation of alternative architectures and balancing different architectural qualities. Generative programming has gained increasing attention, but it mostly deals with lower-level artifacts; hence, it usually supports lower degrees of software automation. This paper proposes an architecture-centric generative approach in facilitating architectural prototyping and evaluation. We also present our empirical experience in raising the level of abstraction to the architecture layer for distributed and concurrent systems using GenVoca. GenVoca is a generative programming approach that is used here to support the generation or instantiation of a particular architectural pattern in distributed computing based on user’s selection. As a result, it can support rapid architectural prototyping and evaluation of both functional and non-functional requirements and encourage greater degrees of software automation and reuse. Lessons learned from the empirical study are also reported and could be applied to other areas.  相似文献   

14.
Health care is characterized by highly complex processes of patient care that require unusual amount of communication between different health care professionals of different institutions. Sub-optimal processes can significantly impact on the patient’s health, increase the consumption of services and resources and in severe cases can lead to the patient death. For these reasons, requirements engineering for the development of information technology in health care is a complex process as well: without constant and rigorous evaluation, the impact of new systems on the quality of care is unknown and it is possible that badly designed systems significantly harm patients. To overcome these limitations, we present and discuss an approach to requirements engineering that we applied for the development of applications for chemotherapy planning in paediatric oncology. Chemotherapy planning in paediatric oncology is complex and time-consuming and errors must be avoided by all means. In the multi-hospital/multi-trial-centre environment of paediatric oncology, it is especially difficult and time-consuming to analyse requirements. Our approach combines a grounded theory approach with evolutionary prototyping based on the constant development and refinement of a generic domain model, in this case a domain model for chemotherapy planning in paediatric oncology. The prototypes were introduced in medical centres and final results show that the developed generic domain model is adequate.  相似文献   

15.
Linguistic Problems with Requirements and Knowledge Elicitation   总被引:1,自引:0,他引:1  
Human and conversational aspects of requirements and knowledge identification are employed to show that requirements ‘engineering’ is not the same as civil engineering or scientific problem solving. Not only can requirements not be made fully explicit at the start of a project, they cannot be made fully explicit at all. A need is identified to enhance computer-based information systems (CBIS) development methods to accommodate: plurality of incommensurable perspectives, languages and agendas; dynamic representations of system features that can be experienced rather than abstracted and forced into an abstract paper-based representation; recognition that CBIS development is in general a continuous process where users changing their minds is a natural and necessary indication or organisational vitality.  It is suggested that prototyping and rapid application development go some way to addressing these requirements but that they require further development in the light of the theoretical light thrown on the nature of the problem.  相似文献   

16.
17.
Developing software through systematic processes is becoming more and more important due to the growing complexity of software development. It is important that the development process used integrates security aspects from the first stages at the same level as other functional and non-functional requirements. Systems which are based on Grid Computing are a kind of systems that have clear differentiating features in which security is a highly important aspect. The Mobile Grid, which is relevant to both Grid and Mobile Computing, is a full inheritor of the Grid with the additional feature that it supports mobile users and resources. A development methodology for Secure Mobile Grid Systems is proposed in which the security aspects are considered from the first stages of the life-cycle and in which the mobile Grid technological environment is always present in each activity. This paper presents the analysis activity, in which the requirements (focusing on the grid, mobile and security requirements) of the system are specified and which is driven by reusable use cases through which the requirements and needs of these systems can be defined. These use cases have been defined through a UML-extension for security use cases and Grid use cases which capture the behaviour of this kind of systems. The analysis activity has been applied to a real case.  相似文献   

18.
Because of the differences in the nature of rapid prototyping (RP) processes, there is no standard machine path code for them. Each RP process, based on its characteristics and requirements, uses the standard CAD file format to extract the required data for the process. Selective inhibition of sintering (SIS) is a new layered fabrication method based on powder sintering. Like other RP systems, SIS needs a specialized machine path generator to create an appropriate machine path file. Machine path (i.e., boundary path and hatch path) should produce the printing pattern that enables the SIS machine user to easily remove the fabricated part from the surrounding material. A new machine path algorithm, which generates appropriate boundary and hatch paths for the SIS process is proposed. The new machine path generator provides the ability to process CAD models of any size and complexity, the ability for machine path verification before sending the file to the SIS machine, and the ability to fix the possible STL files disconnection errors. In this system, very large STL files can be processed in a relatively small computer memory. The system has been successfully tested on STL files as large as 200 MB. The generated path files have been used in fabrication of several parts by the SIS process.  相似文献   

19.
Rapid prototyping or 'virtual prototyping' of human-machine interfaces offers the possibility of putting the human operator 'in the loop' without the effort and cost associated with conventional man-in-the-loop simulation. Advocates suggest that rapid prototyping is compatible with conventional systems development techniques. It is not clear, however, exactly how rapid prototyping could be used in relation to conventional human factors engineering analyses. Therefore, an investigation of the use of the VAPS virtual prototyping system was carried out in five organizations. The results show that a variety of task analysis approaches can be used to initiate rapid prototyping. Overall, it appears that rapid prototyping facilitates an iterative approach to the development of the human-machine interface, and that is most applicable to the early stages of systems development, rather than to detailed design.  相似文献   

20.
Information systems have always been developed through social processes, wherein actors playing a variety of specialized roles interact to produce new business applications of information technology. As systems development practices continue to evolve, an ongoing assessment of their social implications is required. This paper develops a framework for understanding the potential social implications of an emerging, component-based development paradigm. Like two alternative paradigms for systems development, the traditional life-cycle and the iterative-incremental paradigms, the new component-based paradigm requires that certain generic roles be performed to build a desired application. For each paradigm, we identify the actors who play different roles, specify the nature of their interdependence, and indicate the requirements for managing conflicts constructively. The framework may guide research into the social dynamics of system development and serve as a tentative guide to the management of information systems development.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号