Skip to content

Latest commit

 

History

History
230 lines (149 loc) · 5.51 KB

02-software-lifecycle.md

File metadata and controls

230 lines (149 loc) · 5.51 KB

Home > Industry Knowledge > Software Lifecycle

Topic: Software Lifecycle

  1. Lesson: Lifecycle of Software Development
  2. Lesson: Traditional Flavours of SDLC
  3. Lesson: Agile Flavours of SDLC
  4. Assessment: SDLC Assessment
  5. Lesson: How Software Design fits into the SDLC
  6. Lesson: Software Design in the Context of SDLC
  7. Assessment: Software Design Assessment


Lesson 1

Lifecycle of Software Development

Self Learning Duration
mins
Lecture Duration
mins
Lab Tutorial Duration
mins

Self learning content

None

Lecture content

Do an introduction to the fundamental process of SDLC to set the stage for the knowledge students will gain later in this module:

Discuss the main topics from: https://www.youtube.com/watch?v=cY-3wdvbz6o

  • Different phases in SDLC
  • Results of each phase in SDLC, and
  • Requirements vs Specification

Lab and tutorials

None



Lesson 2

Familiarize Traditional Flavours of SDLC

Self Learning Duration
mins
Lecture Duration
mins
Lab Tutorial Duration
mins

Self learning content

Complete the Week 2 of the following free course on Coursera before coming to class:

coursera.org/learn/software-processes-and-agile-practices

Lecture content

Discuss the traditional models of software development process from: coursera.org/learn/software-processes

  • Waterfall Model
  • V-Model
  • Unified Process and its Variants
  • Spiral Model
  • Incremental Model, and
  • Applying Software Development Models

Lab and tutorials

coursera.org/learn/software-processes-and-agile-practices

Complete the rest of the weeks of the above same course on Coursera to learn followings:

  • Using Agile With SDLC
  • Extreme Programming, and
  • Agile Variants and Lean Software Development


Lesson 3

Familiarize Agile and Lean Flavours of SDLC

Self Learning Duration
mins
Lecture Duration
mins
Lab Tutorial Duration
mins

Self learning content

Learn and try to get familiar with common usage of Agile as explained in this video before coming to class:

youtube.com/watch?v=jXrmTVWr4MU

Lecture content

Discuss the agile and lean models of software development process from: coursera.org/learn/software-processes

  • Agile Frameworks
  • Scrum
  • Kanban
  • Lean Startup, and
  • Selecting a Suitable Agile Model

Lab and tutorials

Write a Whitepaper (~200 Words) regarding one of the following topics. In the article, include the reference as citation content.

  • Lean Startup is variation of Prototyping Model
  • Big Companies can benefit from Lean Startup
  • How to run Scrum within Traditional Models, or
  • Pros and cons of Sashimi Model


Assessment 1

SDLC

MCQ assessment (~20 Questions) verifying the understanding of the students in purpose and terms of SDLC. Preferably use a gamified assessment tool such as Kahoot.



Lesson 4

How Software Design fits into the SDLC

Self Learning Duration
mins
Lecture Duration
mins
Lab Tutorial Duration
mins

Self learning content

Complete the Week 1 and Week 2 of the following free course on Coursera before coming to class:

coursera.org/learn/software-design-development-life-cycle

Lecture content

  • Discuss what Software Design is and why it is important
  • Explain with examples what happens in Design, and
  • Further discuss how Software Design can be applied in various SDLCs

Lab and tutorials

coursera.org/learn/software-design-development-life-cycle

Complete the rest of the weeks of the above same course on Coursera to learn followings:

  • Interfacing with Requirements and Implementation, and
  • The role of Architecture in Design


Lesson 5

Software Design in the Context of SDLC

Self Learning Duration
mins
Lecture Duration
mins
Lab Tutorial Duration
mins

Self learning content

None

Lecture content

Discuss the techniques of software design from: coursera.org/learn/software-processes

  • Modularity
  • Coupling and Cohesion
  • Implementation
  • Deployment and Rollback, and
  • Testing Strategies

Lab and tutorials

Write a Whitepaper (~200 Words) regarding modern software design techniques used by Billion Dollar Companies. In the article, include the reference as citation content.

  • Netflix
  • Facebook mobile by Facebook Engineering
  • Gmail by Google, or
  • Microsoft's VS Code Team


Assessment 2

Software Design

MCQ assessment (~20 Questions) verifying the understanding of the students in purpose and terms of software design in the context of SDLC. Preferably use a gamified assessment tool such as Kahoot.