You are on page 1of 8

Topic: SOFTWARE ENGINEERING

Difference between :( 2 marks each)


A) Embedded software and System software.
B) Coupling and Cohesion.
C) Quality assurance and Maintenance.
D) Black box and White box testing.
E) Top down and Bottom up design.
F) Abstraction and Polymorphism.
G) Ego-less team and Chief programmer team.
H) Verification and Validation.
I) Cardinality and Ordinality.
J) Evolutionary prototyping and Throw-away prototyping.

Section: B :( 10 marks each)


* Write short notes on the following:
A) Formal technical reviews.
B) Software maintenance.

* Explain the difference between waterfall model and prototype


model. Write the advantages and drawbacks of both the models.

* What is SRS? Why do we need SRS? What are the


characteristics and components of SRS?

* Develop an object for developing a library management


system. Explain the different features of the object models.

** A) cost estimates are inherently risky irrespective of the


estimation technique used. Suggest four ways in which the risk
in a cost estimate can be reduced?
** B) What is software configuration management? Explain
the role of configuration status reporting?

* A) Compare and contrast top-down integration testing and


Bottom-up integration testing.
B) Explain the data flow diagram and data dictionary with
the help of an example?

Date: 27.11.2004
The goal of the design is to produce a module or the representation
of the system, which can be used later to build that system. The
produced module is called the design of the system. The design of
the system is essentially a blue print or the plan for the solution of
the system.

SYSTEM DESIGN:
At the first level the focus is on designing which modules are
needed for the system, the specification of these modules and how
these modules should be interconnected. This is system design.

DETAIL DESIGN:
In the second level the internal design of the module is decided. This
design level is often called detailed design.

MODULARITY:
A system is considered modular if it consists of the discrete
components i.e. that each component can be implemented separately
and a chained to one component has minimal impact on the other
components.
DESIGN APPROACH:
1) Top-down approach.
2) Bottom-up approach.

TOP-DOWN APPROACH:
A top-down approach starts by identifying the major components of
the system decomposing them into three lower level components
and repeating them until the detailed level is achieved. The top-
down design method often results in stepwise refinement.

BOTTOM-UP APPROACH:
The bottom-up approach starts with the most basic or primitive
components and proceeds to higher level components that use these
lower level components. Bottom-up method works with layer of
abstraction.

COUPLING AND COHESION:


Coupling between modules is the strength of interconnection or
measure of interdependence between modules. Highly coupled
modules are joined by strong interconnections while loosely coupled
modules have weak interconnections. Coupling can be minimized
by reducing the number of the interfaces and second one is by
reducing the complexity of each interface.
Cohesion of module represent how tightly bound the internal
elements of the module are to one another. Cohesion of module
gives the designer an idea about whether the different elements of
the module together in the same module. There are several levels of
cohesion are:
a) Functional level.
b) Sequential level. (First line output works as second line input.)
keep together in sequence
c) Coincidental level. (Lowest kind should be avoided.)
d) Association based approach of cohesion.
SOFTWARE TESTING:

APPROACHES:
1.) Top-down approach.
2.) Bottom-up approach.

TOP-DOWN APPROACH:
In the top-down approach strategy, we start by testing the top of the
hierarchy and we incrementally add modules that it calls and then
test the new combined system. This approach requires stub to be
written. A stub is a dummy routine that simulates a routine. To
allow the module to be tested before their subordinate modules have
been coded. Stub simulates the behavior of the subordinates.

BOTTOM-UP APPROACH:
The bottom-up approach starts from bottom of the hierarchy. First
the module at the very bottom are tested and then combined with
higher level of modules for testing. To perform bottom-up testing
drivers are needed to set up the appropriate environment and invoke
the module it is the job of the driver to invoke the module under the
testing with the different set of cases.

TYPES OF TESTING:
a) Unit testing -> single module.
b) Integrated Testing -> how modules work together.
c) System Testing -> each phase gives deliverable document
(i.e. along code) here are tested.
d) User Acceptance Testing -> it tests at user side or client side
accepting the live data from the client and see whether the
process works or not.

SYSTEM TESTING:
Each phase gives deliverable document (i.e. along code) here is
tested.
USER ACCEPTANCE TESTING:
It tests at user side or client side accepting the live data from client
and see whether the process works or not.
e) Functional (Black Box Testing) e.g. random testing.
f) Structural Testing (White Box Testing)

BLACK BOX TESTING:


It doesn’t use any particular approach. It works insulation around
module.

Date: 29-11-2004
WAP AND WML
LAYERS:
1 Application layer:
(Wireless application environment)
2 Session layer:
(Wireless session protocol)
3 Transaction layer:
(Wireless transaction layer)
4 Security layer:
(Wireless transport layer security)
5 Transport layer:
(Wireless data gram protocol)

1) The user selects an option on their mobile device that has URL
with wireless markup language content assigned to it.
2) The device sends the request via a phone network to a WAP
gateway using the binary encoded WAP protocol.
3) The gateway translates this WAP request into a conventional
HTTP request for the specified URL and sends it on the
Internet.
4) The appropriate web server picks up the HTTP request.
5) The server processes the request and if the URL refers to a static
WML file the server delivers it.
6) The web server adds the HTTP header to the WML content and
returns it to the gateway.
7) The WAP gateway compiles the WML into binary form.
8) The WAP gateway then sends the WML response back to the
mobile device.
9) The mobile device receives the WML via the WAP protocol.
10) The micro browser processes the WML and displays the
content on the screen.

RESTRICTIONS OF THE WIRELESS NETWORK:

1) Low Bandwidth (i.e. less bits\sec) was recovered by compacting


the data, URL request is encoded.
2) Low Resolution
3) High Latency time between sending a request and
acknowledgement.
4) Less Connection Stability and Unpredictable Bearer availability
5) Small Display on mobile phones
6) Small memory and CPU
7) Limited Input Facilities
8) Dependence on the batteries, which are small and have very little
standby time.

• HDTP- Handheld Devices Transport Protocol.


• GSM- Global Services for Mobile Communication.
• Protocol: set of rules and standards.
• Frame: it is not supported to phone services.

APPLICATION DESIGN PROCESS:


1. Who is your customer?
2. What micro browser u will design for?
3. What phone will u design for?
4. What problems will the user ran into?
5. Solve each of the problem u have visualized.
6. Draw the screen for the application.
7. Test the mock up.
8. Write the pseudo code.
9. Write the prototype
10. Test the prototype for the user building.
11. Fill in the gaps.
12. Test the final product.

IMPORTANT QUESTIONS:

2 MARK EACH:
• What is the b\w coupling and cohesion?
• What is data dictionary?
• What is SRS and give the characteristics of a good SRS?
• Explain behavioral modeling with example?
• What does u understand by the term software quality
assurance?

5 MARK EACH:
• What is a risk? Explain the risk management process?
• What is the use of object model in requirement analysis
explain?
• Explain in brief the formal inspection process?
• Compare dataflow testing and random testing?
• Give the characteristics of a good test case?

1 MARKS EACH:
• The fourth level of capability maturity model is
a) Defined.
b) Managed.
c) Repeatable.
D) Initial.
• The strength of interconnection between modules is called
cohesion (true or false).
• In a DFD a bubble represents data repository (true or false).
• When a single module is tested incomplete it called
A) Unit testing.
B) Structure testing.
c) Alpha testing.
D) Integration testing.
• Risk exposure is________into probability of risk
occurrence.