Software Development Trends 2010-2011
Upcoming SlideShare
Loading in...5
×
 

Software Development Trends 2010-2011

on

  • 1,812 views

Presentation as a guest at City College of upcoming Software Development trends in 2010-2011 at 24/01/2010.

Presentation as a guest at City College of upcoming Software Development trends in 2010-2011 at 24/01/2010.

Statistics

Views

Total Views
1,812
Views on SlideShare
1,803
Embed Views
9

Actions

Likes
0
Downloads
31
Comments
0

1 Embed 9

http://www.schoox.com 9

Accessibility

Categories

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.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Software Development Trends 2010-2011 Software Development Trends 2010-2011 Presentation Transcript

  • S OFTWARE D EVELOPMENT T RENDS 2010
  • Contact Details
      • Charalampos Arapidis
      • [email_address]
      • OTS S.A. Employee
      • Senior Software Developer
  • Past Trends that failed to pick up
      • Java FX – epic fail
      • Sun’s software platform for creating RIAs
      • OOXML – global fail
      • Office Open XML file format
  • Trends in 2010
      • Agile Project Management + OSS
      • eGif eGovernment Interoperability Framework
      • Web Applications – HTML 5
  • Agile and OSS
      • Is Agile a trend?
      • Open Source Software: maturity and stability
      • Agile principles, benefits, adoption rate increase
      • Flexible OSS enables better agile implementation
  • Agile Project Management
  • Open Source Software
  • Characteristics of the Agile Methodology
      • Based on iterative development
      • Emphasizes on building releasable software in short time periods
      • The project undergoes frequent inspection and adaptation
      • Customer collaboration – requirements’ changes are expected and welcomed.
      • Continuous delivery of working software
      • Constant communication between members of a self-organized team
      • Regular adaptation to changing circumstances
  • Agile Manifesto The Four Values of Agile
      • Individuals and interactions over processes and tools
      • Working software over comprehensive documentation
      • Customer collaboration over contract negotiation
      • Responding to change over following a plan
  • The Agile Process
  • Why Agile
      • Delivers Business value early – stakeholders are happy
      • Reactive and adaptive to changes in requirements
      • Responsiveness to changing needs and understanding
      • Predictable reliable results
      • Greater communication and interaction among team members improves skill building
      • Mature and open source Project Management Tools
  • 6 Dimensions of Economic & Organizational ROI ( these SHOULD be Measured )
      • Improved Efficiency due to optimized process
      • Higher Productivity due to improved morale
      • Cost Control due to Superior On-Time Performance
      • Higher Quality due to improved Defect Removal
      • Benefit Improvement due to Integral Customer Feedback
      • Benefit Acceleration due to Incremental Delivery
  • AN AGILE TEAM IN A NON-AGILE ENVIRONMENT WILL NOT SURVIVE
  • Conclusion
      • Agile: a misunderstood methodology
      • Companies ready to give up Command-and-Control for Agile teams
      • Flexible OSS makes easier to follow Agile practices
  • eG overnment I nteroperability F ramework
      • Today’s Information Age offers the possibility of communication across borders.
      • The need to standardise and allow for interoperability is growing.
      • IDABC stands for  I nteroperable  D elivery of European eGovernment Services to public  Administrations , Businesses  and  Citizens .
      • The European Interoperability Framework supports the European Union's strategy of providing user-centred eGovernment services by facilitating, at a pan-European level, the interoperability of services and systems 
  • eG overnment I nteroperability F ramework
      • What is eGif
      • Basic principles and standards of the framework
      • Modeling government’s infrastructure
      • O.T.S. Case Study
  • eGif A common platform for developing services
    • An effort to standardize the way e-Services are implemented in order to enable interoperability and communication.
    • Semantic representation of the Government’s Authorities at service and data level.
    • Basic Principles
      • Reusablity
      • Flexibility
      • Standards
      • Security
  • Standards of the eGif
      • XML Signature XML-Dsig & Encryption
      • Public Key Infrastructure ( PKI )
      • BPEL
      • UML 2.0
      • XSD XML XSLT – W3C
      • WSDL + SOAP
  • Modeling the real world
  • Modeling produces Common Language
      • Each European state registers by priority physical services and forms exposed to the Citizen.
    • The real world interaction between the Citizen and the Government’s Organizations translates to :
      • Business Objects ( Business Information Entities )
      • Activity Diagrams
      • Data Models ( xsd schemas )
      • Metadata ( approved Data Types and Codelists )
  • How the components connect and relate to the xsd and xml schemas.
  • Core Components & Business Information Entities example
  • The Citizen Entity
  • Qualified Datatype extension
  • Qualified Datatype base
  • Marital status Codelist <xs:simpleType name=&quot;MaritalConditionCodeContentType&quot;> <xs:restriction base=&quot;xs:token&quot;> <xs:enumeration value=&quot;1&quot;> <xs:annotation> <xs:documentation xml:lang=&quot;eng&quot;> <ccts:Name>Single</ccts:Name> </xs:documentation> <xs:documentation xml:lang=&quot;ell&quot;> <ccts:Name>Άγαμος, Ανύπανδρος</ccts:Name> </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value=&quot;2&quot;> <xs:annotation> <xs:documentation xml:lang=&quot;eng&quot;> <ccts:Name>Married</ccts:Name> </xs:documentation> <xs:documentation xml:lang=&quot;ell&quot;> <ccts:Name>Έγγαμος, Παντρεμένος</ccts:Name> </xs:documentation> </xs:annotation> </xs:enumeration> .. </xs:simpleType>
  • Real use case: The Coverletter The cover letter communicated between two (or more) public authorities regarding an issue of common interest or that mutually affects them.
  • Coverletter : root of the xsd schema
  • Coverletter : xsd definitions
  • The Services The services communicate using SOAP messages. The XML data of the messages validate against the xsd schemas to ensure data integrity and validity.
  • Conclusion
      • eGif – a complete global framework
      • A Paradigm for reusability and standardization
      • Not for eGovernment services only
      • Provides a solid ground for any project
  • HTML 5.0
      • Aim of the new spec. Is it necessary?
      • What happened in 2009?
      • Participants and Supporters
      • Features and Components
  • What happened in 2009
      • Google gears up for HTML 5
      • Mozilla Firefox 3.5 has been released with HTML 5 support
      • Microsoft joins HTML 5 standard
  • HTML 5.0 the proposed next standard for HTML 4.01, XHTML 1.0
    • HTML5 aims to
      • reduce the need for proprietary plug-in-based rich Internet application (RIA) technologies such as Adobe Flash , Microsoft Silverlight , and Sun JavaFX .
  • WHATWG : Web Hypertext Application Technology Working Group
      • The specification is an ongoing work
      • The specification’s draft became final as of October 2009
      • Incorporates Web Forms 2.0 spec
      • Main editors of the spec: Google & Apple
  • How it all started
      • Need for complex and rich interfaces
      • Presentational elements deprecated
      • Emphasis on the importance of DOM Scripting in Web Behavior
      • Introduction of new elements – semantic replacements for generic and meaningless tags
  • Some of the new features
      • Offline Storage – cookies at a whole new level
      • Document – region editing
      • Management of the browser history – the Back button was always a big problem.
      • Elements: drag’n’drop, calendar, progress, section, header etc
  • Google’s VP states: &quot;we're betting big on HTML 5.&quot;
  • Current Browser Support implemented or emulated
  • Advanced features
      • Application caches: the developer can declare which resources the browser to cache – better control over caching, less bandwidth “wasted” – ability to “save” application locally and run offline.
      • Client-side Javascript database support : easy to build offline apps 10mb local storage
      • Web Workers: Background Threading mechanisms available to the browser – 10x faster execution.
  • Features
      • Real apps in the browser . APIs for in-browser editing, drag and drop, back button “waypoints,” and other graphical user interface abilities – calendar, progressbar etc.
      • Content presentation tags will be phased out , we have CSS for this
      • Rich animations without plug-ins. The canvas element gives the browser the ability to draw vector graphics . This means configurable, automatic graphs and illustrations right in the browser without Flash or Silverlight. Some support for canvas is already in all the latest browsers except for IE
  • Features
      • Localized databases . This feature, when implemented, automatically embeds a local SQL database websites can read and write to, speeding up interactive searching , cacheing and indexing functions, or for offline use of web apps that rely on data requests.
      • A new, sensible tagging strategy. Instead of bundling all multimedia into object or embed tags, video goes in video tags . Audio goes in audio tags, and so on.
  • The canvas element it is not an image, it is a vector
  • Progress element <progress value=&quot;250&quot;max=&quot;1000&quot;>
      • Creates an autocomplete input field!
    • <input type=&quot;text&quot; name=&quot;favCharacter&quot; list=&quot;characters&quot;>
    • <datalist id=&quot;characters&quot;>
    • <option value=&quot;Homer Simpson&quot;>
    • <option value=&quot;Bart&quot;>
    • <option value=&quot;Fred Flinstone&quot;>
    • </datalist>
    • </input>
    Datalist
  • Datagrid
      • In a datagrid, data is structured as a set of rows representing a tree, each row being split into a number of columns.
      • Enables row selection and selection model e.g. multiple=&quot;multiple&quot; means user can select multiple rows
      • And supports all global HTML 5 attributes such as
      • contetneditable
      • contextmenu
      • draggable
      • etc..
  • Experimental Appliances
      • Youtube built entirely in HTML 5 – ( no flash )
      • Offline Gmail in mobile browser
  • HTML 5 : Good news for the developer
  • JSF – HTML
      • Date selector
      • Autocomplete input field
  • Date Selector
    • JSF
      • The component is not implemented
      • Extend UIInput
      • Create new tag and taghandler
      • Implement the renderer and the encode-decode methods – ( localization )
      • Inject and cache necessary javascript and css files – ( bandwidth )
      • Test test test
    • HTML
      • The component is built in the browser
      • UI is implemented by the browser following the spec
      • Automatic locale detection or
      • Retrieve from the offline storage
      • No bandwidth loss
  • Autocomplete input field
      • Autocomplete + much data = bad user experience
      • No need for arcane javascript and weird css,
      • It is the browser’s responsibility to create the UI
      • Suggestion values can be stored offline and observed
      • Reduce / nullify application server and DB hits
  • Conclusion
      • Designed with Web Apps in mind
      • Backed up by major software companies
      • Not another abstract W3C spec
      • Holy Grail of Web Authoring?
  • Other trends
      • jQuery: write less do more
      • JSF 2: ajax enabled, components composition
      • J2EE6: Bean Validation, CDI, Servlet 3
  • EOF
      • More companies adopt Agile, use OSS to apply best practices
      • Promotion to establish the concept of interoperable systems at pan-European level
      • HTML 5 spec targets Web Applications with user experience and ease of development being top priorities