SDLC – Develop with Speed and Low Risk – Get to Market Fast

SDLC, software process, software testing, software project management
5.0 (1 rating)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
21 students enrolled
$50
Take This Course
  • Lectures 25
  • Length 1.5 hours
  • Skill Level Expert Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2014 English

Course Description

You will be able to more effectively guide the development team (coders, testers and technical writers) through all of the Software Development Lifecycle activities. Your development projects will be easier to plan, control and delver. Team productivity will go up while development risk goes down.

You will learn how to speed-up development through converting usual sequential workflows (coding, testing and documentation) into parallel workflows. This is a major factor in getting a great quality product to market more quickly.

You will learn how to do strategic planning for your project and how to avoid doing tasks over – get them correct and complete the first time. It is possible.

You will learn how to avoid unnecessary development risks such as:

    ·Incomplete or incorrect business requirements

    ·Unintended impediments

    ·Uncontrolled requirement changes

    ·Incomplete testing

    ·Not having a Software Requirements Specification

    ·Many other self-inflicted wounds

Everybody wants to get their software development projects completed as soon as possible. Unfortunately, some misguided folks want to complete their projects sooner than possible. That invariably leads to development taking longer than it should, usually with lower quality. If you adopt the guidelines set forth in this course you will recognize the signs of danger ahead in time to avoid them,

There is a persistent myth concerning software development. It is the notion that the fastest path to completing a project is to start coding as soon as possible. Too many people interpret this as no need to plan and design before jumping into writing code. There are many steps that should be taken prior to coding start. This course identifies them and discusses how to handle them in a preferred manner.

What are the requirements?

  • The students should have several years of experience as a software development lead or a software project manager. They should be in a position where they can adopt and implement the things they will learn in the course.

What am I going to get from this course?

  • Elicit business requirements from the stakeholders
  • Prepare and present these requirements back to the stakeholders for validation
  • Develop functional requirements from the business requirements
  • Create interactive simulations to show the look and behavior of the intended application prior to writing any code
  • Create bi-directional traceability matrices
  • Develop Use Cases
  • Baseline the requirements
  • Establish and enforce change management
  • Develop test cases
  • Execute test cases
  • Handle bug recording and tracking
  • Learn how to speed time to market through parallel development paths

What is the target audience?

  • This course is optimized for instructing software development leads and project managers. It would be of value to coders, testers and technical writers. But typically these people are not yet in a position in the organization where they can implement the suggestions without support from their managers.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Welcome to Quick to Market - Quick to Profit
02:32

This lecture introduces the focus topic of the course - getting your software development project created in a fast and safe manner. We'll cover the typical activities of the Software Development Life cycle SDLC, and with some unconventional techniques. Along the way we'll see how to reap the benefits of performing the activities of developing code, performing QA testing and writing user documentation as parallel rather than sequential flows. This is a huge time-saver. It is the basis of getting to the successful conclusion of your project faster, without taking unnecessary risk or skipping important steps.

00:25 Get Your Product to Market Quickly and Safely

00:53 The Power of Parallelism

01:42 A Little About Me

02:14 Battle Scars - A scary picture - may not be suitable for children

02:07

This lecture is an overview of the SDLC. It contains a graphic that neatly summarizes the major workflow. Introduces the idea that a rush to start coding is the probable cause of many project development problems.

00:00 Course Covers Typical SDLC Topics

00:18 Overview of Major SDLC Activities

00:42 A Common Source of Project Problems

05:19

This lecture introduces the Software Engineering Institute (SEI). The SEI is a research organization funded by the Unites States Government. It resides on the Carnegie Mellon University campus in Pittsburgh Pennsylvania. One of its major goals is to help software development organizations get better control of their software development processes. This course does not require adoption of the suggested practices. With that said, software development organizations would generally benefit by becoming familiar with the suggested practices for each level. I suggest working towards incorporating the suggestions that make sense for your organization - you will benefit from it.

00:57 No Good Way to Make A Choice between government software project bidders. 0ne was needed

01:07 Capability Maturity Model (CMM) - There are five levels of maturity

02:10 CMM Level 1 - Ad-Hoc and Chaotic

02:35 CMM Level 2 - Repeatable

02:57 CMM Level 3 - Defined

03:26 CMM Level 4 - Managed

03:58 CMM Level 5 - Optimized

04:18 Maturity Level Rating

03:04

This lecture provides a macro view of the creation, value and use of a project plan. It does not favor either a Waterfall nor Iterative approach. I do favor a simple project plan without detailed task start and and dates.

00:25 Mis-guided Folks - Management and marketing people who create havoc with unrealistic demands

01:00 Miracle Not Needed

01:25 Foundation for a Successful Project

01:36 Project Plan - High Level

02:25 Work leveling does not make sense for software projects

Section 2: Foundation for a Successful Project
08:28

This lecture focuses on the development and management of requirements. It discusses business requirements and their relationship to functional requirements. The subjects of User stories and Use cases are explored. The concepts of wire-frames, interactive simulation, and requirement validation are covered. Together. these are the elements of a solid SDLC foundation

00:00 Create Use Cases or User Stories

01:07 Elicit Business Requirements

01:51 Validate Business Requirements

03:30 Create Bi-directional Traceability Matrices

04:24 Create Interactive Wire-frames

06:15 Validate Functional Requirments

Section 3: Baseline and Configuration Management
01:42

This lecture deals wit the Baseline. The Baseline should be thought of a snap-shot of the requirements and supporting documents at a particular point n time. Once the Baseline has been created it serves as the anchor point for configuration management. No changes to requirements are permitted without a formal approval of the Change Control Board.

00:07 Graphic portrayal of where the Baseline fits into the SDLC

00:36 Prior to the Baseline requirements made be made without formality since nothing is yet "official"

01:27 Ignoring the Baseline will result in lengtthening the time to market

06:28

This lecture defines and explains Configuration Management, and how to practice t.

00:00 What is Configuration Management?

00:08 Graphic portrayal of where Configuration Management fits into the SDLC

00:38 Software Configuration Management (SCM) process

01:32 Configuration Change Control

02:40 Change Review Board (CRB)

03:40 Change Request Submission

05:05 Change Request Review

06:12 Change Request Review Results

Section 4: Database Development
02:25

This lecture addresses the usual practices associated with database definition, construction, and population.

00:00 Common Database Practices

00:12 Graphic portrayal of where Database considerations fit into the SDLC

01:11 Provide enough instances of the database so each person can work withiout stepping on someone else's work

01:24

This lecture discusses an improved way to populate the development database.

00:00 Improved Database Practices

Section 5: Constructing the Code
01:50

This lecture explains the necessity for a Software Requirement Specification (SRS) and how to create one.

00:00 Major Sections of an SRS

00:24 Create Software Rquirement Specification

01:23

This lecture discusses code construction and unit testing. It does not impose construction techniques nor languages to use.That s left to the student and their organization's norms.

00:00 Develop Code and Unit Test the Modules

00:05 Graphic portrayal of where Code construction fits into the SDLC. Please note that code construction and unit testing is one of three parallel development flows. The power of parallelism is a key to speeding-up time to market

00:50 Code review meetings

Section 6: QA Testing
02:00

This lecture discusses QA testing, It is the second of three parallel workflows. The others are coding and documentation.The lecture talks about both writing and executing test cases.

00:00 Graphic portrayal of where QA Testing fits into the SDLC.

00:07 Write Test Cases

01:13 Graphic portrayal of a bi-directional traceability matrix showing functional requirements versus test cases

01:20 Execute Test Cases

Section 7: Writing Documentation
02:32

This lecture addresses the user documentation with emphasis on the User Guide. Documentation is the third of the three parallel development workflows.

00:00 Graphic portrayal of where Documentation fits into the SDLC

00:05 Develop Documentation Plan

00:09 Write User Guide - It is an important part of QA testing

02:02 Write Balance of Planned Documents

.

Section 8: Fix and Finalize
03:18

This lecture addresses the recording and tracking of bugs through resolution. It also discusses the User Acceptance Test (UAT) and who should perform it.

00:00 Bug Capture and Tracking

00:07 Graphic portrayal of where Fixing and Finalization fits into the SDLC

00:39 A good bug tracking system is required

01:05 A Very Poor Practice

01:58 Executing the UAT

Section 9: A Deeper Dive
06:41

This lecture is the first of nine lectures that take a deeper dive into some of the of the SDLC activities that require more in-depth coverage.

The business requirements are the rationale for the project. While getting the business requirements correct and complete will not guarantee a successful product and project (there are other opportunities for mis-management), not getting them correct and complete will guarantee failure to meet the business needs.

00:07 Graphic portrayal of the topics that will be discussed in the deep dive

00:15 High level discussion of the Business Requirements

01:33 High level discussion of the Use Cases

02:18 High level discussion of the Interactive Wirer-frames

02:45 High level discussion of the Bi-directional Traceability Matrices

03:18 High level discussion of the SRS

04:52 High level discussion of Writing Test Case

05:20 High level discussion of Executing Test Cases

05:40 High level discussion of the User Guide

06:10 High level discussion of Change Control

04:19

This lecture addresses the Use Case. A Use Case is created from user and SME narratives that describe a flow of a business related activity, such as the steps of withdrawing money from a bank ATM. It is typically presented in both a text and graphical format. The entire business activities for a software application can (and should be) described as a set of Use Cases.

00:00 What is a Use Case?

01:24 A Use Case Development Procedure

03:17 Two methods of graphically portraying a Use Case

04:07 Prioritize Development Work

05:02

This lecture discusses Wire-frames, what they are, how they are constructed, and how they are used. A Wire-frame is a powerful tool. It can be used to help system users to validate a Use Case. It is also very useful in describing the desired look, feel, and behavior to t developers; all of this without writing any code.

00:00 Wire-frames to Validate Requirements

00:35 Getting the Right Requirement Set

01:37 Constructing an Interactive Simulation

02:50 The Development Team Loved It

03:36 Power Point as an Interactive Simulation Tool

04:32 UI Controls Library

01:38

This lecture discusses Bi-directional Traceability Matrices; what they are, how they are constructed and how thy are used. Bi-directional Traceability Matrices play an important role in Change Request evaluation and Configuration Management.

00:00 What is a Bi-directional Traceability Matrix?

00:18 Graphic portrayal of a Bi-directional Traceability Matrix

06:14

This lecture discusses the Software Requirement Specification (SRS). The SRS is a key document that people tend to avoid or ignore. There are a number of excuses given for not writing am SRS - they are all bogus. In my opinion, the real reason that the SRS gets such bad press is that it delays the writing of code. THIS IS A GOOD THING. The desire and pressure to write code prematurely is a major reason for project delays and milestone slips. You cannot get to someplace faster if you don't know where you are going.

00:00 About Joel Spolsky

00:41 Failing to write a spec is the single biggest unnecessary risk you can take

01:50 Save time communicating

02:52 It's impossible to create a meaningful schedule without a spec

04:28 Getting people to read the spec

02:35

This lecture discusses test cases. It mentions each of the attributes that a test case should contain, and several optional ones, It encourages obsessive behavior when looking for scenarios to test. It also talks about not shifting the testing to the users.

00:00 Write Test Cases

00:30 Software testing is the process of executing a program with the intent of finding an error

00:42 Attributes of a Test Case

01:12 Graphic portrayal of a bi-directional matrix showing functional requirements versus test cases

01:19 Test Case Optional Fields

01:58 Be Thorough

02:15 Do Not Make the Users Become the Testers

02:04

This lecture discusses the activities for a Test Case execution. The testing should verify the User Guide as well as the software. An automated testing tool will be a big help with regression testing .Record the results of each test in a database for possible future use.

00:00 Execute functions in accordance with the User Guide

00:25 Regression test each build - automated testing is not mandatory but is a big help

01:10 Attributes of a test instance

01:51 Record execution results in a database

02:43

This lecture addresses Change Control - what it is and how it is performed. It illustrates the importnce of the Change Control Board.

00:00 The Change Control Board

00:30 Change Control is tied to the Baseline

00:57 Elements of a Change Request

01:10 Use the bi-directional traceability matrices to assist in the evaluation of the request

01:54 Roll-back procedure

02:30 Implementing the change

02:11

This lecture discusses the construction of the Use Guide and when it should be created. It is usual for the User Guide to be written at the very end of the project. This is a bad practice because the document itself is not tested. Perhaps even more importantly, the User Guide is very helpful in all of the testing phases. Use the interactive wire-frames and Use Cases to construct the User Guide before any code is written,

00:00 The User Guide is basically a "how to" document

00:11 Graphic portrayal of a page from a User Guide

00:21 A good format is Use Case based

00:48 When the User Guide should be written

01:24 The Interactive Wire-frame enables the writing of the User Guide before any code is written

Section 10: Power Story
05:21

This lecture discusses Power Story. Power Story is a company that has created two Power Point plug-ins to help you build interactive wire-frames.This tool does not use hot-spots. It has an elegant alternative method of showing flow.

I do not have any monetary interest in Power Story or its products. The products are very modestly priced and will save you a lot of time

00:00 Introduction

00:38 Overview of the plug-ins, powerSTORYBOARD and powerWIREFRAME

02:05 User Story example

02:15 powerSTORYBOARD steps editor

02:45 powerWIREFRAME screen builder

03:24 Built-out Use Case

04:27 Use Case Story Step with wire-frame

Section 11: Wrap Up
01:13

This lecture performs a very brief recap of the course. It concludes with a sincere thank you for spending the time with me. I hope that you enjoyed the course.

00:00 Recap

00:32 Deep Dive Topics

00:46 Thank You

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Lionel Bentkower, Expert in all phases of the software development lifecycle

Software development professional with keen interest in improving software development processes and techniques. Hands-on experience as project manager, product manager, software developer, business analyst, documentation author, QA manager and data architect.

Deep experience in all phases of the software development life cycle.Familiar with CMMI for Development. Experienced in Agile and Waterfall paradigms.

Industries served include healthcare, finance, gaming, manufacturing, distribution, printing and association management.

Bachelor of Science degree in Business.

Ready to start learning?
Take This Course