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.
Input peripherals:
Output peripherals:
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.
Questionnaires
Advantages:
Disadvantages:
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.
UML ?
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 |
Investigation/Feasibility study 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 User requirements Costs and benefits of the new system | Investigate 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 Input requirements Output requirements Processing and calculations required | Detailed requirement list
Rooms Size of rooms Requirements in each room Type of building
|
Design the Systems
Work out: Data Flow Diagrams Entity Relationship Diagrams Attributes Data Dictionary Program Specifications | Design the House
Work out: House plan 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
Functional test test each program
System test Test programs link together correctly (whole system test) | Make sure everything works in the house
Test wiring and electrics Test plumbing Test heating Test appliances in the kitchen etc |
System Documentation
Produce: Technical Documentation User Documentation | House Documentation
Land registry documents Contract on sale of house Searches Instructions on central heating/appliances |
Systems Implementation 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 )
Learning Objectives
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 )
Learning Objectives
Review Questions
When an organization needs new software what are the main options available ?
Lesson 3 ( testing ) ( SDLC )
Learning Objectives
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 ?
What is the big weakness in the waterfall method to s/w development?
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
Incremental Models
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
Iterative Model
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
Agile Approach
Implementation
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 )
Learning Objectives
The Systems Analyst Ethics
Lesson 5 ( User Focus Documentation and Training )
Learning Objectives
LInk to slide Show click here
Review Unit Test Past Papers
resources
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.
https://ibcompscience.wordpress.com/2014/11/10/topic-1-system-fundamentals/