Sdb Presentatie

Click here to load reader

  • date post

    24-May-2015
  • Category

    Documents

  • view

    417
  • download

    4

Embed Size (px)

description

Korte presentatie SDB Softwareontwikkeling

Transcript of Sdb Presentatie

  • 1. Wie zijn we?
    • Professionele ICT dienstverlener
  • Opgericht in 1988
  • 20 man groot(geplande groei komende 2 jaar: 30-40 man)
  • Professionals met ruime ervaring
  • Focus op Software Ontwikkeling
  • Bedrijfskritische applicaties
  • Vooruitstrevend
  • Top 500 bedrijven, maar ook MKB

2. Wat doen we? Dienstverlening

  • Projecten
    • Inhouse of bij Klant
    • Van analyse tot en met onderhoud
    • Efficint door ontwikkelstraten
  • Auditing
  • Consultancy
  • Training en Coaching
  • Detachering

SDB Software Development SDB Professionals 3. Wat doen we? Specialisme

  • Microsoft .NET
    • C#
    • ASP.NET
    • WPF/WF/WCF
  • Java
    • J(2)EE
    • JSF
    • EJB/JPA/JMS
  • Open Source
    • Spring
    • Hibernate

4. Wat doen we? Applicaties

  • Web Applicaties
    • Internet/Extranet/Intranet
    • Web 2.0/Ajax/RIA
  • SOA (Service Orinted Architecture)
    • (Web)Services
    • Integratie met andere processen en applicaties
  • Multi-tier Applicaties
  • (Web)Portals

5. Onze Missie

  • Het optimaal ondersteunen van klanten in hun bedrijfsvoering door het ontwikkelen van volledig op de behoefte afgestemde bedrijfskritische software en (web)applicaties.

6. Onze Aanpak Overzicht

  • Doel
  • Opleveren van kwalitatief hoogwaardige software, op een snelle en regelmatige wijze, zodat er waarde voor de gebruikers van de software gecreerd wordt.
  • Middelen
  • Agile Software Development Methodiek
  • Domain Driven Design
  • Test Driven Development
  • Ontwikkelstraat
  • Skeleton Projecten
  • Nieuwe technologin en frameworks
  • Investeren in kennis en ervaring

7. Onze Aanpak Agile Software Development (1)

  • Agile Software Development Principles*
  • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  • Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
  • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  • Business people and developers must work together daily throughout the project.
  • Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  • Working software is the primary measure of progress.
  • Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  • Continuous attention to technical excellence and good design enhances agility.
  • Simplicity--the art of maximizing the amount of work not done--is essential.
  • The best architectures, requirements, and designs emerge from self-organizing teams.
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

* Official principles behind Manifesto for Agile Software Development. 8. Onze Aanpak Agile Software Development (2)

  • Korte iteraties
    • 2 weken tot een maand
    • Maximaliseer feedback van gebruikers
    • Houd rekening met wijzigingen (zelfs laat in het project)
  • Kleine en logische opgedeelde brokken werk (unit of work)
    • Feature Driven Development
    • Kleine brokken werk kunnen goed ingeschat en ingepland worden
    • Eenvoudig te prioritiseren, te wijzigen, toe te voegen of te laten vallen
  • Hechte samenwerking tussen verschillende rollen
    • Customer, end-user, architect, designer, developer, tester
  • Frequent opleveren werkende software
    • Dagelijkse builds en continuous integration
  • Test zo snel mogelijk
    • Unit testing
    • Acceptance testing
  • Kwaliteits waarborging
    • Coding standards
    • Peer reviews
    • Pair designing en soms programming

9. Onze Aanpak Domain Driven Design

  • Domain Driven Design is ...
  • een ontwerp proces gericht op( functioneel) complexe applicaties, doorde implementatie geheel te baseren op een evoluerend model van de core business van de klant/het proces.
  • niet een technologie of een methodologie. Het is meer een manier van denken en een set van prioriteiten gericht op het versnellen van software projecten die te maken hebben met een gecompliceerd domein.
  • een aanpak waarbij er voor wordt gezorgd dat alle mensen binnen het project (customer, end-user, architect, developer etc.) dezelfde taal spreken.

Kortom,Domain Driven Designeen manier om samen met de mensen die de business echt kennen een model op te stellen, dit op allerlei manieren te testen, aan te passen en uit te breiden om uiteindelijk tot een door alle partijen begrepen model te komen die als basis dient voor de implementatie. 10. Onze Aanpak Test Driven Development

  • Test Driven Development is een ontwikkel proces waarbij eerst eenautomatisch te draaien testwordt geschreven, waarin de requirements van de te schrijven code worden gedefinieerd, voordat de werkelijke code wordt geschreven.
  • Voeg een test toe voor een nieuwe feature
  • Draai alle testen en de nieuwe test zou moeten falen
  • Schrijf de code voor de feature
  • Draai opnieuw alle testen en ze zouden allemaal succesvol moeten zijn
  • Refactor de code

11. Ontwikkelstraat Doelstellingen

  • Gestandaardiseerde en gestructureerde projectuitvoering (fabrieksmatige aanpak)
  • Productiviteitsverhoging (o.a. door modelgedreven ontwikkeling, codegeneratie en hergebruik)
  • Realiseren kortere time-to-market
  • Maximaal benutten bestaande onderdelen (hergebruik)
  • Sneller inspelen op continue veranderende organisaties

12. Ontwikkelstraat Wat en waarom?

  • Gestandaardiseerde projectinrichting, architecturen, processen, tools, frameworks, guidelines en best practices
  • Doel is bereiken van efficintie, voorspelbaarheid, repeteerbaarheid en uitwisselbaarheid

13. Ontwikkelstraat Wanneer biedt het voordelen?

  • Er is sprake van repeterende projecten
  • Veel toepassingen op basis van dezelfde technologie
  • De variteit tussen de type toepassingen is gering
  • Organisatie focust op standaardisatie en efficiency
  • Wisselende teamsamenstellingen en skills

14. Ontwikkelstraat Wat zijn dan de voordelen?

  • Hogere productiviteit door automatisering van het bulkwerk
  • Gegarandeerde kwaliteit in ontwerp, code en documentatie
  • Hergebruik van veelvoorkomende functionaliteitGestandaardiseerde aanpak/werkwijze projecten
  • Standaardisatie d.m.v. ontwerppatronen en best practices

15. Ontwikkelstraat Concepten

  • Projectuitvoering gebaseerd op Agile Development
  • Standaard architecturen (Web-based, Windows desktop, Smart-client, Mobile, Web Services, SOA)
  • Modelgedreven ontwikkeling en codegeneratie
  • Tools, frameworks, design patterns, guidelines, best practices
  • Daily builds and Continuous Integration
  • Highly Testable

16. Ontwikkelstraat Standaard architecturen

  • Web-based applications
    • Gelaagde Client/Server en N-tier architecturen
    • Model-View-Controller/Presenter pattern (MVC/P)
    • AJAX
  • Smart-client applications
    • Rich, desktop client-applications
    • Gelaagde N-tier architectuur
    • Communiceert met back-end over het Internet
    • Downloadable naar desktop d.m.v. Click-Once technologie
  • Service Oriented Architectu