You are on page 1of 9

1.

The system development life cycle framework provides a sequence of activities for
system
Designers and developers to follow. It consists of a set of steps or phases involved in an
Information system development project.
a. What are the main phases of Software Development Life Cycle?
Briefly explain each of them.
b. What are the types of feasibility studies? Explain.
Software life cycle models describe phases of the software cycle and the order in which those
phases are executed. Each phase produces deliverables required by the next phase in the life
cycle. Requirements are translated into design. Code is produced according to the design
which is called development phase. After coding and development the testing verifies the
deliverable of the implementation phase against requirements.
There are following six phases in every Software development life cycle model:
1.
2.
3.
4.
5.
6.

Requirement gathering and analysis


Design
Implementation or coding
Testing
Deployment
Maintenance
1) Requirement gathering and analysis: Business requirements are gathered in this
phase. This phase is the main focus of the project managers and stake holders.
Meetings with managers, stake holders and users are held in order to determine the
requirements like; Who is going to use the system? How will they use the system?
What data should be input into the system? What data should be output by the
system? These are general questions that get answered during a requirements
gathering phase. After requirement gathering these requirements are analyzed for their
validity and the possibility of incorporating the requirements in the system to be
development is also studied.
Finally, a Requirement Specification document is created which serves the purpose of
guideline for the next phase of the model.
2) Design: In this phase the system and software design is prepared from the
requirement specifications which were studied in the first phase. System Design helps
in specifying hardware and system requirements and also helps in defining overall
system architecture. The system design specifications serve as input for the next phase
of the model.
3) Implementation / Coding: On receiving system design documents, the work is
divided in modules/units and actual coding is started. Since, in this phase the code is
produced so it is the main focus for the developer. This is the longest phase of the
software development life cycle.
4) Testing: After the code is developed it is tested against the requirements to make
sure that the product is actually solving the needs addressed and gathered during the
1

requirements phase. During this phase unit testing, integration testing, system testing,
acceptance testing are done.
5) Deployment: After successful testing the product is delivered / deployed to the
customer for their use.
6) Maintenance: Once when the customers starts using the developed system then the
actual problems comes up and needs to be solved from time to time. This process
where the care is taken for the developed product is known as maintenance.
b. Feasibility study is an assessment of the practicality of a proposed project. The acronym
TELOS refers to the five areas of feasibility - Technical, Economic, Legal, Operational, and
Scheduling.
Technical feasibility
The technical feasibility assessment is focused on gaining an understanding of the present
technical resources of the organization and their applicability to the expected needs of the
proposed system. It is an evaluation of the hardware and software and how it meets the need
of the proposed system
Economic feasibility
The purpose of the economic feasibility assessment is to determine the positive economic
benefits to the organization that the proposed system will provide. It includes quantification
and identification of all the benefits expected. This assessment typically involves a cost/
benefits analysis.
Operational feasibility
Operational feasibility is a measure of how well a proposed system solves the problems, and
takes advantage of the opportunities identified during scope definition and how it satisfies the
requirements identified in the requirements analysis phase of system development.
Schedule feasibility
A project will fail if it takes too long to be completed before it is useful. Typically this means
estimating how long the system will take to develop, and if it can be completed in a given
time period using some methods like payback period. Schedule feasibility is a measure of
how reasonable the project timetable is. Given our technical expertise, are the project
deadlines reasonable? Some projects are initiated with specific deadlines. It is necessary to
determine whether the deadlines are mandatory or desirable.

2. Several software development approaches have been used since the origin of information
technology, in two main categories. Typically an approach or a combination of approaches
is chosen by management or a development team.
a. Explain any three software process models.
b. Discuss about their advantages and disadvantages.
a.
Waterfall model,incremental model, V-model, iterative model, etc. Each process model
follows a particular life cycle in order to ensure success in process of software development.
1 Waterfall Model
The first published model of the software development process was derived from more
general system engineering processes. It was proposed by Royces in 1970.

Because of the cascading from one phase to another, this model is known as the
waterfall model. The waterfall model is plan driven process- in principle. You must
plan and schedule all of the process activities before starting work on then. And this is
non liner model but involves feedback from one phase to another.
One development stage should be complete before next begins. Example all the requirements
are collected from customer, analysis from completeness and consistency and documented in
a requirements document, then only development team go to design activity.
2 Spiral Model

The spiral model was proposed by Boehm in 1988. The spiral model can describe how
a product develops to forms new versions, and how a version can be incrementally
developed prototype to completed product.
The diagrammatic representation of this model appears like a spiral with many loops.
The exact number of loops of the spiral is not fixed and can vary from project to
project. Each loop of the spiral is called a phase or Iteration of the software process.

3. Incremental model
In incremental model the whole requirement is divided into various builds.
Multiple development cycles take place here, making the life cycle a
multi-waterfall cycle. Cycles are divided up into smaller, more easily
managed modules.
Each module passes through the requirements,
design, implementation and testing phases. A working version of software
is produced during the first module, so you have working software early
on during the software life cycle. Each subsequent release of the module
adds function to the previous release. The process continues till the
complete system is achieved.

Advantages of waterfall method:


1. Waterfall model present a high-level view of what goes on during the
development. It is also very useful in helping developers layout what they
need to do. Its simplicity makes it easy to explain to customer who is not
familiar with software development. It is also useful to developer to identify
which intermediate products are necessary in order to begin next stage of
development.
2. Easy to project monitoring.
Advantage of Spiral Model:
1. It can be seen that this model is much flexible compared to the other models, since the exact
number of phased through which the product is developed is not fixed.Main difference
between the spiral model and other software process model is very clear recognition of risk.

Advantage of Incremental model:


1.
2.
3.
4.
5.
6.

Generates working software quickly and early during the software life cycle.
This model is more flexible less costly to change scope and requirements.
It is easier to test and debug during a smaller iteration.
In this model customer can respond to each built.
Lowers initial delivery cost.
Easier to manage risk because risky pieces are identified and handled during itd
iteration.

Disadvantages of waterfall method:

It is does not reflect the way code is really developed.


5

Spend more time in requirement analysis.

Waterfall model shows how each major phase of development


o Terminates in the production of the artifact. There is no insight into how each
activity transforms one artifact to another.

Thus model provide no guidance to managers and developers on


o how to handle the changes to product and actives that are likely to occur
during development.

Waterfall model cannot satisfactory handle the different type of


o risk that real life software project may suffer from. Example customer not
clears with his requirement.

Disadvantage of Spiral Model:

For the developers of a project, the spiral model usually as a complex model to
follow. It is not suitable for development product as outsourced projects because risks
need to be continually assessed and developed.

Disadvantage of Incremental model:

Needs good planning and design.


Needs a clear and complete definition of the whole system before it can be broken
down and built incrementally.
Total cost is higher than waterfall.

3. Requirements analysis in systems engineering and software engineering,


encompassesThose tasks that go into determining the needs or conditions to meet for a new
or alteredProduct or project, taking account of the possibly conflicting requirements of the
variousStakeholders, analyzing, documenting, validating and managing software or system
Requirements.
a. What do you mean by functional requirements and non-functional requirements?
Briefly explain them with the help of examples.
b. Whats the difference between the structured interview and unstructured interview?
Give examples.
c. What are the other requirement gathering techniques? Briefly explain two of them.

a.
A functional requirement for a SMAK fruit juice Packet would be ability to contain
fluid without leaking
Some of the more typical functional requirements include:
Business Rules
Transaction corrections, adjustments and cancellations
Administrative functions
6

Authentication
Authorization levels
Audit Tracking
External Interfaces
Certification Requirements
Reporting Requirements
Historical Data
Legal or Regulatory Requirements

So about Non-Functional Requirements are those, and how are they different?
Simply put, the difference is that non-functional requirements describe how the
system works, while functional requirements describe what the system should do.
The definition for a non-functional requirement is that it essentially specifies how the
system should behave and that it is a constraint upon the systems behavior. One could
also think of non-functional requirements as quality attributes for of a system.
A non-functional requirement for a hard hat might be must not break under pressure
of less than 10,000 PSI
Non-functional requirements cover all the remaining requirements which are not
covered by the functional requirements. They specify criteria that judge the operation
of a system, rather than specific behaviors, for example: Modified data in a database
should be updated for all users accessing it within 2 seconds.
Some typical non-functional requirements are:
Performance for example Response Time, Throughput, Utilization, Static
Volumetric
Scalability
Capacity
Availability
Reliability
Recoverability
Maintainability
Serviceability
Security
Regulatory
Manageability
Environmental
Data Integrity
Usability
Interoperability are the non-functional requirements.
b.
Structured and Unstructured Interviews
7

In a structured interview, each candidate is asked similar questions in a predetermined


format. Emphasis tends to be on your past experience and assets you can bring to
company. Typically, the interviewer records your answers, which are potentially
scored on a standard grid.
Unstructured interviews are much more casual and unrehearsed. They depend on free
flowing conversation which tends to focus on your personal qualities as they relate to
the work. Questions about skills and strengths can be asked and should be answered
as formally as in a structured interview.
Unstructured interviews may be so by design of the interviewer, or may be so due to
the spontaneity of the eventyou might find yourself in an unstructured interview
after being introduced to a potential employer by a friend, or while dropping off a
resume in person at a location in which you wish to work.
Conversation and exchange is more important than the particular questions being
asked. In such an interview it is important to hold on to the main points you want this
employer to hear, and weave them into the conversation. Try to relax in the format
be polite, mature and sociable.
Ex:
Structured interview: Experienced Network administrator will be asked question by
Executive interview board
Un Structured interview: this interview occupy on a marriage proposal between
relations of bride and bride grooms
C.
1: One-on-one interviews
The most common technique for gathering requirements is to sit down with the clients
and ask them what they need. The discussion should be planned out ahead of time
based on the type of requirements you're looking for. There are many good ways to
plan the interview, but generally you want to ask open-ended questions to get the
interviewee to start talking and then ask probing questions to uncover requirements.
2: Group interviews
Group interviews are similar to the one-on-one interview, except that more than one
person is being interviewed usually two to four. These interviews work well when
everyone is at the same level or has the same role. Group interviews require more
preparation and more formality to get the information you want from all the
participants. You can uncover a richer set of requirements in a shorter period of time if
you can keep the group focused.
3: Questionnaires

Questionnaires are much more informal, and they are good tools to gather
requirements from stakeholders in remote locations or those who will have only minor
input into the overall requirements. Questionnaires can also be used when you have to
gather input from dozens, hundreds, or thousands of people.
4: Prototyping
Prototyping is a relatively modern technique for gathering requirements. In this
approach, you gather preliminary requirements that you use to build an initial version
of the solution a prototype. You show this to the client, who then gives you
additional requirements. You change the application and cycle around with the client
again. This repetitive process continues until the product meets the critical mass of
business needs or for an agreed number of iterations.

4.

An organizational chart (often called organization chart, org chart,


organogram (me), or
organogram) is a diagram that shows the structure of an organization and
the relationships
and relative ranks of its parts and positions/jobs.
Draw an organizational chart for Hardy College of Technology.

You might also like