Reengineering Legacy Systems Towards New Technologies

Author(s):  
Djelloul Bouchiha

This chapter presents all the concepts, techniques, and analyses in relation to the problem of reengineering existing (legacy) systems towards new technologies. Reengineering is a sub-problem of software engineering. It is the study and analysis of an existing system for purposes of understanding, maintenance, or migration towards new technologies that arise from day to day, without rewriting the software from scratch. This will save us time and money in the software development process. Author's objective is not to create new terms, but to introduce the terms already in use with new perspectives. So in this chapter, definitions and techniques are introduced, taxonomies and models are proposed, relevant questions are answered, some specialized conferences and journals are listed and compared; all this to highlight the ways to authors who are interested in writing research papers or surveys in the software reengineering field.

Author(s):  
Valerio Fernandes del Maschi ◽  
Luciano S. Souza ◽  
Mauro de Mesquita Spínola ◽  
Wilson Vendramel ◽  
Ivanir Costa ◽  
...  

The quality in software projects is related the deliveries that are adjusted to the use, and that they take care of to the objectives. In this way, Brazilian organizations of software development, especially the small and medium ones, need to demonstrate to future customers whom an initial understand of the business problem has enough. This chapter has as objective to demonstrate methodology, strategy, main phases and procedures adopted beyond the gotten ones of a small organization of development of software in the implantation of a Customized Software Engineering Process and of a Tool of Support to the Process in the period of 2004 to 2006 on the basis of rational unified process (RUP) and in the Microsoft solutions framework (MSF).


Author(s):  
Mirna Muñoz

Software has become the core of organizations in different domains because the capacity of their products, systems, and services have an increasing dependence on software. This fact highlights the research challenges to be covered by computer science, especially in the software engineering (SE) area. On the one way, SE is in charge of covering all the aspects related to the software development process from the early stages of software development until its maintenance and therefore is closely related to the software quality. On the other hand, SE is in charge of providing engineers able to provide technological-base solutions to solve industrial problems. This chapter provides a research work path focused on helping software development organizations to change to a continuous software improvement culture impacting both their software development process highlighting the human factor training needs. Results show that the implementation of best practices could be easily implemented if adequate support is provided.


2018 ◽  
pp. 448-462
Author(s):  
Sanjay Misra ◽  
M. Omorodion ◽  
Amit Mishra ◽  
Luis Fernandez

The rapid growth in technology and the dynamism in our society today poses a lot of problems for Software Engineering practitioners. The result is a series of software development process methods that can be used to combat or meet up with the problems. What we can do is evolve, grow, and adapt to the changes that come along with development. This is the dynamism inherent in man—to adapt to change and improve ourselves and our existing systems—since the world is a far cry from what it was a few decades ago. On this basis lay the need to develop the model proposed in this chapter to meet the variations that exist as a result of technological development.


Author(s):  
Pankaj Kamthan

There are various reasons for discussing the issue of ethics within a software engineering context. By participating in a software development process, software engineers can influence the final product, namely the software itself, in different ways including those that may be contrary to public interest. In other words, they could engage in an unethical behavior, inadvertently or deliberately. This could lead to personal harm, and potentially result in loss of confidence in software and loss of trust in organizations that own them. This can adversely affect the acceptance of software as a useful product, question the credibility of software engineering as a profession, lead to legal implications, and impact the bottom line of the software industry at-large.


Author(s):  
HONGHUA DAI ◽  
WEI DAI ◽  
GANG LI

To have an effective and efficient mechanism to store, manage and utilize software sources is essential to the automation of software engineering. The paper presents an innovative approach in managing software resources using software warehouse where software assets are systematically accumulated, deposited, retrieved, packaged, managed and utilized, driven by data-mining and OLAP technologies. The results lead to streamlined high efficient software development process and enhance the productivity in response to modern challenges of the design and development of software applications.


Author(s):  
GIUSEPPE DELLA PENNA ◽  
SERGIO OREFICE ◽  
BENEDETTO INTRIGILA ◽  
DANIELE MAGAZZENI ◽  
ROBERTO DEL SORDO ◽  
...  

In this paper we present SyBeL (System Behaviour modelling Language), an XML based formalism for software system modelling. In particular, SyBeL focuses on the description of the system behaviour in order to capture its functional requirements and has been designed to fulfill some of the most trendy software engineering issues. The use of the underlying XML language makes the artifacts generated by SyBeL immediately available to further automatic manipulation (e. g., to automatically generate test cases) without the need of intermediate models, as usually done in semi-formal approaches. Moreover, we are experimenting SyBeL on a variety of practical case studies.


2011 ◽  
Vol 403-408 ◽  
pp. 4495-4498
Author(s):  
K. Madhuri ◽  
M. Suman ◽  
M. Nalini Sri ◽  
K. Ravi Kumar ◽  
U. Jyothi Kameswari

Security testing involves two approaches; the question of who should do it has two answers. Standard testing organizations using a traditional approach can perform functional security testing. For example, ensuring that access control mechanisms work as advertised is a classic functional testing exercise. Systematic security testing approaches should be seamlessly incorporated into software engineering curricula and software development process. Traditional software engineering textbooks failed to provide adequate methods and techniques for students and software engineers to bring security engineering approaches to software development process generating secure software as well as correct software. This paper argues that a security testing phase should be added to software development process with systematic approach to generating and conducting destructive security test sets following a complete coverage principle. Software engineers must have formal training on writing secure code. The security testing tasks include penetrating and destructive tests that are different from functional testing tasks currently covered in software engineering textbooks Moreover, component-based development and formal methods could be useful to produce secure code, as well as automatic security checking tools. Some experience of applying security testing principles in our software engineering method teaching is reported.


2012 ◽  
Vol 263-266 ◽  
pp. 1921-1924
Author(s):  
Gabriel Lara Baptista ◽  
José Antonio Arantes Salles

The Software Engineering can be considered a new area. During its recent history, many techniques applied for managing and producing software have been taken from Industrial Engineering. It is known that issues related to achieve the deadline, cost and functionalities are being discussed and are still a challenge for software development. This paper aims to propose a software development process model based on concepts of Industrial Engineering. Besides, the paper discusses some standards and models from Software Engineering that helped in the development of the model proposed. The result of this work is the model itself, together with some future works proposed to continue the research.


Author(s):  
Anas AL-Badareen

    Abstract— Since the idea of software reuse appeared in 1968, software reuse has become a software engineering discipline. Software reuse is one of the main techniques used to enhance the productivity of software development, which it helps reducing the time, effort, and cost of developing software systems, and enhances the quality of software products. However, software reuse requires understanding, modifying, adapting and testing processes in order to be performed correctly and efficiently. This study aims to analyze and discuss the process of software reuse, identify its elements, sources and usages. The alternatives of acquiring and using software assets either normal or reusable assets are discussed. As a result of this study, four main methods are proposed in order to use the concept of reuse in the software development process. These methods are proposed based on the source of software assets regardless the types of software assets and their usages.


Sign in / Sign up

Export Citation Format

Share Document