Tuesday, January 18, 2011

Session 6 At SOAR By Avembsys

            The session started off with small tit bits by one of our mates on the presence of bugs in a program. Later our SME took over the session to explain the concept of SDLC (Software Development Life Cycle). Coming from a hardware background it was a newfangled concept for me, which I enjoyed thoroughly understanding it.

             Software Development Life cycle is a process to develop a system which includes four phases namely:
Analysis        -10%
Design          -20%
Development-20%
Testing         -50%
The percentages show the amount of thought and work invovled in each phase, but also they are transient and depends upon the system in consideration.
Software Development Life Cycle results in a high quality system that meets the customer expectations, reaches completion within time and efficiently designed for the current technology.
SDLC is a type of methodology used to describe the process for building information systems, intended to develop information systems in a very deliberate, structured and methodological way, reiterating each stage of the life cycle.

The phases can be gathered up a little more in detail as follows:
Analysis:
In this phase the thought process involves finding the problem through questionaire, analysing the feasibility of process and also about the requirements from the system. Feasibility has two categories, one being the technical under which the limitations of the technology is taken into account and the other one is commercial feasibility which has two factors..(1) technology should'nt be developed so costly which is commercially not viable.(2)technology should'nt be developed whose cheaper alternative is available.
Requirement includes collection of problems and subproblems.
Outcome of this phase is Software Requirement specification Delivered (SRSD) which is sent to the client for approval.

Design:
It involves Software Development Model. It starts with the top level design under which we have the HLD and LLD.
High Level Design(HLD):There are 3 steps under this..
1>Algorithm: It is a step by step approach of doin anything.
2>Flow Charts: Is basically a diagrammatic representation that gives a step by step solution to a given problem.Process operations are represented in boxes and the arrows connecting them represent flow of control.
3>Block Diagram: Shows the interconnection between the components of a system.
Output of HLD is HDD(High Level Design Document). From HDD we get a fair idea about the system.
Low Level Design(LLD): The 3 steps are:
1>Data Structure:Its basically the organisation of data and its storage allocations in a computer.
2>Logic: In simple words its the art of thinking and reasoning in accordance with limitations and capabilities if human understanding.
3>Functions:Its a block of code that performs a calculation and returns a value.
Output of LLD is LDD(Low Level Design Document) or a detailed design document.

Development:
Coding is the translation of data from the user's language to the system's language like C, C++, java etc....and the necessary standards are followed.

Testing:
Its the process used to measure the quality of the developed system. Its a phase that holds the maximum importance.

          The session thus ended which was a newfound and interesting one..

No comments:

Post a Comment