Sei sulla pagina 1di 9

SOFTWARE ENGINEERING ANSWER KEY

UNIT I
PART A(2 marks)
1. What are small projects?
 A small project employee’s one programmer for 1 to 6 months of work to
complete task and resulting with 1000 to 2000 lines of code
 A small project requires little interaction among programmers or between
programmers and customers.
 (eg) scientific application, small commercial application,
2. Define reliability
Software Reliability is the probability of failure-free software operation for a
specified period of time in a specified environment.
Reliability is a measure for the portability of software which measured in two
terms
Fault:- a defect in software eg:bug in code to cause failure
Failure:- inability of a system to function according to its specification
3. What are utility programs?
 Utility software is system software designed to help analyse, configure, optimize
or maintain a computer.
 It is used to support the computer infrastructure in contrast to
application software, which is aimed at directly performing tasks.
eg antivirus software, backup software and disk tools
4. Define software engineering
The term “software engineering” was coined at NATO, USA in 1975. Software
Engineering differs from traditional computer programming techniques are used to
specify,design,implement, validate and maintain software products within the time and
budget constraints established for the project. In addition, software engineering is
concerned with managerial issues that lie outside the domain.
5. What is meant by hierarchical team structure?
 Hierarchy is a way to structure an organization using different levels of authority
and chain of command, between superior and subordinate levels of
the organization.
 A hierarchical team consists of
 A project leader
 5 to 7 senior programmers
 5 to 7 junior programmers
 The project leader assigns tasks, attends reviews and walkthroughs, detects
problem areas, balances work load, and participates in technical activities.
 Both horizontal and vertical communication can take place among team members.
Project leader
Senior programmer

Junior programmer

Structure and communiction


6. List any four factors that influence quality and productivity
Development and maintenance of software products are complex tasks. The
factors that are influence software quality and productivity are listed below
Individual ability it means the basic ability to write correct computer programs and
familiarity of particular application area.
Team Communication clear communication amoung team members result in better
quality and productivity of software
Problem understanding it requires a thorough understanding of problem domain and
environment by software engineers.
Systematic Approach its for product development will result in better quality and
productivity of software products.
7. What are democratic teams?
 Democratic team structure is a variation of egoless team
 In a democratic team structure, one team member is designated team leader and
team leadership does not rotate among team members.
 It incurs high communication over head
 It is well suited for difficult, long- term research and development projects.

Project leader

programmers

Structure and communiction


8. What are trivial projects?
 A Trivial software project involves one programmer working, for a few days or a
few weeks.
 Results in 500 LOC statements, they are developed for the exclusive use of the
programmer and are usually discarded after a few months.
Eg. personnel software
9. List any six factors that influence quality and productivity
Development and maintenance of software products are complex tasks. The
factors that are influence software quality and productivity are listed below
Individual ability it means the basic ability to write correct computer programs and
familiarity of particular application area.
Team Communication clear communication amoung team members result in better
quality and productivity of software
Problem understanding it requires a thorough understanding of problem domain and
environment by software engineers.
Systematic Approach its for product development will result in better quality and
productivity of software products.
Change control planning for change and formalizing change control mechanisms
improve quality and productivity of software products.
Adequency of Training software engineers should be given adequate training with all
aspect of software product development process.
10. List the software quality attributes
Software quality is a conformation which refers to functional and performance
requirements and development standards
 Usefulness
 Reliability
 Robustness/ integrity
 Efficiency
 Cost effective
 Accuracy
 Correctness
 Portability
 Clarity
 understandability
11. What are size factors?
Managing software development productivity is a key issue in software organizations.
There are some size factors which helps to increase the productivity of software
 Level of effort devoted to software development
 Distribution of effort
 Size categories for software project
 Programmer time spending for developing codes
12. What is level reliability?
It describes the ability of a system or component to function under stated
conditions for a specfic period of time.
Increased level of analysis,design,implementation, and verification and validation
effort ensures high reliability of a software product.
13. What is management by objectives?
 Management by Objectives (MBO) is a personnel management technique by
which employees set their own goals and objective with help of their supervisors.
 In this the managers and employees work together to set, record and monitor
goals for a specific period of time.
 MBO can be applied at all levels of an organization, and can include both
 Product-oriented objectives
 Self – improvement objectives

PART B(5 Marks)

1. What is meant by solution strategy? How to develop it?


A solution strategy is not a detailed solution plan, but rather a general statement
concerning the nature of possible solutions strategy factors include consideration such as batch
or time-sharing; database or file system graphics or text and real time or off-line processing.

Types of feasibility

Technical Operational Economic


Technical:
The work for project done with equipment, existing technology, available personnel.
Operational:
This determines whether the developed software is used, and also determine the
application benefits.
Economic:
This determined whether the developed software is cost acceptable that is within cost
estimation.
Solution strategy is feasible if project goals and requirements can be satisfied within time,
budget, and resources.
Several strategies should be considered before one is adopted; however one or more
solution strategies must be chosen by the planners in order to perform feasibility studies and
prepare preliminary cost estimates.
A solution strategy is feasible if he project goals and requirements can be satisfied within
t he constraints of available time, resources, and technology using that strategy.
Techniques for determining the feasibility of a solution strategy include case studies,
worst-case analysis, simulation and construction of prototypes.
A solution strategy should include a priority list of project features.
2. Discuss about various project structure.
Project structure is a method for organizing the entire software engineering tasks.
Generally the structure of project divided into three formats. They are follows,
o Project format
o Functional format
o Matrix format
PROJECT FORMAT:-
The team members conduct a project study from starting to finishing.
This involves assembling a team of programmers who conduct a project from analysis to
maintenance.
And they do product definition, design the product, implement it, test it, conduct project
reviews, and prepare the supporting documents.
FUNCTIONAL FORMAT:-
In the functional approach organization, a team programmer performs each phase of the
project and the work products pass from team to team as they evolve.
The requirements specification is passed to a design team, who design the product to
conform with the system definition and requirements specification .
A separate maintenance team maintenance the product during its useful life.
MATRIX FORMAT:-
In matrix organization, each of the functions describes above has its managements team
and a group of specialist personnel who are concerned only with that function.
Each development project has a project manager concerned only with that project.
The project manager generates and reviews documents and may participate in design,
implementation, and testing of the product.
3. What are the size categories for software products. Discuss briefly.
Project size is a major factor that determines the level of management controls, type of
tools and techniques required on a software project.
TRIVIAL PROJECTS:
A Trivial software project involves one programmer working, perhaps part time, for a few
days nor a few weeks. Results in s program of less than 500 statements, packaged in 10 to 20
subroutines.
such program are often personnel software; they are developed for the exclusive use of the
programmer and are usually discarded after a few months.
There is little need for formal analysis, elaborate design documentation, extensive test
planning, or supporting document for trivial program.
SMALL PROJECTS:
A small project employee’s one programmer for 1 to 6 months and results in a product
containing 1000 to 2000 lines of code packaged in perhaps 25 to50 routines.
(ex) scientific application written by engineers to solve numeric problems; small commercial
application written by data processing personnel to perform.
A small project requires little interaction among programmers or between programmers
and customers.
MEDIUM-SIZE PROJECT:
A project of medium size requires two or five programmer working for 1 to 2 years and
results in 10000 to 50000 lines of source code packaged in 250 to 1000 routines. Products of
medium size have few, if any interaction with other program.
Medium size programs require include assemblers, compilers, small management
information system, inventory systems, and process control application.
Development of medium size program requires interaction among programmers and
communication with customer. Most application programs and many systems programs, are
developed in 2 years, improved product quality ,increased programmer productivity.
LARGE PROJECTS:
A large project requires 5 to 20 programmer for a period of 2 to 3 years and results in
10000 to 50000 source statements, packaged in several subsystem. A large program often has
significant interactions with other program and software systems.
(ex) large compiler, small time sharing systems, data base packages, graphics program for data
acquisition.
A large project generally requires more than one programming team and often involves
mre than one level of management. The size and complexity of a large project make it difficult
during planning and analysis.
VERY LARGE PROJECTS:
A very large project requires 100 to1000 programmers for a period of 4 to 5 years and
results in a software system of 1 million source instructions.
The subsystems typically have complex interactions with one another.
A very large systems often involves real-time processing telecommunication and
multitasking.(ex) large OS, data base system and military command and control system.
EXTREMLY LARGE PROJECT:
An extremely large project employs 2000 to 5000 programmers for periods of upto 10
years and result in 1 million to 10 million lines of source code.
Extremely large system consists of several very large systems and often involves real-
time processing telecommunication, multitasking and distributed processing.
Such systems often have extremely high reliability requirements and involve life-death
processes. (ex) air traffic control, ballistic missile defense and military command and control
system.
4. Write a short note on planning a software project.
1) Develop a definitive statement of the problem to be solved. Include a description of the
present situation, problem constraints.
2) Justify a computerized solution strategy for the problem.
3) Identify the function to be provided by and the constraints on the hardware subsystem the
software subsystem and the people subsystem.
4) Determine system-level goals and requirements for the development process and the
work products.
5) Establish high-level acceptance criteria for the system.
GOALS:
Goals are target for achievement and serve to establish the framework for a software
development project. Goals can be either qualitative or quantitative:
A qualitative process goal the development process should enhance the professional skills
of quality assurance personnel.
A qualitative process goal the system should be delivered within 12 months. qualitative
product goal the system should make users' jobs more interesting.
A quantitative product goal the system should reduce the cost of a transaction by 25
percent.
REQUIREMENTS:
It includes:
o Functional requirements
o performance requirements
o Requirements for the hardware
o Firmware
o Software
o user interfaces
and in general, planning the software project includes,
o defining product life cycle
o planning organizational structure
o establishing preliminary cost estimates
o preliminary development schedule
o preliminary staffing estimates
o preliminary resource estimates
o planning project monitoring and control mechanism
5. Explain the various management issues in detail.
Some of the problems identified by respondents as important management problems
were:
1. planning for software engineering projects is generally poor.
2. procedures and techniques for the selection of projects managers are poor.
3. The accountability of many software engineering projects poor, leaving some question as
to who is responsible for various project functions.
4. The ability to accurately estimate the resources required to accomplish a software
development project is poor.
5. Success criteria for software development project are frequently inappropriate .This
results in software products that are unreliable, difficult to use and difficult to maintain.
6. Decision rules to aid in selecting the proper organization structure are not available.
7. Decision rules to aid in selecting the correct management techniques for software
engineering projects are not available.
8. procedures, methods and techniques for designing a project control system that will
enable project managers to successfully control their project are not readily available.
9. procedures, techniques, strategies and aids that will provide visibility of progress to the
project manager are not available.
10. Standards and techniques for measuring the quality of performance and the quality of
production expected from programmers and data processing analysts are not available.
Some of the methods for solving these problems :
1. Educate and train top management, project managers and software developers.
2. Enforce the use of standards, procedures and documentation.
3. Analyze data from prior software projects to determine effective methods.
4. Define objective in terms of quality desired.
5. Define quality in terms of deliverables.
6. Establish success priority criteria.
7. Allow for contingencies
8. Develop truthful, accurate cost and schedule estimates that are accepted by management
and customers and manage to them.
9. Select project managers based on ability to manage software projects rather than on
techniques ability or availability.
10. Make specific work assignment to software developers and apply job performance
standards.

Potrebbero piacerti anche