Nothing Special   »   [go: up one dir, main page]

IT Notes

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

SDLC

Software Development Life Cycle (SDLC) is a process used by the software


industry to design, develop and test high quality softwares. The SDLC aims to
produce a high-quality software that meets or exceeds customer expectations,
reaches completion within times and cost estimates.
 SDLC is the acronym of Software Development Life Cycle.
 It is also called as Software Development Process.
 SDLC is a framework defining tasks performed at each step in the software development
process.
 ISO/IEC 12207 is an international standard for software life-cycle processes. It aims to
be the standard that defines all the tasks required for developing and maintaining
software.

What is SDLC?
SDLC is a process followed for a software project, within a software organization. It
consists of a detailed plan describing how to develop, maintain, replace and alter or
enhance specific software. The life cycle defines a methodology for improving the
quality of software and the overall development process.
The following figure is a graphical representation of the various stages of a typical
SDLC.

A typical Software Development Life Cycle consists of the following stages −


Stage 1: Planning and Requirement Analysis

Requirement analysis is the most important and fundamental stage in SDLC. It is


performed by the senior members of the team with inputs from the customer, the
sales department, market surveys and domain experts in the industry. This
information is then used to plan the basic project approach and to conduct product
feasibility study in the economical, operational and technical areas.
Planning for the quality assurance requirements and identification of the risks
associated with the project is also done in the planning stage. The outcome of the
technical feasibility study is to define the various technical approaches that can be
followed to implement the project successfully with minimum risks.

Stage 2: Defining Requirements

Once the requirement analysis is done the next step is to clearly define and
document the product requirements and get them approved from the customer or
the market analysts. This is done through an SRS (Software Requirement
Specification) document which consists of all the product requirements to be
designed and developed during the project life cycle.

Stage 3: Designing the Product Architecture

SRS is the reference for product architects to come out with the best architecture for
the product to be developed. Based on the requirements specified in SRS, usually
more than one design approach for the product architecture is proposed and
documented in a DDS - Design Document Specification.
This DDS is reviewed by all the important stakeholders and based on various
parameters as risk assessment, product robustness, design modularity, budget and
time constraints, the best design approach is selected for the product.
A design approach clearly defines all the architectural modules of the product along
with its communication and data flow representation with the external and third party
modules (if any). The internal design of all the modules of the proposed architecture
should be clearly defined with the minutest of the details in DDS.

Stage 4: Building or Developing the Product

In this stage of SDLC the actual development starts and the product is built. The
programming code is generated as per DDS during this stage. If the design is
performed in a detailed and organized manner, code generation can be
accomplished without much hassle.
Developers must follow the coding guidelines defined by their organization and
programming tools like compilers, interpreters, debuggers, etc. are used to generate
the code. Different high level programming languages such as C, C++, Pascal, Java
and PHP are used for coding. The programming language is chosen with respect to
the type of software being developed.

Stage 5: Testing the Product


This stage is usually a subset of all the stages as in the modern SDLC models, the
testing activities are mostly involved in all the stages of SDLC. However, this stage
refers to the testing only stage of the product where product defects are reported,
tracked, fixed and retested, until the product reaches the quality standards defined
in the SRS.

Stage 6: Deployment in the Market and Maintenance

Once the product is tested and ready to be deployed it is released formally in the
appropriate market. Sometimes product deployment happens in stages as per the
business strategy of that organization. The product may first be released in a limited
segment and tested in the real business environment (UAT- User acceptance
testing).
Then based on the feedback, the product may be released as it is or with suggested
enhancements in the targeting market segment. After the product is released in the
market, its maintenance is done for the existing customer base.

SDLC Models
There are various software development life cycle models defined and designed
which are followed during the software development process. These models are
also referred as Software Development Process Models". Each process model
follows a Series of steps unique to its type to ensure success in the process of
software development.
Following are the most important and popular SDLC models followed in the industry

 Waterfall Model
 Iterative Model
 Spiral Model
 V-Model
 Big Bang Model
Other related methodologies are Agile Model, RAD Model, Rapid Application
Development and Prototyping Models.

TYPES OF COMPUTERS

Supercomputer
Supercomputers are the fastest and the most expensive computers. These huge computers are
used to solve very complex science and engineering problems. Supercomputers get their
processing power by taking advantage of parallel processing; they use lots of CPUs at the same
time on one problem. A typical supercomputer can do up to ten trillion individual calculations
every second. Example Supercomputers:

 K Computer
 Columbia
Mainframe[edit]
Mainframe (coloquially, "big iron") computers are similar to supercomputers in many aspects, the
main difference between them is the fact that a supercomputer use all its raw power to focus on
very few tasks, while a mainframe purpose is to perform thousands or millions of operations
concurrently. Due to its nature, mainframes are often employed by large organizations for bulk
data processing, such as census, industry and consumer statistics, enterprise resource
planning and transaction processing.

3.Server Computer
A server is a central computer that contains collections of data and programs. Also called a
network server, this system allows all connected users to share and store electronic data and
applications. Two important types of servers are file servers and application servers.
Servers are a step under supercomputers, because they don't focus on trying to solve one very
complex problem, but try to solve many many similar smaller ones. An example of servers would
be the computers that Wikipedia stores its encyclopedia on. Those computers have to go and
find the page you're looking for and send it to you. In itself it's not a big task, but it becomes a job
for a server when the computers have to go and find lots of pages for a lot of people and send
them to the right place. Some servers, like the ones Google uses for something like Google
Documents, have applications on them instead of just files, like Wikipedia.

Workstation Computer
Workstations are high-end, expensive computers that are made for more complex procedures
and are intended for one user at a time. Some of the complex procedures consist of science,
math and engineering calculations and are useful for computer design and manufacturing.
Workstations are sometimes improperly named for marketing reasons. Real workstations are not
usually sold in retail, but this is starting to change; Apple's Mac Pro would be considered a
workstation.
The movie Toy Story was made on a set of Sun (Sparc) workstations [1]

Personal Computer or PC
PC is an abbreviation for a Personal Computer, it is also known as a Microcomputer. Its physical
characteristics and low cost are appealing and useful for its users. The capabilities of a personal
computer have changed greatly since the introduction of electronic computers. By the early
1970s, people in academic or research institutions had the opportunity for single-person use of a
computer system in interactive mode for extended durations, although these systems would still
have been too expensive to be owned by a single individual. The introduction of
the microprocessor, a single chip with all the circuitry that formerly occupied large cabinets, led to
the proliferation of personal computers after about 1975.
Microcontroller
Microcontrollers are mini computers that enable the user to store data and execute simple
commands and tasks. These single circuit devices have minimal memory and program length but
are normally designed to be very good at performing a niche task. Many such systems are
known as embedded systems. The computer in your car, for example is an embedded system. A
common microcontroller that one might come across is called Arduino.

Smartphone
Do you own a smartphone? Your smart phone is a computer! Most smartphones run iOS or
Android. Android is an operating system that is based on Linux. Smartphones are becoming
exponentially faster and also have an exponentially increasing data capacity.

Client/server architecture
Client/server architecture is a computing model in which the server hosts, delivers
and manages most of the resources and services to be consumed by the client. This
type of architecture has one or more client computers connected to a central server
over a network or internet connection. This system shares computing resources.
Client/server architecture is also known as a networking computing model or
client/server network because all the requests and services are delivered over a
network.

Von Neumann architecture


The von Neumann architecture—also known as the von Neumann model or Princeton
architecture—is a computer architecture based on a 1945 description by the mathematician and
physicist John von Neumann and others in the First Draft of a Report on the EDVAC.[1] That
document describes a design architecture for an electronic digital computer with these
components:

 A processing unit that contains an arithmetic logic unit and processor registers


 A control unit that contains an instruction register and program counter
 Memory that stores data and instructions
 External mass storage
 Input and output mechanisms

Local area network (LAN)


A local area network (LAN) is a computer network that interconnects computers within a limited
area such as a residence, school, laboratory, university campus or office building. [1] By contrast,
a wide area network (WAN) not only covers a larger geographic distance, but also generally
involves leased telecommunication circuits.
Ethernet and Wi-Fi are the two most common technologies in use for local area networks.
Historical network technologies include ARCNET, Token ring, and AppleTalk.
A local-area network (LAN) connects the computer hardware in a localized area
such as an office or home. Typically, LANs use wired connections to link the
computers to each other and to a variety of peripheral devices such as printers

Wide area network (WAN)


(Wide Area Network port) The socket on a network device that is wired to an
external network, which is typically the Internet. In the home and small business, a
WAN port is an RJ-45 Ethernet port on a router that is wired to a cable or DSL
modem. On small routers, the WAN port may be labeled simply "Internet." In the
larger enterprise, a WAN port may hook up to a T3 line or other wide area network
service. Contrast with LAN port. See RJ-45.
A wide area network (WAN) is a data network, usually used for connecting
computers, that spans a wide geographical area. WANs can be used to connect
cities, states, or even countries.

Metropolitan area network (MAN)

A metropolitan area network (MAN) is a network that


interconnects users with computer resources in a geographic area
or region larger than that covered by even a large local area
network (LAN) but smaller than the area covered by a wide area
network (WAN). The term is applied to the interconnection of
networks in a city into a single larger network (which may then
also offer efficient connection to a wide area network). It is also
used to mean the interconnection of several local area networks
by bridging them with backbone lines. The latter usage is also
sometimes referred to as a campus network.
Internetworks

Before discussing about the terms internet, intranet and


extranet, we need to discuss the term Internetwork.

An internetwork can be defined as two or more computer


networks (typically Local Area Networks LAN) which are
connected together, usinng Network Routers.

Each network in an Internetwork has its own Network Address,


which is different from other networks inside the
Internetwork. Network Address is used to identify the
networks inside an Internetwork.

Internetwork allows different users at different geographical


locations of an organization to share data, resources and to
communicate. Modern businesses cannot even function
without Internetwork. Internet, Intranet and Extranet are
different types of internetwork.

Internet, Intranet and Extranet

Internet: Internet is a worldwide, publicly accessible


computer network of interconnected computer networks
(internetwork) that transmit data using the standard Internet
Protocol (IP). Internet is the world's largest Internetwork .

The terms World Wide Web (WWW) and Internet are not the
same. The Internet is a collection of interconnected computer
networks, linked by copper wires, fiber-optic cables, wireless
connections, etc. World Wide Web (WWW) is a collection of
interconnected documents and other resources, linked by
hyperlinks and URLs. The World Wide Web is one of the
services accessible via the Internet, along with various others
including email, file sharing, remote administration, video
streaming, online gaming etc.

Intranet: An intranet is a private network that is contained


within an enterprise. It may consist of many interlinked local
area networks and use any Wide Area Network
(WAN) technologies for network connectivity. The main
purpose of an intranet is to share company information and
computing resources among employees. Intranet is a private
Internetwork, which is usually created and maintained by a
private organization. The content available inside Intranet are
intended only for the members of that organization (usually
employees of a company).

Extranet: An extranet can be viewed as part of a company's


intranet that is extended to users outside the company like
suppliers, vendors, partners, customers, or other business
associates.

Extranet is required for normall day-to-day business activities.


For example, Placing order to registered vendors, Billing &
Invoices, Payments, Joint Ventures, Product Brochures for
Partners, Discounted price lists for partners etc.
The 7 Layers of the OSI Model

Application (Layer 7)
OSI Model, Layer 7, supports application and end-user
processes. Communication partners are identified, quality of
service is identified, user authentication and privacy are
considered, and any constraints on data syntax are identified.
Everything at this layer is application-specific. This layer
provides application services for file transfers, e-mail, and
other network software services. Telnet and FTP are
applications that exist entirely in the application level. Tiered
application architectures are part of this layer.
 Layer 7 Application examples include WWW browsers, NFS, SNMP, Telnet, HTTP, FTP
Presentation (Layer 6)
This layer provides independence from differences in data
representation (e.g., encryption) by translating from application
to network format, and vice versa. The presentation layer
works to transform data into the form that the application layer
can accept. This layer formats and encrypts data to be sent
across a network, providing freedom from compatibility
problems. It is sometimes called the syntax layer.
Layer 6 Presentation examples include encryption, ASCII,
EBCDIC, TIFF, GIF, PICT, JPEG, MPEG, MIDI.

Session (Layer 5)
This layer establishes, manages and terminates connections
between applications. The session layer sets up, coordinates,
and terminates conversations, exchanges, and dialogues
between the applications at each end. It deals with session and
connection coordination.
 Layer 5 Session examples include NFS, NetBios names, RPC,
SQL.
Transport (Layer 4)
OSI Model, Layer 4, provides transparent transfer of data
between end systems, or hosts, and is responsible for end-to-
end error recovery and flow control. It ensures complete data
transfer.
 Layer 4 Transport examples include SPX, TCP, UDP.
Network (Layer 3)
Layer 3 provides switching and routing technologies, creating
logical paths, known as virtual circuits, for transmitting data
from node to node. Routing and forwarding are functions of this
layer, as well as addressing, internetworking, error
handling, congestion control and packet sequencing.
Layer 3 Network examples include AppleTalk DDP, IP, IPX.
Data Link (Layer 2)
At OSI Model, Layer 2, data packets are encoded and decoded
into bits. It furnishes transmission protocol knowledge and
management and handles errors in the physical layer, flow
control and frame synchronization. The data link layer is
divided into two sub layers: The Media Access Control (MAC)
layer and the Logical Link Control (LLC) layer. The MAC sub
layer controls how a computer on the network gains access to
the data and permission to transmit it. The LLC layer controls
frame synchronization, flow control and error checking.
 Layer 2 Data Link examples include PPP, FDDI, ATM, IEEE
802.5/ 802.2, IEEE 802.3/802.2, HDLC, Frame Relay.
Physical (Layer 1)
OSI Model, Layer 1 conveys the bit stream - electrical impulse,
light or radio signal — through the network at the electrical and
mechanical level. It provides the hardware means of sending
and receiving data on a carrier, including defining cables, cards
and physical aspects. Fast Ethernet, RS232,
and ATM are protocols with physical layer components.
 Layer 1 Physical examples include Ethernet, FDDI, B8ZS,
V.35, V.24, RJ45.

You might also like