Information Systems: A Comprehensive Overview and Development Process, Lecture notes of Software Development Methodologies

gives the stages taken for developing systems and software

Typology: Lecture notes

2019/2020

Uploaded on 01/29/2020

peter-karanja
peter-karanja 🇰🇪

2 documents

1 / 17

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
FACULTY OF COMPUTING AND INFORMATION
MANAGEMENT
DIT 203 & DBIT 205: SYSTEMS ANALYSIS AND DESIGN
CHAPTER 1: INTRODUCTION TO SYSTEMS AND
SYSTEMS ANALYSIS
DEFINITION OF TERMS
System
It is a group of related and interacting components which work together to
achieve a desired purpose or a set of objectives. A system takes input,
performs processing of data to give some desired outputs. Basically there
are three major components in every system. I.e. Input, Processing and
Output.
Information System
An information system is an arrangement of people, data, process,
interfaces, networks and technology that interact to support and improve
both day-to-day operations in a business (sometimes called data process),
as well as support the problem-solving and decision-making needs of
management (sometimes called information service).
Systems Analysis
System Analysis is the study of business problem domain to recommend
improvements and specify the business requirements for the solution.
System design
System design is the specification or construction of a technical, computer-
based solution for the business requirements identified in a systems
analysis.
CHARACTERISTICS OF A GENERAL SYSTEM
a. A purpose- A system has a set of objectives to fulfill. This is the
overall goal or function of a system.
Examples:
Increase company productivity by 50% in the next two
years
Reduce wastage of papers by 20%
Reduce time taken to process 100 certificates to one day
b. Subsystems- A sub system is a part of a bigger system which performs a
specific function.
c. A Boundary- The boundary is the line that makes the inside and outside
of a system and that sets off the system from its environments
d. An Environment- This is everything external to a system that interacts
with the system i.e. everything outside the system’s boundary, usually the
system interacts with its environment, exchanging, in the case of an
information system, data and information.
e. Interrelated Components- The components are interrelated. This means
the dependence of one subsystem on one or more subsystems. The function
of one subsystem is tied to the function of others.
f. Feedback - It monitors the output to check that it conforms to the
expected goals and objectives. Feedback may be positive or negative.
Negative Feedback
This is a system that works on the principle of trying to reduce the
fluctuations around a set standard. For example if there is credit limit of
those customers who have outstanding debts, it restricted them it is known
as negative feedback since the action is taken opposite to deviation.
Positive Feedback
It is a system that attempts to increase a detected deviation. It helps the
system to adjust but acting in the same direction in which deviation has
occurred e.g. If the demand for any product increases and as a result,
production is also increased, then it is positive feedback it helps to increase
the efficiency of the system.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Information Systems: A Comprehensive Overview and Development Process and more Lecture notes Software Development Methodologies in PDF only on Docsity!

FACULTY OF COMPUTING AND INFORMATION

MANAGEMENT

DIT 203 & DBIT 205: SYSTEMS ANALYSIS AND DESIGN

CHAPTER 1: INTRODUCTION TO SYSTEMS AND

SYSTEMS ANALYSIS

DEFINITION OF TERMS

System It is a group of related and interacting components which work together to achieve a desired purpose or a set of objectives. A system takes input, performs processing of data to give some desired outputs. Basically there are three major components in every system. I.e. Input, Processing and Output. Information System An information system is an arrangement of people, data, process, interfaces, networks and technology that interact to support and improve both day-to-day operations in a business (sometimes called data process ), as well as support the problem-solving and decision-making needs of management (sometimes called information service ). Systems Analysis System Analysis is the study of business problem domain to recommend improvements and specify the business requirements for the solution. System design System design is the specification or construction of a technical, computer- based solution for the business requirements identified in a systems analysis.

CHARACTERISTICS OF A GENERAL SYSTEM

a. A purpose - A system has a set of objectives to fulfill. This is the overall goal or function of a system. Examples :

  • Increase company productivity by 50% in the next two years
  • Reduce wastage of papers by 20%
  • Reduce time taken to process 100 certificates to one day b. Subsystems - A sub system is a part of a bigger system which performs a specific function. c. A Boundary - The boundary is the line that makes the inside and outside of a system and that sets off the system from its environments d. An Environment- This is everything external to a system that interacts with the system i.e. everything outside the system’s boundary, usually the system interacts with its environment, exchanging, in the case of an information system, data and information. e. Interrelated Components- The components are interrelated. This means the dependence of one subsystem on one or more subsystems. The function of one subsystem is tied to the function of others. f. Feedback - It monitors the output to check that it conforms to the expected goals and objectives. Feedback may be positive or negative. Negative Feedback This is a system that works on the principle of trying to reduce the fluctuations around a set standard. For example if there is credit limit of those customers who have outstanding debts, it restricted them it is known as negative feedback since the action is taken opposite to deviation. Positive Feedback It is a system that attempts to increase a detected deviation. It helps the system to adjust but acting in the same direction in which deviation has occurred e.g. If the demand for any product increases and as a result, production is also increased, then it is positive feedback it helps to increase the efficiency of the system.

TYPES OF (GENERAL) SYSTEMS

a. Deterministic Systems (Mechanistic Systems) These are the systems that function according to some predetermined procedure and its results and future behavior can be predicted with certainty provided they are working correctly and under control. Example: The working of a computer program b. Probabilistic Systems (Stochastic Systems) These are those whose state and behavior can be predicted only within certain limits, even when they’re under control. Example: In inventory systems, average stock, average demand, average replenishment time may be predicted but exact values of those factors an instance may not be known. c. Cybernetic system (Self Organizing/ Adaptive) These are systems that have to adapt to their environments/ react to stimuli they learn from their mistakes, so that they do not always react in the same way to a particular input. Examples are the human body adapts to changes in temperature to keep the body warm or increase the heart beat to cope with some external need, social systems, organizations, plants. CLASSIFICATION OF SYSTEMS a. Open system These are systems which interact with the environment. Example: the biological and social system. All business organizations are also open systems since they must have the capacity to adopt in the future of changing competition, changing markets etc. b. Closed systems A closed system is that which does not interact with its environment. The system is not influenced by its environment. (It does not take in from or give to it.) A computer program is a relatively closed system because it accepts only previously defined outputs. In fact, no system can be a completely closed system for a long time. Information System An information system is an arrangement of people, data, process, interfaces, networks and technology that interact to support and improve both day-to-day operations in a business (sometimes called data process ), as well as support the problem-solving and decision-making needs of management (sometimes called information service ). TYPES OF INFORMATION SYSTEMS a. Transaction Processing Systems (TPS)

  • Automate the simple, routine operations
  • TPS goal is to improve transaction processing by o speeding it up, o using fewer people, o improving efficiency and accuracy Examples of TPS systems
  • Order Entry This is the TPS which processes customer orders.
  • Inventory An inventory system monitors the quantity of each product available for sale and helps ensure that the proper amount of stock is maintained.
  • Distribution This involves ensuring the best mode of transport is selected to deliver goods to the customer on time.
  • Sales Invoicing The main role of the sales invoicing system is to receive delivery information from the Distribution System and to prepare invoices to be sent to the customer.
  • Accounts Receivable It Records the amount owed by customers and the payments made. b. Management Information System (MIS)
  • Used by middle managers who oversee key functions

Necessary skills for a system analyst a. Analytical skills - To break into components, subsystems and assemble together b. Interpersonal Skills - Although the systems analyst will be working in the technical area of designing and building computer based information systems s (h) will also work extensively with all kinds of people. c. Good user rapport - Necessary in order to reduce hostility to change in the work environment d. Interpretation skills - Necessary to specify system and user requirements and in the design of correct system e. Analysis and design skills - Develop a model and translate ideas into a system using a methodical approach and techniques to communicate with development team members, users and the management f. Team management skills - To plan and manage projects and project team g. Imaginative and creative - Should be able to produce solutions that meet the user requirements in a creative manner h. Communication Skills - This is the ability to communicate clearly and effectively with others- users, information system professionals and management. Constraints in Analyzing and designing software systems Project constraints/Factors that determine successful development a. Scope - Refers to the functions that the system is proposed to provide. b. Budget. The analyst needs to plan carefully in order to fit within the budget requirements. c. Timescale - The costing of the project is normally tied to some time scale. d. Technology - A client or organization may require that the software should run on the existing software and hardware and there may also be other current technology to compare against. e. Environment - The system may be required to work on different physical circumstances that may require special equipment and tools. For example water, high temperature etc f. Project team- Availability of trained people in the organization who could handle the project

CHAPTER 2: SYSTEMS DEVELOPMENT LIFE CYCLE

(SDLC)

  • The SDLC refers to the stages or phases that information systems development goes through.
  • The phases include;
    1. Problem identification
    2. Feasibility study
    3. Analysis
    4. Design
    5. Development
    6. Implementation
    7. Maintenance PROBLEM IDENTIFICATION Before a project can begin, there has to be a reason why it should take place. There is need to identify the problem that the system is meant to overcome. It involves the system analyst, managers and users. For example: “The existing system cannot transfer data to the new invoice system” or “Staff have to spend 10 minutes loading information” e.t.c. Once the problem has been identified and defined, it is presented in the project initiation document which: a. Gives a statement of the problem to be solved b. Defines the goals and objectives of the project c. Understand the operation of the current system and its problems d. Identify the possible requirements of the new system e. Identify a range of possible solutions FEASIBILITY STUDY It is an early assessment of whether the project will be viable or worth undertaking.

The main feasibility assessment issues are technical, economic and operational. a. Technical feasibility - This answers the question whether the organization has the technical tools (hardware, software, technical skills) to support the project. b. Economic feasibility- This is a process of identifying the financial benefits and costs associated with development project. It is often referred to as the cost-benefit analysis. c. Operational/Functional Feasibility - It addresses the question whether the new system operations are acceptable to the users. This involves consultation with the function units or departments to find out whether the solution satisfies the user objectives and can be integrated with the current system. It also addresses the effect on: i. General attitudes, skills and retraining of the current uses ii. Job restructuring iii. Organization restructuring SYSTEMS ANALYSIS

  • It is the process of undertaking a detailed investigative study aimed at finding out WHAT the system is proposed will need to do from the client’s point of view.
  • It involves fact gathering and documentation of the user requirements and system functional requirements.
  • The people involved in the analysis process include the analyst, users and operation managers. Methods of collecting information during systems analysis
  • Also called fact finding techniques
  • Key methods are
  • Face to face interviews
  • Questionnaires
  • Record inspection – Inspecting business documents
  • Observation – Observes workers at different times and see how data are handled and what information people need to do their job 1. Face to face Interviews
  • The analyst attempts to obtain information by asking questions to a chosen staff interviewee.
  • Used at various stages of the software development to get data on procedures and operations, verify understanding of the system with the user, validate different aspects of the proposed system and build user confidence in the new system.
  • The analyst should plan for the interview by determining before hand:
  • What information to be obtained, purpose and content
  • The people to be interviewed Conducting an interview The interview should have the following three parts: a. Introduction - It is necessary to introduce the interview by giving the interviewee any background information and clear explanation on the objectives, scope, and topics to be covered in the interview. b. During the interview - The analyst should be in full control of the interview and avoid barriers to communication or digressing from the topic by: i. Proceed in an organized and controlled manner and use the estimated time for each item. ii. Give the participant opportunity to express themselves in a free and unrestricted manner iii. Observe the body language such as gestures, facial expressions that may convey values and opinions iv. Encourage the participants where necessary by nodding, smiling or keeping an eye contact. v. Maintain a free and friendly atmosphere c. Concluding the interview - The interviewer should keep the agreed duration of time. The interview should be concluded with a brief summary of the discussion. The analyst should also write down minutes that can be used as a reference in the follow up meeting. Advantages of interviews
  • Allows respondents to describe what is important to them

SYSTEMS DESIGN

The objective of the design phase is to define HOW the system is going to actually work. Characteristics of a good design

  • Functionality - The system will be able to perform the functions intended by the user adequately and avoid user frustration
  • Accurate - The system should be able to produce acceptable levels of accuracy in processing and performing requirements
  • Acceptability - The system will be able to meet the user requirements and needs
  • Usability- This refers to the user friendliness or ease of use in order to reduce human discomfort due to effects like fatigue and effort in learning or using the software
  • Flexibility - It is the ability of the system to accommodate changes as various aspects of the organisation change. These changes may be as a result of additional functions, structures and policies.
  • Portability - The ability to transfer the software from one computing environment to another with minimum effort and cost. This is necessary due to rapid changes in technology, which affect the organization Elements to design a. Input design b. Output design c. User Interface design d. Dialogue design a. Input design
  • The purpose of input design is to ensure that data is collected and entered into the system in an efficient, cost effective and accurate manner.
  • It involves o design of source data documents (e.g. forms, bar codes, bills) to ensure right format and content, o selection of appropriate input devices (based on volume, type of data, accuracy needs), o making source data conversion choices, o input verification and validation o Computer input screen design b. Output design
  • It involves o Design of output type (forms and reports, screen displays, printed documents) that meets various output needs o Choice of output media (Which printers for various needs/Speech output, Type of monitors – size and resolution) o Designing how information will be presented based on their needs of the intended users, volume, medium, sequence considerations, etc c. User interface and dialogue Design
  • Is the designing the overall sequence that users follow to interact with an information system.. The main dialogue types between the user and the computer are:
  • Menu driven commands - The computer provides the options in a menu for the user to check the desired command
  • Command language - The user types in commands to which the computer process tasks
  • Templates/ form filling - The computer provides a form that can be used to enter data or commands Characteristics of User interface a. Usability - The ease of the use of the interface by the user. b. Robustness - The ability of the software to prevent errors entered by the user from causing a system breakdown. It should be able to identify incorrect inputs and assist the user to correct them by giving the expected correct outputs for the user to confirm or a choice of possible commands to choose from. c. Extension of user workspace - The computer interface should be an extension of the user work environment by priding all the tools he requires to perform all the necessary tasks without leaving the workbench.

CHAPTER 3: SYSTEM ANALYSIS AND DESIGN MODELING

TECHNIQUES

Introduction Modeling techniques are methods of describing information systems requirements or how a systems works. Modeling is a key requirement in systems development/software engineering as in any area of engineering. Graphical models or diagrams are popular in documenting information systems for various reasons, among them: o Are less ambiguous compared to narratives o Are easier to update o Possible to cross reference with related techniques o Are more compact compared to narratives o Are more standardised than natural languages This handout describes the purpose and application of the following key graphical modelling techniques

  • Data flow diagrams
  • Entity relationship diagrams
  • Decision tables
  • Decision trees DATA FLOW DIAGRAMS (DFDS) Analysts use DFDs to show what happens to data items as they flow through a system. A DFD is a model/diagram of the processes that transform data in a system. Components of Data Flow Diagrams The notation used here is one adopted by a methodology known as SSADM (Structured Systems Analysis and Design Methods)
  • External entities
  • Processes
  • Data stores
  • Data flows External entities External entities are those things that are identified as needing to interact with the system under consideration.
  • The external entities either input information to the system, output information from the system or both.
  • Normally they may represent job titles or other systems that interact with the system to be built.
  • If the same external entity is shown more than once on a diagram (for clarity) a diagonal line indicates this. Examples of external entities Processes
  • Processes are actions that are carried out with the data that flows around the system.
  • A process accepts input data needed for the process to be carried out and produces data that it passes on to another part of the DFD.
  • Each identifiable process must have a well chosen process name that describes what the process will do with the information it uses and the output it will produce.
  • Process names must be well chosen to give a precise meaning to the action to be taken.

Hints on drawing

  • All the data flows are labelled and describe the information that is being carried.
  • It tends to make the diagram easier to read if the processes are kept to the middle, the external entities to the left and the data stores appear on the right hand side of the diagram.
  • The process names start with a strong verb
  • Each process has access to all the information it needs. In the example above, process 4 is required to check orders. Although the case study has not been given, it is reasonable to suppose that the process is looking at a customer’s order and checking that any order items correspond to ones that the company sell. In order to do this the process is reading data from the product data store.
  • Each process should have an output. If there is no output then there is no point in having that process.
  • Data stores should have at least one data flow reading from them and one data flow writing to them.
  • Data may flow from o External entity to process and vice-versa o Process to process o Process to data store and vice-versa
  • No logical order is implied by the choice of id for the process. Note: Drawing diagrams like this requires practice. You should not be unduly worried if your diagram does not look exactly like a colleague’s or a model answer. Systems analysis is very rarely done in isolation and you and your working partners and the user will come to some agreement about the final product. Data Flow Diagrams Levels Data flow diagrams usually occur in sets. The set consist of different levels. Level 0 (Context Diagram)
  • To start with a context diagram is drawn. This shows the people and/or systems that interact with the system under construction.. The system is represented by a box. In this DFD (level 0 DFD) no processes or data stores are shown. Level 1 DFD
  • Another diagram (level 1 DFD) is now developed which shows the processes taking place to convert the inputs shown in the context diagram to the outputs. In this DFD detail is given to show which processes are responsible for accepting the different inputs and Exercise 1 a) Represent, using the proper symbols, the following actions: i) An external entity ‘Supplier’ sending an invoice to a process ‘Deal with payment’. Assume the process takes place in the Accounts division. ii) A process called ‘Update membership’ writing customer details to a data store called ‘Customers’. Assume the process is performed by the Membership Secretary. iii) A process called ‘Order raw materials’ is performed by the Purchasing Clerk. To do this the clerk retrieves details from the ‘Supplier’ data store and sends the purchase order to the external entity ‘Supplier’. The clerk also stores the purchase order details in a data store ‘Purchase orders’. Exercise 2 This exercise relates to the case study ‘Correspondence Courses’ which is outlined below. Produce a) a context diagram b) a level 1 data flow diagram Case–study: Correspondence courses A college offers correspondence courses to students. Each course lasts 20 weeks and is based on a weekly study module and progress test. At the end of the course students sit an invigilated examination. The college Registrar deals with enquiries and applications, and students applying who have sufficient qualifications are asked to register by completing and submitting an application form.
  • many – to – many The above are called connectivities
  • Cardinality : minimum and maximum number of instances of Entity B that can (or must be) associated with each instance of entity A. Example: Connectivities Binary Relationships
  • One to Many (1:M) relationship
  • Should be the norm in any relational database design The 1: M relationship between PAINTER and PAINTING One to One (1:1) relationship
  • A single entity instance in one entity class is related to a single entity instance in another entity class
  • Should be rare in any database design
  • Could indicate that two entities actually belong in the same table The 1:1 Relationship Between MANAGER and DEPARTMENT Many to Many (M:N) relationships
  • A single entity instance in one entity class is related to a many entity instances in another entity class. The same case applies from the second entity
  • Must be avoided because they lead to data redundancies****.
  • Can be implemented by breaking it up to produce a set of 1:M relationships The M:N Relationship Between STUDENT and CLASS ERD Exercises Draw ERDs from the following scenarios Exercises 1
  1. a professor teaches zero, one or many classes and a class is taught by one professor
  2. a course may generate zero, one or many classes and a class comes from one course
  3. a class is held in one room but a room has many classes

Exercises 2

  1. an invoice is written by one sales rep but a sales rep writes many invoices
  2. a vendor sells many products but a product is bought from one vendor
  3. an invoice has one or many products and a product is found on zero, one or many invoices DECISION TABLES
  • Decision tables are used to lay out in tabular form all possible situations which a business decision may encounter and to specify which action to take in each of these situations.
  • It is a tabular form that presents a set of conditions and their corresponding actions Decision table format Condition stub (List of conditions) Condition entry ( Y (es), N (os) column entries) Action stub (List of actions) Action entry (Crosses ( Xs) marking actions taken) .
  • Condition Stubs
  • They describe the conditions or factors that will affect the decision or policy. They are listed in the upper section of the decision table.
  • Action Stubs
  • They describe, in the form of statements, the possible policy actions or decisions. They are listed in the lower section of the decision table.
  • Rules
  • They describe which actions are to be taken under a specific combination of conditions.
  • They are specified by first inserting different combinations of condition attribute values and then putting X's in the appropriate columns of the Action Entry section of the table. Completing the table
  • If the number of conditions identified is c, the number of possible rules is found by applying the formula; Number of rules = 2c.
  • Entries opposite the lowest condition should be completed, using Y and N alternately, until all the vertical rules have been dealt with.
  • Entries opposite the second lowest condition should be completed next using Ys and Ns in pairs until all rules have been dealt with.
  • Entries for the next condition are then completed using Ys and Ns in fours
  • This process continues, using twice the number of Ys and Ns each time until all conditions are completed.
  • Once entered, the rules are read vertically in each column and an X entered at the action that appropriately completes that rule. Actions which are mutually exclusive can be combined on a single line. Example 1 A student who passes the examinations and completes the course work and project satisfactorily is awarded a pass. If the course work and the project are unsatisfactory, the student is asked to resubmit the unsatisfactory work, as long as the exams have been passed. A student who fails the examinations is deemed to have failed the whole course unless both the course work and the project are satisfactory, in which case the student is allowed to re-sit the examinations. Solution: Reduced table 1 2 3 4 5 6 7 8 Exams passed? Y Y Y Y N N N N Course work Passed? Y Y N N Y Y N N Project passed? Y N Y N Y N Y N Pass X Resubmit Course work X X Re-sit X Fail X X X Resubmit Project X X Example 2 Candidates are accepted for employment if they pass the interview and their qualifications and reference are satisfactory. If they pass the interview and

CHAPTER 4: INFORMATION SYSTEMS IMPLEMENTATION

  • It is the handover from the development team to client.
  • Key activities that systems development team will need to carry out :
    • Testing of the system
    • Staff training
    • Preparation documentation to make it possible to use and service the system
    • File conversion – Convert manual data to computerized or make any necessary data format conversions
    • Installation of hardware and software
    • Selection of implementation strategy Testing Testing of the system is done to check whether there are any errors and whether the system performance meets expectations of the user. Types of tests: a) Unit /Module testing – Testing individual programs.
  • Done by the programming staff. b) System testing – Designed to ensure that the sub-systems work properly together, i.e. whether programs link properly. c) User Acceptance Testing – This is the testing of the system by the user department, after the system has passed the systems test. File conversion It is the process of converting existing file records into a format suitable for the new computerized system. The process of file conversion can be time consuming and tedious. Because of the volume of data that is likely will have to be copied onto the new files, the problem of input errors getting onto the new file is a serious one. Hence, once file creation is complete, extensive checking for accuracy is essential. Staff training It covers the retraining of current staff and the training of new personnel who will be recruited. Staff training has the purposes outlined below:-
  • Convince user staff that the system is efficient and effective
  • Enable staff carry out the tasks expected of them
  • To overcome their fears For training to be effective, it must be clear what it is trying to achieve. The training objective suggests ways of delivering that training such as:
  • Lectures
  • Films
  • Group discussion
  • Case studies
  • Role playing
  • Literature
  • Tutorials Documentation Three types of documentation are associated with implementation. a) Training Documents Used for providing detailed tuition in the operations of the proposed system. b) User Documentation
  • Reference documents rather than learning documents. b) Operations Documentation
  • It teaches the normal operating procedures and how to respond to errors. Implementation Strategies There are four possible strategies available. i) Parallel running
  • Old and new system are run simultaneously for an agreed period of time and results from the two systems are compared. Once the user has complete confidence in the new system, the old system is abandoned. Disadvantages
  • Large administrative overhead - double work
  • Time consuming Advantages
  • Security - fall back

ii) Pilot running Two possibilities exist. a) Retrospective parallel running - Uses historical data and the output produced is compared with the known results. b) Restricted entry data running – Involves a complete logical part of the whole system being chosen and run as a unit on the new system. If it works, the remaining parts are then transferred. iii) Direct changeover – Implement the new system completely and withdraw without any sort of parallel running at all. It demands thorough testing and well planned file creation and training strategies. Advantages

  • Quick
  • Cheap Disadvantages
  • Less secure. iv) Phased changeover Used in large organisations where the system is to be installed in several departments, sections or branches. SYSTEM REVIEW AND MAINTENANCE What is evaluated? The criteria evaluated include:
    • Accuracy of information
    • Timeliness and currency of information
    • User satisfaction
    • Attitudes towards the system
    • Project schedule compliance
    • Quality of programs
    • Net operating costs
    • Savings of system
    • Quality and completeness of system documentation, etc. SYSTEMS Maintenance It involves making any necessary changes to the system. Types of maintenance (a) Corrective Maintenance:
      • Fixing errors reported in the system such as software and hardware errors for example program errors that may not have been removed. (b) Perfective Maintenance: Involves adding new functions or new system requirements. These requirements are generated by software customers as their business changes with time. (c) Adaptive Maintenance: Involves changing the software to fit in a changing or a different environment in terms of hardware platform, operating system platform, etc.