Unit3 Information System Development Complied by Dr Vanita
Unit-3 Information System Development Complied by Dr. Vanita Joshi Unit-3 Information System Development 1
Content �System Development Life Cycle (SDLC) o Waterfall Model �Prototyping �Rapid Application Development (RAD) �Joint Application Design (JAD) �Agile System Development Methods o SCRUM Unit-3 Information System Development 2
System Development Life Cycle (SDLC) � The systems development life cycle (SDLC) is a conceptual model used in project management that describes the stages involved in an information system development project, from an initial feasibility study through maintenance of the completed application. � The term SDLC is frequently used synonymously with the waterfall or traditional approach for developing information systems. ◦ “The Waterfall approach” �This approach essentially refers to a linear sequence of stages to develop a system from planning to analysis to design to implementation and finally to maintenance and post-implementation. �Stages are followed from beginning to end. �Revisiting prior stages is not permitted. Unit-3 Information System Development 3
Approaches to Systems Development Which is better, the Process Approach or the Data Approach? Process Approach: “Let’s look at all of our processes. Processes take precedence over data. Get the processes correct first. Then we’ll address what data is important. ” Data Approach: “Forget the processes, let’s look at the data. Data comes first. Get the data correct, then see how the processes actually use the data. ” Unit-3 Information System Development 4
Systems Development Life Cycle �This text highlights 6 distinct phases: ◦ Preliminary Investigation / Plan ◦ Analysis ◦ Design ◦ Development ◦ Implementation ◦ Maintenance Unit-3 Information System Development 5
Stages of the SDLC/ Waterfall Model Unit-3 Information System Development 6
When to use Waterfall Model? �Requirements are very well known �Product definition is stable �Technology is understood �New version of an existing product �Porting an existing product to a new platform Unit-3 Information System Development 7
Phase 1: Preliminary Investigation (Feasibility Study) �Determine the organization’s objective ü Read internal/external documents ü Interview users/executives �Nature and scope of problems �Propose alternative solutions ü Leave the system as it is ü Modify the existing system ü Develop a new system �Describe costs/benefits of each solution �Submit a preliminary plan with recommendation Unit-3 Information System Development 8
Phase 1: Preliminary Investigation (Feasibility Study) Contd. . �Benefits ◦ Tangible Cost savings Profitability/Productivity ◦ Intangible Employer satisfaction �BPR (Business Process Reengineering) o Independent of IT o Processes are identified for bottlenecks, removed, then IT is applied. Unit-3 Information System Development 9
Phase 2: Systems Analysis �Gather data Documents, interviews, questionnaires, observations, sampling �Analyze data ERD, DFDs, Data Dictionary, System Flowcharts, Connectivity Diagrams, Grid Charts, Decision Tables, etc. �Write a report Written report �Approval from the Manager Unit-3 Information System Development 10
Tools used in Analysis Phase What is an Entity-Relationship Diagram Ø Tool that graphically shows connections between entities in system. (ERD)? Unit-3 Information System Development 11
Analysis Phase What is a Data Flow Diagram (DFD)? Ø Tool that graphically shows flow of data in system. Unit-3 Information System Development 12
Analysis Phase What is a Project Dictionary? � Contains all the documentation and deliverables of project � Helps keep track of huge amount of details in system � Variety of techniques to enter items in project dictionary Structured English Decision tables Decision trees Data dictionary Unit-3 Information System Development 13
Structured English What is Structured English? Ø Used to explain details of process in project dictionary Unit-3 Information System Development 14
Decision Tables What is a Decision Table? Ø Lists variety of conditions and actions that correspond to each condition Unit-3 Information System Development 15
Decision Trees What is a Decision Tree? Ø Shows conditions and actions graphically Unit-3 Information System Development 16
Data Dictionary What is a Data Dictionary? Ø Stores name, description, and other details about each data item. Unit-3 Information System Development 17
Phase 3: Systems Design � Preliminary � Design Describes the functional capabilities of the system using CASE tools, PM Software etc. � Design Type ◦ Logical Design �Concentrates on business aspects of the system ◦ Physical Design �Technical specifications � Detailed Design Output Requirements � Input Requirements � Storage Requirements � Processing/Network Requirements System Backup � Unit-3 Information System Development 18
Phase 4: System Development �Substantial expenditures of money / time �Acquire software �Acquire hardware �Test the System Unit Test Systems test Verifies each individual program works by itself Verifies all programs in application work together Integration Test Verifies application works with other applications Unit-3 Information System Development 19
Phase 5: System Implementation To make system not just workable but successful �Software Conversion/Data conversion 4 Major strategies � Direct Implementation � Parallel Implementation � Phased Implementation � Pilot Implementation �Documentation �Training Unit-3 Information System Development 20
Phase 6: System Maintenance is a never ending phase which includes � Adjustments/improvements � System monitoring � Auditing- independent auditor’s review � Evaluation- outside system analyst Once the system is old enough SDLC is started all over again. Unit-3 Information System Development 21
Deliverables of SDLC Approved Feasibility Study Preliminary Investigation System Analysis Problem Specifications System Design Specifications System Development Begin building new system Coded and Tested System Implementation System converted Users trained System Maintenance Operational System Documentation completed Unit-3 Information System Development 22
SDLC - Reasons for Failure Lack of communication between people (Incomplete specifications) ü Continuing the old system ü Failure of parts of system not fitting ü Lack of management Support ü Technological Incompetence ü Changes in technology in the middle ü Lack of user involvement/training/support ü Scope too broad or too narrow ü Lack of needed skills ü No control/no framework ü Too time-consuming ü Unit-3 Information System Development 23
Alternative Approaches to System Development �Prototyping �Rapid Application Development (RAD) �Joint Application Design (JAD) �Agile Manifesto o SCRUM Unit-3 Information System Development 24
Prototyping �A prototype is made first and based on it final product is developed. �A prototype is a model or a program which is not based on strict planning, but is an early approximation of the final product or software system. � A prototype acts as a sample to test the process. From this sample we learn and try to build a better final product. Unit-3 Information System Development 25
When to use Prototype Model? �Whenever the customer not clears about the requirement in this situation we generally go for prototype model. �If it is complex project then prototype model helps in getting clear understanding of the requirement. �Prototyping make sure that the customer constantly work with the system and provide a feedback about the system. Unit-3 Information System Development 26
Advantages of Prototype Model � Customer satisfaction exists, because customer can feel the product at very early stage. � If there is missing functionality can be identified easily � There will be less chance of software rejection. � Requirement changes are allowed. � Due to customer approval we can find the errors at early stage. � Customer involvement will be there in the development where its leads to better solutions for any confusion / complexity / difficult functions � The developed prototype can be re-used by developer and test engineer. Unit-3 Information System Development 27
Disadvantages of Prototype Model �There are no parallel deliverables �It is a time consuming if customer ask for changes in prototype �This methodology may increase the system complexity as scope of the system may expand beyond original plans. �The invested effort in the preparation of prototypes may be too much if not properly monitored. �Customer may get confused in the prototypes and real systems. Unit-3 Information System Development 28
Rapid Application Development (RAD) �Rapid application development (RAD) is an object-oriented approach to systems development that includes a method of development as Phases well asofsoftware tools. RAD Unit-3 Information System Development 29
Rapid Application Development (RAD) Contd. . RAD proposes that products can be developed faster and of higher quality by: �Using workshops or focus groups to gather requirements. �Prototyping and user testing of designs. �Re-using software components. �Following a schedule that defers design improvements to the next product version. �Keeping review meetings and other team communication informal. Unit-3 Information System Development 30
Joint Application Design (JAD) �Joint Application Design (JAD) ◦ Users, Managers and Analysts work together for several days ◦ System requirements are reviewed ◦ Structured meetings JAD focuses on the business problem rather than technical details. It is most applicable to the development of business systems, but it can be used successfully for systems software. Unit-3 Information System Development 31
Agile Software Development Methodology �Dissatisfaction with the overheads involved in software design methods of the 1980 s and 1990 s led to the creation of agile methods. These methods: ◦ Focus on the code rather than the design ◦ Are based on an iterative approach to software development ◦ Are intended to deliver working software quickly and evolve this quickly to meet changing requirements. �The aim of agile methods is to reduce overheads in the software process (e. g. by limiting documentation) and to be able to respond quickly to changing requirements without Unit-3 Information System Development 32
Agile (Contd. . ) �Agile software development is a conceptual framework for undertaking software engineering projects. There a number of agile software development methodologies e. g. Crystal Methods, Extreme Programming (XP), Dynamic Systems Development Model (DSDM), and Scrum. Unit-3 Information System Development 33
The Principles of Agile Methods Principle Description Customer involvement Customers should be closely involved throughout the development process. Their role is provide and prioritize new system requirements and to evaluate the iterations of the system. Incremental delivery The software is developed in increments with the customer specifying the requirements to be included in each increment. People not process The skills of the development team should be recognized and exploited. Team members should be left to develop their own ways of working without prescriptive processes. Embrace change Expect the system requirements to change and so design the system to accommodate these changes. Maintain simplicity Focus on simplicity in both the software being developed and in the development process. Wherever possible, actively work to eliminate complexity from the system. Unit-3 Information System Development 34
Agile Method Applicability Product development where a software company is developing a small or mediumsized product for sale. • Custom system development within an organization, where there is a clear commitment from the customer to become involved in the development process and where there are not a lot of external rules and regulations that affect the software. • Because of their focus on small, tightlyintegrated teams, there are problems in scaling agile methods to large systems. • Unit-3 Information System Development 35
Problems with Agile Methods �It can be difficult to keep the interest of customers who are involved in the process. �Team members may be unsuited to the intense involvement that characterises agile methods. �Prioritising changes can be difficult where there are multiple stakeholders. �Maintaining simplicity requires extra work. �Contracts may be a problem as with Unit-3 Information System Development 36
Plan-driven and Agile specification Unit-3 Information System Development 37
SCRUM �The Scrum approach is a general agile method but its focus is on managing iterative development rather than specific agile practices. �There are three phases in Scrum. ◦ The initial phase is an outline planning phase where you establish the general objectives for the project and design the software architecture. ◦ This is followed by a series of sprint cycles, where each cycle develops an increment of the system. ◦ The project closure phase wraps up the project, completes required documentation such as system help frames and user manuals and assesses the lessons learned from the project. 38 Unit-3 Information System Development
The Scrum Process Unit-3 Information System Development 39
Scrum Benefits �The product is broken down into a set of manageable and understandable chunks. �Unstable requirements do not hold up progress. �The whole team have visibility of everything and consequently team communication is improved. �Customers see on-time delivery of increments and gain feedback on how the product works. �Trust between customers and developers is established and a positive culture is created in which everyone expects the project to succeed. Unit-3 Information System Development 40
References: � http: //www. ianswer 4 u. com/2011/11/prototype-model-advantagesand. html#ixzz 4 COd 3 Bn. Yw � https: //www. subjectcoach. com/tutorials/detail/contents/introduction-to-softwaredevelopment-life-cycle-sdlc/chapter/prototype-model-of-sdlc � http: //www. w 3 computing. com/systemsanalysis/rapid-application-development/ END Unit-3 Information System Development 41
- Slides: 41