LIVE Instructor-Led Courses
Dismiss

Software Engineering Excellence training course

Quickly Improve Your Software Development Skills Through Engineering Excellence Training

JBI training course London UK

"The practical session to end the course was fantastic and the 12 point code review summary will be taken back to my team and used on a daily basis. The trainer was excellent, informing us in more ways than we had requested, whilst tailoring the course to our needs. It was the best value course I've ever been on."

AT, Specialist Developer, Software Engineering Excellence, February 2021

Public Courses

22/04/24 - 3 days
£1795 +VAT
03/06/24 - 3 days
£1795 +VAT
15/07/24 - 3 days
£1795 +VAT

Customised Courses

* Train a team
* Tailor content
* Flex dates
From £1200 / day
EDF logo Capita logo Sky logo NHS logo RBS logo BBC logo CISCO logo
JBI training course London UK

Effective Code Reviews

  • Considers what a code review is
  • Presents the benefits of Code Reviews
  • Provides approach to code reviews
  • Introduces Code Smells and Code refactoring as review techniques
  • Proposes Code Review guidelines and questionnaires
  • Introduces 12 good practices for code reviews
  • Summarises code review tools

Non Functional Requirements

  • Understanding of what Non Functional Requirments are
  • Greater understanding of the importance of Non Functional Requirements
  • Familiarity with the Non Functional Requirements that are important to your company
  • Awareness of how to identify and gather Non Functional Requirements
  • The need for the project as a whole, as well as the developer, to be accountable for Non Functional Requirements

 Continuous Integration

  • Understanding of CI as a process
  • Greater understanding of the benefits of CI
  • Familiarity with the CI Principles and Practices
  • Awareness of how to make CI work within teams

Effective Code Reviews

Session 1: Introduction

Session 2: Code Reviews

  • What is a Review?
  • Why do a Review? What are the Benefits of Code Reviews?
  • What barriers are there to Successful Reviews?

Session 3: Code Reviews: What is Involved?

  • Who, When, What
  • Roles in a Review
  • When to Review
  • What should be reviewed?
  • Types of Review
  • Pair Programming and Code Reviews

Session 4: Performing a Review

  • Where to Start?
  • Code Reading (Top Down / Bottom Up)
  • Review Questions
  • Code Smells / Refactoring
  • Language Specific Code Smells
  • Testing Checklist
  • Performance checklist and Scalability
  • Non Functional Requirements

Workshop: Performing a code Review

 

Session 5: Review Process

Requirements and Code Reviews

Non Functional Requirements

Scrum and Code Reviews

Version Control Systems and Reviews

Completing reviews

 

Session 6: 12 Good Practices of Code Reviews

  1. Small reviews - Avoid large code change reviews
  2. Short reviews (re time doing review)
  3. Understand the requirements (functional and non-functional) before review
  4. Normal part of working day
  5. Review Structure
  6. Use a CheckList
  7. Foster positive behaviour around reviews
  8. Establish Goals and Metrics Around Reviews
  9. Authors annotate source code before reviews
  10. Ego Effect – everyone is reviewed, everyone reviews
  11. Ownership – developer and reviewer proud of code
  12. Record / log review notes and conclusions, and verify issues fixed

 

Session 7: Code Review Tools

  • Code Level Review Tools (Java, PAL, JavaScript, C#, XML)

 

Non Functional Requirements

Session 1: Introduction

Session 2: What Are NFRs?

  • Examines the characteristics of Non Functional Requirements
  • Looks at what Non Functional Requirements exists
  • Considers which are particularly relevant to your company

Workshop 1: Consider Non Functional Requirements for a Ticketing system

 

Session 3: Why are NFRs Difficult?

  • Considers the challenges associated with Non Functional Requirements
  • Issues of terminology, specification, measurement and test
  • System wide, emergent nature of Non Functionals
  • Can’t retro fit Non Functionals to an application
  • Need to consider them up front

Workshop 2: Explores how to identify Non Functionals

 

Session 4: Approaches to capturing and representing NFRs

  • Sources of Non Functional Requirements
  • Approaches to finding Non Functional Requirements
  • NFR Questionnaires
  • Quantifying NFRs
  • Proxies for testing difficult to measure NFRs

 

Session 5: Developer Accountability

  • Consider show to improve accountability for NFRs
  • Present the project as needing to be accountable
  • Developers accountable within Project context

 

Continuous Integration

Session 1: Introduction

Session 2: Overview of CI

  • What is Continuous Integration?
  • What is the Build?
  • Key CI principles
  • Terminology

Session 3: Why Adopt a CI Process

  • Benefits of Continuous integration
  • Reducing Risk in Software Development

Session 4: The CI process

  • What you need for CI
  • General Working Procedure
  • Nine Key Practices
    • Commit Code Frequently
    • Don’t Commit Broken Code
    • Run private Builds First
    • Fix Broken Builds immediately
    • Avoid Getting Broken Builds
    • Write Automated Developer tests
    • All Tests Must Pass
    • Automate As Much As Possible
    • Shared Ownership

Workshop: 45 mins – 1 hour

Session 5: Making CI Work

  • What stops teams using CI?
    • My project is too big / I have a legacy application / It is too complex etc.
  • Making it happen

Session 5: CI and Testing

  • What should you test?
  • Types of test
  • What tools should you use
  • Testing using mock objects / stubs / fakes
  • Mock Object tools (JMock/Easy Mock etc.)
  • CI and Test Driven Development – the relationship
  • CI and BDD – the relationship

 

 

JBI training course London UK

Developers, testers and development team members looking to improve on quality of Software Engineering deliverables

5 star

4.8 out of 5 average

"The practical session to end the course was fantastic and the 12 point code review summary will be taken back to my team and used on a daily basis. The trainer was excellent, informing us in more ways than we had requested, whilst tailoring the course to our needs. It was the best value course I've ever been on."

AT, Specialist Developer, Software Engineering Excellence, February 2021



“JBI  did a great job of customizing their syllabus to suit our business  needs and also bringing our team up to speed on the current best practices. Our teams varied widely in terms of experience and  the Instructor handled this particularly well - very impressive”

Brian F, Team Lead, RBS, Data Analysis Course, 20 April 2022

 

 

JBI training course London UK

Newsletter

 

Sign up for the JBI Training newsletter to stay updated with world-class technology training opportunities, including Analytics, AI, ML, DevOps, Web, Backend and Security. Our Power BI Training Course is especially popular.  Gain new skills, useful tips, and validate your expertise with an industry-leading organisation, all tailored to your schedule and learning preferences.



Our Software Engineering Excellence training course combines three popular courses; Effective Code Reviews, Non Fiunctional Requirements and Continuous Integration. Client feedback shows that delegates on our courses will best engage when they can relate course topics to their own day-to-day practices and requirements. We therefore run this course as a consultative, workshop-style event, in which discussion of topics such as what are Code Reviews, what are their benefits to your company and how can you adopt and apply them takes place in relation to the delegates' own applications and scenarios.

CONTACT
+44 (0)20 8446 7555

[email protected]

SHARE

 

Copyright © 2023 JBI Training. All Rights Reserved.
JB International Training Ltd  -  Company Registration Number: 08458005
Registered Address: Wohl Enterprise Hub, 2B Redbourne Avenue, London, N3 2BS

Modern Slavery Statement & Corporate Policies | Terms & Conditions | Contact Us

POPULAR

Rust training course                                                                          React training course

Threat modelling training course   Python for data analysts training course

Power BI training course                                   Machine Learning training course

Spring Boot Microservices training course              Terraform training course

Kubernetes training course                                                            C++ training course

Power Automate training course                               Clean Code training course