System Analysis & Design
System Analysis & Design
System Backup
Data loss and preventing data loss
“System Fundamentals” an overview
Software Deployment
Managing releases and updates
“System Fundamentals” an overview
System Design
Components of a computer system
Hardware, software, peripheral, network, human
resources
Computers in a networked world
Ethics
“System Fundamentals” an overview
System Design and analysis
Planning and stakeholder involvement
Getting requirements from stakeholders (see also
design process)
Gathering information for solutions (see also
design process)
Illustrate system requirements (see also design
process)
Prototypes (see also design process)
“System Fundamentals” an overview
Human interaction with the system
Usability
Problems with usability
Improve the accessibility of a system
Moral, ethical, social, economic and
environmental implications of the interaction
between humans and machines (see also ethics)
1.1.1 Identify the context for which a new
system is planned.
Need for a new System
Old system may be outdated
Redundant
Inefficient
Costly to maintain
Cheaper versions may be available
New system may erase errors
Change Management
Extent - how large is the system, how powerful, how many users,
how much hardware, how powerful the hardware is etc.
Limitations - what stops it from being able to succeed certain limits,
what restrictions are there that cannot be overcome.
New system - for example a new computer network in an office or
school or a new piece of software to be used on a network.
Organisational issues - does the organisation have issues/things to
consider that are specifically to do with them as an organisation.
Installantion of a new system - putting the new system in place and
getting it up and running.
1.1.2 Describe the need for change
management
Change management is a systematic approach to dealing with
change, both from the perspective of an organization and on
the individual level. A somewhat ambiguous term, change
management has at least three different aspects, including:
adapting to change, controlling change, and effecting change.
Development Testing
Implementation
Documentation
Software compatibility
Legacy system might still work well
Users may not like to switch to new system
Perhaps nobody understands the new system
Analysis for Business mergers
Hardware considerations in business mergers:
1. If both systems are old, then replace with new
system
2. If one is old and the other is relatively new, use
the best system
3. Select one policy for both the businesses
The systems used by the companies may be very different. This can
result in time and money being spent converting one system to
another. It may be that two systems will continue to run
independently which may cause problems in terms of data
redundancy.
Business merger issues-contd
If systems are to be replaced then this will have a
cost in terms of purchasing new hardware and
software and retraining staff to use the new system.
Therefore, the system from one company must be
moved into the other one or both has to be moved to
a new system. Resulting in variety of difficulties due
to the different systems being handled.
Data Migration Issues
When an old system is replaced with new system,
there could be issues with data migration due to new
file formats.
New system may not be able to read new file
formats, data structures, validation rules
Incomplete data transfer due to power failure
Data often has to undergo a conversion process
before it can be loaded into the new system
Analysis
During this phase the project team
investigates any current system(s),
Identifies the problems in the existing
system or identifies improvement
opportunities, and
develops a concept for the new system or
proposes solutions to solve the
problems. (improvements in terms of
reducing paperwork, speeding up the
processing, providing better service)
Analysis
The analysis phase answers the questions
of :
Interviews
Questionnaire
nt Collection
Collection of information
A) Observation
Advantage: No planning necessary
Disadvantage: People may not behave naturally when they
know they are observed.
B) Interviews
Advantage: Helps in knowing the system from people working
there.
Can change the question according to the answers he gets.
Disadvantage: Takes a long time, or may not get appointment
at convenient time.
C) Questionnaire
Advantage: Less time consuming because everyone will fill in
the form at the same time.
Disadvantage : They may not feel comfortable to give full
details.
Software requirement
Storage requirement
Flow charts
Symbols of a Data Flow Diagram
Process
Data Storage
Data flow
External
Symbols of a Flow Chart
Input and
Output Processing
True
Test Condition
False
Start and Stop
Flow line
Subtask
Connectors
Analysis - 3 stages (Extra notes)
Analysis strategy: This is developed to guide the
projects team’s efforts. This includes an analysis of
the current system.
Requirements gathering: The analysis of this
information leads to the development of a concept
for a new system. This concept is used to build a set
of analysis models.
System proposal (Feasibility Study): The proposal is
presented to the project sponsor and other key
individuals who decide whether the project should
continue to move forward.
Possible questions
1. What is the role of a system analyst?
2. What are the components of a feasibility study?
3. How can the system analyst use feasibility report for
proposing the new system?
4. What are the methods of data collection?
5. What are the adv and disadv of each method of data
collection?
6. Why is it necessary to define the problem at this stage?
7. What are the issues that arise out of business mergers,
legacy system to a new system, data migration issues.
Prototype
A prototype is a simple version of the system that is created
at the design stage.
The purpose of a prototype is :-
to identify any corrections to be made at the initial stage
itself than doing at the last.
It saves time and effort by undoing mistakes in the design
stage itself instead doing it after development of the product.
By creating a few prototyping at the analysis/design stage, it
becomes possible for the analyst to suggest alternative
solutions to the problem
Helps to speed up the development of the product
Design
A Computer system will have the following:
Input Design
Interface Design – GUI, CLI or Menu-
driven
ProcessingDesign
Output Design
Storage Design
can edit)
Design of Input
The system analyst has to ascertain the following steps:-
Step 1:
Determine what data is required
Determine the input method
Input method 1:-
Data Capture method
Input method 3:
Manual Input method:
Eg. Hard copy of forms filled in OR Manual input through
the keyboard
Step 2:
Check for data validation
Do verification checks
Design of Validation Checks
Validation checks are applied on the fields to check
whether the entered data is valid or not.
0 + 18 + 30 + 20 + 9 + 4 = 81
81/11 = 7 remainder 4
11 - 4 = 7 (7 is therefore the check digit.)
PROBLEMS: If the remainder from the division is 0 or 1, then the
subtraction will yield a two digit number of either 10 or 11. This won't
work, so if the check digit is 10, then X is frequently used as the check digit
and if the check digit is 11 then 0 is used as the check digit. If X is used,
then the field for the check digit has to be defined as character (PIC X) or
there will be a numeric problem.
Methods of verification
Double entry method:- In this method, data is
entered twice using two different people or the
same person. The computer compares the two
entries (either after the entry is made or while the
data is entered) and alerts if there are differences. Eg:
Password entered twice to confirm.
Runtime Error
Time given as 23:65 instead of 23:56
Dividing a number by zero causes runtime error.
Logic Error
Ex: A+B/2 (missing paranthesis)
Debugging as a part of testing
Debugging means to correct errors in the program
code.
Testing & Implementation
Testing is done on the following three types of data:
A) normal data
B) abnormal data
Release numbering
This many appear to be a trivial matter but is very
important in identifying and managing release strategy.
Eg: ios7, ios9
Software Deployment
Steam Update (Game Updates)
Open source
Open source software is software whose source code is
available for modification or enhancement by anyone.
Patching as a method of software
deployment
Types:
Patch in the form of binary executable instead of a source
code, mostly used in proprietary software. This patch
modifies the program executable either by modifying the
binary file to include the fixes or replacing it.
Patch in the form of a source code modifications. Patch
consists of textual differences between two source code files.
These types of patches are mostly used for open source
programs, where it is also expected for the user to compile
the new patch.
Documentation
Two types of documentation are:
new requirements.
Whether old devices have to be upgraded.
corrected or rewritten.
New technology might have come into the market that
Server
Definition: It is a combination of software and hardware that processes and
delivers data to clients in a network. Hardware in a server may vary from server to
server based on the purpose of the server. Likewise different servers may have
different processing powers, based on how much traffic they receive. It is a system
(software and suitable computer hardware that responds to requests across a
computer network to provide or help to provide a network service.
1.2.2 Describe the roles that a computer
can take in a networked world.
Router
A router is a device that forwards data packets
between computer networks. Clients connect to a
router and any incoming or outgoing connections are
managed by the router. It is a device that forwards
data packets between computer networks, creating
an overlay inter-network
1.2.2 Describe the roles that a computer
can take in a networked world.
Firewall
Firewall is a software of hardware-based security system that controls the
incoming and outgoing network traffic by analyzing the data packets and
determining whether they should be allowed through or not, based on a rule set.
All messages entering or leaving the intranet pass through the firewall, which
examines each message and blocks those that do not meet the specified security
criteria.
1.1 Reliability and integrity
Reliability refers to the operation of hardware, the design of software, the
accuracy of data or the correspondence of data with the real world. Data
may be unreliable if it has been entered incorrectly or if it becomes
outdated. The reliability of machines, software and data determines our
confidence in their value. Integrity refers to safeguarding the accuracy and
completeness of stored data.
readme.txt
README files are commonly included with software and detail
many things from installation instructions to operating
instructions.
1.1.10 Evaluate different methods of delivering
user training
Self Instruction
Advantages
Self instruction will allow the student to learn whenever it is required. Manuals or
other resources such as videos or exercises can be provided and used whenever
the user has the need to find out a particular skill. This means the learning is done
exactly when it is needed and there is no additional unnecessary time wasted on
unneeded skills. There can be a cost saving as the there is no course to pay for or
place to rent or instructor to pay and there is no time lost in training sessions.
Disadvantages
The effectiveness is based upon several issues such as the motivation of the user
and their ability to learn on their own. If the materials are not well prepared or
suited to the users learning styles or level of understanding there may be several
issues.
1.1.10 Evaluate different methods of delivering
user training
Formal classes
Unfortunately, formal training is generally more expensive than the alternatives as it requires
a professional trainer and facilities. The organization of gathering all of the trainees together
can be problematic or complicated. Fortunately, it does however ensure a certain level of skill
that may not be as certain with other methods. Having a trainer also ensures the ability of
trainees being able to receive help and ask questions.
Advantages
Having a formal classroom to conduct training allows an open exchange of ideas in real time.
This can happen between the instructor and the students and there are no barriers to
communication or delay as may be experienced in an online situation. A formal classroom can
tend to focus the learning and gives a more social element to the process which many feel is
essential. The classroom can provide a “real time” space to ask questions and resolve issues.
Disadvantages
A classroom situation may disadvantage more shy members of the group and can be
dominated by more vocal and demanding members of the group. It can often be hard for
instructors to isolate or teach those who are having difficulty as there may not be the time to
support them or the need may not even be noticed in a large group.
1.1.10 Evaluate different methods of delivering
user training
Remote/online training
Advantages
Training can take place anywhere at any time and this allows training to be delivered globally
across large distances and across many time zones. The fact the resources are available at
anytime means that people have flexibility in how they fit the learning in around their own
schedules. Also this allows training resources to be revisited or revised easily.
Flexibility
In terms of time and place. It can be far more comfortable comparing to traditional ways of
learning.
Save Money
Free access to good reliable information.
Disadvantages
In order for online training to be feasible there must be an equity in the access or provision of the required
technology. there may be economic or logistical reasons for this not being the case. This may be as simple as the
provision of computers or the access to a reliable internet connection. Problems also occur in the differences in
computer literacy. If these skills are not present then the training will not be successful. The course itself must be
user friendly and reliable if it is to succeed.
Good trainers in the “real world” do not necessarily make good instructors in the online environment and they will
need to have a high level and understanding of the requirements and success criteria of running an online
environment.
There are some things that cannot be taught online as the limitations are too great and a face to face or hands on
approach is necessary.
Usability
Usability refers to the potential of the product to
accomplish user goals.