Topic 1 Merged
Topic 1 Merged
System fundamentals
Name:…………………
• A feasibility study should be done, evaluates and analyzes a project and its potential, based on
various technical, economical, legal, operational and scheduling criteria. It is used to decide
whether the proposed project should be pursued.
• Study the issues they may face, the manager of the system should appreciate the extent and
limitations of the new system.
✓ lack of guiding organizational and business strategies
✓ lack of stakeholder and end—user participation
✓ lack of end-user 'ownership' of system
✓ lack of attention to required training
✓ lack of attention to various organizational issues, such as organizational culture
✓ lack of attention to the design of tasks and jobs, allocation of information system
tasks, and the overall usability of the system.
Examples:
Example 1:
BYOD - Bring Your Own Devices
Pros: Students will have access to their own and familiar devices to work on. School does not need to provide the
devices. Teachers can easily integrate technology in their classes
Cons: Teachers with old school mindset of teaching will have problems integrating the new system. Students will use
different devices and will not necessary have the programs the teachers wanted them to have.
Example 2:
A bookstore uses door—to—door salespersons to collect various orders from various customers. The orders are taken to
the company’s offices and are input by a secretary. The bookstore has decided to change this department and will ask
the salespersons to input the orders at home, using their personal computers.
Discuss the various effects of these changes.
Answer: The bookstore will no longer need the secretary or any physical space to accommodate the relevant
department. Utility bills will be reduced and probably a smaller office will be enough for the company. The secretary will
have to find a new job, or another position in the company. Salespersons will have to acquire some computer skills and
they will need to have a PC with an internet connection. New computer software and hardware will also have to be
obtained by the company, which will also need to find a secure way (network) to allow the salespersons to
connect to the server. Staff working from home may ask for extra pay.
As Wikipedia states:
"Change management is an IT service management discipline. The objective of change management in this context is to
ensure that standardized methods and procedures are used for efficient and prompt handling of all changes to control IT
infrastructure, in order to minimize the number and impact of any related incidents upon service. Changes in the IT
infrastructure may arise reactively in response to problems or externally imposed requirements.
Change Management can ensure standardized methods, processes and procedures which are used for all changes,
facilitate efficient and prompt handling of all changes, and maintain the proper balance between the need for change
and the potential detrimental impact of changes."
1.1.3 Outline compatibility issues resulting from situations including legacy systems or business mergers
Legacy systems
refers to an old technology, hardware, computer system, or application program. Some systems that belong to this
category may still play an important role in an organization. Such a system may still be in use because its data cannot be
converted to newer formats, or its applications cannot be upgraded. Keeping a legacy system in operation involves
various maintenance challenges.
Business mergers
A merger happens when two firms agree to go forward as a single new company rather than remain separately owned
and operated. 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.
Disadvantages:
- The cost of maintaining an older system can be higher than maintaining a more updated version.
- The staff might not be familiar with such an outdated version of the system.
- Tech support may no longer be available.
- The data in the current system might not be compatible with newer systems and conversion may not be
possible.
- Legacy systems are usually more vulnerable to security threats due to lack of security patches.
- Integration of newer systems may be a complicated process as the two systems may have completely
different technologies
Comparison between using SaaS (hosting systems remotely) vs using a client's hardware
Pros Cons
a. Less expensive → low initial cost (predictable a. Data loss (if SaaS provider goes out of business)→ effects
cost based on monthly subscription) security confidentiality
b. Lower installation, maintenance and upgrade b. Low performance in comparison to something installed on
cost the local device or on a company’s LAN ( depends on
c. Low requirements (internet connections +web internet)
browsers) c. SaaS integration with another SaaS software is always
d. Compatible on desktop and mobile devices difficult
e. Low IT personnel number and all upgrades are d. Depends on a third party
remotely done
f. Safe solution → all data reside on the cloud of
the provider data center
g. Ready to be used
Clients Hardware (Premises software) business software that is installed on a clients infrastructure and premises,
hosted on dedicated servers that belong to the company
- Can directly test with the possible user
- If multiple clients, will need to test each hardware, especially if they are different.
- Hardware cost and maintenance cost needs to be considered.
- Easy access to hardware
When you stop the old system and run the new system:
- All at once
- Old system stopped
- New system started
Pros Cons
a. Takes Minimal time and effort a. No backup in case new system
b. New system is up and running fails, so data can be lost
immediately
2. Phased implementation
Example:
A car factory may slowly begin to become more capital
intensive, by slowly installing new machines in the
factory. This allows you to slowly train works to use these machines
Pros Cons
a. People may gradually become used to a. If the new system happens to fail, then you do not
the system have a backup system in place, and may lose data
b. Any training that needs to be done can b. It takes a bit of planning to see what will be
be done in parts implemented first and last, and you must make
sure the new system is compatible with the old one
3. Parallel Implementation
The new system is started, but the old system is kept
running side-by-side for a while, both being able to operate
independently.
Eventually the old system will be stopped and dropped,
but only when the new system has been proven to work
Example:
Parallel implementation would be used in the
changeover of hardware and software in a n air traffic control
system, where you will need a reliable running system while
you implement and test your new system
Pros Cons
a. If anything goes wrong with the new system, the a. Entering data into two system, and running
old system will act as a backup two systems together, takes a lot of extra time
b. The outputs from the old and new systems can be and effort
compared to check that the new system is running b. Some risk is there, since there is a greater
correctly chance of confusion or errors if the two
c. Easy to train the staff by letting them learn new different systems are being run side-by-side
skills on the parallel system
Pros Cons
a. Easy to control, the pilot can be stopped at any a. It can be slow to get a pilot to completely replace
time the old system
b. Easy to evaluate because the new and old b. A pilot may not show up problems that a full-scale
systems are both running implementation would (This is because a system
c. Low risk, if a small-scale pilot fails, then not too can work well as a small-scale pilot but has
much has been lost difficulties when it is scaled up to a full operating
d. Easy to train staff, by letting them learn new skills system with more realistic volumes of data to be
on the pilot systems, they gradually get used to processed)
the system as training is done in parts
1.1.6 Discuss problems that may arise as a part of data migration
Debugging:
Debugging ranges, in complexity, from fixing simple errors to performing lengthy and tiresome tasks of data collection,
analysis, and scheduling updates
It is a systematic process of finding and correcting the number of bugs (errors) in a computer program.
It is important to mention that there are computer programs that can automatically test other programs. This makes the
testing process faster and cheaper.
Beta testing
Versions of the software, known as beta versions, are released to a limited audience outside of the programming team.
The software is released to groups of people so that further testing can ensure the product has few faults or bugs.
Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of
future users.
It includes comments and suggestions of the users. users outside the company are involved in the testing. Their
feedback is valuable and can be used to fix defects and errors that were missed, and also contributes in the preparation
of support teams that will deal with expected issues. Frequent beta testing results in last minute software changes. In
some cases, the Beta version will be made available to the general public. This can provide vital real-world information
and feedback
Automated testing
programs that can test other programs, thereby automating parts of the testing process and reducing costs
Many programming groups are relying more and more on automated testing, especially groups that use test-driven
development. There are many frameworks to write tests in, and continuous integration software will run tests
automatically every time code is checked into a version control system.
While automation cannot reproduce everything that a human can do (and all the ways they think of doing it), it can be
very useful for regression testing. However, it does require a well-developed test suite of testing scripts in order to be
truly useful.
Very Important: Inadequate testing can reduce employee productivity and lead to end-user dissatisfaction.
System Fundamentals
1.1 Systems in organizations
B- User focus
1.1.8 Importance of user documentation
"Software documentation or source code documentation is written text that accompanies computer software. It either explains
how it operates or how to use it, or may mean different things to people in different roles. Role of documentation in software
development: Documentation is an important part of software engineering.
1. Requirements - Statements that identify attributes, capabilities, characteristics, or qualities of a system. This is the
foundation for what shall be or has been implemented.
2. Architecture/Design - Overview of software. Includes relations to an environment and construction principles to be used
in design of software components.
3. Technical - Documentation of code, algorithms, interfaces.
4. End User - Manuals for the end-user, system administrators and support staff.
5. Marketing - How to market the product and analysis of the market demand
User Documentation Checklist One element of evaluation for software is the quality of the user documentation supplied with the
software. User documentation may be provided as a user manual in electronic form, as a paper insertion in the submission, or in the
form of online help. Users increasingly express desire for context-sensitive online help, which provides screen-specific and task-
specific guidance when it is accessed from within the software application.
Methods:
• Authenticity certain products, especially software and files have a copyright seal, disabling
certain forms of distribution.
http://creativecommons.org
Authenticity as user documentation allows the creator to ensure legally that their work can only be
redistributed under their control. Unfortunately, it is difficult to know whether these rules are being
followed.
• Manual People who do not know how to use a product can refer to the manual.
http://manuals.info.apple.com/en/iphone_user_guide.pdf
These can be very useful for some people who like having a structured collection of information and help. Sometimes, a simple
Google search may be faster though.
• FAQ
• readme.txt
README files are commonly included with software and detail many things from installation
instructions to operating instructions.
Warranty
“A guarantee given to the purchaser by a company stating that a product is reliable and free from known defects and that the seller
will, without charge, repair or replace defective parts within a given time limit and under certain conditions”
Guarantee
Is similar to a warranty, as it assures the consumer that the product will be able to perform its functionality. However it tends to be
more open ended as you may be able to return your product if it does not satisfy your needs, instead of only being able to return it in
case of malfunction. Warranty and Guarantee both assure that the client will not be buying a faulty product and that if in fact it is
faulty it will be replaced/repaired free of charge. This is very important as it protects the consumer from being swindled.
System Requirements:
To be used efficiently, all computer software needs certain hardware components or other software resources to be present
on a computer. These prerequisites are known as (computer) system requirements and are often used as a guideline as
opposed to an absolute rule. Most software defines two sets of system requirements: minimum and recommended. With
increasing demand for higher processing power and resources in newer versions of software, system requirements tend to
increase over time. Although, there is a certain problem with system requirements as a lot of them might not be entirely
accurate, and a lot of times some of it may be incorrect, stating that a certain computer can run a program when it actually
can't, and they are never specific on how fast the computer can actually run that specific program or in what settings, just
that it can run it or not.
Installation Guides: This documentation provides you with step by step instructions on how to install the specific product,
such as a piece of software, helping you through it, making sure you install it correctly and quite possibly helping you through
any errors that may come up during installation. This is very useful as it’s some quick and readily available help on how to
correctly install and get your product running, although its efficiency all depends on how good and understandable the guide
is for its users.
Troubleshooting Guide Definition: Troubleshooting is a form of problem solving, often applied to repair failed products or
processes. It is a logical, systematic search for the source of a problem so that it can be solved. Troubleshooting guides can
be very helpful and help the user. It quickly finds the problem and presents a number of solutions to help solve the problem.
One disadvantage is that these may not contain the user’s specific problem thus not presenting a viable solution.
Access Codes These usually come with software are used to verify the copy’s authenticity making it possible to install the
software. Access codes can be any form of alphabetic or numerical code.
1.1.10 Different methods of delivering user training
The quality of the delivery of user training can affect the rate of implementation of the new system.
Self-help involves training by oneself, often at a personal pace. The user can move through each segment of the training at their own
pace, such that they can develop a mastery of the material before moving on to the next segment. Furthermore, this method of
instruction allows the user to consume the information at their leisure. For example, they may review material in the train or in the
bus. However, the major problem with this method of training is the lack of personal help. Therefore, if you run into a concept with
you cannot execute or understand, there is no one there to help you.
C- System Backup
1.1.11 Causes of data loss
There are a lot of ways in which you may lose your data. They are:
1. User Error: The user may accidentally delete some files, overwrite them, or just plain simply forget to save.
2. Malicious Actions Malicious activity which may be the result of activities by employees within the organization or by
intruders/hackers.
3. Theft: People may steal your data, either physically or through hacking.
4. Viruses and Malware: There are a huge range of viruses and malware that can do anything from nothing, to deleting everything
on a hard drive. (These include worms, Trojan horses, spyware, scare-ware, time bombs etc.)
A Trojan horse is a program that has the appearance of a useful and desired function but performs other undesired
functions without you knowledge.
Worms are programs that enable the duplication and spread of copies of themselves throughout a system.
5. Physical damage: to the storage device
6. Hardware Malfunction/corruption: Some storage devices come with defects, and may be the cause of data loss. These defects
can be severe enough to cause the whole medium to 'fry' or just loss a small portion of the data.
7. Natural Disaster: Things such as earthquakes, floods, wars and, even volcanic eruptions can destroy your hardware. They may also
cause things like power failure. Fires are also a big cause of data loss
8. Misplacement
9. File formats
10. Failure: power (external), hardware, software
11. Data corruption
1.1.12 Consequences of data loss in a specified situation
When data is lost, the consequences of the lost can be summarized in the below ( some can still occur even if data is
retrieved):
• Cost of repairs, recovery, reimbursement, bankruptcy, fines
• Time lost during these processes
• Labor time lost
• Human stress
• Damage Company’s reputation
a) Medical Records Medical records are very important in order to treat patients correctly. A Hospital, for example, stores a
medical record for every patient. These include information about his or her disease and treatment. If this information is lost,
doctors and especially nurses will not exactly know what medicine should be given to the patient. This could kill the patient!
Hospitals often have a calendars which are used to assign nurses and doctors to specific stations to specific times. If there is
data loss, it could happen that a station does not have a doctor assigned and the patient will not receive treatment. When a
patient needs an organ he will be put on a list and often needs to wait for an organ. Through data loss or a data mix up
caused by data corruption it could happen that the list is switched around so that a patient who waited for years gets pushed
back even further.
b) Students Grades Data loss for students often come in form of lost documents through USB sticks or broken hard drives. If a
student loses their work they either have to hand it in late which might affect their grade in organization, or if it does not get
accepted, a 0 mark on their grade. This might have long lasting effects for example on their end of year grade. A single
assignment in higher levels of the school can already make large differences. For something as simple as Data Backup you
should not risk your grade. It literally only takes seconds to do.
c) Government Agencies: There are numerous consequences if a government agency experiences data loss. As the data is lost,
the information stored cannot be retrieved, which means that documentation of evidence is no longer existent. For example,
if an intelligence agency lost evidence, in front of court they would have no valid proof helping the judge decide in the name
of justice. Furthermore, data lost in terms of tax payments could lead to the loss of overview about who payed taxes. If data
is lost by the government, punctual monthly payments in terms of rent would not be made. Salaries of staff could also not be
played on time. Another example is that important notifications could not be sent out, thus, the messages could not meet the
recipient in time. The traffic of data would come to halt. The recollection of data would take a long time. Last but not least,
the loss of data leaves a very negative impression of the agency, creating a bad reputation. If the data is lost, important tasks
would be stopped and evidence lost. If the data is stolen, is could be misused by the intruder. Sensitive data could be stolen
imposing a threat to the individuals.
d) Banking Information: If sensitive data like bank information is lost, chaos can break out. Customers could not perform basic
tasks like withdrawing money from ATMs, as data about how much money is in their account would be lost. Banking would
be halted and collection of the data from customers’ documents would take a long time. This would cause customers to loose
trust in the bank, causing them to switch. The consequence of this would be a reduction in the business of the bank. In
addition, the payment of staff on time could not be made. If the data is purely lost, then banking will come to halt and it will
take a long time to collect the data from customers back. However, if the data is stolen, there is a severe security breach, as
the information is sensitive (includes your name, birth data, etc.) and social engineering could take place.
e) Employee Records: Employee records are not as important as for example bank or government records. In Germany there
are no big records about the employees. Only the most common information like the name and birthday are recorded. Bigger
companies may have records on when and how long an employee worked. Loss of such data could lead to some problematics
because it is unclear for how many hours of work they will be payed, etc., but mostly there is an easy solution to it. Medical
files aren’t stored by the employer. If files get lost there are always backups because the most important information is saved
by officials: if data is lost by the employer then the employer goes to the officials and asks for the lost data. The only bigger
problem is that if personal data about the employees are stolen, then this could lead to legal problems, because the
employer needs to keep this data safe, but this is relative as well, because employers aren’t allowed to have more than the
needed personal information about their employees.
f) Credit Card records:
Losing data may damage the company’s reputation. For example when companies like Amazon are hacked, important data
like personal details and credit card information might be used against the users and this creates a feeling of insecurity
between the company and the customers. Privacy is also a big issue with data loss. Customers’ information might be put
available on the internet.
Typically, a failover is automatic and handles abnormal situations without human interference. In a failover system when
primary server fails the standby server is made primary.
System Fundamentals
1.1 Systems in organizations
D- Software
1.1.14 Strategies for managing releases and updates
One should be aware of a variety of ways in which updates are made available and deployed. Performance issues related to
the inability to install updates may hinder end-users and reduce compatibility between systems in geographically diverse
locations.
1) Patching: used by software companies to update applications by fixing known bugs and vulnerabilities. Be aware that,
patches may introduce new bugs as side effects
2) Upgrades always contain novel functionalities or characteristics, as well cumulative bug fixes. In most cases upgrades
need to be bought.
3) Updates improve a product in a minor way by adding new functionalities or fixing known bugs. In most cases updates
are free.
4) Releases are final, working versions of software applications. These applications have already gone through alpha and
beta software testing. Releases relate to new or upgraded applications
5)
Patches 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.
• Bigger updates are referred to as "service packs" or as "software updates".
Managing updates:
Things to consider:
• Is the update required?
• Was the update tested enough?
• Will the program still need updating soon after the release of this update?
1) Hardware
The physical components that make up a computer.
2) Software
The programs and other operating information used by a computer.
3) Peripheral Device
A device that is connected to a host computer but not a part of it. It expands the host’s
capabilities but does not form part of the core computer architecture. For example, a
printer, mouse, a monitor, a keyboard, joystick, pen tablet, digital camera, video camera
4) Network
Is a telecommunications network that connects a collections of computers to allow
communication and data exchange between systems, software applications and users.
5) Human Resources
The department of a business or organization that deals with the administration,
management, and training of personnel.
1.2.1 The roles that a computer can take in a networked world
Computers can take on many roles in a networked world.
1. A computer could be a server which, stores and shares information to clients over the network. to a software
network architecture system where clients request information and servers perform tasks in order to provide
the information. At least one server machine is required as a prerequisite for the client-server architecture. The
main difference between server and clients is that servers share their resources, whereas clients do not.
2. A computer could take on the role of routing, which means this computer connects to networks and decides
where to send information which is received from one network and then sent to another. it is a networking
device that accepts incoming quanta of information (data packets), reads their destination address and
distributes them across networks, according to a routing table or routing policy (policy based routing). A router
identifies the destination of messages and sends them via an appropriate route and is used to forward data
packets between networks
3. A computer could be a DNS server, which is basically a router, but in this case it translates a web address that
is written in letters to the IP address of that webpage. attributes names to network addresses and therefore
resolves names by assigning them to the appropriate network entity (a resource that is part of the network). A
DNS server allows you to type names into the address bar of your web browser like ”mit.edu” and the web
browser automatically finds that address on the Internet. The Domain Name System is a protocol within the set
of the TCP/IP protocol suite and is used for managing public names of web sites. One can always bypass a DNS
lookup by entering the Internet Protocol (IP) address directly into a browser.
4. A computer could take on the role of a firewall, which means this computer is basically a router, but in this
case the computer decides on what connections to let through to protect the integrity of the client computer
which uses the firewall. is a hardware or software network infrastructure that controls data flow access among
network entities. The firewall is mainly used to offer protection and limit access to a network. The ideal firewall
system configuration consists of hardware and software components.
5. A computer as an email server is the equivalent of a post office that manages the flow of email in and out of
the network, checks that an email address is valid, allows users to access their email, etc.
6. A computer could be a client which means that this computer is used to accesses information from a server,
receives data via the network, whereas the server has saved data on it and offers it to clients. A server may be a
program or a computer that provides services requested by clients connected over a network while a client is an
average computer or terminal (dumb terminal, thin client) used to access a computer-based system.
Security: The issue of security becomes very important, computers have to protect their data and make sure that data
is not accessible for anyone that does not have the right to access it. The Stuxnet virus is an example of a security
breach.
Privacy: The issue of privacy becomes a very sensitive issue when computers are inter connected. This issue fall
backs to the issue of security and the issue of privacy has a lot in common with security, because to protect your identity
you need security. You should be able to choose what information you share and with who you share that information.
Example GPS on phones
Censorship: Censorship becomes an issue when you inter connect computers because some of the information may
be deemed inappropriate by the network manager and so he could make sure that none of the other computers could
access this information. China is a good example of this.
Who is a relevant stakeholder? A stakeholder is a person who has an investment, share or interest in
a business/industry.
Often, stakeholders are mistaken for shareholders. Shareholders are stakeholders of a company, but
stakeholders are not necessarily shareholders.
Gathering various details about an existing system and obtaining stakeholder requirements for a
planned system, will involve different Methods:
1. Observation
2. Focus Groups
3. Surveys
4. Interviews
1. Observation
Observation is the process of monitoring a system while it is at work.
Example: An awkward man stands behind a store clerk for one whole day, seeing how she works.
Pros Cons
• it is not based on numerical statistics, it • Functioning system that is being observed
can explore topics in great detail and will always act different than it does
depth. normally.
• Unobstructed observation will create • The non-statistical data can be difficult to
extremely natural data. analyze and can cause generalizations
• Time consuming
2. Focus Groups A focus group is a form of research in which a group of people, generally
stakeholders, are gathered together and questioned on their opinions towards a project or
product. Questions are generally asked in an interactive group setting where the participants
are free to talk with other members in the group.
Pros Cons
• The researcher can interact with the • The small sample size means the groups might
participants, pose follow-up questions or ask not be a good representation of the larger
questions that probe more deeply. population.
• Results can be easier to understand than • Group discussions can be difficult to steer and
complicated statistical data. control, so time can be lost to irrelevant topics.
• The researcher can get information from non- • Respondents can feel peer pressure to give
verbal responses, such as facial expressions or similar answers to the moderator's questions.
body language. • The moderator's skill in phrasing questions
• Information is provided more quickly than if along with the setting can affect responses and
people were interviewed separately. skew results.
3. Surveys
refers to a domain of applied statistics that focuses on taking samples from a population, as well as
improving on the various data collection techniques (e.g. questionnaires).
Pros Cons
• Relatively easy to administer • Respondents may not feel encouraged to provide
• Can be developed in less time (compared to accurate or honest answers
other data-collection methods) • Respondents may not be fully aware of their
• Can be administered remotely via online reasons for any given answer because of lack of
• Conducted remotely can reduce or prevent memory on the subject, or even boredom.
geographical dependence • The number of respondents who choose to
• Capable of collecting data from a large number respond to a survey question may be different
of respondents from those who chose not to respond, thus
• Numerous questions can be asked about a creating biased data.
subject, giving extensive flexibility in data • Survey question answer options could lead to
analysis unclear data because certain answer options may
• With survey software, advanced statistical be interpreted differently by respondents. For
techniques can be utilized to analyze survey data example, the answer option “somewhat agree”
to determine validity, reliability, and statistical may represent different things to different
significance, including the ability to analyze subjects, and have its own meaning to each
multiple variables individual respondent. ’Yes’ or ‘no’ answer options
• A broad range of data can be collected (e.g., can also be problematic. Respondents may answer
attitudes, opinions, beliefs, values, behavior, ”no” if the option “only once” is not available.
factual).
• Standardized surveys are relatively free from
several types of errors
4. Interview
An interview is a face to face meeting that consists of an interviewer asking the interviewee questions
that should be pertinent to the topic of the interview.
Pros Cons
• You get direct feedback from stakeholders • It takes a long time to interview everyone
• You can ask any question you want, and can • It is quite costly as people have to stop working to go
change the direction of the interview to the interview and you have to pay the interviewers.
• People tend to be more truthful face to face • Since it take so long you are likely to choose a small
• You can see how people physically react to group of people to interview and if you have badly
certain questions selected this group than some of the information you
• You can discuss a topic in depth collect may be useless.
• For an effective interview interviewers must take a lot
of time to prepare The interviewees’ privacy be
compromised if they are put in a position where they
are asked about something that they do not
want/need to answer.
1.2.6 Appropriate techniques for gathering the information needed to arrive at a
workable solution
Exact use of the right symbol is not important You need to think about inputs, processing, and
outputs
2. Data Flow Charts:
Data flow charts are very similar to system flow charts, except they do not show
decisions being made. They only show the different paths the data takes, where it is held, and
where it is processed. The use of symbols is the same as those used in system flow charts,
except without the rhombus decision box.
Data flow diagram element Symbol
Process
An operation performed on the data
Data flow
Direction of data flow
Data store
File held on disk or a batch of documents
External entity
Data source or destination
3. Structure Charts: A structure chart shows the breakdown of a system to its lowest manageable
modules. Each box in a structure chart represents a module in the system, and each line to
another box represents the connection or ownership between modules As a programming
tool, structure charts aid programmers in dividing the software into sub problems, such that
these can easily be solved, and such that the final combination of modules results in a coherent
and logically functioning program.
A structure chart also depicts the size and complexity of a system. A wide structure chart
indicates lots of fragmentation and specialization; perhaps functionality can be grouped
together? A tall structure chart indicates too much generalization; is the software working
efficiently with so much abstraction? A structure chart with many lines between many
different modules indicates poor management; perhaps this should be changed to support
better extensibility and prevent errors?
1.2. 8 Purpose of prototypes to demonstrate the proposed system to the Client
• Prototypes are often used to test and gather feedback on a new concept or system.
• Prototypes provide a useful mechanism for testing and gathering feedback from the clients
regarding the system. Clients can influence the direction of the development of the prototype
such that the final product they get matches their needs more closely.
• Prototypes are often used alongside iterative design processes to quickly build a product for
market which is suitable to the clients’ needs.
• It also allows the software engineer some insight into the accuracy of initial project estimates
and whether the deadlines and milestones proposed can be successfully met.
• Considered a marketing tool to attract the attention of clients
1. Identify basic requirements determine basic requirements including the input and output
information desired. Details, such as security, can typically be ignored.
2. Develop Initial Prototype the initial prototype is developed that includes only user interfaces.
3. Review the customers, including end-users, examine the prototype and provide feedback on
additions or changes.
4. Revise and Enhance the Prototype using the feedback both the specifications and the
prototype can be improved. Negotiation about what is within the scope of the
contract/product may be necessary. If changes are introduced then a repeat of steps #3 and #4
may be needed
Once a design is completed, problems are noted that many test users had with it. These
problems would be quickly fixed through an iteration which should be tested to make sure the
"fixes" went through and problems that had occurred are solved. It also finds any new usability
problems by the new changed design. Iterative design is specifically aimed to teach you
through messing up repetitively until you get it right resulting in a more successful final
product. When applied early in the development stage, significant cost savings are possible.
Iterative testing enables an objective assessment of the project's status. Inconsistencies among
requirements, designs, and implementations are detected early.
1 2.10 Possible consequences of failing to involve the end user in the design process.
These are some of the concerns a designer might have when planning a system some possible
consequences of not involving the end user include:
a. A lack of feedback during the design process
b. A lack of stakeholders willing to provide resources
c. Dissatisfaction from end-users as their needs may not be met
Designer Concerns
• How much disk storage space will the master file consume?
• How many lines of program code will it take to perform this function?
• How can we cut down on CPU time when we run the system?
• What are the most efficient ways of storing this data?
• What database management system should we use?
If any of these points are not provided to the designer of the software the end result will not
be a working product.
1.2.11 Social and ethical Issues associated with the introduction of new IT systems
1.5 Authenticity
Authenticity means establishing a user’s identity beyond reasonable doubt. Authenticating the
user is crucial in many scenarios, particularly in business and legal matters. A simple example of
authentication is a user login to a network. A more advanced example would be the use of encrypted
digital signatures in a business transaction or the use of watermarking on digital photographs.
1.7 Surveillance
Surveillance is the use of IT to monitor the actions of people. For example, monitoring may be
used to track, record and assess employees’ performance. It can be used to support claims for
promotion or to ensure that employees follow the organization’s internet policy appropriately.
1.9 Policies
Policies are enforceable measures intended to promote appropriate and discourage
inappropriate use relating to information technologies. They can be developed by governments,
businesses, private groups or individuals. They normally consist of rules governing access to, or use of,
information, hardware,software and networks. For example, a school policy on the use of IT would
consist of each user signing an acceptable use policy. It would also address unlawful access to the
network through, for example, identity theft or using hacking software, and how these transgressions
would be treated. Many websites also require users to agree to specific policies before allowing
access to their services. Policies also affect the exchange of information, for example, by making it
subject to copyright laws and raising people’s awareness of plagiarism. In general, policies can
promote or restrict access, guide behavior, require the fulfillment of certain conditions prior to or
during use, or need to be developed to address unforeseen issues such as cyber-bullying.
1.10 Standards and protocols
Standards and protocols are technical rules and conventions that enable compatibility and
therefore facilitate communication or interoperability between different IT systems and their
components. They might govern the design and use of hardware, software and information. For
example, the communication protocols used on the internet, the ASCII representations for characters,
or the design of the printer port on a personal computer are all governed by standards.
1.2.12 Usability.
The object of use can be a software application, website, book, tool, machine, process, or
anything a human interacts with. A usability study may be conducted as a primary job function by a
usability analyst or as a secondary job function by designers, technical writers, marketing personnel,
and others. It is widely used in consumer electronics, communication, and knowledge transfer objects
(such as a cookbook, a document or online help) and mechanical objects such as a door handle or a
hammer.
Usability includes methods of measuring usability, such as needs analysis and the study of the
principles behind an object's perceived efficiency or elegance.
In human-computer interaction and computer science, usability studies the elegance and
clarity with which the interaction with a computer program or a web site (web usability) is designed.
Usability differs from satisfaction and user experience because usability also considers usefulness.
Device Problem
GPS/navigation 1. Small screen.
systems 2. Low-quality speakers.
3. Antenna with poor performance that makes it difficult to receive a satellite
signal.
4. Inaccurate geographical data.
5. Outdated street data.
6. Inefficient routing software.
TABLETS 1. Accidental touches leads to undesired selections.
2. Difficult to learn different gesture features’ of various manufacturers.
3. Bad or poor scaling and zoom control.
4. Difficult-to—use control features.
5. Small side buttons.
6. Poorly written instructions.
Game consoles 1. Some portable game consoles have relatively small screens.
2. Buttons may be too small.
3. Difficult to use outdoors (insufficient brightness).
4. Short battery life.
PCs: 1. Excessive keyboard use may lead to RSI (Repetitive Strain Injury) syndrome.
2. Excessive use of a large, bright screen may cause eyesight problems or tire the
eyes.
3. Poor room lighting conditions may lead to distracting reflections on the screen.
4. The mouse of a PC is designed for right—handed people, making its use
difficult for left-handed people.
Digital 1. Incorrect calibration of touch screen menus.
Cameras: 2. The need to hold the camera vertically, does not allow convenient navigation
through the touch-screens. An auto rotate screen option would increase
usability.
3. If a camera does not have a flash capability or it is equipped with an inadequate
flash, then the user has to purchase and carry an extra hardware component.
4. The buttons are too small, making it difficult to push them.
5. Some cameras require specific software to connect them with a computer and
store or transfer files (no drag and drop files option).
Mobile phones 1. The keyboard of a mobile phone is very small and as a result many novice users
elderly people or users with bad eyesight struggle to use it.
1. Some users don’t really need all the special features; they just need a basic
device for calls and SMS messaging.
MP3 Devices: 1. Tiny buttons.
2. Insufficient memory.
3. Fragile.
4. Lack of a screen in ”micro” or ”shuffle” devices.
5. Overall usability can be improved by use of NLP (natural language processing)
and making the overall interface more intuitive, so that even people not
familiar with technology can use them.
6. Use of acceleration sensors or gesture control to enhance functionality (e.g.
shaking the device to change the song).
Areas to improve:
1. Improve range of languages
2. Make the user interface more intuitive/user friendly
3. Reduce the use of jargon and complicated terminology
4. Make system available over internet
5. Reduce cost of the system (get more people to use it)
Voice Recognition
Voice Recognition software (speech-to-text) allows users to speak into a microphone and software on
the computer translates the voice to text.
Text-To-Speech
Speech synthesis is the artificial production of human speech. A text-to-speech (TTS) system converts
normal language text into speech; other systems
render symbolic linguistic representations like
phonetic transcriptions into speech.
Keyboards
There are various different types of braille keyboards that the visually impaired use:
• There are standard keyboards that have braille letters on the keys
• But most commonly you get the chorded braille keyboard such as electronic braille note takers.
These keyboards do not have a separate key for each letter. There is one key for each dot of a
braille cell. To type one letter, all of the keys that correspond to the dots in that letter are
pressed at the same time. The brailler or notetaker advances to the next letter after the keys
are released. A spacebar is located below the main keys.
Trackball
A trackball is a pointing device consisting of a ball held by a socket containing sensors to detect a
rotation of the ball about two axes—like an upside-down mouse with an exposed protruding ball. The
user rolls the ball with the thumb, fingers, or the palm of the hand to move a pointer. Compared with
a mouse, a trackball has no limits on effective travel; at times, a mouse can reach an edge of its
working area while the operator still wishes to move the screen pointer farther. With a trackball, the
operator just continues rolling, whereas a mouse would have to be lifted
and re-positioned. The trackball buttons may be situated to that of a mouse
or to a unique style that suits the user. People with a mobility impairment
use trackballs as an assistive technology input device. Access to an
alternative pointing device has become even more important for them with
the dominance of graphically-oriented operating systems. There are many
alternative systems to be considered. The control surface of a trackball is
easier to manipulate and the buttons can be activated without affecting the
pointer position.
1.2.15 Range of usability problems that can occur in a system
1. Ticketing system
2. Ticketing - How it works? Disadvantages
3. Online payroll - How it works? Disadvantages
4. Scheduling - How it works? Disadvantages
5. Voice recognition - How it works? Disadvantages
6. Any system that provides feedback - Give an example - How it works? Disadvantages
1. Ticketing system:
Important: Ticketing systems may refer to public transportation ticketing systems, to theater
ticketing systems etc. or to helpdesk software that tracks customer requests
2. Online payroll systems:
3. Scheduling system:
4. Voice recognition systems:
Social and ethical issues associated with Planning, Design and Implementation
• machine-centered systems simplify what computers do at the expense of participants
• human-centered systems as those that make participants’ work as effective and satisfying as
possible
• how the relationships between participants change as a result of the new system
• ensuring the new system provides participants with a safe work environment
• awareness of the impact the system may have on the participants:
• opportunities to use their skills
• meaningful work
• need for change
• opportunities for involvement and commitment
Social and ethical issues related to information systems and databases
• acknowledgment of data sources
• the freedom of information act
• privacy principles
• accuracy of data and the reliability of data sources
• access to data, ownership and control of data
• new trends in the organization, processing, storage and retrieval of data such as data
warehousing and data-mining
Question: There is a vast amount of scientific information and educational material available on the
WWW. Discuss the advantages and disadvantages of students having unrestricted and unsupervised
access to a PC that is connected to the internet.
Answer:
° Pros:
' Cons:
Question: Most university students have computers with Internet access. The WWW can be a useful
resource when researching educational information for classwork and homework and can be used to
communicate by chatting online. Discuss possible advantages to university students when chatting
online.
Answer: One possible benefit for university students using the Internet for chatting online is that they
can exchange ideas, ask other students or scientists questions about courses and lectures, and get
answers or clarifications. Also, other students may suggest useful sites to find educational material and
scientific information. Chatting on-line facilitates making acquaintances and connections from all over
the world (social and business networking). In most countries it is considered a cheaper way of
communication than using the telephone, since if the user’s home is equipped with a broadband
connection, a fixed amount is paid to the Internet Service Provider (ISP) regardless of how long the user
spends online (connected to Internet).
Question: Suppose a supermarket wants to develop a new system for online ordering with free delivery.
Who are the stakeholders?
Answer: System owners, system users (clerical employees, service workers, technical staff, professional
staff, customers, suppliers), system designers (security experts, database administrators, web
architects), system builders (application programmers, network administrators), system analysts, system
testers, etc.
Answer:
prototype is produced.
1.a. A prototype will help: Robotic cleaner, robotic kit (LEGO NXT), robotic lawnmower, security robots.
Justification: All these robots would be developed for sale to the general public in large quantities; all
these can be produced easily.
1.b. A prototype will not help: A robot that will carry out dangerous tasks in a nuclear reactor, a robot
that will be used in a specific space mission. Justification: Immediate need, time and money taken to
produce and test a prototype may be considerable, special operational circumstances unable or too
dangerous to be reproduced.
2. Computer simulation that will be based on detailed mathematical models. Use of the computer
simulation for testing purposes.
Question: Tablets are often too small to have a usable virtual keyboard. Most of them provide the
option of handwriting recognition for input. Discuss whether this input method is convenient for tablets.
Answer: Handwriting recognition is a suitable form of input on tablets as it is quicker and easier for the
user. This means that the touch screen on tablets can have smaller dimensions than a keyboard,
allowing the whole tablet to be smaller. On the other hand, handwriting recognition is not always
accurate and it takes time to train the software to understand a user’s handwriting. Also, a user's
handwriting may be different in difficult and demanding circumstances, for example when require an
alternative input method (such as the small virtual keyboard) to input a word if not successfully
recognized using handwriting recognition.
Question: State some health and safety issues that secretaries and typists (keyboard operators) should
be aware of. Suggest measure that can be taken to improve the working conditions.
Answer:
Answer: Use of passwords, only qualified staff are allowed to access patients’ files, use of physical locks,
use of encrypted data, use of firewall, etc.
Question: A secret intelligence agency is highly concerned about security and keeps biometric details of
all visitors and personnel on a database system. The agency is introducing the use of biometric features
as a security measure and has recently installed iris scanning and recognition equipment at the entry
points of their building. Describe any resulting issues.
Answer: Agents should be scanned at least once per working day and this may raise concerns about
their health. The long-term effects of daily scanning of photographing a person’s iris are not yet fully
researched. Social issues include concern over the storage of visitors' biometric information on the
database system.
Question: Compare and contrast the suitability of humans and computers in relation to various tasks.
Answer:
Answer: A biometric property of a person that can be used to identify him/her. Facial structure,
fingerprint, iris pattern, DNA profile and voice profile.
Question: A chemical company decides to adopt a fully automated system. Before the introduction of
the new system the company reassigns daily tasks and assignments to each worker. Describe the effects
on the workers.
Answer:
• Administrators will be able to check up on their daily work through the new system; good for
some workers, not for others
• Anxiety about being made redundant
• Fear that they will not be able to cope with new system
• Tedious tasks will be performed by the new system, not the workers
• Various tasks may be made safer
• Workers will have to learn new skills
• New skills will mean better qualifications
• New skills will mean better salaries
Question: Why is working from home better than working from an office? Justify your answer.
Answer:
Question: A company decides to build a web-site for marketing purposes. An analyst is asked to help.
Explain what information the analyst must collect before the design process.
Answer: Languages, format, possible colour scheme, information and data that the site will include,
internal and external links etc.
Question: State some new IT solutions in the Banking sector that benefit the client.
Answer:
• Mobile banking
• Online banking
• ATMs
Question: State some new IT solutions in the Banking sector that benefit the employees.
Answer:
Question: State some new IT solutions in the education sector that benefit students.
Answer:
• Use of simulation educational software facilitates the deeper understanding of difficult concepts
• Use of tablets to better organize all resources and access multimedia content
• Use of Learning Management Systems to collaborate with peers
Question: State some new IT solutions in the education sector that benefit teachers.
Answer:
Answer: Maybe, the current system may be too expensive to run and maintain. So a new system may
decrease the total expenses of the company.
Question: What is meant by the term "operational feasibility" found in a feasibility report?
Answer: A feasibility report should examine the ”operational feasibility” of the proposed system. This
part should examine whether the existing organizational practices and procedures are sufficient to
support the maintenance and operation of the new system.
Answer: The combining of two or more corporations or business enterprises into a single corporation.
Answer: It is a situation where different software entities or systems cannot operate satisfactorily,
cooperatively or independently, on the same computer, or on different computers linked by a local or
wide area computer network.
Answer: Lower initial cost, easy to upgrade, ease of access from anywhere, easy to predict the cost of
initial implementation (subscription), the application is ready to use.
Answer: Dependence on a third party, security and confidentiality, dependence on Internet connection,
risk of data loss, not as powerful as on premise solutions.
Question :A nuclear station is equipped with a highly automated control system. This system should be
replaced by a new system. Suggest a suitable implementation method. Justify your answer.
Answer: The correct answer is parallel changeover because the main characteristic of this conversion
method is the limited risk. The cost of operation and maintenance of both systems will be higher but this
is of limited importance in this particular situation. Direct method of implementation is not appropriate
because of the high risk of failure and the absence of a trusted backup system. The scenario described in
the question does not imply the existence of multiple sites so the pilot method is not considered as an
alternative.
Question: Several verification and validation checks are performed on data being entered into a
database by a bank employee. The database contains an "age” field and a "name" field. Give two
examples of invalid data and one example of valid data for the field ”age", and explain how this field
could be validated.
Answer: All ”age” entries should be checked to see if they are positive numbers and for consistency with
a minimum/maximum range (e.g. 18—110). This process includes a type and a range check. Invalid data
for the age field could be ”Y” and ”234" while valid data would be ”25”.
Answer: It could be typed twice and the two entries compared. If both entries are the same then the
”name” is verified. This process is called double entry and reduces data entry errors.
Answer: Alpha testing takes place inside the company which develops the software while beta testing
includes selected users that are not employees of the software company and test the software in their
premises.
Answer: No, because dry run testing is conducted manually using a pencil and a paper in most cases.
Answer: Internal documentation facilitates programmers while external documentation focuses on the
user of the product.
Answer: Direct interaction with the expert allows immediate answer to students’ questions without any
technical communication barrier.
Question: State three methods that can be used to prevent “data loss”.
Answer: Regular backup of files using hard disks or tapes, online auto save backup, Data storage in two
or more locations (offsite storage).
Question: A bank uses a database server that provides database services to various computers. Describe
a secure strategy for backing up and restoring the data on the database server after a failure.
Answer: A secure back-up strategy would be to use high-capacity magnetic tapes because the tapes are
very cheap per Gigabyte and have great longevity. The first step is to back up the files of the hard disks
to tapes every night. The back-up process should be completely automated and the tapes should be
secured and stored off—site in a fire-proof room. A suitable strategy for restoring the data after the
failure would be to use these tapes to restore the database on the server.