Agile development processes have recently captured the imagination and support
of software developers and managers, offering an alternative discipline to either
bureaucratic processes or chaotic processes. They are low in ceremony compared
to more heavyweight approaches, but are uncompromising on quality and rigour.
Agile methods seek to address development issues through techniques that are
less removed from either the code or the team.
Popularly, Extreme Programming (XP) has established itself as a process that
addresses the developer's technical day-to-day practices, the project management
perspective and the business focus. XP, especially in its second edition (XP2),
provides a suitable and specific focus for understanding agile approaches in
general.
Objectives:
This seminar aims to highlight the problems in producing and scheduling of modern
software development, give an overview of a number of agile development methods,
and focus on many practices that are seen to be central to modern development.
Course Content
Course content has been developed for real-world, commercial scenarios by our expert instructors. See below for detailed syllabus, or if you have a technical query email .
Duration
1 Day
Who Should Attend
The seminar is suitable for anyone involved in software development who wishes
to gain an understanding of agile development processes, including software
developers, project managers and technical managers.
What you will learn:
Managing change
Spaghetti architecture
Complexity and overgeneralization
Balancing cost, time, quality and scope
Delivery of value
Pitfalls of static processes
Iterative and incremental development
Architecture
Prototyping
Scenario-driven increments
Testing versus debugging
The Agile Manifesto
Extreme Programming (XP and XP2)
Test-Driven Development (TDD)
Rational Unified Process (RUP) and dX
Scrum
Feature-Driven Development (FDD)
Crystal Clear
Dynamic Systems Development Method (DSDM)
Roles in Scrum
Self-organising team
Product backlog and product owner
Sprint backlog and planning meeting
Sprint management
Daily scrum meeting
Sprint review
Primary and corollary practices
Sit together
Whole team
Informative workspace
Energized work
Pair programming
Stories
Weekly cycle
Quarterly cycle
Slack
Ten-minute build
Continuous integration
Test-first programming
Incremental design
Incremental deployment
Team continuity
Shared code
Single code base
Defining a suitable process
Duration and goal of an iteration
Use case and technology slicing
Derisking
Automated system and unit testing
Refactoring
Working with legacy code
Fine-grained version control
Level of documentation
Pairing