1.1 Systems Life Cycle - Spruce Creek High School

Download Report

Transcript 1.1 Systems Life Cycle - Spruce Creek High School

1.1 Systems Life Cycle
George Armanious
The cycle involves design and implementation of systems.
Includes:
• Software requirements
•Hardware requirements
•Organizational Re-Structuring (if needed)
•The life cycle is not linear because software is constantly being
changed





Analysis
Design
Operation
Installation
Maintenance
Analysis
Collecting and examining data,
particularly about the user’s
requirements and the flow of data.
 Feasibility report may be produced

Data Collection
Done in analysis to make a clear picture
of what the problem is.
 Identifies

 Who inputs data
 What form data is in
 Any validation that is needed
 What processing is done to produce the
required outputs.

Must be systematic to avoid overlooking
Data Collection Techniques

Classic ways are:
 Conduct interviews
 Carry out questionnaires
 Search existing documents
 Search literature for other solutions to same
problem
 Observe people working with the existing
system
Data Collection Techniques
Method
Advantages
Disadvantages
Interview
More detailed data
Interesting topics
Time consuming
Difficult to classify or
quantify data
Questionnaire
Quickly reach many
people
Numerical results
People may not
respond
Questions not clarified
Study existing
documents
Identify inputs and
outputs
May not tell the whole
story
Literature Search
Save work if
previously solved
Fine detail not given
Observations
Not biased
Find out unapparent
things
Time consuming
Observer may subtly
alter the process
Note that more than one method may be used to
Alternative Solutions
May involve non-computer as well as
computer systems
 Important considerations:

 Output (discussed in Ch. 3 and 8)
 Method to collect and input data like GUI
and CLI (discussed in 1.3.6)
 Using stand-alone or networked computer
system
Alternative Solutions cont.

Three Main Types:
Type
Description
Examples
General applications
software
Least expensive but
may not have all the
features the
development requires
Word Processors
Spreadsheets
Databases
Special applications
packages
More expensive but
have features that an
organization may use
Programs for school
administrations,
Videotape rental outlets,
and medical practices.
Tailor made software
Made to do exactly what
the customer wants.
Must be made from
scratch. Most
expensive and time
consuming.
None can be given since
these are specific to the
spot.
•Software and hardware aspects are clearly defined
•File design and selection of suitable data structures and
algorithms
•In object-oriented design
• Modeling language such as UML used to define objects, methods, and
data flow
•More detailed feasibility report including cost-benefit analysis
•Estimates cost
•Identifies expected benefits
•Estimates how long the project will take
•Outlines potential difficulties
•Analyses risks (cost or technical)
•Reviews other solutions from the past
•Decision to continue based off of this
•Level of detail depends on design. If enough detail is used, a
prototype can be made (Prototypes discussed in Section 1.5)
•Describes what the costumer and developers expect the system
to do and how it will be done.
•Must include cost of building, testing, and running the system.
•Includes:
• A list of hardware and software tools needed (See Section 1.2.1)
• Description of hardware and software in completed system
• Formal agreement on the performance of the system
• List of personnel and their tasks
•Organizational chart can be used to check progress.



Only reached if the decision to proceed with a
solution is made.
A number of items will be produced including
a plan for development.
Planning is a complex process which can be
assisted by identifying tasks that need to be
completed. Two methods:
◦ GANTT charts
◦ PERT charts
◦ Discussed in Section 1.3


A list of activities plotted against time
Useful for small scale projects such as the
dossiers you just did (perfect timing, right?)



Project and Evaluation and Review Technique
Shows events as nodes and activities as lines
joining them with an expected time for each
activity, usually in days.
What can you tell from the following?



The minimum time to complete this project is
50 days (1 to 3 to 6)
This path is the critical path.
PERT charts and finding the critical path not
important to IB but useful to know anyways.
•Failure
to test can lead to
consequences that range from a store
failing to a major plane crash in which
everyone in the plane and a few
outside of it die.
•Systems usually go through several
stages of developmental testing.
•Alpha
– Programmers test an early
version of the program
•Beta – The product is near completion
and is believed to have few or no errors.
The product is released to users outside
the company to see how it will perform in
different environments. Credible
companies always let the users know that
it may not be perfect.
•Formal – prove the program works using
theoretical or mathematical techniques.
•Functional
testing – describing
systematically what is supposed to
happen if a button is pressed or
choices are selected.
•Test data is usually used. Three types:
• Normal– The correct type and range
• Limits– The ends of the range and
the middle
• Abnormal– Incorrect type
– Correct type but out of
range
Test Data Type
Expected Response Actual
Response
23
N
Fail Message
56
N
Pass Message
0
L
Fail Message
49
L
Fail Message
50
L
Pass Message
100
L
Pass Message
154
E
Out of range
message
-90
E
Out of range
message
Thirty two A
Not valid integer
message
Debug?
•Extra
columns for what does happen
and if debugging is needed.
•Debugging – the process of detecting,
diagnosing, and correcting errors in a
program.
•There were probably be scores (many)
of these in the testing of an actual
programming
•Think of section D1 of the dossier
Installation
•There are several ways of getting the
completed system up and running.
•Discussed in the non-existing 1.2.7
•Bugs will be noticed and will need to be fixed
Implementing the New System
•More in Ch. 8
•New System = change in way things are done. Existing
staff must be trained and carry out routine tasks at
same time. Three ways of doing this:
•Parallel Running: run old and new systems at same
time. Ensures that the new can do what the old does
and the old serves as backup.
•Phased Introduction: Implementing the new system bit
by bit to make sure each part works.
•Direct Changeover (Big Bang): Used when new and old
are completely different. Users need to be completely
trained before the changeover takes place. Risky if new
system does not work correctly.
 Bugs
and flaws in the initial design must
be fixed while the program is in use.
 Dangerous process as other bugs may be
introduced
 “Two steps forward, one step back”
 Expensive
and time consuming.
 Corrective Maintenance – testing and
correcting errors
 Periodic reviews to see if improvements
can be done and the cost financially and
in terms of disruption to the operation of
the current system.
 The same methods that were used for
data collection can be used for
evaluations.