UDACITY
UDACITY Logo

Georgia Institute of Technology - Software Development Process 

  • Offered byUDACITY

Software Development Process
 at 
UDACITY 
Overview

Offered by Georgia Tech

Duration

3 months

Mode of learning

Online

Schedule type

Self paced

Difficulty level

Intermediate

Credential

Certificate

Software Development Process
 at 
UDACITY 
Highlights

  • Taught by Industry Pros
  • Student Support Community
  • Rich Learning Content
  • Self-Paced Learning
Read more
Details Icon

Software Development Process
 at 
UDACITY 
Course details

What are the course deliverables?
  • Enhance your skill set and boost your hirability through innovative, independent learning.
  • Taught by industry professionals
More about this course
  • In SDP, you will learn how to select and implement the ideal software process for your development project. Through Professor Orso's engaging examples and interviews with industry insiders, you will learn both conceptual and practical aspects of software engineering. The course covers requirements engineering, architecture and design, testing and maintenance, and software quality in general.

Software Development Process
 at 
UDACITY 
Curriculum

LESSON 1: Introduction and Overview

Importance of Software Engineering

Discipline of Software

Engineering

The Software Crisis

Software Phases

LESSON 2: Life Cycle Models

Introduction with Barry Bohem

Requirements Engineering

Design

Maintenance

Software Process Model

Introduction

Waterfall Process

Spiral Process

Evolutionary Prototyping Process

Rational Unified Process

Agile Process

Choosing a Model

Lifecycle Documents

LESSON 3: Integrated Development Environment

Eclipse Introduction

IDE Overview

Plug-Ins

Eclipse Demo: Create Java Project

Eclipse Demo: Create a Class

Eclipse Demo: Run Configuration

Eclipse Demo: Debugging

LESSON 4: Version Control Systems

Interview with John Britton

Version Control System Introduction

Two Main Types of VCS

Introduction to Git

Git Workflow

Git Demo: Intro to Git

Git Demo: Git + Eclipse

Git Demo: Github

Git Recap: Local Repositories

Git Recap: Remote Repositories

LESSON 5: Requirements Engineering

Interview with Jane Cleland-Huang

General RE Definition

Software Intensive Systems

Functional and Nonfunctional Requirements

User and System Requirements

Modeling Requirements

Analyzing Requirements

Requirements Prioritization

Requirements Engineering Process

LESSON 6: OO Software and UML

Object Orientation Introduction

UML Structural Diagrams: Class Diagrams

Class Diagram: Creation Tips

UML Structural Diagrams: Component Diagram

UML Structural Diagram: Deployment Diagram

UML Behavioral Diagram: Use Case

Use Case Diagram: Creation Tips

UML Behavioral Diagrams: Sequence

UML Behavioral Diagrams: State Transition Diagram

LESSON 7: Software Architecture

Interview with Nenad Medvidovic

What is Software Architecture?

Prescriptive vs. Descriptive Architecture

Architectural Evolution

Architectural Degradation

Architectural Recovery

Architectural Elements

Components, Connectors, and Configuration

Deployment Architectural Perspective

LESSON 8: A Tale of Analysis and Design

Analyzing Requirements

Refining Classes and Attributes

Adding Attributes

Identifying Operations

Refining the Class Diagram

LESSON 9: Design Patterns

Patterns Catalogue

Pattern Format

Factory Method Pattern

Strategy Pattern

Choosing a Pattern

Negative Design Patterns

LESSON 10 : Unified Software Process

Use-Case Driven

Inception Phase

Elaboration Phase

Construction Phase

Transition Phase

Phases and Iterations

LESSON 11: General Concepts

Failure, Fault and Error

Verification Approaches

Pros and Cons of Approaches

Testing Introduction

Testing Granularity Levels

Alpha and Beta Testing

Black and White Box Testing Introduction

LESSON 12: Black-Box Testing

Systematic Functional Testing Approach

Test Data Selection

Category Partition Method

Produce and Evaluate Test Case Specifications

Generate Test Cases from Test Case Specifications

Model Based Testing

Finite State Machines

LESSON 13: White-Box Testing

Coverage Criteria Intro

Statement Coverage

Control Flow Graphs

Test Criteria Subsumption

MC/DC Coverage

LESSON 14: Agile Development Methods

Cost of Change

Agile Software Development

Extreme Programming (XP)

XP?s Values and Principles

Test First Development

Refactoring

Pair Programming

Continuous Integration

Testing Strategy

High Level Scrum Process

LESSON 15: Software Refactoring

Reasons to Refactor

Refactoring Demo

Refactoring Risks

Cost of Refactoring

When Not to Refactor

Other courses offered by UDACITY

Free
6 weeks
Beginner
– / –
4 months
Intermediate
Free
4 weeks
Intermediate
Free
1 hours
Beginner
View Other 435 CoursesRight Arrow Icon
qna

Software Development Process
 at 
UDACITY 

Student Forum

chatAnything you would want to ask experts?
Write here...