SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
RIDING THE AGILE WAVE

SWARNALATHA ASHOK
(swarna@nus.edu.sg)
Chief (Advanced Software Design and Development Practice)
Institute of Systems Science
National University of Singapore
10 January 2014
1
© 2014 National University of Singapore. All Rights Reserved.
OBJECTIVES
Highlight the philosophy of Agile Software
Development
 Importance of Agile Software Engineering
practices


TOPICS
The Agile Philosophy
 The Agile Manifesto
 Agile Methods
 Ensuring quality




Software Engineering practices

© 2014 National University of Singapore. All Rights Reserved.

2
WHAT IS AGILITY?

© 2014 National University of Singapore. All Rights Reserved.

3
THE AGILE PHILOSOPHY
Response to unclear and changing requirements

Frequent customer interaction and collaboration
 Frequent delivery of quality products
 Iterative application of supporting processes


Customer Satisfaction is the focus!

© 2014 National University of Singapore. All Rights Reserved.

4
THE AGILE MANIFESTO
Individuals and
interactions

over

Process and tools

Working software

over

Comprehensive
documentation

Customer
collaboration

over

Contract negotiation

Responding to
change

over

Following a plan
Source: www.agilemanifesto.org

© 2014 National University of Singapore. All Rights Reserved.

5
Agile Mindset
Happy Customer
Quality software

© 2014 National University of Singapore. All Rights Reserved.

6
TRADITIONAL VS AGILE - PEOPLE
Managers
Workers
Cubicles/rooms

vs

Facilitators
Collaborators
Collocated Work rooms

Directed
Progress report

vs

Autonomous
Event-based intimation

Appraisal
Seniority
Training

vs

Reflection
Competence
Mentoring

Trust is the central theme!

© 2014 National University of Singapore. All Rights Reserved.

7
TRADITIONAL VS AGILE - PROCESSES
Rule-based
Rigid Plans
Scheduled

vs

Linear process
Change management – a
separate process
Quality Assurance
Linear testing

Goal-based
Iteration guide
Time Boxed

vs

Iterative process
Process designed for
Change Management

vs

Peer Reviews
Test-driven Development

Quality is the central theme!

© 2014 National University of Singapore. All Rights Reserved.

8
TRADITIONAL VS AGILE – ARTIFACTS

Customer requirements
Deliverables

vs

Customer Needs
Business Value

Baseline Design
Critical Path

vs

Evolving Design
Prioritized list

Value to the Customer is the
central theme!

© 2014 National University of Singapore. All Rights Reserved.

9
AGILE MISCONCEPTIONS


No planning




No tracking progress




Planning is done for iterations and are flexible with the
Goal in mind
Event based reporting and frequent reviews

No documentation


Document only that has value

© 2014 National University of Singapore. All Rights Reserved.

10
AGILE MISCONCEPTIONS


No business analyst
Business Analyst is the voice of the customer
 Involved throughout the project




Easier for the customer
Customer involvement is more frequent
 Customer collaboration is vital to the success


© 2014 National University of Singapore. All Rights Reserved.

11
AGILE MISCONCEPTIONS


No testers
Developers and testers work together
 Test driven development




Requirements are never baselined
True!
 Process embraces change


© 2014 National University of Singapore. All Rights Reserved.

12
Agile Mindset
Happy Customer
Quality software

© 2014 National University of Singapore. All Rights Reserved.

13
AGILE SOFTWARE DEVELOPMENT FRAMEWORKS


Scrum



Feature Driven Development (FDD)



Dynamic Systems Development Methodology (DSDM)



Others

© 2014 National University of Singapore. All Rights Reserved.

14
SCRUM – MANAGEMENT DRIVEN

Requirements Management
Release Management
Monitoring

© 2014 National University of Singapore. All Rights Reserved.

Source: Scrum Primer

15
FEATURE DRIVEN DEVELOPMENT – DERIVED FROM
TRADITIONAL METHODS

Management and Development focused
Object oriented, unit testing, design sessions, code reviews
Design first, upfront plan

Source: http://www.skillresource.com

© 2014 National University of Singapore. All Rights Reserved.

16
DYNAMIC SYSTEM DEVELOPMENT METHOD –
PROJECT MANAGEMENT AND DELIVERY

Management and Delivery
Functional Model Iteration
Design and Build iteration
Source: http://www.dsdm.org

© 2014 National University of Singapore. All Rights Reserved.

17
AGILE SOFTWARE DEVELOPMENT FRAMEWORKS
COMMON CHARACTERISTICS
Working software
Quality driven

Short iterations
Regular feedback loops
People centric

Customer focus
Embrace Change
Timeboxing
Team activity

Needed Documentation

Does this mean quality is designed in?

© 2014 National University of Singapore. All Rights Reserved.

18
Agile Mindset
Happy Customer
Quality software

© 2014 National University of Singapore. All Rights Reserved.

19
ESSENTIAL AGILE ENGINEERING PRACTICES


Essential Agile Software Engineering (SE) practices







Agile Architecture & Use of Design patterns
Refactoring techniques
Test Driven Development
Continuous Integration and Delivery
Pair Programming

Stakeholders‟
support

Well disciplined team
agile SE knowledge
Organisation culture
with quality sense
© 2014 National University of Singapore. All Rights Reserved.

20
AGILE ARCHITECTURE & DESIGN PATTERNS
An Architecture that supports change, end-user
interaction, discovery, and ease of comprehension (of
functionality)
- Jeff Sutherland

Leverage on
Architectural and design patterns
Complete reference models and frameworks
Iterations dedicated to architecture is useful
Document only that is needed
(use diagrams, metaphors etc.)

© 2014 National University of Singapore. All Rights Reserved.

21
AGILE ARCHITECTURE & DESIGN PATTERNS
Develop Initial
Software
Architecture

Communicate
with
Stake Holders

If required, dedicate a
short iteration to
prototype the
architecture

Models

Keep it
Simple

Work
with
Developers

Feedback
Loop

Refine the
Architecture

Incremental Evolution of Software Architecture

Source: Scott W Amber

© 2014 National University of Singapore. All Rights Reserved.

22
REFACTORING TECHNIQUES
"Refactoring is the process of changing a software system in
such a way that it does not alter the external behavior of
the code yet improves its internal structure."
- Martin Fowler

Improve the design and code
Clean up the mess in the code
Find bugs and Reduce debugging time
Prevent “design decay”

© 2014 National University of Singapore. All Rights Reserved.

23
Ensure all
tests pass

Find code
that smells

Determine
refactoring

Ensure all
tests still pass

Refactor the code
and/or design

Test Driven Development (TDD)

REFACTORING TECHNIQUES

Should be done in conjunction with:
 Test Driven Development
 Continuous Integration
 Pair-Programming
 Dedicate a small duration every day/beginning of
an iteration
© 2014 National University of Singapore. All Rights Reserved.

24
TEST DRIVEN DEVELOPMENT
Goal of Test Driven Development (TDD) is to produce
„clean code that works‟


TDD = Refactoring + Test First Development (TFD)




i.e write the tests first before developing

Can be done at Unit Test level and also Acceptance
Test level

© 2014 National University of Singapore. All Rights Reserved.

25
TEST DRIVEN DEVELOPMENT
In conjunction with
•Continuous Integration
•Pair Programming
Tools and Unit testing frameworks
Test cases are written first and
according to what is actually expected
Estimation should includes efforts for
TDD

© 2014 National University of Singapore. All Rights Reserved.

26
PAIR PROGRAMMING
The goals of pair programming
Ensures higher quality of code
 To facilitate knowledge transfer





Eliminate the „truck factor‟

Higher discipline in software engineering practices

© 2014 National University of Singapore. All Rights Reserved.

27
PAIR PROGRAMMING


Mistakes get caught upfront


shorter time-to-repair

End defect content is statistically lower
(~15-50% gains)
 Work in pairs for critical modules




Challenges:
Personalities of the developers
 Off-the track discussions
 Support from stakeholders


© 2014 National University of Singapore. All Rights Reserved.

28
CONTINUOUS INTEGRATION
Goal of Continuous Integration and Delivery is to
produce working software
Your software is broken until someone proves it
works, usually at the integration state.

Integrate



Integrate

Integrate

Integrate

Integrate

Integrate

Integrate

Integrate

Integration proves it works, why not do it every time
some change is made?

© 2014 National University of Singapore. All Rights Reserved.

29
CONTINUOUS INTEGRATION
Version
Control

Team
Agreement &
Commitment

Automated
Build

Frequent check-ins to Version Control system
Including source code, test scripts etc.
Automate TDD
Automate Build

© 2014 National University of Singapore. All Rights Reserved.

30
CONCLUSION
Agile Mindset
Individuals and
interactions



Agile Methods

Working software



Agile SE practices

Customer
collaboration



Agile Methods

Responding to
change



Agile SE practices

© 2014 National University of Singapore. All Rights Reserved.

31
Agile Mindset

CONCLUSION

Happy Customer
Quality software

© 2014 National University of Singapore. All Rights Reserved.

32
The Institute of Systems Science (ISS) of the National University of Singapore
(NUS) provides IT graduate education and professional development courses to develop
infocomm leaders and drive business and organisation innovation. The institute is
endorsed by leading international and local accreditation and certification bodies to
deliver programmes that lead to recognised certifications and qualifications.
OUR MISSION
Developing Infocomm Leaders, driving Innovation.

We Inspire and prepare infocomm leaders to innovate over the
course of their professional careers.

OUR VISION
Providing Thought-Leadership in Innovation.

33
© 2014 National University of Singapore. All Rights Reserved.
NICF Agile Courses
(http://www.iss.nus.edu.sg/ProfessionalCourses/Agile.aspx
34
© 2014 National University of Singapore. All Rights Reserved.
Our Programmes and Services
►

Management & Professional Programmes




IT Service Management



Business Analysis



New Media



Intelligent Systems



Process & Quality Management



IT Project Management



Service Innovation



►

Advanced Software Design & Development

IT Risk Management



Strategic IT Management

Senior Executive Programmes


►

e-Government Leadership Programme (eGL)

Graduate Programmes



Graduate Diploma in Systems Analysis
Masters of Technology
(Software Engineering or Knowledge Engineering or Enterprise Business Analytics)

►

Research Services

►

Consulting Services
35
© 2014 National University of Singapore. All Rights Reserved.

Contenu connexe

Tendances

Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710Nikhil Todkar
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
 
Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...Lean Implementation of Organizational Process Focus (OPF) and Risk Management...
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...aamahdys
 
Top 10 custom software development methodologies
Top 10 custom software development methodologiesTop 10 custom software development methodologies
Top 10 custom software development methodologiesChapter247 Infotech
 
Agile Development Method
Agile Development MethodAgile Development Method
Agile Development MethodJohn Liebenau
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharingJas Chong
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approachesdcsunu
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSibel Kuzgun AKIN
 
Sterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic NatureSterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic NatureBrent Barton
 
Planning for Success in MDD
Planning for Success in MDDPlanning for Success in MDD
Planning for Success in MDDSteven Kelly
 
Software Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process modelsSoftware Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process modelsJesminBinti
 
Agile Software Development - a Suvojyoti Presentation
Agile Software Development - a Suvojyoti PresentationAgile Software Development - a Suvojyoti Presentation
Agile Software Development - a Suvojyoti Presentationsankhadeep
 

Tendances (20)

Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 
Planning for DevOps
Planning for DevOpsPlanning for DevOps
Planning for DevOps
 
Codesmells for AspectJ
Codesmells for AspectJCodesmells for AspectJ
Codesmells for AspectJ
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 
Acp 2018
Acp  2018Acp  2018
Acp 2018
 
Agile software development
Agile software development Agile software development
Agile software development
 
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...Lean Implementation of Organizational Process Focus (OPF) and Risk Management...
Lean Implementation of Organizational Process Focus (OPF) and Risk Management...
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Top 10 custom software development methodologies
Top 10 custom software development methodologiesTop 10 custom software development methodologies
Top 10 custom software development methodologies
 
Chapter 2 modeling the process and life-cycle
Chapter 2  modeling the process and life-cycleChapter 2  modeling the process and life-cycle
Chapter 2 modeling the process and life-cycle
 
Agile Development Method
Agile Development MethodAgile Development Method
Agile Development Method
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharing
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approaches
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Sterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic NatureSterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic Nature
 
Planning for Success in MDD
Planning for Success in MDDPlanning for Success in MDD
Planning for Success in MDD
 
agile vs. traditional methodologies
agile vs. traditional methodologies agile vs. traditional methodologies
agile vs. traditional methodologies
 
Software Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process modelsSoftware Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process models
 
Agile method
Agile methodAgile method
Agile method
 
Agile Software Development - a Suvojyoti Presentation
Agile Software Development - a Suvojyoti PresentationAgile Software Development - a Suvojyoti Presentation
Agile Software Development - a Suvojyoti Presentation
 

Similaire à Riding the Agile Wave

Introduction to software development methodologies- Agile vs Waterfall
Introduction to software development methodologies- Agile vs WaterfallIntroduction to software development methodologies- Agile vs Waterfall
Introduction to software development methodologies- Agile vs WaterfallPrateek Shrivastava
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseCollabNet
 
Successful Agile Transformation - The NCS Story
Successful Agile Transformation - The NCS StorySuccessful Agile Transformation - The NCS Story
Successful Agile Transformation - The NCS StoryNUS-ISS
 
Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change Prolifics
 
Conventional and Object Oriented Software Engineering
Conventional and Object Oriented Software EngineeringConventional and Object Oriented Software Engineering
Conventional and Object Oriented Software Engineeringssrkai2020
 
1.4 Prototyping model.pptx
1.4 Prototyping model.pptx1.4 Prototyping model.pptx
1.4 Prototyping model.pptxJAYAPRIYAR7
 
Title - How is DevOps different from agile methodology.pdf
Title -  How is DevOps different from agile methodology.pdfTitle -  How is DevOps different from agile methodology.pdf
Title - How is DevOps different from agile methodology.pdfishansharma200107
 
Rapid e learning
Rapid e learningRapid e learning
Rapid e learningdsrabena
 
Agile And Open Development
Agile And Open DevelopmentAgile And Open Development
Agile And Open DevelopmentRoss Gardler
 
Software Quality Management.pptx
Software Quality Management.pptxSoftware Quality Management.pptx
Software Quality Management.pptxAbhishek Prasoon
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentThanh Nguyen
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW DevelopmentSam Hwang
 
What is agile methodology
What is agile methodologyWhat is agile methodology
What is agile methodologyTestingXperts
 
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptRekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptAuliyaRahman9
 

Similaire à Riding the Agile Wave (20)

Introduction to software development methodologies- Agile vs Waterfall
Introduction to software development methodologies- Agile vs WaterfallIntroduction to software development methodologies- Agile vs Waterfall
Introduction to software development methodologies- Agile vs Waterfall
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Lect7
Lect7Lect7
Lect7
 
Lect7
Lect7Lect7
Lect7
 
Successful Agile Transformation - The NCS Story
Successful Agile Transformation - The NCS StorySuccessful Agile Transformation - The NCS Story
Successful Agile Transformation - The NCS Story
 
Rup
Rup Rup
Rup
 
Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change Pure App + Patterns + Prolifics = Feeding Change
Pure App + Patterns + Prolifics = Feeding Change
 
Conventional and Object Oriented Software Engineering
Conventional and Object Oriented Software EngineeringConventional and Object Oriented Software Engineering
Conventional and Object Oriented Software Engineering
 
RUP
RUPRUP
RUP
 
1.4 Prototyping model.pptx
1.4 Prototyping model.pptx1.4 Prototyping model.pptx
1.4 Prototyping model.pptx
 
Title - How is DevOps different from agile methodology.pdf
Title -  How is DevOps different from agile methodology.pdfTitle -  How is DevOps different from agile methodology.pdf
Title - How is DevOps different from agile methodology.pdf
 
Rapid e learning
Rapid e learningRapid e learning
Rapid e learning
 
Agile And Open Development
Agile And Open DevelopmentAgile And Open Development
Agile And Open Development
 
Software Quality Management.pptx
Software Quality Management.pptxSoftware Quality Management.pptx
Software Quality Management.pptx
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Agile 101
Agile 101 Agile 101
Agile 101
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW Development
 
What is agile methodology
What is agile methodologyWhat is agile methodology
What is agile methodology
 
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.pptRekayasa-Perangkat-Lunak-Pertemuan-1.ppt
Rekayasa-Perangkat-Lunak-Pertemuan-1.ppt
 

Plus de NUS-ISS

Designing Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeDesigning Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeNUS-ISS
 
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...NUS-ISS
 
How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...NUS-ISS
 
The Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationNUS-ISS
 
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...NUS-ISS
 
Understanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohNUS-ISS
 
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeNUS-ISS
 
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...NUS-ISS
 
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...NUS-ISS
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnNUS-ISS
 
Future of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfFuture of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfNUS-ISS
 
Future of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengNUS-ISS
 
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7NUS-ISS
 
Product Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceProduct Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceNUS-ISS
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsNUS-ISS
 
Predictive Analytics
Predictive AnalyticsPredictive Analytics
Predictive AnalyticsNUS-ISS
 
Feature Engineering for IoT
Feature Engineering for IoTFeature Engineering for IoT
Feature Engineering for IoTNUS-ISS
 
Master of Technology in Software Engineering
Master of Technology in Software EngineeringMaster of Technology in Software Engineering
Master of Technology in Software EngineeringNUS-ISS
 
Master of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsMaster of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsNUS-ISS
 
Diagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesDiagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesNUS-ISS
 

Plus de NUS-ISS (20)

Designing Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee KheeDesigning Impactful Services and User Experience - Lim Wee Khee
Designing Impactful Services and User Experience - Lim Wee Khee
 
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
Upskilling the Evolving Workforce with Digital Fluency for Tomorrow's Challen...
 
How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...
 
The Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
 
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
 
Understanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
 
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
 
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
 
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
 
Future of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdfFuture of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdf
 
Future of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan Meng
 
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7Site Reliability Engineer (SRE), We Keep The Lights On 24/7
Site Reliability Engineer (SRE), We Keep The Lights On 24/7
 
Product Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud ServiceProduct Management in The Trenches for a Cloud Service
Product Management in The Trenches for a Cloud Service
 
Overview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and FoundationsOverview of Data and Analytics Essentials and Foundations
Overview of Data and Analytics Essentials and Foundations
 
Predictive Analytics
Predictive AnalyticsPredictive Analytics
Predictive Analytics
 
Feature Engineering for IoT
Feature Engineering for IoTFeature Engineering for IoT
Feature Engineering for IoT
 
Master of Technology in Software Engineering
Master of Technology in Software EngineeringMaster of Technology in Software Engineering
Master of Technology in Software Engineering
 
Master of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business AnalyticsMaster of Technology in Enterprise Business Analytics
Master of Technology in Enterprise Business Analytics
 
Diagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System ArchetypesDiagnosing Complex Problems Using System Archetypes
Diagnosing Complex Problems Using System Archetypes
 

Dernier

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Dernier (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

Riding the Agile Wave

  • 1. RIDING THE AGILE WAVE SWARNALATHA ASHOK (swarna@nus.edu.sg) Chief (Advanced Software Design and Development Practice) Institute of Systems Science National University of Singapore 10 January 2014 1 © 2014 National University of Singapore. All Rights Reserved.
  • 2. OBJECTIVES Highlight the philosophy of Agile Software Development  Importance of Agile Software Engineering practices  TOPICS The Agile Philosophy  The Agile Manifesto  Agile Methods  Ensuring quality   Software Engineering practices © 2014 National University of Singapore. All Rights Reserved. 2
  • 3. WHAT IS AGILITY? © 2014 National University of Singapore. All Rights Reserved. 3
  • 4. THE AGILE PHILOSOPHY Response to unclear and changing requirements Frequent customer interaction and collaboration  Frequent delivery of quality products  Iterative application of supporting processes  Customer Satisfaction is the focus! © 2014 National University of Singapore. All Rights Reserved. 4
  • 5. THE AGILE MANIFESTO Individuals and interactions over Process and tools Working software over Comprehensive documentation Customer collaboration over Contract negotiation Responding to change over Following a plan Source: www.agilemanifesto.org © 2014 National University of Singapore. All Rights Reserved. 5
  • 6. Agile Mindset Happy Customer Quality software © 2014 National University of Singapore. All Rights Reserved. 6
  • 7. TRADITIONAL VS AGILE - PEOPLE Managers Workers Cubicles/rooms vs Facilitators Collaborators Collocated Work rooms Directed Progress report vs Autonomous Event-based intimation Appraisal Seniority Training vs Reflection Competence Mentoring Trust is the central theme! © 2014 National University of Singapore. All Rights Reserved. 7
  • 8. TRADITIONAL VS AGILE - PROCESSES Rule-based Rigid Plans Scheduled vs Linear process Change management – a separate process Quality Assurance Linear testing Goal-based Iteration guide Time Boxed vs Iterative process Process designed for Change Management vs Peer Reviews Test-driven Development Quality is the central theme! © 2014 National University of Singapore. All Rights Reserved. 8
  • 9. TRADITIONAL VS AGILE – ARTIFACTS Customer requirements Deliverables vs Customer Needs Business Value Baseline Design Critical Path vs Evolving Design Prioritized list Value to the Customer is the central theme! © 2014 National University of Singapore. All Rights Reserved. 9
  • 10. AGILE MISCONCEPTIONS  No planning   No tracking progress   Planning is done for iterations and are flexible with the Goal in mind Event based reporting and frequent reviews No documentation  Document only that has value © 2014 National University of Singapore. All Rights Reserved. 10
  • 11. AGILE MISCONCEPTIONS  No business analyst Business Analyst is the voice of the customer  Involved throughout the project   Easier for the customer Customer involvement is more frequent  Customer collaboration is vital to the success  © 2014 National University of Singapore. All Rights Reserved. 11
  • 12. AGILE MISCONCEPTIONS  No testers Developers and testers work together  Test driven development   Requirements are never baselined True!  Process embraces change  © 2014 National University of Singapore. All Rights Reserved. 12
  • 13. Agile Mindset Happy Customer Quality software © 2014 National University of Singapore. All Rights Reserved. 13
  • 14. AGILE SOFTWARE DEVELOPMENT FRAMEWORKS  Scrum  Feature Driven Development (FDD)  Dynamic Systems Development Methodology (DSDM)  Others © 2014 National University of Singapore. All Rights Reserved. 14
  • 15. SCRUM – MANAGEMENT DRIVEN Requirements Management Release Management Monitoring © 2014 National University of Singapore. All Rights Reserved. Source: Scrum Primer 15
  • 16. FEATURE DRIVEN DEVELOPMENT – DERIVED FROM TRADITIONAL METHODS Management and Development focused Object oriented, unit testing, design sessions, code reviews Design first, upfront plan Source: http://www.skillresource.com © 2014 National University of Singapore. All Rights Reserved. 16
  • 17. DYNAMIC SYSTEM DEVELOPMENT METHOD – PROJECT MANAGEMENT AND DELIVERY Management and Delivery Functional Model Iteration Design and Build iteration Source: http://www.dsdm.org © 2014 National University of Singapore. All Rights Reserved. 17
  • 18. AGILE SOFTWARE DEVELOPMENT FRAMEWORKS COMMON CHARACTERISTICS Working software Quality driven Short iterations Regular feedback loops People centric Customer focus Embrace Change Timeboxing Team activity Needed Documentation Does this mean quality is designed in? © 2014 National University of Singapore. All Rights Reserved. 18
  • 19. Agile Mindset Happy Customer Quality software © 2014 National University of Singapore. All Rights Reserved. 19
  • 20. ESSENTIAL AGILE ENGINEERING PRACTICES  Essential Agile Software Engineering (SE) practices      Agile Architecture & Use of Design patterns Refactoring techniques Test Driven Development Continuous Integration and Delivery Pair Programming Stakeholders‟ support Well disciplined team agile SE knowledge Organisation culture with quality sense © 2014 National University of Singapore. All Rights Reserved. 20
  • 21. AGILE ARCHITECTURE & DESIGN PATTERNS An Architecture that supports change, end-user interaction, discovery, and ease of comprehension (of functionality) - Jeff Sutherland Leverage on Architectural and design patterns Complete reference models and frameworks Iterations dedicated to architecture is useful Document only that is needed (use diagrams, metaphors etc.) © 2014 National University of Singapore. All Rights Reserved. 21
  • 22. AGILE ARCHITECTURE & DESIGN PATTERNS Develop Initial Software Architecture Communicate with Stake Holders If required, dedicate a short iteration to prototype the architecture Models Keep it Simple Work with Developers Feedback Loop Refine the Architecture Incremental Evolution of Software Architecture Source: Scott W Amber © 2014 National University of Singapore. All Rights Reserved. 22
  • 23. REFACTORING TECHNIQUES "Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure." - Martin Fowler Improve the design and code Clean up the mess in the code Find bugs and Reduce debugging time Prevent “design decay” © 2014 National University of Singapore. All Rights Reserved. 23
  • 24. Ensure all tests pass Find code that smells Determine refactoring Ensure all tests still pass Refactor the code and/or design Test Driven Development (TDD) REFACTORING TECHNIQUES Should be done in conjunction with:  Test Driven Development  Continuous Integration  Pair-Programming  Dedicate a small duration every day/beginning of an iteration © 2014 National University of Singapore. All Rights Reserved. 24
  • 25. TEST DRIVEN DEVELOPMENT Goal of Test Driven Development (TDD) is to produce „clean code that works‟  TDD = Refactoring + Test First Development (TFD)   i.e write the tests first before developing Can be done at Unit Test level and also Acceptance Test level © 2014 National University of Singapore. All Rights Reserved. 25
  • 26. TEST DRIVEN DEVELOPMENT In conjunction with •Continuous Integration •Pair Programming Tools and Unit testing frameworks Test cases are written first and according to what is actually expected Estimation should includes efforts for TDD © 2014 National University of Singapore. All Rights Reserved. 26
  • 27. PAIR PROGRAMMING The goals of pair programming Ensures higher quality of code  To facilitate knowledge transfer    Eliminate the „truck factor‟ Higher discipline in software engineering practices © 2014 National University of Singapore. All Rights Reserved. 27
  • 28. PAIR PROGRAMMING  Mistakes get caught upfront  shorter time-to-repair End defect content is statistically lower (~15-50% gains)  Work in pairs for critical modules   Challenges: Personalities of the developers  Off-the track discussions  Support from stakeholders  © 2014 National University of Singapore. All Rights Reserved. 28
  • 29. CONTINUOUS INTEGRATION Goal of Continuous Integration and Delivery is to produce working software Your software is broken until someone proves it works, usually at the integration state. Integrate  Integrate Integrate Integrate Integrate Integrate Integrate Integrate Integration proves it works, why not do it every time some change is made? © 2014 National University of Singapore. All Rights Reserved. 29
  • 30. CONTINUOUS INTEGRATION Version Control Team Agreement & Commitment Automated Build Frequent check-ins to Version Control system Including source code, test scripts etc. Automate TDD Automate Build © 2014 National University of Singapore. All Rights Reserved. 30
  • 31. CONCLUSION Agile Mindset Individuals and interactions  Agile Methods Working software  Agile SE practices Customer collaboration  Agile Methods Responding to change  Agile SE practices © 2014 National University of Singapore. All Rights Reserved. 31
  • 32. Agile Mindset CONCLUSION Happy Customer Quality software © 2014 National University of Singapore. All Rights Reserved. 32
  • 33. The Institute of Systems Science (ISS) of the National University of Singapore (NUS) provides IT graduate education and professional development courses to develop infocomm leaders and drive business and organisation innovation. The institute is endorsed by leading international and local accreditation and certification bodies to deliver programmes that lead to recognised certifications and qualifications. OUR MISSION Developing Infocomm Leaders, driving Innovation. We Inspire and prepare infocomm leaders to innovate over the course of their professional careers. OUR VISION Providing Thought-Leadership in Innovation. 33 © 2014 National University of Singapore. All Rights Reserved.
  • 34. NICF Agile Courses (http://www.iss.nus.edu.sg/ProfessionalCourses/Agile.aspx 34 © 2014 National University of Singapore. All Rights Reserved.
  • 35. Our Programmes and Services ► Management & Professional Programmes   IT Service Management  Business Analysis  New Media  Intelligent Systems  Process & Quality Management  IT Project Management  Service Innovation  ► Advanced Software Design & Development IT Risk Management  Strategic IT Management Senior Executive Programmes  ► e-Government Leadership Programme (eGL) Graduate Programmes   Graduate Diploma in Systems Analysis Masters of Technology (Software Engineering or Knowledge Engineering or Enterprise Business Analytics) ► Research Services ► Consulting Services 35 © 2014 National University of Singapore. All Rights Reserved.