Systems Development Life Cycle SDLC Introduction Why SDLC

  • Slides: 19
Download presentation
Systems Development Life Cycle (SDLC)

Systems Development Life Cycle (SDLC)

Introduction • Why SDLC? • SDLC should result in a high quality system that

Introduction • Why SDLC? • SDLC should result in a high quality system that meets or • exceeds customer expectations, within time and cost estimates, • works effectively and efficiently in the current and planned information technology infrastructure, and is cheap to maintain and cost-effective to enhance.

Waterfall Model Each phase within the overall cycle may be made up of several

Waterfall Model Each phase within the overall cycle may be made up of several steps.

Stages • • Terms of Reference Feasibility Study Analysis Design Development Testing Evaluation Maintenance

Stages • • Terms of Reference Feasibility Study Analysis Design Development Testing Evaluation Maintenance

Terms of Reference • The mgt decides what capabilities & objectives the proposed sys

Terms of Reference • The mgt decides what capabilities & objectives the proposed sys to incorporate. • Create detailed terms of ref as it is critical to success of the project. Following should be defined: – – Vision, scope and deliverables (What is to be achieved) Stakeholders, roles and responsibilities (Who will take part in it) Resources, financial & quality plan (How it will be achieved) Work Breakdown Structure & Schedule (When it will be achieved) • WBS Follow 100% rule i. e. Sum of the work at CHILD level = 100% of work represented by PARENT – Work should not include any thing which is outside the scope of project – Should contain planned outcome (Milestones, Deliverables, scope, due dates, resources, cost, quality etc) & not planned activities.

WBS Example

WBS Example

Feasibility Study • To see whether the project is worthwhile to proceed further the

Feasibility Study • To see whether the project is worthwhile to proceed further the stages are: • Operational Feasibility. – Management Support? User support? Need for change? Workforce reduction? – Is Training required? – Will users be involved from beginning? – Will consumer experience adversely affect? – Will legal or ethical issues need to be considered?

Feasibility Study • Technical Feasibility – – HW, SW, NW & Skin ware required?

Feasibility Study • Technical Feasibility – – HW, SW, NW & Skin ware required? Technical Experts required? Capacity for future needs? Is prototype required? • Economic Feasibility Project benefits of the proposed system should outweigh the estimated costs. Costs involved include: • • People including IT staff. HW & equipment SW including in-house and to be customized Formal and informal training Licenses and fees Tangible benefits – Reduces overtime, improves service, sophisticated inventory control and eliminates production delays. Intangible Benefits User friendly system improves job satisfaction, Sales tracking system improves marketing, new Web Site improves company’s image.

Feasibility Study • Schedule Feasibility Project can be implemented in an acceptable time frame.

Feasibility Study • Schedule Feasibility Project can be implemented in an acceptable time frame. – Can IT Team handle schedule. – Has management established firm timetable. – Will accelerated schedule pose any risks?

Analysis • Requirements analysis is the process of analyzing the following: – – information

Analysis • Requirements analysis is the process of analyzing the following: – – information needs of the end users, the organizational environment, any system presently being used, developing the functional requirements of a system that can meet the needs of the users. • Also, the requirements should be recorded in • Document, • Email • Executable prototype, or some other form. • The requirements documentation should be referred to throughout the rest of the system development process to ensure the developing project aligns with user needs and requirements. • IS professionals must involve end users in this process to ensure that the new system will function adequately and meets their needs and expectations.

Design • Input Design • Design for various types of inputs (Finger print, retina,

Design • Input Design • Design for various types of inputs (Finger print, retina, RFID, Camera, tablets, barcode). Stress on how data is captured. • Points to remember: – – – Reduce input volume Attractive data entry screens Validation checks Select suitable input data entry methods Develop effective data entry control (Authentication) • Describe Guidelines for Data Entry input Screens. – – – – Position pointer in input box Suitable caption for input box Display sample formats (MM/DD/YY) Avoid leading zeroes 003 and fill trailing zeroes 10. 00 Fill default values automatically Give suitable error messages. Provide way to leave.

Design • General Rule for Web Page Design – Only 16% people read word

Design • General Rule for Web Page Design – Only 16% people read word by word. – Highlight Key words. – Bulleted list – One idea per paragraph. – Start with conclusion (Reverse pyramid) – Have Hyperlinks – Indicate mandatory input boxes

Design • Output Design – – – What is the purpose of output? Who

Design • Output Design – – – What is the purpose of output? Who wants info and why? What specific info is required? Output to be printed or on screen or printed+screen When info is required and how frequently it needs to be updated? Does security or confidentiality is required? • Types of outputs? • • • Internet Emails Audio FAX Computer operated Microfilm • User Interfaces • Internet, HW, Screens, Menus

Development • Coding and debugging is the act of creating the final system. This

Development • Coding and debugging is the act of creating the final system. This step is done by IS professionals. – Use naming conventions – Indentation – Suitable remarks – Code Reusability – Modular approach

Testing • Unit Testing – Programmer carries out testing for syntax errors and logical

Testing • Unit Testing – Programmer carries out testing for syntax errors and logical errors – Team carries out code review. – Identify and eliminate execution errors – Test data should contain correct data and erroneous data and should test all possible situations which could occur. – Software tools can be used to determine the location and potential causes of program errors. – Test Plan How and when testing should be done. – The PM or designated analyst should also check the test results.

Testing • Integration Testing – Integration testing should not be carried out till all

Testing • Integration Testing – Integration testing should not be carried out till all the unit test results are successful. – Testing of two or more programmes which depend on each other. – System analyst usually develops the test cases – Both normal and unusual conditions should be tested. • System Testing – This is testing of entire info system – This includes typical processing situations & is intended to assure users, developers, and managers that the program meets all specifications. – Testers should enter data, including samples of actual, or live data, perform queries, and produce reports to simulate actual operating conditions – System should handle all input data, valid or invalid. – Backup and restart capabilities are appropriate – Demonstrate that user can interact with the system successfully – System should be capable of handling predictable volume of data

Software Quality Assurance • To assure quality the SW developers should consider SW Engineering

Software Quality Assurance • To assure quality the SW developers should consider SW Engineering concepts, internationally recognized standards and careful Project Management Techniques. • Software Engineering Institute developed a set of SW standards like: – Capability Maturity Model (CMM) 1991. – Recently it has been upgraded to Capability Maturity Model Integration. (CMMI) This integrates the software and systems development. – International Organization of Standardization ISO 9001 – 2000. In this ISO 9000 -3 provides framework for SW development.

Installation & Evaluation • Following steps will be carried out in Installation and evaluation:

Installation & Evaluation • Following steps will be carried out in Installation and evaluation: – Prepare a separate operational and test environment. – Provide training for users, managers and IT staff. – Perform data conversion. – System changeover (Parallel operation, Pilot operation i. e. complete changeover at a part of organization or phased operation) – Obtain feedback from the users – Carry out a post-implementation evaluation of the system – Present final report to manager

Maintenance • SW application must be maintained by an experienced team. The organization may

Maintenance • SW application must be maintained by an experienced team. The organization may enter into AMC for – Corrective Maintenance i. e. diagnoses and corrects errors in an operational system. – Adaptive maintenance i. e. adds enhancement to operational system and makes system easier to use. – Perfective Maintenance i. e. change the operational system to make it more efficient, reliable or maintainable. – Preventive Maintenance i. e. . To carryout analysis of area where trouble is likely to occur.