Date post: | 04-Jan-2016 |
Category: |
Documents |
Upload: | imogene-gallagher |
View: | 217 times |
Download: | 0 times |
The Systems Life The Systems Life CycleCycle
The Systems Life The Systems Life CycleCycle
AS Computing
F451
AS Computing
F451
Stages of the life cycleStages of the life cycleStages of the life cycleStages of the life cycle
Exact Exact definitions definitions vary, but vary, but the main the main stages of stages of the life the life cycle are:cycle are:
Exact Exact definitions definitions vary, but vary, but the main the main stages of stages of the life the life cycle are:cycle are:
Waterfall & SpiralWaterfall & SpiralWaterfall & SpiralWaterfall & Spiral
2 key methodologies of 2 key methodologies of the system life cyclethe system life cycle
What are the differences?What are the differences?
Information gatheringInformation gatheringInformation gatheringInformation gathering
Interview:Interview: This can be time-consuming, but it does This can be time-consuming, but it does allow you to probe for answers and get first-hand allow you to probe for answers and get first-hand information.information.
Questionnaire:Questionnaire: This is useful when there are lots of This is useful when there are lots of users, although there is a limit to how much you will users, although there is a limit to how much you will find out.find out.
Observe the current system:Observe the current system: Although time- Although time-consuming, this is objective rather than subjective and consuming, this is objective rather than subjective and you might spot things that the user doesn’t.you might spot things that the user doesn’t.
Examine the existing documentation:Examine the existing documentation: This is very This is very useful for identifying the data requirements, as well as useful for identifying the data requirements, as well as the input and output required.the input and output required.
Feasibility studyFeasibility studyFeasibility studyFeasibility study
A feasibility study is a report to identify the possible A feasibility study is a report to identify the possible solutions to the problem and how ‘possible’ they are.solutions to the problem and how ‘possible’ they are.
Technical, Economics, Legal, Social feasibility of the new Technical, Economics, Legal, Social feasibility of the new system.system.
A typical feasibility study would look at the following A typical feasibility study would look at the following options:options:– Should we:Should we: Stick with the old system? Adapt the old Stick with the old system? Adapt the old
system? Create a new computerised system?system? Create a new computerised system?– Should we:Should we: Buy an off-the-shelf package? Employ a Buy an off-the-shelf package? Employ a
programmer to create bespoke software? Write it in-programmer to create bespoke software? Write it in-house?house?
– Could new system be developed in the required time?Could new system be developed in the required time?
Key Factors in a Feasibility StudyKey Factors in a Feasibility StudyKey Factors in a Feasibility StudyKey Factors in a Feasibility Study
TechnicalTechnical
– Is the HW/SW available to solve this Is the HW/SW available to solve this problem?problem?
EconomicEconomic
– Is the proposed solution cost effectiveIs the proposed solution cost effective SocialSocial
– Impact on jobs, skills, training of staffImpact on jobs, skills, training of staff
Importance of AnalysisImportance of AnalysisImportance of AnalysisImportance of Analysis
Problem must be accurately defined to solve it Problem must be accurately defined to solve it effectivelyeffectively
User may not understand potential of computer User may not understand potential of computer systemssystems
Developer not likely to understand the industry Developer not likely to understand the industry which the user is working inwhich the user is working in
Developer must produce a solution/software Developer must produce a solution/software that the user requires to meet their needsthat the user requires to meet their needs
Clear communication between user and Clear communication between user and developer is importantdeveloper is important
Requirements SpecificationRequirements SpecificationRequirements SpecificationRequirements Specification
Contains…– Input requirements – Processing requirements– Output requirements – Clients agreement to requirements
(signed)– What Hardware will be needed to run
new system
If problem is not defined accurately If problem is not defined accurately at the beginning….at the beginning….
If problem is not defined accurately If problem is not defined accurately at the beginning….at the beginning….
Client will be unhappyClient will be unhappy Software will be useless... Software will be useless...
Programmer will not get paid!Programmer will not get paid!
DesignDesignDesignDesign
How will the system be produced?How will the system be produced?HCIHCIPseudo CodePseudo CodeDatabase DesignDatabase Design
–FieldsFields
–RecordsRecords
Design SpecificationDesign SpecificationDesign SpecificationDesign Specification
Used by programmers to ensure they are producing
the correct system Input design Output design Data structure Pseudo Code algorithms/flowcharts Data flow diagrams Entity Relationships Diagram Sitemaps
ImplementationImplementationImplementationImplementation
Programming!Programming!
Installation StrategyInstallation StrategyInstallation StrategyInstallation Strategy
Method of implementation
– parallel/pilot/phased/direct Training program must be devisedHardware must be purchased and
installedSystem must be tested with real data by
end users Write technical and user documentation
Test DataTest DataTest DataTest Data
NormalNormalExtremeExtremeErroneousErroneous
Enter Number Enter Number between 1 and 10between 1 and 10
Enter Number Enter Number between 1 and 10between 1 and 10
551010NoNo
DocumentationDocumentationDocumentationDocumentation
User ManualUser Manual– Written from the users point of Written from the users point of
view on how to use the systemview on how to use the system
Technical DocumentationTechnical Documentation– Variable Names, Data Variable Names, Data
Structure, how the code Structure, how the code works, Procedures. DFDs, works, Procedures. DFDs, Flowcharts, Entity Flowcharts, Entity Relationship Diagrams. Meant Relationship Diagrams. Meant for future programmers.for future programmers.
User ManualUser ManualUser ManualUser Manual
Contents of user manual usually include…Contents of user manual usually include…– Installation instructions– Minimum required hardware specifications– Input /Output procedures– How to operate the system– Backing up and archiving procedures– Error messages/trouble shooting– FAQs
Technical DocumentationTechnical DocumentationTechnical DocumentationTechnical Documentation
Written for future programmers.Written for future programmers. ContainsContains
– Variable NamesVariable Names– Data StructureData Structure– how the code workshow the code works– Procedures namesProcedures names– DFDsDFDs– FlowchartsFlowcharts– Entity Relationship Diagrams. Entity Relationship Diagrams.
Data Flow Diagram (DFD)Data Flow Diagram (DFD)Data Flow Diagram (DFD)Data Flow Diagram (DFD)
This is a diagrammatical way of showing how data moves This is a diagrammatical way of showing how data moves around a system.around a system.
It is not concerned with how the system processes the data – it It is not concerned with how the system processes the data – it just shows the flows.just shows the flows.
It uses four symbols:It uses four symbols:
DFD exampleDFD exampleDFD exampleDFD example
The following is a DFD for a meter reading:The following is a DFD for a meter reading:
EvaluationEvaluationEvaluationEvaluation
End User Requirements decided on in End User Requirements decided on in AnalysisAnalysis
Does it meet them?Does it meet them? Future EnhancementsFuture Enhancements Important to user because need to be sure Important to user because need to be sure
software performs as required – is it actually software performs as required – is it actually what they wanted?!what they wanted?!
Important to developer because it determines Important to developer because it determines the end of the job if they are being paid for the end of the job if they are being paid for producing a suitable solutionproducing a suitable solution
Software MaintenanceSoftware MaintenanceSoftware MaintenanceSoftware Maintenance
Once software is completed it needs to be Once software is completed it needs to be maintained/upgraded as its requirements changemaintained/upgraded as its requirements change
Corrective MaintenanceCorrective Maintenance– To correct bugs found in software when being To correct bugs found in software when being
used used Adaptive MaintenanceAdaptive Maintenance
– To alter software because of external need eg To alter software because of external need eg VAT paid changes from 17.5% to 15%VAT paid changes from 17.5% to 15%
Perfective MaintenancePerfective Maintenance– To improve performance of software To improve performance of software