1
Under the guidance of: Presented by:
Prof. Milind Gaikwad Kundan Kumar [Exam No- 828318]
Kumar Sourabh [Exam No- 828297]
Ujjwal Kumar Singh [Exam No- 828289]
Project On
Abstraction System
Old system New System
Forward EngineeringRe-Implementation
Reverse EngineeringAbstraction
RE encompasses any activity that is done to
determine how a product works, to learn the
ideas and technology that were used in
developing that product.
RE can be done at many levels
RE generally belongs to Software Maintenance
4
INTRODUCTION
OBJECTIVE
SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENTS
USER INTERFACE DESIGN
ASSUMPTIONS
BASIC MODULES
CONSTRAINTS
APPLICATION
FEW RELATED SOFTWARE
ADVANTAGES
FUTURE SCOPE
REFERENCES
5
INTRODUCTION
Reverse engineering is the way used togenerate the model from developed modules,files. In this, using concept of reverseengineering we have decided to reverseengineer the java source files and generatethe UML class diagrams from it which willhelpful to understand model used in javasource code.
Programming Language used – JAVA
IDE - Eclipse
Reverse engineer java source files into UML Class Diagrams.
Class diagrams will include the displaying member data, member functions, visibility of member data and member functions along with relationships between two or many classes.
The relationship includes composition, aggregation, association, generalization and dependency. It also displays the inheritance and implements relationships.
Software used :
1. Eclipse
Core Java – Functionality Development
Java Swing – UI Development
2. Graphviz
1. Pentium IV Processor or above
2. 256 MB RAM
3. 10 GB HDD
Operating System :
1. Window 98
2. Window 2000
3. Window XP
4. UNIX / LINUX
The class diagram shows the static structures of the system.
A class is depicted on the class diagram as a rectangle with three horizontal sections The upper section shows the “class name” the middle section contains the “class attributes” and the lower section contains “class methods”.
The UML class diagram can serve as the basicblueprint for developing software systems, andtransform to Java classes easily.
A class diagram can be used to display logicalclasses, which are typically the kinds of thingsthe business people in an organization talk about
Class diagrams can also be used to showimplementation classes, which are the thingsthat programmers typically deal with.
The Doclet tools.jar should be added in the software.
The graphviz image graph generation tool should be installed on computer else the image will not create.
Eclipse should use the correct java version, it should not use old java version.
The java source files should use tags mentioned.
13
BASIC MODULES
Java Source File Selector
UML Generator
Third party Image Generator
Select java source file .
Extract the filename without extension .
Send file name to Java File parser .
Java parser parses file using Java Doclet tool, Pattern and Matcher java classes
Class Identifier identifies class name
Visibility Detector detects visibility
Relationship Finder finds relationship between related classes
Picks up the .dot file
Converts .dot file to image like .gif, .png, .jpg etc.
Returns image file to Image Icon Displayer
The class diagrams allows you to model:
1. classes (specified as Java classes)
2. active classes, components, nodes, use cases,collaborations, and packages (specified as Javaclasses with an @opt shape tag)
3. attributes (specified as Java class fields)
4. operations (specified as Java class methods)
tagged values (using the @tagvalue name value tag)
implementation relationships (specified using the Java implements declaration)
generalization relationships (specified using the Java “extends” declaration or (for multipleinheritance)the javadoc @extends tag)
association relationships (specified using the javadoc @assoc tag)
aggregation relationships (specified using the javadoc @has tag)
composition relationships (specified using the javadoc @composed tag)
dependency relationships (specified using the javadoc @depend tag)
1. Used to create design from java project in IT Firms,Educational Institutes.
2. By some modification can be used for C++ project inIT Firms, Educational institutes.
3. Used to reverse engineer any big product and aftercreating design again go for same productdevelopment and doing some enhancements. Theproduct can be changed and can be createdcompetitive to old products.
1. In future we can go for other UML Diagrams likesequence diagrams, collaboration diagrams.
2. Upgrade to create design of any java, C++ project.
31
REFERENCES
1. www.google.com2. www.eclipse.org3. www.argouml.com4. www.ibm.com5. www.sun.com6. www.graphviz.org7. http://en.wikipedia.org/wiki/Class_diagram
THANK YOU
Recommended