23

Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:
Page 2: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Experiential Education for Agile Software Engineering

Swarnalatha AshokChief, MTech (Software Engineering)

National University of Singapore

and

Saisudha RajagopalLecturer & Consultant

National University of Singapore

Page 3: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Topics

• Introduction to MTech (Software

Engineering) degree programme

• How Agile Software Engineering is

taught

• Experiential learning

Page 4: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Who are we?

OUR MISSION

Developing infocomm and digital business leaders

through education, applied research and consulting

services

OUR VISION

Providing thought leadership in

organisational innovation and

business transformation

NUS-ISS, an initiative by the Committee for National Computerization, was

established in 1981 as an academic unit within NUS for infocomm advanced

education and professional development.

Page 5: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Our Programmes

Researc

hC

on

su

ltan

cy

Graduate Diploma

(Systems Analysis)

Master of Technology

(IT Leadership)

IT Professional Programmes

(3-6 days short courses for executives)

E-Government Leadership Programme

Master of Technology

(Software Engineering)

Master of Technology

(Knowledge Engineering)

Master of Technology

(Enterprise Business Analytics )

Page 6: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Objective of MTech (SE) Programme

Software developer(Senior) Software Engineer

Problem Solving skillsTeam and inter-personnel skills

Presentation and Communication

Management awareSoftware Architect

Technically soundProject/Quality Manager

Underlying ThemeAgile

Underlying ThemeAgile

Process and Management

• Agile, Contemporary• Iterative, Incremental• Product, Project Mgt• Quality, Config Mgt• Estimation, Metrics• Process Improvement

Software Technology• Mobile, Cloud• IoT, Integration tech• Java, .Net• Security• Big Data Engineering• Machine Learning

Tools and Techniques• Requirements, UXD• Architecture, Design• Testing, QA• Continuous Integration• Maintenance• Product Line

Engineering

Page 7: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Software Engineering TopicsHighlights

Scrum, XP, Kanban Methods

Agile Project Management, Scaling Agile

Internet of Things, Mobile Computing

Architecting Software Solutions

User Experience Design

Responsive Web Design, Cloud Computing

Big Data Engineering, Machine Learning

Secure Software Development

Page 8: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Adult Learning Principles

Involved Adult

Learners

Problem Centric

Relevant and Impact to

Learner’s lives

Adult Learner

Experience

1 2

34

Knowles’s Adult Learning Principles

Students select their• Learning paths• Learning Pace• Projects• Teams

Learning Mode• 50-100%

workshops• Simulations• Games

Topics• Industry

oriented• Current

trends• Practical

Examples, Assignments• Case study

based• Problem

based

Page 9: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Adult Learning Learning methods Hands-on Workshops Team-based projects Application oriented Practical Real-world examples Case studies Simulation of real world

Assessment methods Application Analysis Evaluating

Source: From presentation by Rick Blunt on Guild online forumhttps://elearningindustry.com/the-adult-learning-theory-andragogy-of-malcolm-knowles

Page 10: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Objective of MTech (SE) Programme

Orientation

Exposure to Agile Principles

Projects

Core Modules

Application of specific Agile techniques

Core Modules OOP, OOAD, PM, QM

Elective ModulesElective Modules

Agile PM, Req Eng, UXD, Arch, Design Patterns,Scaling Agile

Experiential Learning

ProjectsResearch, InnovationFinal Year Project

Page 11: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Objective of MTech (SE) ProgrammeSkills learntTeam:• Sustainable Pace• Team Room• Heartbeat Retrospective• Facilitation• Project Charter• Scrum of Scrum• Niko-nikoFundamentals:• Iterative development• Incremental Development• Version ControlDevOps: • Continuous Integration• Automated Build• Version Control• Continuous deploymentLean: • Kanban board• Lead time

Product Management:• Backlog grooming• Personas• Story mapping• Story Splitting• User Stories• 3 C’s, INVESTExtreme Programming:• Pair Programming• Daily meetings• Velocity• Frequent Releases• Collective Ownership• Test Driven Development

(TDD)• Simple Design• Refactoring

Testing:• Acceptance Testing• Mock Objects• TDD• Unit Testing• Exploratory Testing• Usability Testing• BDD, ATDD• Role-feature• Given-Then-WhenDesign: • Agile Architecture• Ubiquitous Language• Simple Design• Refactoring• Rules of Simplicity• CRC Cards

Scrum:• Iterative Development• Time box• Iterations• Three Questions• Burndown chart• Task board• DoD• Points Estimation• Planning Poker• Backlog• Backlog grooming• Definition of Ready

Page 12: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with High Touch

(Lecturer)

(Lecturer)

(Students)Innovation and Research

Project nature: Future-looking, Innovative, ResearchTeam size: 5-6 student teamsMethodology: Scrum methodologyProject Size: 5 Sprints; 1-week Sprint

Page 13: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with Low Touch

Industry ProjectProject nature: Software Engineering, Deployable todayTeam size: 5-6 student teamsMethodology: Any Agile methodologyProject Size: 3 Releases; 4-month part-time; 4-month full-time

Industry Project /InternshipProject nature: Software Engineering, Deployable todayTeam size: 5-6 student teamsMethodology: Any Contemporary methodologyProject Size: 3 Releases; 4-month part-time; 4-month full-time

Industry Project /InternshipProject nature: Software Engineering, Deployable todayTeam size: 5-6 student teamsMethodology: Company specified Agile methodologyProject Size: 3 Releases; 4-month part-time; 4-month full-time

• Students choose an Agile methodology• Managed by the students• Release every quarter

• Students follow the company’sAgile methodology

• Managed by the students or company• Release every quarter

• Students choose a contemporary methodology

• Managed by the students or company• Release every quarter

Page 14: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with High Touch- Objectives

Page 15: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Students

FacultyFaculty

5Sprint Planning

Pair Programming

eXtreme ProgrammingCollaboration &

Collective OwnershipBurndown charts

Analysis of the Sprint

Assessment

Daily StandupSprint Planning

Sprint RetrospectivePeer Assessment

Experiential Learning

RefactoringTDD

Continuous Integration

Automated BuildKanban Board

Colocated Agile TeamWork Day : 9am – 5pm

Projects with High Touch- Orchestration

Page 16: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with High Touch- Showcase

Team : 6 students

Technology ExplorationMobile application that

also integrates• IoT for pill stock

management• Smartwatch for

notification

Page 17: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with High Touch

Final Project Presentation

End of 5 weeksDemo of the project

End of Project Retrospective

Page 18: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with High Touch

- Challenges

• Team Maturity• Lack of maturity to own project as opposed being managed

• Resistance to colocation and fixed time• Lack of faith in value of colocation and disciplined work time

• Involvement• Lack of alignment in project objective

• Student attitude • Low motivation to excel• Low ability to collaborate

Page 19: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with Low Touch- Objectives

Industry ProjectProject nature: Software Engineering, Deployable todayTeam size: 5-6 student teamsMethodology: Any Agile methodologyProject Size: 3 Releases; 4-month part-time; 4-month full-time

• Students choose an Agile methodology• Managed by the students• Release every quarter

Gain deeper industry insights and apply what students learn to real-life work environments

Page 20: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with Low Touch- Orchestration

Experience working on Agile methodologyExperience working with real-time industry demands

Experience practicing the software engineering concepts

Assessed for their application of the concepts

Page 21: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with Low Touch- Showcase

Team : 5 students

6 Sprints3 Releases

Project Management

Distributed TeamMid Sprint Review of

UX/ UI

Cloud Storage

Mobile App Real-time data capture

Web App Research Lead monitors Field

activity Real-time

Page 22: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Projects with Low Touch

- Challenges

• Schedule Alignment• Aligning the project time line with industry demands

• Managing stakeholders• Managing the expectations of industry sponsors

• Balancing between industry and project requirements• Constantly ensuring that the sponsor’s requirements and the project

requirements are catered to.

Industry-Ready Agile Software Engineering

Professionals

Page 23: Swarnalatha Ashok and Saisudha Rajagopal · Projects with Low Touch Industry Project Project nature: Software Engineering, Deployable today Team size: 5-6 student teams Methodology:

Q & A

Questions?

Thank you