Modern Systems Analysis & Design
Modern Systems Analysis & Design
Modern Systems Analysis & Design
Systems
Group of related parts that function as a Unit
collection of people, machines & methods to accomplish specific objectives
In Computer parlance..
Collection of hardware, software, data
Software Systems
System Software
Performs basic functions to establish and maintain operating environment (Co-ordinates & controls the running of the computer) Works with the computer and not with the end-user Operating systems like DOS, UNIX, OS-400 etc. which perform functions like memory management, secondary storage management Device management drivers like printer drivers, mouse drivers, modem s/w etc. Utilities and editors like file compression, defragmentation etc. Language compilers like BASIC, C, COBOL, FORTRAN Software packages like xBase,
Structure of systems
Data. Data.
Hardware
Hardware
How it is
How it should be
Implementation / Commissioning
Feasibility Study
Feasibility Study
To set priority of Areas / departments to computerise vis-vis business focus.. TBA vs. Fixed Assets Accounting To finalise overall direction of the Computerisation..
Centralised vs. decentralised, Web-enabled or non-web-enabled
To gather information about various aspects of computerisation e.g. hardware, software, information about about vendors etc. To finalise Terms-of-reference / time and cost estimates A Feasibility Study Report is the outcome of this phase
Make or Buy
Make..In-House
A team of Project Leader, systems analysts, programmers etc. will be required (may be difficult) Resulting software would cover most of the user needs with proper integration within the modules.(Advantage) Complete control and ownership of the resulting software. (Advantage) Less technically and professionally competent software than developed by outsourced vendor whose main business is software development. (Disadvantage) Integration with other bought out systems may be difficult e.g. TBAs linkage with voice-mail recognition s/w Due to high employee turn over in IT field, difficulty in retaining IT staff. This could pose problems for maintaining software and developing new modules. (Disadvantage) The time frame required to form such team and developing software may be more. (Disadvantage) Due to rapid technological advancement in computer field, the IT staff will have to undergo continuous training in new areas and technologies.
Make or Buy
Make..Outsourcing
Expert team having state-of-the-art knowledge would be involved in the development (Advantage) Deliverables by outsourced vendor must be clearly specified. Rigorous acceptance testing is necessary.(May be difficult) If more than one vendor, then integration amongst vendors is a key factor.(May be difficult) Likelihood of vendor/s misusing the source code elsewhere (Disadvantage) .. IPR issues are to be looked into and involves lot of legal documentation. For replication of the software fresh licensing issues & cost may not be involved (Advantage) Senior management involvement will be more
Make or Buy
Buy.. Off the shelf
No plug-and-play.. Customisation is necessary. Some product deficiencies, if any, will have to be accepted.(Disadvantage) Market research and comparative analysis of different vendors and their products will have to carried out. Vendors specifications need to be brought down to a common scalable platform. (May be difficult). Vendors capability of providing continuous support must be ensured. Software escrow agreement must be entered into and all the legal documents need to be reviewed by legal counsel. Total dependability on the vendor (Disadvantage) Senior management involvement will be more
Many-a-times Feasibility is merged into this phase and therefore SRS must be carried out irrespective of Make or Buy decision. A Systems Requirements Specifications Report is the outcome of this phase
Systems Design
Systems Design
Organisation of data (temp files, report files) / programs(Source code, executables, DLLs) on computer is designed Business rules / requirements of validation of data are specified and designed as per the analysis done Various types of charts are prepared such as Systems Flow Chart (Function wise), Work flow Charts (Actor wise), Data Flow Diagrams, Decision tables(Business Rules) etc. Design of Database.. E.g. Single / Multiple database, Tables (Normalisation), relations between tables, Primary / Foreign keys User interfaces (Screens / Views) / report formats etc are designed Controls start getting built-up..Authority / security requirements are specified / designed Users involvement in this phase is minimal but necessary Plan to convert legacy system to new system
Types of Systems
Operational Information Systems - OIS
e.g. stand-alone and small systems where individual functions or their integration is established
Expert Systems - ES
for providing expert advise based on pre-captured knowledgebase
CASE TOOLS
Computer Aided Software Engineering tools Refers to the use of s/w packages to aid in the development of all phases of Information Systems I.e. SDLC Aids designers / programmers to prepare business models and various flow diagrams Aids in designing and providing relationships amongst data entities Changes introduced in one CASE diagram will automatically update all relevant diagrams Helps in documentation Use of CASE tools by developers shall give primary comfort to IS auditors in respect of standard and consistent methodology followed Some of the CASE TOOLs : Rational Rose, Systems Architect, Visual UML etc.
Client-Server Computing
All client access points should be identified Application code and data may not be located on a single machine Mixed platforms (h/w, s/w, networking) may lead to compatibility problems and confusion Security issues need to be considered for multiple process layers in hardware, operating systems, telecommunication systems, database systems etc.
Version control and program change control may become complex Testing of system is a complex process
Programming / Construction
Programming / Construction
The Systems Design is converted into Source Programs (Source Code - human readable form). Source Code is then compiled into Executable Code (Machine readable form) Executable code resides on secondary storage and loaded into memory when executed Executable cannot be modified. If source code is unavailable, modification to software is not possible. Programming documentation needs to be done
Two Methodologies
Procedural Programming - past trend e.g. COBOL, BASIC, Foxpro - 3 GL Object Oriented Programming(OOPs) - current trend Visual versions of BASIC, Foxpro, SQL, C++, JAVA etc. - 4 GL
OOPs
Addition Object Call Accept object Call summation object Call display object Features Re-usability of objects Modular(not procedure wise) development Unrestricted data types Inheritance, encapsulation, polymorphism
be
Limit Check
Data should not exceed a pre-determined number or range
Validity check
Checking data validity in accordance with pre-determined criteria..e.g. Male / Female check for Sex code
Table look-ups
Input data is checked against master data already stored..e.g. Account number entered gives details of account holder from master data
Testing
Testing
Unit testing ( testing)
Individual function / object / program is tested Normally carried out by programmers / QC
Integration testing
Linkages between all related programs is tested for interfaces and overall functioning Normally carried out by senior programmers / QC
Regression testing
Any changes in coding needs to be tested again in isolation as well as with all linkages
Acceptance testing
Done by users, QC, IS auditors
Approaches to Testing
Black-box testing
Internal logic of programs is not examined.. Product is examined and not the process
White-box testing
Internal logic of programs is examined.. Process is examined and not the product
Top-down testing
Top-level modules are tested first and then explored further into lower level modules / programs
Bottom-up testing
Lower level modules / programs are tested first and graduated to higher level modules / programs
SDLC Methodologies
Water-fall model (Linear Sequential Model)
Analysis >> Design >> Coding >> Testing
Spiral Model
Analysis >> Design >> Coding >> Testing >> Review >>
Prototyping Model
Uses 4GL programming languages which enable faster development
Controlled trial & error method Emphasis is on screens and reports acceptable to users Users are misled into believing that the complete system is ready (processing, transaction volumes, security & controls, back-up & recovery etc will have to be built later) Likelihood of resulting system not having proper controls Seldom documented / approved because of the fast development Significant cost & time saving is possible
SDLC Methodologies
Rapid Application Development Model (RAD)
Strategically important systems are developed faster Well-defined methodology Reduction in development cost / time while maintaining quality Small well-trained development teams are used Integrated RAD tools(e.g. VB, Magic) are required Central repository of objects / functions is developed Rigid limits on development time frames are set
SDLC Methodologies
Joint Application Development Model (JAD)
Introduced by IBM in late 70s users , managers and analsysts/programmers, scribe, IS staff work together usually requires a sponsor JAD session leader is required disadvantages similar to those of group meetings
Feasibility Study
To set priority of Areas / departments to computerise vis-vis business focus.. TBA vs. Fixed Assets Accounting To finalise overall direction of the Computerisation..
Centralised vs. decentralised, Web-enabled or non-web-enabled
To gather information about various aspects of computerisation e.g. hardware, software, information about about vendors etc. To finalise Terms-of-reference / time and cost estimates A Feasibility Study Report is the outcome of this phase
Many-a-times Feasibility is merged into this phase and therefore SRS must be carried out irrespective of Make or Buy decision. A Systems Requirements Specifications Report is the outcome of this phase
SDLC
SRS Analysis
Maintenance
Commercial Systems
Accounting Systems
Creating & processing documents Book keeping / filing / register updating Posting in subsidiary and general ledger Reconciliation of ledger with all sub-ledgers Preparation of trial balance Preparing financial statements such as P & L account, balance sheet, income statement, cash-flow statement Analysis of authorities / roles / responsibilities of users at various levels Analysis of locations of computers
Operational Systems
Production / Project planning / Scheduling etc. 3 Ms Inventory / raw material / WIP / finished goods .. JITs etc. Purchase systems
Commercial Systems
Human Resource Systems
Personnel Administration Payroll and associated processing Employee performance tracking
Marketing Systems
Customer Billing Accounts receivables Supply chain management Customer service management
Banking Systems Portfolio management systems / Shares accounting systems School / College / results processing systems Many more.
Types of Files
Five generally observed types..these are logical types and not physical
Transaction files Master Files
Master files..can also contain transaction data Reference or Parameter files
Reports
Printed Reports.. Can be on plain or pre-printed stationery Display Reports Queries processing leading to display or printed reports
Systems Analysis
Systems Analysis involves
Study of existing system Study the product and information(data) flows Formulate strategic requirements for the new system Evaluate the present system (mainly reassessment) ---------------------------------------------------------------------------------------------
Business Objectives
Find out, decompose and document..obtain from stakeholders
Project Management Study throughobservation, interviews, meetings, reading, presentation, collecting documents etc. Making use of computer based tools and techniques
Plan your interview Do your homework .. Clients brochures, web-sites, balance sheet Observe necessary protocols Know your subject very well
Convey your subject/s that this is an unstructured interview Be very informal / casual and do not interrogate your subject too much You may not be specific about a topic Make notes of discussion points in brief Convey your subject/s that this is a structured interview Ask very specific questions Take detailed notes.. If required take a steno or record interview with permission After the interview, circulate minutes and take formal / informal approval
Unstructured interviews
Systems Design
Organisation of data (temp files, report files) / programs(Source code, executables, DLLs) on computer is designed Business rules / requirements of validation of data are specified and designed as per the analysis done Various types of charts are prepared such as Systems Flow Chart (Function wise), Work flow Charts (Actor wise), Data Flow Diagrams, Decision tables(Business Rules) etc. Design of Database.. E.g. Single / Multiple database, Tables (Normalisation), relations between tables, Primary / Foreign keys User interfaces (Screens / Views) / report formats etc are designed Controls start getting built-up..Authority / security requirements are specified / designed Users involvement in this phase is minimal but necessary Plan to convert legacy system to new system
DFD is a Structured Analysis Technique Out of Requirements Determination, Requirements Structuring and Alternative generation and selction.. DFD is for requirements structuring Context data flow diagram DFDs of current physical system DFDs of current logical system DFDs of proposed logical system DFDs of proposed physical system
Data store is data at rest e.g. a file folder, computer file Process is work performed to transform, store or distribute data Source / Sink is origin and / or destination of the data
We do not consider..
Interactions between source & sinks What a source or sink does with the data How to control or redesign source or sink How to provide direct access to source and sinks
Process
Data Store
Source/Sink
Data Flow
DeMarco & Yourdon symbols Gane & Sarson symbols
Context Diagram
Kitchen Customer Customer Order 0 Food Order
Rules of DFD
A C D E F
Source Sink
Rules of DFD
G
A A A
H
A A
K L
B A C
Update Retrieval
J
A
Accounting Department
Credit Data
D1
Customer Master
Deposit Data
Bank
Credit Data
D1
Customer Master
Deposit Data
Bank
Level-0 diagram
Customer Customer Order Receipt 2.0
Update Goods Sold File
Kitchen 1.0
Receive and Transform Customer Food Order Inventory Data Formatted Goods Sold Data
D1
Inventory File
4.0
D2Goods
Sold File
Restaurant Manager
Management Reports