george armanious 1.1 systems life cycle the cycle involves design and implementation of systems....
TRANSCRIPT
George Armanious
1.1 Systems Life Cycle
IntroductionThe 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
Major Stages of the Cycle
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.
IdentifiesWho inputs dataWhat form data is inAny validation that is neededWhat processing is done to produce the
required outputs. Must be systematic to avoid overlooking
Data Collection Techniques
Classic ways are:Conduct interviewsCarry out questionnairesSearch existing documentsSearch literature for other solutions to same
problemObserve people working with the existing
system
Data Collection Techniques
Method Advantages Disadvantages
Interview More detailed dataInteresting topics
Time consumingDifficult to classify or quantify data
Questionnaire Quickly reach many peopleNumerical results
People may not respondQuestions 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 biasedFind out unapparent things
Time consumingObserver 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 ProcessorsSpreadsheetsDatabases
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.
Design•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
Feasibility Reports•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)
The Requirements Specification
•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
Operation
A list of activities plotted against time Useful for small scale projects such as the
dossiers you just did (perfect timing, right?)
GANTT
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?
PERT
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.
PERT cont.
System Testing
•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.
Types of 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.
Types of Testing cont.
•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• EXTREME– Correct type but out of
range
Example of test data using scores from a test
Test Data
Type Expected Response
Actual Response
Debug?
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
Notes on previous table
•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
•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
Installation
•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.
Implementing the New System
Maintenance 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”
Maintenance cont. 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.
The End? Click to find out…
FIN