A Presentation on Forward Engineering Presented by : MOHAMMAD WARIS HALEEM & MARLON CARLOS MOISES BACHELOR OF ENGINEERING IN COMPUTER ENGINEERING SVBIT
Titles and Contents List Software Engineering Diagram Forward Engineering Forward Engineering fo r Client Server Architectures Forward Engineering for Object Oriented Architectures How Forward Engineering for OOAs is Done? Difference between Forward and Reverse Engineering Conclusion
Software Engineering Diagram Software engineering is a discipline in which theories, methods and tools are applied to develop a professional software.
Forward Engineering The forward engineering process applies software engineering principles, concepts, and methods to re-create an existing application. In most cases, forward engineering does not simply create a modern equivalent of an older program. Understanding between people; common feeling . New user and technology requirements are integrated into the reengineering effort. The redeveloped program extends the capabilities of the older application.
Many mainframe applications have been reengineered to accommodate client-server architectures (including WebApps). Following are the features of this re-engineering process: Application functionality migrates to each client computer . New GUI interfaces are implemented at the client sites . Database functions are allocated to the server . Specialized functionality (e.g., compute-intensive analysis) may remain at the server site . New communications, security, archiving, and control requirements must be established at both the client and server sites . Forward Engineering for Client Server Architectures
Forward Engineering for Object Oriented Architectures Object-oriented software engineering has become the development paradigm of choice for many software organizations. But what about existing applications that were developed using conventional methods? In some cases, the answer is to leave such applications “as is.” In others, older applications must be reengineered so that they can be easily integrated into large, object-oriented systems.
First the existing software is reverse engineered so that : Appropriate data Can Be Collected Functional models Can Be Created Behavioral models Can Be Created If the reengineered system extends the functionality Use Cases Data Models CRC modeling (to establish the basis for the definition of classes .) How Forward Engineering for OOAs is Done?
Conti… For those classes that must be engineered from scratch, it may be possible to reuse algorithms and data structures from the existing conventional application. However, these must be redesigned to conform to the object-oriented architecture.
Difference between Forward and Reverse Engineering Forward Engineering is a process on constructing a system for specific purpose. Reverse Engineering is a process of de-constructing a system in order to extend the functionalities or in order to understand the working of the system .
Conclusion Forward engineering is the process of building from a high-level model or concept to build in complexities and lower-level details . Generally, forward engineering is important in IT because it represents the 'normal’ development process. For example, building from a model into an implementation language. Forward engineering is thus related to the term 'reverse engineering,’ where there is an effort to build backward, from a coded set to a model, or to unravel the process of how something was put together.
Start Where You Are Use What Y ou Have Do What You Can…