inside jcp
DESCRIPTION
Inside JCPTRANSCRIPT
Inside JCP
Java Community Process and JSRsJUG Chennai & JCPJSR – 331
About me JUG Chennai Lead Project Lead in Logica Java developer since 1999 Areas: ERP, EIP, Manufacture,
Design, Testing, Build, Deployment/Release, Service Delivery
Contribution: FXObjects, WeaverFX Build Tool, JSR 331
Currently brewing: JVM Languages, JavaFX, Glassfish, OSGi, Eclipse, Build, JSR 331
Ecosystem
http://www.readwriteweb.com/enterprise/2011/01/the-java-ecosystem-infographic.php
One ring to rule them all, one ring to find them,One ring to rule them all, one ring to find them,One ring to bring them all and in the darkness bind themOne ring to bring them all and in the darkness bind them.
About JCP
Established in 1998 A control center for developing
standard technical specifications for Java technology.
Manages JSR lifecycle. The core output of the JCP
About Java Specification Request
A single version of a Java Specification.
Lead by a single leader called Spec Lead who forms and manages a Expert Group (The team who helping on the specification)
Artifacts of JSR
Specification Detail document talks about the Spec.
The real idea Reference Implementation (RI)
Complete implementation of the spec. By product of the idea
Technology Compatibility Kit (TCK) The working examples of the RI against
Spec. Proof of the workign
JSR Overall schedule of events
http://jcp.org/en/introduction/timeline
Java Specification Participation Agreement (JSPA) A legal contract between
members and Oracle. Addresses Intellectual Property
(IP) grants and the terms under which the spec, RI, and TCK should be licensed.
Governance
http://www.jcp.org/aboutJava/communityprocess/JSPA2.pdf
JCP 2: Process Document Defines the governance of the
organization. Defines the processes that are
used to submit define, develop, review, approve, and maintain specifications.
Defines the obligations to produce an RI and TCK, and to
Define a test challenge process
Governance
http://jcp.org/en/procedures/jcp2
Organization
Organization Roals JCP Chair
Leads the organization and manages the PMO. Program Management Office (PMO)
Manages day-to-day operations of the organization. Executive Committees
Define JCP governance, processes, and contractual terms of membership.
Vote on JSRs at defined stages through the process. Expert Groups
Create JSRs (write the spec, develop the RI and TCK). Members
Review specs, may participate in Expert Groups, vote in Executive Committee elections.
Executive Committees Two Executive Committees:
One for Java ME and one for Java SE and Java EE combined.
Each EC has 16 members. Oracle has a permanent seat on each
EC. 10 of the other 15 seats are ratified by
Oracle. Oracle nominates a candidate; the
entire JCP membership approves via ballot.
The remaining 5 seats are elected (any JCP member may nominate themselves.)
Yearly elections reconfirm or replace one-third of the members.
ECs meet ~monthly by phone, 3 times a year face-to-face.
EC meeting minutes are public.
http://jcp.org/en/resources/EC_summaries
Executive Committee responsibilities Review and vote on all JSRs associated with their EC. Evolve the JSPA and the Process Document.
The JSPA and Process Document are modified through the JSR process itself.
The Executive Committees serve as the Expert Group for JSRs that make these changes; the Chair is the Spec Lead.
JSR 99 defined the JSPA, JSR 215 defined the Process Doc.
Two new JSRs to evolve the JSPA and Process Doc will be filed soon (JCP.next.)
Represent their own interests to the JCP and the JCP to the developer and user community.
Advise the PMO.
Current Executive Committee membership Java ME EC
– Stefano Andreani, Aplix, AT&T, CableLabs, IBM, Nokia, Oracle, RIM, Samsung, Sean Sheedy, Siemens, SK Telecom, T-Mobile, TOTVS,Vodafone.
– One vacancy recently filled by a Special Election (Alex Terrazas).
• Java SE/EE EC Credit Suisse, Eclipse, Ericsson, Fujitsu, Google,HP,
IBM, Intel, Werner Keil, Oracle, Red Hat, SAP, Vmware.
Three vacancies recently filled by a Special Election (Goldman Sachs, SouJava, London Java Community).
Spec Lead The individual or institutional owner and driver of a
JSR. Recruits and organizes the activities of the Expert
Group. Responsible for delivering the Spec, RI, and TCK.
Intellectual Property rights to the technology incorporated in the JSR accrue to the Spec Lead. Subject to obligations incurred under the JSPA.
The Spec Lead is free to define the terms under which the RI, and TCK will be licensed. Subject to obligations incurred under the JSPA.
Oracle is the Spec Lead for the three existing Platforms: Java ME, Java SE, and Java EE.
Expert Group The Expert Group is recruited and led by the Spec
Lead. All members of the JCP are eligible to join. Participation by all interested parties is encouraged
and desirable. The EG works as a team to define the JSR and to
develop the Spec, RI, and TCK. The EG is free to define its own working style.
When and how often it meets, how it makes decisions...
Transparency is strongly encouraged. EGs must explain their transparency strategy:
Public aliases, public issue list, Wikis, blogs... EGs must respond publicly to comments.
The membership
Anyone who willing to spend their experience and time for the community can join.
Total membership is approximately 1500.
• 3700 registered users at jcp.org (not affliliated with a member).
JCP Update Two JSRs will be filed soon to update the
JCP's processes and constitution. As defined in the Process Document and JSPA.
JCP.next JSR1 will focus on simple changes that can be implemented within about six months. http://jcp.org/en/jsr/detail?id=348
JCP.next JSR 2 will implement more complex changes, including any that require modifying the JSPA. This will take 12-18 months to complete.
Both JSRs will operate transparently. Open for observe and give feedback.
JCP and Indians
46 members, 129 EG participants, 1218 registered users (includes members). Members include JUG Chennai, Pramati
Technologies, Tata Consultancy (and Limited), Wipro
JUGChennai & JCP
Motivate members to participate in JCP
Encourage members to reviewing and provide feedback.
Guide members to join JSRs
To join JUGChennai JCP community…
Active Participation in the community (consume & contribute both)
At least 4 years of experience Contributor in any project is a plus! Presented at least 2 JSRs (not yet final) in JUG
meeting. Must follow the JCP JSPA (will be provided once
a member is confider.)
http://jug-c.wikispaces.com/JCP+Community
JSR 331: Constraint Programming API
http://jcp.org/en/jsr/detail?id=331 Spec Lead: Jacob Feldmanhttp://cpstandard.wordpress.com http://cpstandards.org
Constraint Programming Constraint Programming (CP) is a
programming paradigm which provides useful tools to model and efficiently solve constraint satisfaction and optimization problems
Started in 1980s in the field of AI Prolog III CLP R , CHIP
Application of CP Scheduling, sequencing, resource and personnel
allocation, etc. etc.
JSR – 331
A specification to define a Java runtime API for constraint programming. The CP API prescribes a set of fundamental operations used to define and solve constraint satisfaction and optimization problems.
Concepts
CP demarcation (All concepts revolves around any of these two category)
Problem Definition – About the ‘Problem’ root for variables and constraints
Problem Resolution – About the ‘Solver’ to execute different Search strategy called goals to find Solution for problem
A problem may have multiple solutions that produce different solutions pursuing different objectives.
Concepts..
Problem ConstraintedObject (such as Var) Constraint
Solver Goal Solution
Walkthrough of the JSR-331
JSR Stages Specification Reference Implementation (RI)
(JavaDoc) Technology Compatibility Kit (TCK)
References “JCP: The Future of java” by Heather VanCura http://jcp.org http://jcp.org/en/jsr/egnom?id=331 http://cpstandard.wordpress.com http://cpstandards.org http://4c110.ucc.ie/cpstandards/forum http://hsimonis.wordpress.com