You are on page 1of 18

1

CHAPTER 1: SYSTEM DEVELOPMENT INTRODUCTION Systems Development This refers to the establishment and use of good software engineering methods that leads to economically sound software that meets both user requirements and works efficiently. System development includes effective management of the system development process so that projects are delivered on time that is of high quality and within budget.

Why has software development evolved? There has been a widespread use of computers that has made organization increasingly depend on reliable software. There has been a need for control of the complexity of a large software programs Most of software projects take very long time thus exceeding the budget and some are hard to maintain thus end up performing poorly Building of new programs falls below the demand new programs

What is a system? - A system is simply a set of components that interact to accomplish or achieve a specific objective. These components or interrelated parts work together to achieve the common goals or objectives. It can consist of tools, suppliers, machines, procedures and people and requires orderly management. - A whole composed of parts in an orderly arrangement according to some scheme or plan The term component refers to physical parts [engines, car parts, etc], managerial steps [planning, organizing, directing and controlling], or a subsystem in a multi level structure. Components may be simple or complex, basic or advanced. They may be a single computer with a keyboard, memory and printer or a series of intelligent terminals linked to a mainframe. In either case, each part is part of the total system and has to do its share of work for the system to achieve the intended goal. They are many types of systems. However the two main types of systems are business systems and information systems. BUSINESS SYSTEMS What is a business system? A business system is aimed at accomplishing specific business goals, for instance a factory is a business system with the goal of manufacturing products. A business system is usually broken down into smaller components or subsystems. For instance, a in factory business system, subsystems can be:

2
Maintenance of the factory building Controlling the assembly of products that the organization sells Processing customer orders Billing customers Paying employees etc

However, the subsystems must be arranged in an orderly fashion so as to accomplish the companys goal or mission.

INFORMATION SYTEMS What is an information system? An information system is a set of components [interrelated and interdependent] that manages the data needed by a business system and hence is a subsystem of a business system. An information system exists only to serve the business system of which it is a component. It keeps records and maintains the various facts and figures needed to run the business. Information systems produce the information required by managers to make decisions about the firm and therefore must satisfy the information needs so that accurate and timely decisions can be made. An information system consists of data, people, procedures and machinery [including but not limited to computer] as its building blocks. For instance, an information system for the subsystem that bills customers would probably keep track of each customers name and address, recent sales to the customer, recent payments from the customer and the total amount the customer owes.

General Depiction of a System

Input Boundary

Interrelationship

Subsystem Output

Overall production system (super system)

Inventory Management System

Manufacturing System

Customer Maintenance Subsystem Customer Support System Catalogue Maintenance

Order Entry Subsystem

Order Fulfillment Subsystem

The system boundary and the automation boundary

Environment Surrounding the System

System boundary

Manual Part of the System

Automation Boundary

Automated Part of the System

5
Systems Thinking Being able to identify something as a system 1. Involves being able to identify subsystems 2. Identifying system characteristics and functions 3. Identifying where the boundaries are (or should be) 4. Identifying inputs and outputs to systems 5. Identifying relationships among subsystems An information system (IS) is a collection of interrelated components that collect, process, store and provide as output the information needed to complete business tasks (e.g. payroll system) - Is a system that uses resources (e.g. personnel, facilities equipments) to manage the data needed to accomplish the purposes of the business. An I S exists to serve the business objectives of which it is a sub system. The information introduced is used by managers to make decisions about the business. ADVANTAGES. 1. Gives the organization competitive advantages by providing timely and accurate information for decisions. 2. Improve performance by adding value to employee productivity. 3. Enhance customer satisfaction & increase profits.

An IS can be represented diagrammatically as having the following elements.

Data Input Processes Information

--Output --Reports Storage


Information Technology (IT) IT a term describing the combination of computer tech (H/W & S/W) with communication tech (Data & N/Works)

6
THE SYSTEMS DEVELOPMENT LIFE CYCLE

Like living systems, info systems have a life cycle, as shown below: Definition;

7-Operation & Support

1-Preliminary Investigation

6-Conversion & Implementation

2-Feasibility study

5 -Construction 3- Analysis

1. Preliminary investigation Identify need.(Also called the Planning phase.) It involves initial study and survey of the current system in order to find out what the problem is or what are the opportunities. The analyst must avoid gong into details of how to address the problem/ opportunity identification. The key deliverable/ report at this phase is a preliminary investigation report, that starts the scope & objectives. Things studied; Duplication of effort. Bottlenecks.

2. Feasibility study : Is the problem worth solving? This entails a thorough study of the present system. This phase is also called the

7
detailed investigation phase. Key question is, Will the benefits of solving the problem exceed the lost of building a new system ( cost/ benefit analysis) The objective of this phase is not to solve the problem but to acquire a sense of its scope and its impact on the organization, economically, operationally, time-wise etc. The end result is a document ( proposal) that contains among other things, what the system must do in order to meet user requirements ( FOR) The proposal also consists of the following; Statement of the problem. Summanry of findings & recommendation. Recommendations of conclusions. 3 things : - goal of project. - Bonds. - Resource limits.

After the proposal is reviewed by mgt it becomes a formal agreement that paves way for other phases. This is a crucial decision point in the life cycle. Many projects die at this point whereas the more promising ones continue through implementation 3. Analysis A detailed study of the various operations performed by the system and the relationships within & outside the system. Data is collected from available files, transactions etc. Models are also drawn representing the new system hence complete, the analyst has a firm understanding of what is to be done. The next step is how to solve the problem

4. Design In this phase business requirements and structure are transformed into design specs. It addresses the question of how technology would be used to develop a new system technical specifications to be used e.g. platform, programming languages and also addressed. The first step is to determine how the output will look like, secondly input (US) data is identified and finally storage (database) is designed to meet the requirements of the proposed O/Put. The operational places are handled through program construction and testing. Modern methods shows a trend towards merging the design & construction phases. Final document is a design specification.

8
5. Construction In this phase, the computer environment is prepared, programs required for new system are written & tested, training is conducted. The analyst supervises writing of user documentation like user manuals, ref guides, on-screen help facility etc. The O/Put of this stage is a coded & tested system ready for conversion.

1. Conversion & Implementation. Conversion means moving from old to new system. It can be gradual or abrupt depending on how the analyst prefers ( more later). Implementation is complete when the new system is fully like.

2. Operation & Support After installing the new system in performance evaluation and maintenance sets in; Like any system, theres an ageing process that required periodic maintenance. Maintenances is necessitated by, ( I ) Defects in the system when it was delivered is a missing mgmt, bugs etc. ( ii ) Changing business environment e.g. new product with diff. info. needs, introduction of new services charge etc. LIMITATIONS OF SDLC Traditional Approach. i) Resource intensive. Takes too much time gathering info and preparing voluminous specifications. ii) Inflexibility. Although it allows for revisions for incurrent requirements, volumes of docs are generated therefore increasing development time & costs, because of this it encourages freezing of specifications early in development process so that changes Cannot be made. iii) Unsuitable for decision oriented applications. Decision making is unstructured & fluid. Requirements constantly change. One may need to experiment with concrete systems before reaching a decision, this is not permitted in SDLC. iv ) Lack of continuity between the various stages of analysis & between analysis and design, so that ramps get lost in the process. v) It describes user requirements in terms of physical h/w that will implement the system rather than what the user wants the system to do.

9
vi) Analytical tools used ( e.g English narrative description, flow charts) ore vague & make it difficult for the user to grasp how the parts fit together.

TOOLS FOR STRUCTURED ANALYSIS As seen earlier, structured analysis views information systems in two ways, i. ii. As Data i.e. information that the system records. As processing i.e. what the system does with this data.

The most common tool for describing these 2 aspects of systems are data flow diagrams ( DFDs) for processing & entity models ( Logical data structures for data). Neither of these techniques, however describe precisely the order in which the system processes data. Data Flow Diagrams (DFDs) They show the flow of data though a system and diagram the processes that change data into information.

DFD Symbols
1. Entity business, person that can send data or receive data from the system.

2. Data Store - where data is deposited, or stored.

3. Data Flow Shows movement of data between other components.

4. Process - Shows what is done to data.

Example A purchasing department receives a purchase requisition from the stores. The requisition is checked, and an invalid requisition is returned to the stores for correction. An order is made out

10
using a file of approved suppliers, and sent to the appropriate supplier. A copy order is filed. The requisition is filed. When the goods are received, the invoice is compared with the filed order copy, and an invalid invoice is returned to the supplier. Valid invoices are passed to the accounts department for payment and fulfilled orders are filed.

Draw a DFD for the above.

Decision Tree It is a diagram used to analyse decisions that should be made given certain conditions. A decision tree will describe an action to be taken if certain conditions are fulfilled.

With trees, we describe the sequence of events and the final outcomes.

Example: A companys customers are either local or foreign, a company customer or an individual person, known or unknown to the companys credit controller, and either able or not able to provide an acceptable reference.

Credit is allowed to some customers depending on the above factors as follows: Local companies known to the credit controller are allowed credit of up to $1,000, if unknown $400. Foreign companies with an acceptable reference get $700, otherwise $300. Individuals who are local customers and provide and an acceptable reference get $100, otherwise no credit. Foreign individuals are allowed $50 on providing an acceptable reference, otherwise nothing.

11
Unified Modeling Language UML, a system is represented using five different views that describe the system from distinctly different perspectives. The views present in UML are: A User Model View; This view represents the system [or product] from the users perspective. B Structural Model View: Data and functionality are viewed from inside the system. That is, static structure [classes, objects and relationships] is modeled. C Bheavioral Model View: This part of the analysis model represents the dynamic or behavioral aspects of the system. It also depicts the interactions or collaborations elements described in the user model and structural model

between various structural views. D

Implementation Model View: The structural and behavioral aspects of the system are represented as they are to be built.

Environment Model View: The structural and behavioral aspects of the environment in which the system is to be implemented are represented.

In general, UML analysis modeling focuses on the user model and structural model and structural model views of the system. UML design modeling addresses the behavioral model, implementation model and environmental model views. Decision Table A decision table is a two-dimensional matrix with one horizontal row for each condition and each action and one vertical column for each combination of values and resulting actions

Condition stub (List of conditions)

Condition entry (Y(es), entries) N(os) column

Action stub (List of actions)

Action entry (Crosses (Xs) taken) marking actions

The number of columns required in the condition entry is calculated using the formula 2n, where n is the number of conditions. Example The delivery charge to be added to customers invoices is determined as follows:

12
If the order value is at least 100,000 and the delivery distance is within 1 km, the delivery charge is 1,000. If the distance is more than 1 km, the delivery charge is 1,500. If the order value is less than 100,000 and the delivery distance is within 1 km, the deliver y distance is 2,000, else 3,000. Draw a decision table from the above.

Solution There are 2 conditions; Order value equal or greater than 100,000? Delivery distance within 1 km?

And 4 actions; Charge 1,000 Charge 1,500 Charge 2,000 Charge 3,000
n The number of rules or columns is 2 (n - number of conditions is 2).

2 2 = 4.

The table looks as follows: Order value > = 100,000? Y Y N N Y Y N

Delivery distance within 1 Y km? Charge 1,000 Charge 1,500 Charge 2,000 Charge 3,000 X

X X X

Example. When the qty ordered for a particular item, doesnt exceed the order limit and the credit approval is ok, move the qty ordered amount to the qty shipped field then go to a table to prepare a shipment release. Of course there must a sufficient qty on land to fill the order. When the qty ordered exceeds the order limit, go to a table named order reject. Do the same if the credit approval is not ok. Occasionally, the qty ordered doesnt exceed the order limit, credit approval is ok, but theres insufficient qty on hand to fill the order in this case, go to a table named back order.

13
Construct a DT from the above deser. Solution. 1. List the conditions a) Qty ordered < order limit. b) Credit approval = Ok c) Qty on hand > Qty ordered.

2. Actions. a) Move qty ordered to qty shipped. b) Prepare shipment release. c) Order reject. d) Go to back order.

Read Decision Tree from handout. Qty < order limit Credit approval ok. Qty on hand >twy.or.direct Y Y N N Y Y Y Y N 2 3=8

Y More qty o to qty shipped. Prepare shipment release order reject go to back order X X

Yeates Pg 240: Loan Company. A Loan company will offer loans to applicants based on their age & employment

history.Those below 25 are required to supply details of a suitable guarantor who can provide security for the loan. An interest rate of 14% is charged, & the loan is offered for max of 5 yrs. If the appli 25 or above, they do not need a guarantor provided they can provide employers ref & ref from their bank. These applicants are changed into rate of 12% & the loan can be extended to 10 yrs. If they cant provide a bank ref, but can provide a guaranter, theyll still get the loan at 12% but it must be repaid in 5 years.

14
Those under 25 & who supply a bana ref & employers ref & a guarantor will be allowed a loan at 12% p.a for upto 10 yrs. All other applications are rejected. Construct a DT from the above description, Conditions a) Below 25 yrs b) 25 & Above Actions.

Structured English This method uses narrative statements to describe a procedure. Analysts are required to identify the conditions that occur in a process, decisions that must be made when these conditions occur and alternatives actions to take.

Developing structured statements Structured English uses three basic types of statements to describe a process: Sequence structures

A sequence structure is a single step or action included in a process. For example, in an Accounts Payable processing system, the following sequence of five steps would apply; 1. Accept invoice for processing 2. Prepare payment voucher using invoice 3. Revise account balance sue using payment voucher 4. Write supplier cheques 5. Mail cheque to supplier The steps are carried out in the order in which they occur. Decision structures

Decision structures occur when two or more actions can be taken, depending on the value for a specific condition. Through the use of IF/THEN/ELSE phrases, the structure points out alternatives in the decision process quite clearly. e.g. IF Order Value Over Ksh. 10000 THEN Process Order ELSE Reject Order ENDIF Iteration structures

15
In routine operating activities, it is common to find that certain activities are repeated while a condition exists or until a condition occurs. Iteration instructions permit analysts to describe these cases. e.g. REPEAT Read Order Amount Calculate New Balance = Order Amount + Old Balance IF New Balance > Credit Limit THEN IF Customer has Pending Invoice THEN Reject Order ELSE Investigate Customer Account END IF ELSE IF Customer has Pending Invoice THEN Process Order Send Customer Reminder letter ELSE Process Order without query END IF END IF UNTIL All orders are processed DATA DICTIONARY ( DD) A data dictionary is a structured repository of data where all pieces of data about a system are recorded. It provides a detailed view of data and how that data is used during processing in its simplest form DD will hold bank information about each date item e.g size, validation miles etc.

A completely compiled DD should show the following; 1. Components of DFDs i.e flows, processes & data stores. 2. Records information about entities description. 3. Records information about tables, fields & data types.

16

CASE TOOLS (Computer Aided System) CASE is a collection of tools used to support the software development process. They support a wide variety of activities as identified in SDLC. The purpose of case is; To make it simple to enact a single design philosophy with the goal to speed up durpt process. Automatic nundane/ routine tasks.

PROS & CONS OF EACH TOOL 1. DFD. Has a high ability to represent data flows therefore very suitable for use at high or low level analysis. It also provides good system documentation. However the tool only weakly shows input & output details without describing the How

2. DD Valuable documentation tool for reference purpose. It improves communication through establishing consistent defn of various elements, terms & proc. An important feature in building a dapliase disk. Doesnt provide functional deposits. Many non-technical users may not find it useful.

3. SE Best used when problem requires sequences of actions with decisions. Best at modeling logic at elementary levels. Easy to translate unto code using an program. language.

DISADVANTAGES May not be appropriate when representing mathematical notations. Many become confusing with increasing no of conditions.

4. D-TABLES & TREES Used to verify logic of complex decisions resulting in a limited no. of actions.

17
Suitable when dealing with complex branching routines e.g calculating discounts, commissions or inventory control procedures. DISADVANTAGES. DTs are difficult interpret. Useful only when therere limited no of conditions.

DESIGN BRIEF OVERVIEW The primary objective of design process is to design a system that delivers the fns required by the client to support the business objective of the organization. A good designer must be; - Flexible i.e future requirements can be incorporated with much difficulty. - Portable i.e should be transferable from one machine environment. To another with minimum effort. - Easy to use i.e user friendly & straight forward to operate. Reliable & secure i.e safeguards against human error or machine failure and protects

confidentiality of data. - Cost effective i.e. one that delivers all the above in the most cost effective way.

The process of design includes the following; 1. Controls & Procedures. ( I ) Administrative & mgt controls i.e wholl do what in the IS/IT F/ work. (ii) Access control i.e prevention of unauthorized access, end user restrictions to data etc. (iii) Input control i.e to ensure the accurancy completeness & reasonable of data entering the system ( validatin) (iv) Output control i.e. ensure that output is complete & gets to the right people in an organized way.

2. Interface design. ( I ) Out put design i.e determining the content of each show ( ref.DFD) a DD may be helpful in this. Determining alternative ways of presenting the info. i.e Printing or displaying on screen (ii ) Input design ensures that data processed by the system is collected and entered in the

system efficiently & with minimum errors. Choosing the appropriate input devices. Design of the input screens if KB input is used.

( iii ) Dialogue design i.e concerned with user friendliness of the system.

18
Ambiguities & difficulties in the dialogue cause problems in training. Use of style guides helps to create consistency in the fns & appearance of the system.

3. Database Design I. E-R Model i.e entities, relationship & attributes. II. Relational Sciema i.e tables, fields. III. Physical storage media i.e selecting a DBMS, Creating the physical files.

4. Data Communications Design of n/w infrastructure to support the new is. Factors to consider; Topology ( stanm ping, bust etc) or WAN. Standards ( OSI or Tep/IP etc.

IMPLEMENTATION. There are the activities that begin when design has been completed and ends when the development team withdraws from the project. It involves cooking, testing & changeover.

Coding Two ways of producing code; I. Employing programmers to code, test & debug each module usually very costly. II. Using code generators; A suite of programs that matches input to an appropriate code template & from these, produces modules of code e.g, VB, Oracle etc.

Testing Testing is a process of trying to identify errors or anomalies. To do this successfully, each conditions & combination of conditions has to be tested. Testing is done in phases as shown. Feasibility Acceptance Test

Analysis

System Test

Design

Integration Test

Design specs

Unit Test

Programming phase

You might also like