System Development Process
Prof. Sujata Rao
2
OverviewSystems development life cycle (SDLC)
– Provides overall framework for managing system development process
Two main approaches to SDLC– Traditional approach: structured systems
development and information engineering– Object-oriented approach: object technologies
requires different approach to analysis, design, and programming
All projects use some variation of SDLC
3
Systems Development Life Cycle (SDLC)
Systems development project– Planned undertaking with fixed beginning and end– Produces desired result or product – Can be a large job of thousands of hours of effort
or a small one month projectSuccessful development project:
– Provides a detailed plan to follow– Organized, methodical sequence of tasks and
activities– Produces reliable, robust, and efficient system
4
Phases of the S D L C Project planning: initiate, ensure feasibility, plan
schedule, obtain approval for projectAnalysis: understand business needs and
processing requirementsDesign: define solution system based on
requirements and analysis decisionsImplementation: construction, testing, user
training, and installation of new systemSupport: keep system running and improve
5
Information System Development Phases
6
The waterfall approach to the SDLC
7
Overlap of Systems Development Activities
8
Iterations across life cycle phases
S D L C Initiating a Development Request1. Planning2. Feasibility Study3. Specifying System /User Requirements4. System Analysis & Design5. System Implementation6. Testing 7. Conversion8. Operation & evalation9. Documentation
S D L C 1. Planning
1. Corporate Goals2. Available Resources3. Organisational Constraints4. Technological trends5. Competitive Environment
2. Feasibility Study1. Economic feasibility
• Estimate cost against proposed soln., DC, Ind. Cost, CBA2. Financial Feasibility
• To attain capital required for the project, to determine Fin. feasibility
3. Organisational Feasibility• Resource & Available Support System, Reaction to change
4. Technical Feasibility
S D L C 5. operational feasibility
If proposed soln can fit in existing operation , Tech & Eco. Feasibility may be possible but not procedural since difficult functionally
6. Other Feasibility Consideration Consider Internal & External constraints
3. Specifying System /User Requirements1. Reports to be generated2. Process to be performed3. Inputs needed4. Resources Required
SDLC contd…
4. System Analysis & Design– Output Design– Input Design– File Design– Process Design
5. System Implementation – Database Organisation– Preperation Of Documents & manuals– System orientation & Training
S D L C contd… 6. Testing
– Unit testing– Integration Testing – System Testing– Volume Testing– Acceptance Testing
7. Conversion– Parallel– Direct– Modular or Prototype Conversion– Phased Conversion
S D L C
8. Operation & Evaluation– Management : getting the activity completed.– Efficiency: the relationship with input &
output to minimise resource cost– Effectiveness: mission path to achieve the
goal
9. Documentation
15
Required Skills of the Systems Analyst
16
The Analyst as a Business Problem Solver
Has computer technology knowledge and programming expertise
Understands business problems
Uses logical methods for solving problems
Has fundamental curiosity
Wants to make things better
Is more of a business problem solver than technical programmer
17
Analyst’s Approach to Problem Solving
Verify that the benefits of solving the problem outweigh the costs
Research and understand the problem
Define the requirements for solving the problem
Develop a set of possible solutions (alternatives)
Define the details of the chosen solution
Monitor to make sure that you obtain the desired results
Decide which solution is best, and make a recommendation
Implement the solution
18
Required Skills of the Systems Analyst
An analyst should have fundamental technology knowledge of:– Computers / peripheral devices (hardware)– Communication networks and connectivity– Database and database management systems
(DBMS)– Programming languages (for example: VB.NET
or Java)– Operating systems and utilities
19
Technical Knowledge and Skills
Analyst uses tools: – Software productivity packages (MS Office)– Integrated development environments (IDEs) for
programming languages– CASE tools / coding, testing, and documentation
support packagesAnalyst understands SDLC phase techniques:
– Project planning– Systems analysis, systems design– Construction, implementation, systems support
20
People Knowledge and Skills
Interpersonal and communication skills are crucial to:– Obtaining information– Motivating people– Getting cooperation
– Understanding the complexity and workings of an organization in order to provide necessary support
21
Integrity and Ethics Analyst has access to confidential
information such as salary, an organization’s planned projects, security systems, etc.
– Must keep information private
– Any impropriety can ruin an analyst’s career
– Analyst plans security in systems to protect confidential information
22
The Environment Surrounding the Analyst
Types of Technology Encountered
– Desktop
– Networked desktops
– Client-server
– Mainframe
– Internet, intranet, and extranet
– Wireless, PDAs, Cell Phones (mobile workers)