Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and Development Environments

1.113 Aufrufe

Veröffentlicht am

Slides from Oracle's ADF Architecture TV series covering the Planning & Getting Started phase of ADF projects, specifically the planning & getting started tasks to think about.

Like to know more? Check out:

- Subscribe to the YouTube channel - http://bit.ly/adftvsub
- Planning and Getting Started Playlist - http://www.youtube.com/playlist?list=PLJz3HAsCPVaRzwcWgFLjMWDDT6OV1x2ma
- Read the episode index on the ADF Architecture Square - http://bit.ly/adfarchsquare

Veröffentlicht in: Technologie
  • Was a little hesitant about using ⇒⇒⇒WRITE-MY-PAPER.net ⇐⇐⇐ at first, but am very happy that I did. The writer was able to write my paper by the deadline and it was very well written. So guys don’t hesitate to use it.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and Development Environments

  1. 1. 1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  2. 2. 2 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ORACLE PRODUCT LOGO Planning & Getting Started: Team, Skills and Development Environments Real World ADF Design & Architecture Principles 15th Feb 2013 v1.0
  3. 3. 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Learning Objectives •  At the end of this module you should be able to: –  Understand what roles are required to support an ADF project –  What tools, hardware and infrastructure you need to get in place –  How do you prepare for an ADF project Image: imagerymajestic/ FreeDigitalPhotos.net
  4. 4. 4 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Team Size, Roles, Expertise •  Developer Tools •  Developer PCs •  Database & WLS Setup for Development Environments
  5. 5. 5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Exercise We've an unlimited budget! What roles would we like to support our ADF project with? Both technical and non. Image: imagerymajestic/ FreeDigitalPhotos.net
  6. 6. 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. How Big Should Our Project Team Be? •  There isn't a 1 size fits all –  Team size directly relates to the application size & requirements –  Small developments = 1 team member with multiple responsibilities –  Large developments = multiple teams with multiple members & separate responsibilities Image: Simon Howden / FreeDigitalPhotos.net
  7. 7. 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Development Roles Each project team •  ADF team leader •  ADF developer(s) Preferably •  Database developers •  Java expert (more soon) •  Java EE expert (more soon) •  JSF expert Image: marin/ FreeDigitalPhotos.net
  8. 8. 8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Supporting Design Roles •  Enterprise architects •  System architects •  Database architects •  FMW skilled architects •  Web designers •  User experience advocates Image: tungphoto / FreeDigitalPhotos.net
  9. 9. 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Supporting Technical Roles •  Change control administrators •  Database administrators •  WebLogic Server administrators •  LDAP administrators •  Firewall administrators •  SSL security administrators •  DevOps Image: David Castillo twobee / FreeDigitalPhotos.net
  10. 10. 10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Software Development Roles •  IT manager •  Project manager •  Enterprise architect •  Change control officers •  Risk managers •  QA managers •  Documentation writers Image: David Castillo Dominici/ FreeDigitalPhotos.net
  11. 11. 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Supporting QA Roles •  Development and Code QAs •  Load/stress testers •  Functional testers •  Users/system custodians Image: David Castillo Stuart Miles / FreeDigitalPhotos.net
  12. 12. 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Users •  Expert users •  Domain knowledge experts •  End users Image: akeeries/ FreeDigitalPhotos.net
  13. 13. 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. It would be great to have a team of Java experts, but most of our team are just starting out. What Java does the average ADF team member need to know? Exercise Image: imagerymajestic/ FreeDigitalPhotos.net
  14. 14. 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. How competent in Java do I need to be for ADF? “Not everybody who writes needs the skills of Shakespeare. But everybody who writes need to follow rules of spelling and grammar in order to make themselves understood. Every programmer on the project needs to know Java as a programming language and to be able to write syntactically correct Java code. But not everyone who writes Java code needs to be a virtuoso with full command of inheritance, interfaces and inner classes.” Sten Vesterli’s Oracle ADF Enterprise Application Development Made Simple
  15. 15. 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Java Skills for Average ADF Developers Java SE 7 Programming I þ  Java Basics þ  Working with Java Data Types þ  Using Operators and Decision Constructs þ  Creating and Using Arrays þ  Using Loop Constructs þ  Working with Methods and Encapsulation þ  Working with Inheritance þ  Handling Exceptions Java SE 7 Programming II þ  Java Class Design þ  Java Advanced Class Design þ  Object-Oriented Principles ☐ String Processing þ Exceptions ý Assertions ☐ Java I/O Fundamentals ☐ Java File I/O ☐ JDBC ý Threads ý Concurrency ☐ Localization ? ? ? ? ?
  16. 16. 16 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Java EE Skills •  At least 1 team member should be knowledge in the following Java EE technologies: –  Servlets –  HTTP Session –  Vanilla JSF and the JSF lifecycle •  Be warned –  Some highly skilled Java EE programmers will not want to work with ADF –  They are trained and knowledgeable in core Java EE technologies and competing frameworks –  Typically will have open-source preference –  And human nature dictates experts can be defensive of their preferences –  Be careful they don't convince you against why you chose ADF in the first place
  17. 17. 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Competence •  Ensure to have at least one experienced ADF programmer on the team •  Put all the team on ADF training •  Preferably both! •  Start with a small project – THINK BIG (not the other way round) •  ADF is a massive framework with a huge array of features •  Teams will struggle to learn everything in a short timeframe •  = A large risk to ambitious deadlines or complicated projects Image: phanlop88 / FreeDigitalPhotos.net
  18. 18. 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Community Participation Encourage staff to: •  Read the ADF manuals •  Share experience internally •  Participate & use the JDeveloper/ADF OTN Forum •  Search Oracle Supports notes •  Lodge (quality!) SRs with Oracle Support •  Keep up to date with ADF announcements & blogs •  Join ADF community groups like the ADF EMG •  Blog and present on ADF •  Attend ADF sessions at conferences like Oracle Open World
  19. 19. 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Other Team Expertise What other expertise does your average ADF programmer need? Source control? ...?
  20. 20. 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Team Size, Roles, Expertise •  Developers Tools •  Developer PCs •  Database & WLS Setup for Development Environments
  21. 21. 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. What software tools besides JDeveloper do you think we should provide our developers to make building software easier? Exercise Image: imagerymajestic/ FreeDigitalPhotos.net
  22. 22. 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Tools to Assist ADF Developers •  Source version control software –  e.g. SVN •  Application Lifecycle Management (ALM) software •  Automated testing software –  e.g. JUnit, Selenium, OATS •  Build & Continuous Integration (CI) software –  e.g. Ant, ojdeploy, Hudson, Cloud Developer Services •  Others? –  e.g. SoapUI, FireBug, UI design tools...
  23. 23. 23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Team Size, Roles, Expertise •  Developer Tools •  Developer PCs •  Database & WLS Setup for Development Environments
  24. 24. 24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs – General Rules •  For any development team over 1 person –  Standardize developer PC setup –  Document everything & update this periodically •  Download and keep the JDeveloper install files from Oracle •  Standardize on –  One JDeveloper edition (e.g. studio edition) –  Set of extensions –  Patches •  Track carefully what version of JDeveloper each application uses
  25. 25. 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs - JDeveloper •  JDeveloper installations need to cater for –  Build scripts that assume location of services –  Case sensitive build scripts –  Moving between operating systems •  Standardize base installation location & allow for multiple installs –  Standardize the directory case across all installations –  Do not use spaces or special characters –  C:OracleJDeveloperJDev111160 or C:OracleJDeveloperJDev112200 •  Standardize "system" installation location too –  Especially useful for requesting Virus Scanner corporate exemptions (more soon) –  Be mindful however different OS versions do move this by default
  26. 26. 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs – JDeveloper Configuration •  JDeveloper Configuration: document and standardize on –  Any changes to ide.conf or jdev.conf –  Any Tools – Preferences updates –  Integrated WLS configurations (consider WLST scripts) –  Database connections –  Change control connections –  Application server connections
  27. 27. 27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs – Hardware Requirements •  Oracle dictates minimum hardware requirements •  But these are the minimum, developers' productivity will suffer •  JDeveloper is memory and IO intensive, and has lots of windows •  The productivity of developers will be enhanced by: –  Additional memory (4GB minimum) –  Large displays (24") –  SSDs (or at minimum 7200RPM or Hybrid HDD) –  Faster CPUs Image: Arvind Balaraman / FreeDigitalPhotos.net
  28. 28. 28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs - Performance Virus scanners: •  Potentially major silent killer of JDeveloper performance •  McAfee virus scanner worst offender •  Ensure to put in appropriate Java exemptions •  Get ready for a fight with enterprise policy bureaucrats
  29. 29. 29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs - Browsers •  Preconfigure PCs with every browser possible –  Enterprise apps: even test with browsers that aren’t corporate standard to identify issues early –  Encourage developers to use a different browser each day –  Previous versions of IE may require VMs as they can't coexist –  Consider same setup for QA PCs as well –  Consider browser extensions such as Firebug
  30. 30. 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Developer PCs – Other Setup Options Consider preconfigured virtual machines
  31. 31. 31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Source Code •  Log an Oracle Support Request •  Make available on your local network •  In JDeveloper source editor provides: –  Quick JavaDoc lookup –  Meaningful parameter insight •  Debugger –  Allows breakpoints and to see values in Oracle source •  Configure: http://bit.ly/adfdevguide111210s3681 •  See Support Note: 971256.1
  32. 32. 32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Team Size, Roles, Expertise •  Developer Tools •  Developer PCs •  Database & WLS Setup for Development Environments
  33. 33. 33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Development Environment Setup •  Later parts of course will consider server topologies and more •  What infrastructure do we need to get development rolling? Image: Renjith Krishnan / FreeDigitalPhotos.net
  34. 34. 34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Development/Test/Production Environments •  Enterprises typically support 3 types of platforms to assist development: development/test/production •  Typically one set per system or application •  Change control process –  Enhancement & bug fixes recorded in change control system –  Allocated to developers on approval –  Are never applied straight to production –  First developed in “development” –  Once completed tested in (1 of many) “test” environments –  Once ready migrated to “production” for users Production Test Development
  35. 35. 35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Development/Test/Production Environments •  Development/test/prod considerations –  Ownership of each environment –  Change control procedures –  Change control software –  Who manages patching/updating –  Team communications & notifications Production Test Development
  36. 36. 36 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Development Environment •  Development environment –  Typically 1 per system –  Developers share & work with code in development –  Little administrative control, backups not always required –  Code can be inherently bug prone, incomplete, the wrong version, experimental –  Required early on in system lifecycle Production Test Development
  37. 37. 37 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Testing Environments •  Testing environment(s) –  Code formally released from development for testing –  One of a number of environments, e.g. • QA testing, nightly sanity build & deployments, automated regression testing, user acceptance testing, load/stress testing, release testing –  Ideally rebuilt from production regularly –  Ideally a duplicate of production systems + changes –  Not required at the beginning of system lifecycle –  However ideally should be built early on Production Test Development
  38. 38. 38 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Production Environments •  Production environment –  Most important environment –  Strict administrative controls –  Backups critical –  Code only migrated once passed all tests –  Single point of truth for “released” development code Production Test Development
  39. 39. 39 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Environments •  Each environment split into database and WLS •  Test/production environments inherently more complex (e.g. LDAP servers, web servers, clustering. Covered later in course) Production Test Development
  40. 40. 40 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF Environments •  ADF applications on the same ADF Runtimes can share WLS environments •  But different ADF Runtimes require different WLS servers Production Test Development
  41. 41. 41 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF “Database” Environments •  Database changes can have large impact on ADF developers •  Options –  One development database only –  Separate database per team –  Separate database per developer PC •  Who manages patches/updates? Development
  42. 42. 42 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ADF “WLS” Environments •  Development WLS may be unnecessary as developers have an integrated WLS with JDeveloper •  Counter arguments –  A dedicated development environment gives developers another environment to play and collaborate –  Integrated WLS doesn’t reflect production WLS environments –  Sharing web service development required dedicated WLS Development
  43. 43. 43 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.43 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. How do Independent Software Vendors support clients on multiple releases? How to support multiple releases? Do we keep development and test servers for each release? How do we deal with outmoded hardware, O/S, servers tech? What about production copies to test against? Image: imagerymajestic/ FreeDigitalPhotos.net
  44. 44. 44 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.44 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Image: imagerymajestic/ FreeDigitalPhotos.net I was just on the phone with our local Oracle sales office. They want to sell us a full Oracle cloud based solution for our development efforts. Can it really do everything we need?
  45. 45. 45 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Conclusion •  Medium to large scale ADF projects require: –  Experienced and trained staff, including non technical –  Standardized & documented development PCs & infrastructure –  Available tools and expertise –  Documented processes and procedures –  And planning to put all these in place –  You wont have a lot to show, but are essential for successful ADF projects
  46. 46. 46 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Further Reading •  Sten Vesterli’s Oracle ADF Enterprise Application Development Made Simple
  47. 47. 47 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

×