word lid!
NLJUG logo

Editie 2016 - 2

Java Magazine 2016-2

Editie 2016 - 2

Java Magazine nr. 2 - 2016

thema: Software Architecture as code


Artikelen uit Java Magazine 2016-2

  • Identity and Access Management in de 21e eeuw

    Als echte software developers willen we natuurlijk ons vakmanschap tonen en goede producten afleveren. Een echte vakman in 1950, zoals een timmerman, maakte voor elke deur een tekening en ging dan met de hand het hout te pas maken. Inmiddels doen we dat anders. Want hoe mooi we een handgemaakte deur ook vinden, we willen liever dat onze deuren veilig zijn tegen inbraak en dat ze niet rammelen of klemmen. Dus worden ze tegenwoordig in een standaardproces gemaakt, zodat de kwaliteit constant is.

  • Masters of Code reloaded

    Masters of Java (MoJ) is onze welbekende NL-JUG funprogging contest gebaseerd op Java SE, toegankelijk voor iedere Java ontwikkelaar. De wedstrijd wordt jaarlijks georganiseerd in samenwerking met partners, zoals Sogeti. In de wedstrijd worden deelnemers op API kennis en programmeervaardigheid getest en dingen zij in teamverband naar diverse prijzen.

  • Software architecture as code

    Software architecture diagrams are a fairly common sight within the teams that I visit around the world. Some are hand-drawn collections of boxes and lines on a whiteboard, others are Microsoft Visio-style block diagrams on a wiki. The one thing that unites most of these diagrams is that they are abstract, out of date and typically don’t reflect the code. It’s 2016 though, why are most software development teams still hand-drawing software architecture diagrams using general purpose diagramming tools such as Visio? Not even the building industry does this! This article explores this topic and presents a simple approach for creating software architecture diagrams using code, so that the resulting diagrams actually reflect the code.

  • SonarQube

    SonarQube (vroeger Sonar genoemd) is een opensource platform om code kwaliteit mee te managen. Het is primair een hulpmiddel voor ontwikkelaars om goede kwaliteit code op te leveren. Vanuit een algemeen overzicht van de codekwaliteit kan er doorgeklikt worden naar de specifieke coderegel(s) waar het probleem zich bevind. SonarQube is open source en gemakkelijk uit te breiden door middel van plugins. De applicatie ondersteund vele programmeertalen, zoals Java, JavaScript, C#, C++, COBOL, PHP etc. Deze talen kunnen geanalyseerd worden om naar kwaliteit aandachtspunten te zoeken, zoals code duplicaten, falende testen en allerlei andere problemen. In dit artikel behandel ik een aantal van de nieuwe en onbekende features.

  • Een DSL kweken

    Het verstrekken van hypotheken is één van de belangrijkste diensten van de Rabobank. Voor de vernieuwing van het hypotheekproces is het Rabobank Hypotheekdossier ontwikkeld. Hier kunnen klanten zich oriënteren op de mogelijkheden van een hypotheek op basis van gegevens als hun inkomen en eventuele schulden. Hiervoor wordt gebruik gemaakt van een groot aantal complexe berekeningen. De Java-code, die de berekeningen uitvoert, is in de loop der tijd lastig onderhoudbaar geworden en moest vervangen worden door code die 1) makkelijker onderhoudbaar is, 2) leesbaar is voor de business (zodat zij minimale reviews kunnen geven), en 3) minder fouten bevat.

  • Automatisch visueel testen

    De nieuwe website van de NS is geschikt voor elke schermgrootte. Bezoek je de site op je mobiele telefoon of tablet, dan hoef je niet meer te zoomen of heen en weer te scrollen. Om te garanderen dat de website op verschillende schermgroottes goed werkt, maken we gebruik van geautomatiseerde browsertests op basis van Selenium. Maar voor het testen van het design en de lay-out vertrouwen we nog volledig op onze eigen ogen. Dit kun je namelijk grondiger, sneller en goedkoper automatisch doen. In dit artikel leer je hoe je met het Galen Framework een responsive website automatisch visueel kunt testen.

  • Spot the Security Bug

    Een security code review is een zeer effectieve manier om beveiligingslekken boven water te krijgen. Het legt lekken bloot, die van buitenaf niet of nauwelijks zichtbaar zijn en geeft een goed beeld van het algehele beveiligingsniveau van een applicatie. Is er bijvoorbeeld defensief geprogrammeerd en zijn algemene security best practices meegenomen tijdens het ontwerp en de bouw? Denk hierbij bijvoorbeeld aan de maatregelen, die nodig zijn om veelvoorkomende beveiligingslekken (zoals benoemd in de OWASP Top-10 [1]) te voorkomen.

  • Boek review

    Er ontstaat steeds meer software om ons heen, waardoor uiteraard ook de hoeveelheid legacy code toeneemt. Het logisch gevolg hiervan is dat je als Java developer steeds vaker met legacy code te maken krijgt. Het boek “Your Code as a crime scene” haakt hier uitstekend op in. De in het boek beschreven methoden helpen je om snel inzicht te krijgen in de code base van grote softwareprojecten, zonder dat je zelf de code in details hoeft door te nemen. Zo heb ik het boek gebruikt om enkele projecten te analyseren, waaronder een project met een grootte van zo’n 800.000 regels code.

Lid worden

Wil je meer artikelen lezen uit Java Magazine? Word dan nu lid van NLJUG!

Word lid!