Slide Show Links
1.2 System design basics (10 hours)
Components of a computer system
1.2.1 Define the terms: hardware, software, peripheral, network, human resources.
Hardware: anything within a computer you can physically touch.
Software: the collection of programs and instructions that control the computer.
Peripheral: the devices attached to the computer that allow it to interact with its environment and exchange information.
Network: a group of computers connected together in some way to share resources such as documents or files and printers.
Human resources: the humans operating the computers
1.2.2 Describe the roles that a computer can take in a networked world
Client: a computer accessing resources hosted by an other computer, the server. Resources could be documents, printers, scanners etc.
Server: a computer hosting resources to be shared across the network, like documents, printers etc.
A computer can be both client and server in a network at the same time!
DNS Server: a special type of server mapping web addresses to IP addresses allowing us to surf the web without having to look up the IP address of every website they want to visit.
Router: a computer routing network packages between two networks usually using a different medium for information transfer, like phone cables or glass fibre connections.
Firewall: a computer or software package monitoring and protecting the network traffic of a computer or computer network. It decides which computers get access to the network or computer based on a set of rules. It can be looked at as an analogy to the bouncer in a disco.
1.2.3 Discuss the social and ethical issues associated with a networked world.
System design and analysis
1.2.4 Identify the relevant stakeholders when planning a new system.
Who will be involved in the system?
1.2.5 Describe methods of obtaining requirements from stakeholders.
Observation: involves systems analyst walking around the organisation watching how things are done with his/her own eyes. Advantages:
1.2.6 Describe appropriate techniques for gathering the information needed to arrive at a workable solution.
ACTIVITY Complete for the approaches to gathering information
1.2.7 Construct suitable representations to illustrate system requirements.
System flow charts: diagrams representing how different parts of the system are linked together and how the system should work in general.
Data flow diagrams: diagrams representing how information is moving through the system, together with identifying all relevant inputs and outputs to the system.
Structure charts: are diagrams representing the organization of a system, usually with showing the different parts in hierarchical order.
1.2.8 Describe the purpose of prototypes to demonstrate the proposed system to the client.
Prototypes are abstract representations of the system, often focusing on only one or two key aspects of the system. They are important in testing as each component of the system can be tested before implementing, and to illustrate the working of the future system to the client. An example of prototyping is a shipyard building a prototype of an icebreaker ship to test out different bow designs without having to spend large money building a ship with an eventually unworkable design. Prototypes in systems development are usually ‘ghost’ user interfaces illustrating the position of control elements to the user or little programs developed to explore the working of a key algorithm in the system.
1.2.9 Discuss the importance of iteration during the design process
1.2.10 Explain the possible consequences of failing to involve the end-user in thedesign process.
1.2.11 Discuss the social and ethical issues associated with the introduction of new IT systems.
Human interaction with the system
1.2.12 Define the term usability.
1.2.13 Identify a range of usability problems with commonly used digital devices.
1.2.14 Identify methods that can be used to improve the accessibility of systems.
1.2.16 Discuss the moral, ethical, social, economic and environmentalimplications of the nteraction
between humans and machines.
SDLC Lesson Overview
Systems Development Lifecycle
Building a house
Investigate systems currently being used - benefits/limitations
requirements for the new system
Create report on
Purpose of the new system
System scope/what it will cover
Deficiencies in the current system
Costs and benefits of the new system
What kind of house is needed?
How will the house be used (family, young couple, retired, young single)?
How big is the plot of land?
Does the land have Gas. Water, electric?
What rooms/levels are required?
Likely cost to build the house
Benefits of the house
Analysis - Detailed User Requirements
Detailed list of
Processing and calculations required
Detailed requirement list
Size of rooms
Requirements in each room
Type of building
Design the Systems
Data Flow Diagrams
Entity Relationship Diagrams
Design the House
List of parts required
Plan build of house, what needs to be done in what order
Develop the system
Write the programs according to the design
Build the house
Build the house according to the house plans and project plan
Test the system
test each program
Test programs link together correctly (whole system test)
Make sure everything works in the house
Test wiring and electrics
Test appliances in the kitchen
Land registry documents
Contract on sale of house
Instructions on central heating/appliances
Train the users in how to use the system
Hand over the system to the users
New Owners move into the house
Maintenance - Monitor & review
Make sure system is running okay
Report and fix any bugs in the system
On Going Maintenance
Report any problems back to the builder
Builder fixes problems
Lesson 1( 1.1.1 -.1.1.3 ) ( SDLC )
Google Doc explaining the different stages of SDLC - Open and Take copy clicking here
Lesson 1 Class Activity
Select a real life example from the list of software system types below that has been a disaster.
Provide a brief overview of the disaster and the reason why it was a disaster. You will report your findings in the next class.
Lesson 2 ( SDLC )
When an organization needs new software what are the main options available ?
Lesson 3 ( testing ) ( SDLC )
Review so far
- 1Legacy System – In computing, a legacy system is a technology, computer system, or application program, that may or may not be supported/available for purchase any more.
- 2Merger – A combination of two things, especially companies, into one
Activity 5-10 min Class discussion on advantage and disadvantageous of
1 off the shelf software and
2 Custom / Bespoke S/W
Task find a SW disaster and share with class 5 mins
Stage 1 Analysis and User Requirements
What is the output of this stage ?
Statement of requirements - Which is part of the System Documentation
What is the big weakness in the waterfall method to s/w development?
Statement of requirements - Which is part of the System Documentation
Waterfall - Sequential flow in one direction thus waterfall. In real life failures to correctly capture user requirements can be a disaster as the costs to change after the coding / development has started is huge
First step create part of the system with limited functionality. Example in patients record system first step provide view only access to patient records.
Stage 2 Add Amend update
Open Source would be a good example of the incremental approach
First step show interface to system options available reports etc ( do not add the actual functionality until end user approved). We are therefore clarifying the user requirements.
The user can request change with minimal additional time and cost being added to overall project budget
What is prototype ?
Similar to Incremental
We have discussed off the shelf S/W and Bespoke
We have looked at these stages in the waterfall methodology
1 )Systems Analysis and defining user requirements ( Methods of data gathering).
2 )Approaches to setting the system live.
Without a proper plan on how the new system will be implemented once it is designed the change from the old system to the new one will not be successful. Many factors will need to be regarded:
Lesson 4 Overview ( SDLC )
The Systems Analyst Ethics
Lesson 5 ( User Focus Documentation and Training )
LInk to slide Show click here
Review Unit Test Past Papers
Legacy System Definition
A legacy system is a computer system that is no longer available for purchase or is no longer supported by the manufacturer. A legacy system might be just a few years old, or it could be decades old. Some legacy systems may operate on (and even require), certain very old hardware which is no longer available. Others may only run on older operating systems and not be compatible with modern versions. Sometimes the manufacturer of a legacy system no longer exists, and in other cases the manufacturer has dropped support in favour of more recent products. This usually means updates and security fixes will not be available for the system, which can be a significant problem for organisations.