SOFTWARE
DEVELOPMENT
Prepared by Mark Jhon C. Oxillo
Software Development
It is the process of conceiving,
specifying, designing, programming,
documenting, testing, and bug fixing
involved in creating and maintaining
applications, frameworks, or other
software components.
Software Defect
Any error that, if not removed,
could cause a software system
to fail to meet its user’s needs.
Software Defect
A software defect can be
devastating, resulting in lost
customers and reduced revenue.
Software Quality
It is the degree to which a
software product meets the
needs of its users.
Product Liability
The liability of manufacturers,
sellers, lessors, and others for
injuries caused by the defective
products
Product Liability
Injuries can come in the form of
physical mishaps and death, loss of
revenue, or an increase in expenses
due to business disruption caused
by software failure.
Product Liability
Some Claims of Product Liability are:
• Strict Liability
• Negligence
• Breach of Warranty
• Intentional Misrepresentation
Strict Liability
It means that the defendant is
held responsible for injuring
another person, regardless of
negligence or intent.
Negligence
Is the failure to do what a
reasonable person would do or
doing something that a
reasonable person would not do
Breach of Warranty
Occurs when the product
fails to meet the terms of its
warranty
Warranty
Assures buyers or lessees
that a product meets certain
standards of quality
Example Warranty of Merchantability:
• The goods must be adequately contained,
packaged and labeled.
• The good must be of an even kind, quality and
quantity within each unit
• The good must conform to any promise or
affirmation of fact made on the container or
label.
Intentional Misrepresentation
Occurs when the a seller
either misrepresents the
quality of a product or
conceals a defect in it
SOFTWARE
DEVELOPMENT
PROCESS
Persons Involved in SDP
• System Analysts
• Programmers
• Architects
• Database Specialists
• Project Managers
• Documentation Specialists
• Trainers and Testers
Software Development Methodology
Is a standard, proven work
process that enables the persons
involved to make controlled and
orderly progress in developing
high-quality software
Software Development Methodology
It also recommends specific
techniques for accomplishing
software development tasks
Quality Assurance
Refers to methods within the
development cycle designed to
guarantee reliable operation of a
product
Quality Assurance
To ensure the degree of quality,
software testing is done before
the products are shipped.
Software Testing
is a process of executing a program or
application with the intent of finding the
software bugs. It can also be stated as the
process of validating and verifying that a
software program or application or product
meets the business and technical requirements
that guided its design and development
Types Software Tests:
• Dynamic Testing
• Static Testing
• Integration Testing
• System Testing
• User Acceptance Testing
1. Dynamic Testing
Done by testing the code for a
completed unit of software by
actually entering test data and
comparing the results to the
expected results
a. Black-box Testing
Involves viewing the software unit
as a device that has expected input
and output behaviors but whose
internal workings are unknown
(a black box)
b. White-box Testing
Treats the software unit as a device
that has expected input and output
behaviors but whose internal
workings, unlike the unit in black-
box testing, are known
2. Static Testing
Special software programs called
static analyzers are run against the
new code, rather than reviewing input
and output, the static analyzer looks
for suspicious patterns in programs
that might indicate a defect.
3. Integration Testing
After successful unit testing, the
software units are combined into an
integrated subsystem that undergoes
rigorous testing to ensure that
linkages among various subsystems
work successfully.
4. System Testing
After successful integration
testing, the various subsystems
are combined to test the entire
system as a complete entity.
5. User Acceptance Testing
Independent testing performed by
trained end users to ensure that
the system operates as they
expected.
Capability Maturity
Model Integration
(CMMI)
CMMI
Developed by the Software
Engineering Institute at Carnegie
Mellon; is a process improvement
approach that defines the essential
elements of effective processes
CMMI’s Level of Software
Development Maturity
1. Initial
2. Managed
3. Defined
4. Quantitatively Managed
5. Optimizing
1. Initial
Organization tends to over
commit and processes are
often abandoned during times
of crisis
2. Managed
Projects employ processes and
skilled people; status of work
products is visible to
management at defined points
3. Defined
Processes are well-defined and
understood and are described in
standards, procedures, tools, and
methods, processes are consistent
across the organization
4. Quantitatively Managed
Quantitative objectives for quality
and process performance are
established and are used as criteria in
managing projects; specific measures
of process performance are collected
and statistically analyzed.
5. Optimizing
Organization continually
improves its processes; changes
are based on a quantitative
understanding of its business
objectives and performance
needs.
Key Issues in
Software
Development
Development of Safety-Critical System
Safety Critical System – one
whose failure may cause injury
or death
Development of Safety-Critical System
Project Safety Engineer – one
who has explicit responsibility
for the system’s safety. They
track hazards from a project’s
start to its finish.
Development of Safety-Critical System
Risk – is the probability of an
undesirable event occurring times
the magnitude of the event’s
consequences if it does happen
Risk = % of undesirable event to
happen X cost of consequence
COMPUTATION OF RISK
•Probability of the Undesirable
Event to Happen = 1%
•Cost of Consequence = $1 million
Risk = ?
COMPUTATION OF RISK
Risk = 1% x $1,000,00
Risk = 0.01 x $1,000,000
Risk = $10,000
Quality Management Standards
ISO (International Organization
for Standardization) – founded in
1947, is a worldwide federation
of national standards bodies from
161 countries
Quality Management Standards
ISO 9001 Family of Standards –
serves as a guide to quality
products, services and
management
Quality Management Standards
ISO 9001:2008 – provides a set
of standardized requirements for a
quality management system
Quality Management Standards
ISO 9001 - To obtain this coveted
certificate, an organization must
meet the following requirements:
•Have written procedures for all
processes
Quality Management Standards
ISO 9001 - To obtain this coveted
certificate, an organization must
meet the following requirements:
•Follow those procedures
Quality Management Standards
ISO 9001 - To obtain this coveted
certificate, an organization must
meet the following requirements:
• Prove to an auditor that it has
fulfilled the first two requirements
END
THANK YOU!
         

Software Development

  • 1.
  • 2.
    Software Development It isthe process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components.
  • 3.
    Software Defect Any errorthat, if not removed, could cause a software system to fail to meet its user’s needs.
  • 4.
    Software Defect A softwaredefect can be devastating, resulting in lost customers and reduced revenue.
  • 5.
    Software Quality It isthe degree to which a software product meets the needs of its users.
  • 6.
    Product Liability The liabilityof manufacturers, sellers, lessors, and others for injuries caused by the defective products
  • 7.
    Product Liability Injuries cancome in the form of physical mishaps and death, loss of revenue, or an increase in expenses due to business disruption caused by software failure.
  • 8.
    Product Liability Some Claimsof Product Liability are: • Strict Liability • Negligence • Breach of Warranty • Intentional Misrepresentation
  • 9.
    Strict Liability It meansthat the defendant is held responsible for injuring another person, regardless of negligence or intent.
  • 10.
    Negligence Is the failureto do what a reasonable person would do or doing something that a reasonable person would not do
  • 11.
    Breach of Warranty Occurswhen the product fails to meet the terms of its warranty
  • 12.
    Warranty Assures buyers orlessees that a product meets certain standards of quality
  • 13.
    Example Warranty ofMerchantability: • The goods must be adequately contained, packaged and labeled. • The good must be of an even kind, quality and quantity within each unit • The good must conform to any promise or affirmation of fact made on the container or label.
  • 14.
    Intentional Misrepresentation Occurs whenthe a seller either misrepresents the quality of a product or conceals a defect in it
  • 15.
  • 16.
    Persons Involved inSDP • System Analysts • Programmers • Architects • Database Specialists • Project Managers • Documentation Specialists • Trainers and Testers
  • 17.
    Software Development Methodology Isa standard, proven work process that enables the persons involved to make controlled and orderly progress in developing high-quality software
  • 18.
    Software Development Methodology Italso recommends specific techniques for accomplishing software development tasks
  • 19.
    Quality Assurance Refers tomethods within the development cycle designed to guarantee reliable operation of a product
  • 20.
    Quality Assurance To ensurethe degree of quality, software testing is done before the products are shipped.
  • 21.
    Software Testing is aprocess of executing a program or application with the intent of finding the software bugs. It can also be stated as the process of validating and verifying that a software program or application or product meets the business and technical requirements that guided its design and development
  • 22.
    Types Software Tests: •Dynamic Testing • Static Testing • Integration Testing • System Testing • User Acceptance Testing
  • 23.
    1. Dynamic Testing Doneby testing the code for a completed unit of software by actually entering test data and comparing the results to the expected results
  • 24.
    a. Black-box Testing Involvesviewing the software unit as a device that has expected input and output behaviors but whose internal workings are unknown (a black box)
  • 25.
    b. White-box Testing Treatsthe software unit as a device that has expected input and output behaviors but whose internal workings, unlike the unit in black- box testing, are known
  • 26.
    2. Static Testing Specialsoftware programs called static analyzers are run against the new code, rather than reviewing input and output, the static analyzer looks for suspicious patterns in programs that might indicate a defect.
  • 27.
    3. Integration Testing Aftersuccessful unit testing, the software units are combined into an integrated subsystem that undergoes rigorous testing to ensure that linkages among various subsystems work successfully.
  • 28.
    4. System Testing Aftersuccessful integration testing, the various subsystems are combined to test the entire system as a complete entity.
  • 29.
    5. User AcceptanceTesting Independent testing performed by trained end users to ensure that the system operates as they expected.
  • 30.
  • 31.
    CMMI Developed by theSoftware Engineering Institute at Carnegie Mellon; is a process improvement approach that defines the essential elements of effective processes
  • 32.
    CMMI’s Level ofSoftware Development Maturity 1. Initial 2. Managed 3. Defined 4. Quantitatively Managed 5. Optimizing
  • 33.
    1. Initial Organization tendsto over commit and processes are often abandoned during times of crisis
  • 34.
    2. Managed Projects employprocesses and skilled people; status of work products is visible to management at defined points
  • 35.
    3. Defined Processes arewell-defined and understood and are described in standards, procedures, tools, and methods, processes are consistent across the organization
  • 36.
    4. Quantitatively Managed Quantitativeobjectives for quality and process performance are established and are used as criteria in managing projects; specific measures of process performance are collected and statistically analyzed.
  • 37.
    5. Optimizing Organization continually improvesits processes; changes are based on a quantitative understanding of its business objectives and performance needs.
  • 38.
  • 39.
    Development of Safety-CriticalSystem Safety Critical System – one whose failure may cause injury or death
  • 40.
    Development of Safety-CriticalSystem Project Safety Engineer – one who has explicit responsibility for the system’s safety. They track hazards from a project’s start to its finish.
  • 41.
    Development of Safety-CriticalSystem Risk – is the probability of an undesirable event occurring times the magnitude of the event’s consequences if it does happen Risk = % of undesirable event to happen X cost of consequence
  • 42.
    COMPUTATION OF RISK •Probabilityof the Undesirable Event to Happen = 1% •Cost of Consequence = $1 million Risk = ?
  • 43.
    COMPUTATION OF RISK Risk= 1% x $1,000,00 Risk = 0.01 x $1,000,000 Risk = $10,000
  • 44.
    Quality Management Standards ISO(International Organization for Standardization) – founded in 1947, is a worldwide federation of national standards bodies from 161 countries
  • 45.
    Quality Management Standards ISO9001 Family of Standards – serves as a guide to quality products, services and management
  • 46.
    Quality Management Standards ISO9001:2008 – provides a set of standardized requirements for a quality management system
  • 47.
    Quality Management Standards ISO9001 - To obtain this coveted certificate, an organization must meet the following requirements: •Have written procedures for all processes
  • 48.
    Quality Management Standards ISO9001 - To obtain this coveted certificate, an organization must meet the following requirements: •Follow those procedures
  • 49.
    Quality Management Standards ISO9001 - To obtain this coveted certificate, an organization must meet the following requirements: • Prove to an auditor that it has fulfilled the first two requirements
  • 50.
    END THANK YOU!         