What are the main stages of a system development life cycle (SDLC)?
The Systems Development Life Cycle (SDLC) is a conceptual model used in that describes the stages involved in an information system development project from an initial feasibility study through maintenance of the completed . Various SDLC methodologies have been developed to guide the processes involved including the waterfall model (the original SDLC method), rapid application development (RAD), joint application development (JAD), the fountain model and the spiral model. Mostly, several models are combined into some sort of hybrid methodology. Documentation is crucial regardless of the type of model chosen or devised for any application, and is usually done in parallel with the development process. Some methods work better for specific types of projects, but in the final analysis, the most important factor for the success of a project may be how closely particular plan was followed.
The list below is the classic Waterfall model methodology, which is the first SDLC method and it describes the various phases involved in development:
- Planning/ Feasibility
Planning/feasibility studyingThe feasibility study is used to determine if the project should get the go-ahead. If the project is to proceed, the feasibility study will produce a project plan and budget estimates for the future stages of development.
Requirement Analysis and Design
Analysisgathers the requirements for the system. This stage includes a detailed study of the business needs of the organization. Options for changing the business process may be considered. Design focuses on high level design like, what programs are needed and how are they going to interact, low-level design (how the individual programs are going to work), interface design (what are the interfaces going to look like) and data design (what data will be required). During these phases, the software's overall structure is defined. Analysis and Design are very crucial in the whole development cycle. Any glitch in the design phase could be very expensive to solve in the later stage of the software development. Much care is taken during this phase. The logical system of the product is developed in this phase.
In this phase the designs are translated into code. Computer programs are written using a conventional programming language or an application generator. Programming tools like Compilers, Interpreters, Debuggers are used to generate the code. Different high level programming languages like C, C++, Pascal, Java are used for coding. With respect to the type of application, the right programming language is chosen.
In this phase the system is tested. Normally programs are written as a series of individual modules, these subject to separate and detailed test. The system is then tested as a whole. The separate modules are brought together and tested as a complete system. The system is tested to ensure that interfaces between modules work (integration testing), the system works on the intended platform and with the expected volume of data (volume testing) and that the system does what the user requires (acceptance/beta testing).
Inevitably the system will need maintenance. Software will definitely undergo change once it is delivered to the customer. There are many reasons for the change. Change could happen because of some unexpected input values into the system. In addition, the changes in the system could directly affect the software operations. The software should be developed to accommodate changes that could happen during the post implementation period.
Explain the function and purpose of each and every stages of the SDLC in context of the SSADM. Clearly describe which measures must be taken after completing each stage and before starting the next stage of the life cycle.
Planning and feasibility study
In this level analysis get all the information about the company, which need system of information. In another hand analysis must get good acknowledgement about all information that belongs to the system that going to build
The aim is to evaluate the feasibility of the proposal, involving an analysis of the problem and determination of the best solution; usually a range of potential solutions are presented. Context diagrams, current physical DFDs, overview ERDs, a requirements catalogue, project management techniques such as activity networks and Gantt charts are produced. To pass this stage and go through to system development a proposal must demonstrate fallowing stages:
• Economic feasibility
• Technical feasibility
• Operational feasibility
Economic feasibility is to assess the costs required for alternative systems and set them against the expected benefits. The types of alternatives that are frequently considered are the manual/computer boundaries as some tasks may benefit more than other s from computerization and non-functional characteristics such as the time delay between the real world and the different parts of the system: should we be looking at batch, on-line or real-time or a combination? The system costs should also be estimated in terms of basic resources of money, people and time
This is concerned with whether the solution can be implemented using existing technology. If it can then existing technology may require upgrading or adding to. If it can be done then the solution may require the integration of equipment or software that has not been combined before. Non-functional requirements such as batch or on-line processing, maximum response time for user-computer interaction, estimated frequency of transactions, maximum record and file sizes, networking loads and typical number of users are considered here. In addition, requirements of system expansion, security, data archiving and reliability are considered
This investigates factors such as the likely reaction of employees and union representatives to job and other proposed organisational changes. The main aim is to assess whether the solution will operate and be used after installation. For example, if users are happy with the current system and see no reason to change then there may be a high degree of resistance to the new proposal. Relevant factors here concern whether the solution has general management support and whether or not the users have been involved in the development of the proposal.
Basically analysis is getting information by several survey methods .and investigate them as much as deep in side and decide kind of options available to resolve the case. An overview of the current processing and data is created. Current problems are documented as necessary improvements and any new data or functions that will be required. The intended users of the new system are also identified
One option that covers the stated minimum requirements and no more One option that covers every new requirement; Up to four options that each cover the stated minimum requirement and a different set of the other requirements.
The six options will then cover six different boundaries and six different functionalities - all will cover the minimum functionality required.
“Business System Option-A Business System Option (BSO) describes a suggested new system in terms of its functionality and its boundary: inputs, outputs, processes and data are described. The aim is to help the users choose, from all the listed requirements, just what they want their new system to do.”
Logical system specification
Technical System Options
This assesses the different options for implementing the specification and describes the costs, benefits and constraints. Factors include internal and external constraints. External constraints consist of, for example, time, cost, business performance and any hardware or software constraints set in the feasibility study.
The procedure for producing and selecting Technical System Options is very similar to that for BSOs. First, draw up an initial list of approximately six options. The skeletal TSOs(technical system option) should then be expanded to include details derived from potential suppliers such as:
• Support etc.
The intention is not to decide on a choice of vendor but to establish ballpark figures and estimates to present to the Project Board for each TSO. As with BSOs, the range should cover:
• One option that suggests no change;
• One option that covers the stated minimum requirements and no more;
• One option that covers every new requirement;
• Up to four options that each covers the stated minimum requirement and a different set of the other requirements.
The range should then be examined to eliminate obvious non-starters. The remaining TSOs should then be presented to the board
The Logical Dialogue of the system is defined. This does not include the physical dialogues (menu structures, form designs etc.). Neither is this the stage at which the physical screen characteristics are defined. At this stage the logical exchange of data is defined.
The Update Processing is also defined. This specifies the logic of each database update required for an event. The Entity Life Histories are updated with State Indicators. State Indicators describe the specific state of the data associated with each event in the ELH. For example, when a Customer Record is created the initial state of all the attributes is empty. As the Customer Record is processed the state of the attributes will change over time. “
The Physical Environment the system will operate in is considered.
A Physical Environment Classification Scheme is used to categorize the physical environment. The scheme considers factors including:
• Data storage;
• Processing characteristics.
The characteristics, demands and constraints of the environment will clearly have an effect on translation from the Logical Design. Decisions such as demoralising, clustering and indexing will be made at this time.
Describe the advantages and disadvantages of waterfall model and spiral model of system development.
The waterfall model is a sequential software development process, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, Analysis, Design (validation), Construction, Testing and maintenance.
The waterfall development model has its origins in the manufacturing and construction industries; highly structured physical environments in which after-the-fact changes are prohibitively costly, if not impossible. Since no formal software development methodologies existed at the time, this hardware-oriented model was simply adapted for software development.
The first formal description of the waterfall model is often cited to be an article published in 1970 by Winston W. Royce (1929–1995), although Royce did not use the term "waterfall" in this article. Royce was presenting this model as an example of a flawed, non-working model (Royce 1970). This is in fact the way the term has generally been used in writing about software development—as a way to criticize a commonly used software practice.
Advantages of Waterfall Model
1. Clear project objectives.
2. Stable project requirements.
3. Progress of system is measurable.
4. Strict sign-off requirements.
Disadvantages of Waterfall Model
1. Time consuming
2. Never backward (Traditional)
3. Little room for iteration
4. Difficulty responding to changes
Spiral model combines the iterative nature of prototyping with the controlled and systematic aspects of the waterfall model, therein providing the potential for rapid development of incremental versions of the software. In this model the software is developed in a series of incremental releases with the early stages being either paper models or prototypes. Later iterations become increasingly more complete versions of the product.
Advantages of the Spiral Model
- The spiral model is a realistic approach to the development of large-scale software products because the software evolves as the process progresses. In addition, the developer and the client better understand and react to risks at each evolutionary level.
- The model uses prototyping as a risk reduction mechanism and allows for the development of prototypes at any stage of the evolutionary development.
- It maintains a systematic stepwise approach, like the classic life cycle model, but incorporates it into an iterative framework that more reflect the real world.
- If employed correctly, this model should reduce risks before they become problematic, as consideration of technical risks are considered at all stages.
Disadvantages of the Spiral Model
- Demands considerable risk-assessment expertise
- It has not been employed as much proven models and hence may prove difficult to ‘sell’ to the client that this model is controllable and efficient.
- Highly customized limiting re-usability
- Applied differently for each application
- Risk of not meeting budget or schedule
- Possibility to end up implemented as the Waterfall framework
Assume that you have to build an IT system for Flaters Limited. Use the information from handout and a produce a project report which should include the following parts:
Using your fact finding techniques, clearly identify the user needs and system requirements throughout all the departments. Annex any questionnaires or forms which you will be using for the above purpose.
- Despatch instructions are sent to despatch section (production dept)
- Invoice is sent to customers
- Invoice copy is sent to account department
- Component Manufacture
- Name Plates
- Checking the assembled pump;
- Boxing the pump and putting into the storage;
- Matching pumps to order and packing for despatch;
- Preparing the despatch documentation;
- Ensuring that adequate stocks are maintained.
- Maintaining the production Machines;
- General Building Maintenance
- Personnel Maintenance
- Receipt of Raw Materials
- Maintaining stock
- Raising purchase orders
Staff Recruitment: Recruitment of clerks, typists and production personnel.
Sick & Pension Fund Records: Maintain personnel records and prepare the statutory returns to the DSS for sick payments.
Payroll: Extensive references made to the personnel records to obtain relevant information.
- Time Recording (time office): Produces weekly time-sheet for each employee.
- Hours worked
- Hours worked on a given machine type
- Overtime worked
- Time-office – time-sheets
- Personnel – Sick pay requirements
- Tax Code
- Pension and other deductions
- Production – Production figures
The output from the wages office:
- Pay-slips which go to pay office
- Inland revenue returns (tax, N.I.,sick pay)
- Idle time statement to production management
- Cost statement to by department/section to accounts
- Cash requirement statements to bank
The pay-office is responsible for preparing the pay packets and issuing them to the employees.
Produce a first cut use case diagram.
Investigate the Flaters Limited organisation from the handout. Use information from the handout to produce the following using a case tool for the existing system:
- Context diagram for the existing system