Welcome to the Introduction to the SDLC Training Course Course Information: • The top banner of the course contains information to help determine course progression. • There are 4 Knowledge Checks inserted into the course. They can be used to help determine if the student is grasping key concepts along the way. A final assessment is at the end of the course. • The course will take about 1 hour to complete. 1 Version: 8.0 Last Updated: 17-Feb-2011
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Welcome to the
Introduction to the
SDLC
Training Course
Course Information:
• The top banner of the course contains information to help determine course progression.
• There are 4 Knowledge Checks inserted into the course. They can be used to help
determine if the student is grasping key concepts along the way. A final assessment is
at the end of the course.
• The course will take about 1 hour to complete.
1 Version: 8.0 Last Updated: 17-Feb-2011
The goal of this course is to provide an introduction to the Software Development Life
Cycle (SDLC) process framework.
Upon completing of this course, the student will be able to:
• Recognize that the SDLC framework is required for all software-impacting projects in
Dell IT*
• Explain the story of the SDLC against the context of industry best practices
• Describe the 5-phase Microsoft® Solutions Framework
(MSF) and mapping of the SDLC
against that framework
• Recall how the SDLC helps fulfill corporate policies and standards
• Describe the SDLC’s process architecture and all the elements that comprise the SDLC
• Recommend a suggestion to improve the SDLC with an understanding of the SDLC
governance model
The course does not cover details about specific deliverables or activities. That information
is available on the SDLC site and would be made available via other training materials.
Course Goals and Objectives
* Other organizations outside of Dell IT have adopted, or plan to adopt, the SDLC as their standard set of development processes. This
training is applicable to those organizations with some subtle differences that would be addressed in different training formats or forums.
2
The Story of the SDLC
The Process Architecture
Compliance and Corporate Governance
Continuous Improvement
Course Outline
Module 1
Module 2
Module 3
Module 4
3
• SDLC is a generic, industry term which is used to refer to a collection of
software process assets (or a process asset library) that together form a
framework which can be used to execute a software development project.
• We’ve taken the generic “SDLC” term and practically applied it to refer to
the Dell IT Software Development Process. The SDLC website houses
the process asset library.
Software Development Life Cycle
Introduction – Characteristics – Foundation – Value – Boundaries
Is the standard set of development processes that enables compliance with company policies and other business and legal requirements.
Is organized in a user-friendly framework for use by all segments, regions, and business partners.
Is a continuous process improvement initiative and is continually refined based on feedback received from project teams, management, and business partners.
Is a library of resources and tools that enables delivery of software development projects which comprises:
– Activities – Roles – Deliverables
– Standards – Work Aids – Training Materials
Introduction – Characteristics – Foundation – Value – Boundaries
5
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
• The SDLC has evolved from previous internal process improvement
initiatives (i.e., Horizon).
• The SDLC is based primarily on the best practices of the CMMI® for
Development (CMMI-DEV), as published and maintained by the Software
Engineering Institute at Carnegie Mellon University. The CMMI-DEV is the
industry standard process improvement maturity model for the development
of products and services.
• The SDLC also incorporates best practices from other process models to
help ensure a complete set of industry-tested processes is available for the
development of software solutions.
Introduction – Characteristics – Foundation – Value – Boundaries
Studies have shown that the following benefits can be gained from the consistent use of standard processes:
• Increased Productivity/Reduced Duplication: Project teams that cross segments and regions don’t have to waste precious project time reconciling and negotiating through process, template, and tool differences.
• Best Practice Sharing: A single process architecture and team focused on keeping the content fresh and updated allows us to quickly and more efficiently take advantage of best practices discovered both internally and externally, in the software engineering industry.
• Reduce Effort Associated with Reacting to Audit or Regulatory Issues: A single process architecture used worldwide reduces the amount of effort needed for us to react to audit and regulatory issues.
Introduction – Characteristics – Foundation – Value – Boundaries
7
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Below are some benefits that other companies experienced as a result of standardizing its IT processes.
Category Benefits Company
Cost 33% decrease in the average cost to fix a defect Boeing, Australia
15% decrease in defect find and fix cost Lockheed Martin Management and Data Systems
Increased accuracy in cost estimation Raytheon North Texas Software Engineering
Schedule 50% reduction in release turn around time Boeing, Australia
Improved and stabilized Schedule Performance Index Northrop Grumman Defense Enterprise Systems
Met every milestone (25 in a row) on time, with high quality
and customer satisfaction
Northrop Grumman Defense Enterprise Systems
Quality Improved defect removal before test from 50% to 70%,
leaving 0.35 post release defects per KLOC
Siemens Information Systems Ltd, India
Reduced software-defect-per-million-delivered-SLOC by
over 50%
Lockheed Martin Systems Integration
Only 2% of all defects found in the fielded system Northrop Grumman Defense Enterprise Systems
Source: Why Make the Switch? Evidence about the Benefits of CMMI®, March 2004
Introduction – Characteristics – Foundation – Value – Boundaries
The IT Portfolio Management processes are used to manage business requests and fund IT projects.
The IT Production Support activities start once the post-launch warranty period ends.
1
4
Enterprise Architecture processes define enterprise standards and solutions that need to be fulfilled for projects with enterprise strategic focus.
2 The processes in the SDLC are executed to develop solutions to funded projects. These projects may include enterprise architecture components. The SDLC’s processes end once the project’s solution is deployed into the production environment and the post-launch warranty period end.
3
The SDLC is required for all IT software development projects. However, it does not
contain all the IT processes needed to fund and support software systems. Below is
a diagram describing the other IT processes that support our software development
efforts.
Introduction – Characteristics – Foundation – Value – Boundaries
9
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Indicate which of the following statements about the SDLC is TRUE:
a. The SDLC is required for all IT software development projects, irrespective
of project size, type, or effort.
b. The SDLC is based on the CMMI for Development.
c. The SDLC does not contain all the IT processes needed to fund, build, and
support software systems because portfolio management, enterprise
architecture, and production support processes exist to support the software
development processes.
d. The SDLC has incorporated best practices from many industry-proven
models and frameworks, including ITIL, PMI, and CoBIT.
e. All of the above statements are true.
Knowledge Check
10
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
See the next slide for the answer.
Indicate which of the following statements about the SDLC is TRUE:
a. The SDLC is required for all IT software development projects, irrespective
of project size, type, or effort.
b. The SDLC is based on the CMMI for Development.
c. The SDLC does not contain all the IT processes needed to fund, build, and
support software systems because portfolio management, enterprise
architecture, and production support processes exist to support the software
development processes.
d. The SDLC has incorporated best practices from many industry-proven
models and frameworks, including ITIL, PMI, and CoBIT.
e. All of the above statements are true.
Knowledge Check
11
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Story of the SDLC
The Process Architecture
Compliance and Corporate Governance
Continuous Improvement
Module 1
Module 2
Module 3
Module 4
12
Course Outline
The SDLC’s Process Architecture shows the relationship between the activities and other resources and tools required to deliver a Dell IT project, thus it is the largest module in this training course.
The first part of the module covers the primary elements of the Process Architecture:
• Project Phases, Activities, and Deliverables
• Process Areas
• Tasks and Roles
We will walk through each Project Phase, Process Area, and the Role definitions.
In the second part of the module, we illustrate how the primary elements are combined to create Development Methods, based on Project Types and Life Cycle Models.
Finally, in the last part of the module, we will look at the other resources and tools (i.e., Work Aids) that are available to help ensure consistent and efficient execution of the SDLC.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
13
This diagram depicts the primary elements of the SDLC’s Process Architecture.
• A Project Phase consists of several Activities.
• An Activity is a collection of Tasks, that require one or more Roles and the use of
Work Aids, performed to complete a project Deliverable (or accomplish a project
milestone).
• An Activity is also aligned with (usually just one) Process Area.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
14
Project Phase Consists of Produces
Contains
Supported by
Process Area
Role Work Aid
Standards, Training, Tools, How-To’s, etc.
Task
Activity Deliverable
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Let’s first focus on the Project Phases, Activities, and Deliverables of the
SDLC.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
15
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase Consists of Produces
Contains
Supported by
Process Area
Role Work Aid
Standards, Training, Tools, How-To’s, etc.
Task
Activity Deliverable
These phases are defined by the Microsoft® Solutions
Framework (MSF) and originally adopted by Dell IT in
1999.
Over the past several years, Dell IT has matured its
development process, but the foundation continues to
be the MSF.
A Project Phase is a collection of logically related project activities, culminating in
the completion of one of more major deliverables or milestones. The SDLC is
organized into 5 Phases: Envisioning, Planning, Developing, Stabilizing, and
Deploying.
In the next few slides, we will look at each of the 5 Project Phases and some of
the activities and deliverables in the phases.
Note: In the SDLC, deliverables appear in the phase where the deliverable is
initiated or started. The deliverable may be completed or updated in a
subsequent phase as dictated by the project and its dependencies.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
As stated before, Activities are mapped to Process Areas. Below is a
view of some Activities and their Process Area alignment.
Architecture Design Development Testing Deployment
Notes: The above is not a complete list of SDLC activities and their alignment to process areas. Consult the SDLC for comprehensive
information.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
35
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Management
Requirements Management
•Develop
Architecture
and High Level
Design
•Design •Refine
Business
Requirements
•Define System
Requirements
•Define
Infrastructure
Requirements
•Plan Project
•Establish
Estimates and
Schedules
• Identify and
Manage
Process
Exceptions
• Identify and
Manage Risks
•Conduct Phase
Exit Reviews
•Code and Unit
Test
•Conduct DIT
•Perform
Disaster
Recovery
Tasks
•Perform
Security Risk
Assessment
and Analysis
•Plan Testing
•Create Test
Cases
•Conduct SIT
and UAT
•Manage
Testing Defects
•Create Launch
Orchestrate
Plan (LOP)
•Create Change
Ticket
•Create
Implementation
and Back-out
Instructions
•Prepare for
Application
Support and
User Training
•Deploy System
to Production
We have discussed Project Phases, Activities, Deliverables, and
Process Areas. Next, we will talk about Tasks and Roles.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
36
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase Consists of Produces
Contains
Supported by
Process Area
Role Work Aid
Standards, Training, Tools, How-To’s, etc.
Task
Activity Deliverable
A Task is an instruction for the specific step that is performed as part of
executing an Activity. A Task is performed by one or many Roles.
In the SDLC, tasks are embedded in the Activity definitions and include swim
lane diagrams with detailed explanation of what each Role must do to
accomplish the task. Below is an snapshot of some Roles and Tasks from the
“Code and Unit Test” activity:
Developer
Develop Unit Test
Code Components
Conduct Unit Test
Conduct Code Peer
Review
Cleanup Code
Plan Unit Test and DIT
Development
Lead
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
37
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
A Role is an individual or group participating in the project. Roles have
responsibilities to complete tasks or deliverables as described by the RACI
notation: Responsible, Accountable, Consulted, and Informed.
The SDLC recognizes 9 primary project roles. In the next several slides, each
of these Roles is described.
Business
Business Analyst
Development Lead
Project Manager
Developer Tester
Solution Architect
Database Administrator
Support Lead
Project
Team
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
38
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Business refers to the customer roles that enable the project
and for whom the project will produce the agreed-upon benefit(s),
which justify its production. Additionally, the Business:
• Is ultimately responsible for securing funding and resources for
the project.
• Acts as a vocal and visible champion.
• Legitimizes the project’s goals and objectives.
• Keeps abreast of major project activities.
• Is the ultimate decision-maker for the project, having final
approval of all scope changes, and signs off on approvals to
proceed to each succeeding project phase.
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
39
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Business Analyst has primary responsibility for requirements
management for the project. Specifically, the Business Analyst:
• Leads requirements analysis and verification, ensuring that
requirement statements are correct, unambiguous, complete,
consistent, prioritized, testable, understandable, and that they
conform to standards.
• Helps negotiate priorities and resolve conflicts among project
stakeholders.
• Manages requirements traceability information and track
requirements status throughout the project.
• Acts as the key interface between business and technology
teams in defining and influencing business requirements and
assists in developing the appropriate system solutions.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
40
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Project Manager drives the overall process and is
responsible for delivering the right product at the right time.
He/she owns the project schedule, reports project status,
manages resource allocation, enabling the rest of the team to
meet their goals. Additionally, the Project Manager:
• Manages the product scope and specification: This involves
facilitating team communication and negotiation and driving
overall critical tradeoff decisions.
• Manages team "health" and roles: Keeping the team
spirited and engaged and maintaining role clarity is critical
to success throughout the project.
• Manages project risks and issues, by maintaining a risk
management plan, assigning mitigating actions to
individuals, and reporting regularly on the impact of
outstanding issues and risks.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
41
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Development Lead, along with the Developer, is responsible
for building the product the customer wants. The Development
Lead, however, serves as the development team's central point of
contact to the Project Manager, leading and communicating on
behalf of other developers. Additionally, the Development Lead:
• Serves the team as a technology consultant: Early in the
development process, the Development Lead provide input into
high-level designs, evaluate technologies, and help to validate
potential solutions and mitigate risks as technology consultants.
• Estimates time and effort to complete the product: The result of
this estimate will determine the team's overall product schedule.
• Carries responsibility for design, design reviews, code reviews,
and unit testing coverage, ensuring that all Developers have a
complete understanding of product specifications and customer
expectations.
• Supports product installation and deployment: The Development
Lead may be required to write project-specific scripts and develop
code that will aid the team in installing and deploying the product.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
42
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Developer, along with the Development Lead, is
responsible for building the product the customer wants. In
many cases, there are many developers on a project team.
The Developers:
• Help specify requirements and architecture: During the early
stages of a project, developers may be expected to help
specify product requirements not included in the customer
requirements and to work on analysis and architecture
activities as part of a multi-disciplinary team.
• Estimate time and effort to complete the product, the result
of which will determine the team's overall product schedule.
• Develop, configure, and customize the product, writing all
the core code for the project and create the design for the
project.
• Support product installation and deployment, writing project-
specific scripts and code that will aid the team in installing
and deploying the product.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
43
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Tester (or Test Analyst) is able to accurately portray the
status of the product at any time by clearly stating what is
currently wrong and what is currently right with the product or
product deployment. Specifically, the Tester:
• Develops test specification, plans, and scripts: The testing
role should have a good understanding of user needs and of
how the product will meet those needs.
• Conducts tests: The testing role conducts tests to accurately
determine the status of product development or deployment.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
44
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
For projects with enterprise strategic focus, the Solution
Architect is the person responsible to analyze the customer and
product needs and specify an acceptable solution that
addresses enterprise architecture goals.
The Solution Architect supports the Development Lead and
Developers in developing the product, participating in design and
code Reviews as needed.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
45
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Database Administrator (DBA) manages technical
assessment and design activities as they relate to enterprise
databases and contributions to project development efforts
include providing guidance toward project architecture, design
and modeling principles, standards, and configuration as a
project core team member. Specifically, the DBA:
• Corroborates in the development or modification of the
enterprise logical data model by reviewing for architectural
soundness, data integrity assurance, high availability and
optimal performance considerations, scalability and
maintainability.
• Actively participates in code, architecture, and mapping
reviews with application team and with DBA counterparts in
other regions.
• Participates in unit tests to provide validation and avoid
potential impact to the production database environment.
• Ensures the database meets all SOX and Dell Compliance
security requirements.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
46
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Support Lead represents the organization that will support
the product once it has been migrated to the production
environment.
The Support Lead is responsible for understanding the needs of
operations and support personnel and representing those needs
to the team to ensure that the product is deployable,
manageable, and supportable.
The Support Lead also helps ensure that the support
organization is ready to accept the product.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Business – Business Analyst – Project Manager – Development Lead – Developer – Tester – Solution Architect –
Database Administrator – Support Lead
47
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Business
Business Analyst
Development Lead
Project Manager
Developer Tester
Solution Architect
Database Administrator
Support Lead
Project
Team
There may be other roles required to help make a project successful, but the
primary IT functions are represented by these 9 roles. Other functional roles
may be added to the project team based on the needs of the project.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
48
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The SDLC defines a RACI responsibility matrix to describe the participation by
various roles in completing deliverables. RACI is an acronym derived from the
four key responsibilities most typically used:
R
Responsible: The person or people responsible for writing, revising, and delivering the work product, and which is reflected as an assigned task.
A
Accountable: The person who is ultimately answerable for the correct and thorough completion of the deliverable and the one to whom R is accountable. There can only be one Accountable role for a deliverable.
C
Consulted: The key resources who are consulted and whose opinions are sought to help complete a work product. These people are considered Subject Matter Experts in the area of the deliverable or task and its content.
I
Informed: Though all project team members should be informed on the status of work products, the people with the Informed designation must be kept up-to-date because of a vested interest or dependency.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
49
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Indicate what roles would most likely be “Accountable” for a deliverable. The Accountable role is ultimately answerable for the correct and thorough completion of the deliverable, and there can only be one person Accountable for each deliverable.
Knowledge Check
Role
1. Business
2. Business Analyst
3. Project Manager
4. Development Lead
5. Developer
6. Tester
7. Solution Architect
8. Database Administrator
9. Support Lead
Deliverables
a. Business (or High Level) Requirements
b. Database Maintenance & Support
Package
c. Design
d. Architectural Constraints
e. Source Code
f. System Integration Test Cases
g. Project Schedule and Milestones
h. Project Funding
i. Application Support Documentation
50
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
See the next slide for the answers.
Indicate what roles would most likely be “Accountable” for a deliverable. The Accountable role is ultimately answerable for the correct and thorough completion of the deliverable, and there can only be one person Accountable for each deliverable.
Knowledge Check - Answers
Role
1. Business
2. Business Analyst
3. Project Manager
4. Development Lead
5. Developer
6. Tester
7. Solution Architect
8. Database Administrator
9. Support Lead
Deliverables
a. Business (or High Level) Requirements
b. Database Maintenance & Support
Package
c. Design
d. Architectural Constraints
e. Source Code
f. System Integration Test Cases
g. Project Schedule and Milestones
h. Project Funding
i. Application Support Documentation
51
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
We’ve covered most all of the primary
process elements of the SDLC.
These elements are combined to create
Development Methods.
A Development Method describes the
full set of activities and process elements
that a project can use, considering the
Project Type and the Life Cycle Model
being used by the project.
Development Method
Project Type
Life Cycle Model
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
52
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase
Process Area
Role Work Aid Task
Activity Deliverable
Each Development Method contains
elements from all the 7 Process Areas,
and the activities and deliverables are
mapped to the 5 Project Phases.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Project Types
Life Cycle Models
Project Phase
Project Phase
Project Phase
Development Methods
53
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase
Process Area
Role Work Aid Task
Activity Deliverable
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Project Phase
Project Phase
Project Phase
Development Methods
Project Types
The SDLC recognizes 4 Project Types: • Custom Software Development: The in-house design and development of software
solutions. • Oracle Development: The development and enhancement of Oracle applications. • Data Warehouse Development: Solutions for data warehousing and business intelligence
projects that support decision making through the collection, storage, delivery, presentation, and analysis of data.
• COTS/Package Integration: The integration of Commercial-Off-The-Shelf (COTS) solutions, with or without custom developed code.
A Project Type takes
into consideration the
different characteristics
or traits of the software
development project.
54
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase
Process Area
Role Work Aid Task
Activity Deliverable
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
Life Cycle Models
Project Phase
Project Phase
Project Phase
Development Methods A Life Cycle Model describes the relative sequence in which activities are performed. The SDLC supports 3 Life Cycle Models: • Traditional: Sometimes referred to as
“Waterfall”, progress is seen as flowing steadily downwards through the project phases. However, project phases can slightly overlap.
• Agile: Based on iterative development, where requirements and solutions are allowed to evolve throughout the project.
• Maintenance: A slimmed down version of the Traditional life cycle model for projects that are short in duration consisting of minor enhancements and bug fixes to existing software products.
55
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase
Process Area
Role Work Aid Task
Activity Deliverable
Development Method
Project Type
Life Cycle Model
The Development Methods are defined when we
put the Project Types and Life Cycle Models in a
matrix. Currently, 5 Development Methods are
defined, with others being created or planned (see
table below).
Project Types
Life Cycle Models
Traditional Agile Maintenance
Custom Software
Development
Oracle
Development
To Be Determined Data Warehouse
Development
COTS/Package
Integration Planned
At the beginning of a project, the team must select the Development Method that
will be used, thus dictating the activities and deliverables that are required.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
56
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
An interactive Development Method Selector Guide
is available on the home page of the SDLC site to help
teams determine which Development Method should
be used based upon attributes of the system that is to
be developed or enhanced.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
57
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Lastly, in this module, we will talk about the other Resources and
Tools that are available in the SDLC. We refer to them as Work Aids.
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
58
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
Project Phase Consists of Produces
Contains
Supported by
Process Area
Role Work Aid
Standards, Training, Tools, How-To’s, etc.
Task
Activity Deliverable
The SDLC is filled with Work Aids that are available to help perform the
activities in the framework. These Work Aids are categorized as
follows:
Dell Policies and Standards References to the core set of Dell policies and
standards that affect software development projects.
Checklists Includes things like:
• Code Review Checklists, to be used during
peer/code review for the coding languages used in IT
• Phase Entry and Exit Criteria Checklists, to help the
team determine readiness for moving into or out of a
project phase.
• SDLC Self-Assessment Checklist, to help teams self-
check compliance to the standard processes
Coding and Testing Standards Different from Dell Standards, these documents are
available to help bring consistency in coding and
testing practices.
Procedures These documents describe step-by-step actions
needed to accomplish a task. They are often too
detailed to be included in the Activity and Task
descriptions, thus they are documented separately.
Training References training material that is available.
Guidelines The broad category of Work Aid and How-To
documents that include things like:
• Characteristics of Excellent Requirements
• Defining As-Is and To-Be Business Processes
• Creating the Project Status Report
• List of Common Risks
• Production Trouble Ticket Severity Definitions
• Design Techniques
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Development Methods – Resources and Tools
59
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The processes in the SDLC are also aligned with the standard set of IT
project management and development tools. This integration helps the
organization to become more efficient and effective.
Project and Portfolio Management
Requirements Management
Source and Configuration Management
Build Management
Defect Management
Test Management
Asset Management Change and Release Management
Project Management
Introduction – Project Phases, Activities and Deliverables – Process Areas – Tasks and Roles –
Process Area Describes the full set of activities and process elements that a project can use, considering
the Project Type and the Life Cycle Model being used by the project.
Project Phase A collection of logically related project activities, culminating in the completion of one of more
major deliverables or milestones.
Development Method An individual or group participating in the project.
Role Logical groupings of related activities that have particular relevance to one or more project
roles.
Project Type Resources and tools that are available to help perform the activities in the SDLC.
Activity Describes the different characteristics or traits of the software development project.
Task An instruction for the specific step that must be performed as part of executing an Activity.
Life Cycle Model A collection of tasks, that require one or more Roles and the use of Work Aids, performed to
complete a project Deliverable (or accomplish a project milestone).
Work Aid Describes the relative sequence in which activities are performed.
Match the terms with their definitions.
Knowledge Check
61
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
See the next slide for the answers.
Term Definition
Process Area Describes the full set of activities and process elements that a project can use, considering
the Project Type and the Life Cycle Model being used by the project.
Project Phase A collection of logically related project activities, culminating in the completion of one of more
major deliverables or milestones.
Development Method An individual or group participating in the project.
Role Logical groupings of related activities that have particular relevance to one or more project
roles.
Project Type Resources and tools that are available to help perform the activities in the SDLC.
Activity Describes the different characteristics or traits of the software development project.
Task An instruction for the specific step that must be performed as part of executing an Activity.
Life Cycle Model A collection of tasks, that require one or more Roles and the use of Work Aids, performed to
complete a project Deliverable (or accomplish a project milestone).
Work Aid Describes the relative sequence in which activities are performed.
Match the terms with their definitions.
Knowledge Check - Answers
62
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
The Story of the SDLC
The Process Architecture
Compliance and Corporate Governance
Continuous Improvement
Module 1
Module 2
Module 3
Module 4
Module 2
63
Course Outline
In Module 1, The Story of the SDLC, we made this
statement about the SDLC:
“It defines the standard set of development processes enabling compliance
with company policies and other business and legal requirements.”
Internal Application
Development Policy
Legal Requirements
Dell Business Processes and
Standards
In this module, we will explore the
Compliance and Corporate Governance
aspects of the SDLC, revealing how the
SDLC enables project teams to comply
with:
• The Internal Application Development
Policy
• The SDLC Standard
• Legal Requirements
• Dell Business Processes and Standards.
The Story of the SDLC
The Process Architecture
Compliance and Corporate
Governance
Continuous Improvement
64
SDLC Standard
Purpose Statement
“Ensuring that software development activities are seamlessly planned and efficiently executed, regardless of organizational structures or geographies, is vital to drive and support Dell’s growth plans. This policy defines the means by which internal application development can attain consistency of approach and the ability to continuously improve processes and performance.”