software development
TRANSCRIPT
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 1/19
QUOTE Buying the right computer and getting it
to work properly is no more complicated thanbuilding a nuclear reactor from wristwatch
parts in a darkened room using only your teeth.- Dave Barry, U.S. humorist
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 2/19
Software Detect
- an error that, if not removed, would cause a system tofall to meet the needs of its users.
Software Quality
- The degree to which the attributes of a softwareproduct enable it to meet the needs of its users.
Quality Management
- The definition, measurement, and refinement of
product quality during the development of information systems and other products.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 3/19
Deliverables
- Products created during the various stages of software development.
The Importance of Software Quality
Business Information Systems
- A set of interrelated hardware, software, databases,networks, people, and procedures that collect data,
process it, and disseminate the output.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 4/19
Decision Support System (DSS)
- a type of business information system used toimproved decision making.
Software Development Methodology
- A software development methodology defines theactivities in the software development process, definesindividual and group responsibilities foraccomplishing objectives, recommends specifictechniques for accomplishing the objectives, and offers
guidelines for managing the quality of the productsduring the various stages of the development cycle.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 5/19
- Using an effective development methodology enables a manufacturer to produce high quality software, forecast project completionmilestones, and reduce he overall cost todevelop and support software. It also protectssoftware manufacturers from legal liability fordefective software in two ways:
- It reduces the number of software errors that
could cause damage and- makes it more difficult to prove negligence.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 6/19
Software Quality Assurance (QA)
- Methods within a software development process thatare designed to guarantee reliable operation of thesoftware.
Types of Tests used in Software Development
1. Dynamic Software Testing
- The testing of software by entering test data and
then comparing the actual results to expected results.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 7/19
Two Forms of Dynamic Testing
Black-box testing
- Unit testing of software that has expected input andoutput behaviors, with the inner workings unknown.
White-box testing- Unit testing of software that has expected input andoutput behaviors and whose internal workings areknown. It involves the testing of all possible logic
paths through the software unit and is done withthrough knowledge of the software’s logic.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 8/19
Other Types of Software Testing
Static testing
- The use of special software (called static analyzers) tolook for suspicious patterns in programs that might
indicate a defect.
Integration testing
- Software testing that follows successful unit testing,
where the software units are combined into anintegrated sub system that undergoes rigorous testing.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 9/19
System testing
- A form of software testing that follows successfulintegration testing, in which various subsystems arecombined and tested as a complete entity.
User acceptance testing- An independent test performed by trained users toensure that a system operates as expected from theirs viewpoint.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 10/19
Capability Maturity Model Integration for
SoftwareCapability maturity Model Integration (CMMI)
- A model that defines five levels of software
development maturity and identifies the issues thatare most critical to software quality and processimprovement.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 11/19
CMMI Maturity Levels
1. Initial
Process unpredictable, poorly controlled, andreactive.
2. Managed
Process characterized for projects and is oftenreactive.
3. DefinedProcess characterized for the organization and isproactive.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 12/19
4. Quantitatively managed
Process measured and controlled.
5. OptimizingFocus is on continuous process improvement.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 13/19
KEY ISSUES IN SOFTWARE
DEVELOPMENT1. Development of Safety-Critical Systems
A safety-critical systems is one whose failure
may cause injury or death to human beings.Key Element of Safety-Critical Systems
1. Risk – the probability of an undesirableevent occurring times the magnitude of the
event’s consequences if it does happen.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 14/19
2. Redundancy- the provision of multiple
interchangeable components to perform singlefunction in order to cope with failures and errors.
N-Version programming- a form of redundancy that involves the execution of a series of programinstructions simultaneously by two different systems.
3. Redundancy-the probability of a component orsystem performing without failure over its productlife.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 15/19
2. Quality Management Standards
The International Organizations forStandardization (ISO), founded in 1947, is a worldwide federation of national standards bodiesfrom some 100 countries. This ISO issued its 9000series of business.
These standards require organizations to developformal quality management systems that focuses onidentifying and meeting the needs, desire, andexpectations of their customers.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 16/19
The ISO 9000 standards serves many industries andorganizations as a guide to quality products,services, and management. Many companies angovernment agencies specify that a company mustbe ISO 9000- certified to win a contract fromthem.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 17/19
To obtain this coveted certificate, an organization
must submit to an examination by an externalassessor and fulfill the following requirements:
1. Have written procedures for everything it does.
2. Follow those procedures.
3. Prove to an auditor that it has fulfilled the firsttwo requirements. This proof can requireobservation of actual work practices andinterview with customers, suppliers, andemployees.
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 18/19
The various ISO 9000 series of standards addressthe following activities:
ISO 9001
Design, development, production, installation,
servicing. ISO 9002
Production, installation, servicing.
ISO 9003
Inspection and testing
5/14/2018 Software Development - slidepdf.com
http://slidepdf.com/reader/full/software-development-55a92c56dc436 19/19
ISO 9000-3The development, supply, and maintenance. ISO 9004
Quality management and quality systems. 3.
Failure mode and effects analysis (FMEA)- a reliability evaluation technique used todetermined the effect of system and equipmentfailures.- The goal of FMEA is to identify potential design and
process failure early in a project when they arerelatively easy and inexpensive to correct.