• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Java Development Environment

Java Development Environment



Brief introduction to various development tools used at various development steps such as design, code, build, validate, test and release.

Brief introduction to various development tools used at various development steps such as design, code, build, validate, test and release.



Total Views
Views on SlideShare
Embed Views



1 Embed 2

http://www.linkedin.com 2



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • http://maven.apache.org/guides/getting-started/index.html
  • http://www.uml2.org/documentation_eclipseuml_2008/index.html

Java Development Environment Java Development Environment Presentation Transcript

  • Development Environment for Java
  • Collaboration  Collaboration tools such as GitHub and Huddle are used for collecting and sharing information within the development teams and teams such as release, testing and other development teams
  • Release Management   Version Control System such as SVN and CVS are used to maintain design and code artifacts Branching is done to isolate onto a separate line of development and then merged and tagged
  • Build Environment   Build tools such as Apache Maven can be used to organize the code, compile, validate and test it Continuous Integration Tools can build, validate and test the changes on going basis
  • Design         Design for optimum usage of computer resources such as Memory, CPU, I/O & Connection Follow design principles such as OCP, Liskov Substitution , IOC, Interface, etc Create the Stub classes following JEE design patterns for Controller, View, Model, Listener / Command, Delegate, Facade, Manager & DAO Generate UML diagrams such as Collaboration, Sequence, Activity and Deployment diagrams using the stubs Generate JDependency & JavaNCSS reports and re-factor the stubs based on these report output Design for singleton objects, object pooling, caching (both service & data), queing techniques Use annotation extensively for injecting business services & dao entities, webservice, messaging and transaction Design security as a cross concern (filter, aop, etc) rather than handling it part of the application logic
  • UML
  • Coding     Be conversant with the Java API specification for the core and dependent libraries before referring to forums / google Use Automated Review tools / plugins such as Eclipse Metrics, PMD, Findbugs Update local copy from version control frequently, provide adequate Comments and perform atomic commits For Minor Enhancements perform Impact Analysis on UI, Service, DAO, Configuration, Master Data and provide Help & Release Document
  • Deployment Use Maven and Eclipse plugins to deploy and bootstrap with configuration and master data  Use Maven Profiles to maintain configuration for various environments i.e dev, test and prod 
  • Testing      List down the High Level Scenarios under Functional, Security & Performance categories Identify the various environments and the test cycles Automate Testing using JUnit, TestNG, Marathon, etc Mock actual services with SOAP UI, EasyMock, etc Track Code Coverage using Cobertura, Emma, etc
  • Continuous Integration