Software Engineering Often Asked Question Answers PDF
Software Engineering Often Asked Question Answers PDF
Software Engineering Often Asked Question Answers PDF
https://genuinenotes.com
Explain why interface testing is necessary even when individual
components have been extensively validated through component
testing and program inspections
https://genuinenotes.com
Explain the differences between verification and validation,
and explain why validation is a particularly difficult process
https://genuinenotes.com
Do you think is it necessary for a program to be completely free of
defects before it is delivered to its customer? To what extent can
testing be used to validate that the program is fit for its purpose?
https://genuinenotes.com
Explain why program inspections are an effective technique for
discovering errors in a program. What types of error are unlikely to be
discovered through inspections?
https://genuinenotes.com
*Suggest why the savings in cost from reusing existing software is not
simply proportional to the size of the components that are reused.
https://genuinenotes.com
Give at least two circumstances where you
might recommend against software reuse.
• The source of software is not credible and might
bring potential errors in the components. This is
dangerous as reused component might bring
numerous bugs to the system and high cost-
ineffective.
• Critical-system is not a good subject of software
reusing since we have to have a good
understanding of the program flow. Since
software reusing is susceptible to compatibility
issue, it is not worth to implement it and will
bring further time-consuming fix to the system.
https://genuinenotes.com
Explain in detail why a software system that is used in a
real-world environment must change or
become progressively less useful.
• The number of users may increases the burden
of the system, requiring it to expand its hardware
capability to handle several connections.
• The business model of the company may
change so the system become obsolete and
need for a change to cope its requirements.
• The law in the particular country may impose a
particular standard to conform a legal usable
software.
• The expansion of requirements which requires
the software to enable additional features to
cope users’ requests.
https://genuinenotes.com
What are essential conditions for software re-
engineering to be successful?
https://genuinenotes.com
What are the strategic options for legacy system evolution? When
would you normally replace all or part of a system rather than continue
maintenance of the software (with or without re-engineering)?
https://genuinenotes.com
Your customer wants to develop a system for stock information where dealers can access information
about companies and can evaluate various investment scenarios using an simulation system. Each dealer
uses the simulation in a different way, according to his/her experience and the type of stocks n question.
Suggest a client-server architecture for this system that shows where functionality is located. Justify the
client-server system model that you have chosen.
Client Server
Request data
Application Database
Send data
https://genuinenotes.com
By making reference to the application model shown below , list and explain at
least two problems that might arise when converting a 1980 s mainframe
legacy system for insurance policy processing to a client-server architecture
https://genuinenotes.com
*Using UML graphical notation for object classes , design the following object classes identifying
attributes and operations. User your own experience to decide on the attributes and operations that
should
be associated with theses objects:
https://genuinenotes.com
*Identify the possible objects in the following systems and develop an object-
oriented design for them.
You may make any reasonable assumptions about the system when deriving
the design.
https://genuinenotes.com
*What factors to be taken into account in the design of a menu-based interface
for walk-up systems
such as bank ATMs? Write your comments on the interface of an ATM that you
use.
Factors to be taken into account when designing 'walk up and use' systems are:
1. System users may be infirm, or disabled so will not be able to respond quickly to requests.
2. Users may not be able to speak the native language of the country where the machine is
installed.
3. ystem users may be completely unfamiliar with technology and may make almost any kind
of error in using the machine. The interface must minimise the number of possible errors
and must be resilient to any possible error.
4. Some system users are likely to be intimidated by many options. On the other hand, as
users gain familiarity with the system, they may expect to use it for a wider range of
banking services.
5. Different people may understand the meaning of icons in different ways.
6. If the system has navigation options, users are almost certain to become lost.
7. Most users will want to use the system for very simple functions (e.g. withdraw cash from
an ATM) and will want to do this as quickly as possible.
There are many different ATM interfaces so each must be considered separately. Some
example problems are:
• When is it possible to cancel a transaction? What happens when I do so? What will I have
to re-input if I restart the transaction?
• There is not usually any way of saying give me the maximum amount of money I may
withdraw today.
• Some machines only support single transactions - there is no way of saying I will be
making several transactions and the same validation process is applicable to all of them.
https://genuinenotes.com
Discuss whether it is ethical to instrument software to
monitor its use without telling end users that their
work is being monitored.
• Advantages
– Scenarios cope with most of common operation. It is easy to
identify what type of operation that is required in the user’s
stories. (Just look for the verb in the scenario cards)
– Customer focus in the scenario card increase the chance that
the software produced will actually meet the needs of the users
• Disadvantages
– Using scenarios on a card can bring to a function overlooked or
omission which can be a time-consuming process to complete
the system
– Two different scenarios can lead to the same function as it will
be conflicted each other. Crossing out redundant scenarios can
be a cumbersome tasks.
https://genuinenotes.com
Suggest at least two reasons why the productivity rate of programmers
working as a pair is roughly the same as two programmers working
individually.
https://genuinenotes.com
A charity has asked you to prototype a system that keeps track of all donations they have received. This system has to maintain
the names and addresses of donors, their particularly interest, the amount donated and when the donations was made, If the
donation is over a certain amount, the donor may attach conditions to the donation (e.g. It must be spent on a particular project),
and the system must keep track of theses and how the donation was spent. Explain in details how you would prototype this
system, nearing in mind that the charity has a mixture of paid workers and volunteers. Many if the volunteers are retirees who
have has little computer experience.
https://genuinenotes.com
Apart from the challenge of heterogeneity, rapid delivery and trust,
identify at least three problems and challenges that Software
Engineering is likely to face in the 21st century.
• Confidentiality
– Engineers should normally respect the confidentiality of their
employers or clients irrespective of whether or not a formal
confidentiality agreement has been signed.
• Competence
– Engineers should not misrepresent their level of competence.
They should not knowingly accept work which is outwit their
competence.
• Intellectual property rights
– Engineers should be aware of local laws governing the use of
intellectual property such as patents, copyright, etc. They should
be careful to ensure that the intellectual property of employers
and clients is protected.
https://genuinenotes.com
List at least two advantages and two disadvantages professional
software engineer should be certified in the same way as doctors or
lawyers.
• Advantages
– Competitive since they have been trained according
to the standardize training procedure.
– Legal binding from the source of certification can
ensure the that the software engineer is trusted.
• Disadvantages
– Certification may not reflect the performance of the
software engineer.
– No assurance that certified software engineer will
guarantee fool-proofed project.
https://genuinenotes.com
Explain why legacy systems may be critical
to the operation of a business.
• They may be an intrinsic part of one or more processes
which are fundamental to the operation of a business.
For example, a university has a student admissions
process and systems which support this are critical.
They must be maintained.
• They may incorporate organisational and business
knowledge which is simply not documented elsewhere.
For example, exceptions on student admissions may
simply have been coded directly into the system with no
paper record of these. Without this system, the
organisation loses valuable knowledge.
https://genuinenotes.com
A multimedia virtual museum system offering virtual experiences of ancient Greece is to be developed for
a consortium of European museum, The system should provide users with the facility to view 3-D models of
ancient Greece through a standard web browser and should also support an immersive virtual reality
experience. What political and organizational difficulties might arise when the system is installed in the
museum that make up the consortium?
• Museums are conservative places and some staff may resent the
introduction of new technology.
• Existing museum staff may be asked to deal with problems of the
equipment not working and may not wish to appear unable to deal
with this.
• Other areas of the museum may oppose the system because they
see it as diverting resources from their work.
• Different museums may have different preferred suppliers for the
equipment so that all equipment used is not identical thus causing
support problems.
• The new displays take up a lot of space and this displaces other
displays. The maintainers of these displays may oppose the
introduction of the system.
• Some museums may have no mechanism for providing technical
support for the system.
https://genuinenotes.com
Draw a block diagram of possible architecture for such a flood warning
system. You should identify the principal sub-system
and their links between them.
https://genuinenotes.com
In a medical system that is designed to deliver radiation to treat tumors,
suggest one hazard that may arise AND propose one software feature that may
be used to ensure that the identifies hazard does not result in an accident.
https://genuinenotes.com
*Giving reasons for your answers, suggest which dependability
attributes are likely to be more critical for
the following systems:
https://genuinenotes.com
Reliability and safety are related but distinct dependability attributes. Describe
the most important distinction between these attributes and explain why it is
possible for a reliable system to be used and vice versa.
https://genuinenotes.com
In computer security terms, explain the
differences between an attack and a threat.
• Attack is an intrusion attempt to a system
that might lead to a vulnerability of a
system.
• Threat is the exploitation of system
vulnerability that can cause the system to
fail or degrade.
• An attack, however, is not necessary lead
to a threat if it is managed and prevented
by the system.
https://genuinenotes.com
Giving reasons for your answer based in the type of system being developed,
suggest the most appropriate generic software process model that might be
used as basis for managing the development of the following system:
https://genuinenotes.com
In the context of CMM prediction of performance,
explain in details in the following areas:
https://genuinenotes.com
In the context of CMM prediction of performance,
explain in details in the following areas:
Level1 Level2 Level3 Level4 Level5
Success Success Project groups Strong sense Strong sense
depends on depends on work together, of teamwork of teamwork
individual individuals; perhaps as an exists within exists across
heroics. management integrated each project. the
system product team. organization.
P supports.
E
“Fire fighting” Commitments Training is Everyone is
O is a way of life. are understood planned and involved in
P and managed. provided process
L according to improvement..
E roles.
https://genuinenotes.com
Classic mistakes
• The assumption that increasing workforce
of an IT project may lead to a faster
finished in software development is wrong.
• This usually happens because of
underestimating the worth of project
deadline and by adding people in the late
project will result in greater conflict and
inefficient communication between the
team.
https://genuinenotes.com
*Draw an activity chart showing
the project schedule.
T1 T2
Sta rt: 2/ 10/09 ID: 1 Sta rt: 2/ 24/09 ID: 2
F inish: 2/ 23/ 09 Dur : 10 days F inish: 3/ 16/ 09 Dur : 15 days
Res: Res:
T3 T7 T8
Sta rt: 3/ 17/09 ID: 3 Sta rt: 3/ 31/09 ID: 7 Sta rt: 4/ 28/09 ID: 8
F inish: 3/ 30/ 09 Dur : 10 days F inish: 4/ 27/ 09 Dur : 20 days F inish: 6/ 15/ 09 Dur : 35 days
Res: Res: Res:
T4 T6 T9
Sta rt: 2/ 10/09 ID: 4 Sta rt: 3/ 31/09 ID: 6 Sta rt: 4/ 21/09 ID: 9
F inish: 3/ 9/09 Dur : 20 days F inish: 4/ 20/ 09 Dur : 15 days F inish: 5/ 11/ 09 Dur : 15 days
Res: Res: Res:
T13
Sta rt: 3/ 31/09 ID: 13
F inish: 5/ 18/ 09 Dur : 35 days
Res:
T5
Sta rt: 2/ 10/09 ID: 5
F inish: 2/ 23/ 09 Dur : 10 days
Res:
https://genuinenotes.com
*Draw an activity chart showing
the project schedule.
https://genuinenotes.com
Fixed-price contracts, where the contractor bids a fixed price to complete a system
development, may be used to move project risk from client to contractor. If anything goes
wrong, the contractor has to pay. Suggest how the use of such contacts may increase
the likelihood that product risks will arise.
https://genuinenotes.com
Explain why the process of project planning is iterative and
why a plan must be continually reviewed during a software
project.
https://genuinenotes.com
*Discover ambiguities or omissions in the following
statement of the requirements for part of a ticket-issuing
system.
Ambiguities and omissions include:
• Can a customer buy several tickets for the same destination together
or must they be bought one at a time?
• Can customers cancel a request if a mistake has been made?
• How should the system respond if an invalid card is input?
• What happens if customers try to put their card in before selecting a
destination (as they would in ATM machines)?
• Must the user press the start button again if they wish to buy another
ticket to a different destination?
• Should the system only sell tickets between the station where the
machine is situated and direct connections or should it include all
possible destinations?
https://genuinenotes.com
Suggest who might be stakeholders in a university student records
system. Explain why it is almost inevitable that the requirements of
different stakeholders will conflict in some way.
https://genuinenotes.com
*The LONTAR system has to include support for cataloging new documents where the
system catalog may be distributed across several machines. What are likely to be the
most important types of nonfunctional requirements associated with the cataloguing
facilities?
• Performance
– The time to search a particular document is not less than 5 ms.
– The time to login into the system must less than 1 ms
– Downtime period is less than 1 hour and performed at 01.00 AM where system activities is at the minimum
level.
• Information
– Data is updated real-time, with interval of data update less than 3 ms.
– Data redundancies are reduced until 0% with no fake data entry.
– The addition of data log to track the activity of data entry, producing a reliable information.
• Efficiency
– The form that has to be written to enter a document is only one with less than 10 fields.
– No form is needed to request a particular document.
• Control
– Only legitimate user can gain access to the documents.
• Economy
– System administrator is only one against the manual system which take more than 5 people.
– Paperwork is reduced to less than Rp 50,000/month. The only expense in paperwork is when monthly and annual
report is required.
– Space consume for installing the system is less than 1/16 of the average cubical office..
• Security
– The existence of an underground backup storage will prevent data loss from accident or mishap.
https://genuinenotes.com
*Using your knowledge of how an ATM is used, develop a
set of use-cases that could server as a basis
for understanding the requirements for an ATM system.
• Login
• Withdraw Money
• Check Amount
• Check Transfer Limit
• Calculate Current Balance
• Update Account Balance
• Print Report
https://genuinenotes.com
*When emergency changes have to be made to system, the system software may have to be modified before
changes to the requirements have been approved. Suggest a process model for making these modifications
that ensures that the requirements document and the system implementation do not become inconsistent.
https://genuinenotes.com
Your company uses a standard analysis method that is normally applied in all requirements analyses.
In your work, you find that this method can not represent social factors that are significant in the
system you are analyzing. You point this out to your manager, who makes it clear that the standard
should be followed. Discuss what you should do in such situation.
https://genuinenotes.com
Draw a context model for a patient information system in a hospital. You may make any
reasonable assumptions about the other hospital systems that are available, but your
model must include a patient admission and an image storage system for X-ray, as well
as other diagnostic records.
https://genuinenotes.com
Draw a data-flow diagram modeling the data processing
with a bank ATM involved when a customer withdraw cash
from the machine.
https://genuinenotes.com
Develop a sequence diagram showing the interaction involved when a student registers for a course in
a university. Course may have limited enrolment, so the registration process must include checks that
places are available. Assume that the student accesses an electronic course catalogue to find out
about available courses.
https://genuinenotes.com
In the insulin pump system, the user has to change the needle and insulin supply at regular intervals
ad may also change the maximum single dose ad the maximum daily dose that may be administrated.
Suggested three user errors that might occur and propose safety requirements that would avoid
theses errors resulting in an accident.
https://genuinenotes.com
5. A safety-critical software system for treating cancer patients has two principal components:
-A radiation therapy machine that delivers controlled doses of radiation to tumor sites. This machine is controlled by an embedded
software system. -A treatment database that includes details of the treatment given to each patient. Treatment requirements are
entered in this database and are automatically downloaded to the radiation therapy machine. Identify three hazards that ma arise
in this system. For each hazard, suggest a defensive requirement that will reduce the probability that these hazards will result in
an accident. Explain why your suggested defense is likely to reduce the risk associated with the hazard.
https://genuinenotes.com
Explain why it may be necessary to design the system
architecture before the specifications are written.