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

Chapter seven

Question 1

Creating workaround for software package and its disadvantage

A workaround is a custom-built add-on program that interfaces with a packaged


software application to provide special functionality. Workarounds can be useful in
adding a few special features to a pre-written software package, making it more suited
to the organization's particular needs. The two disadvantages of workarounds are: (1) it
will not be supported by the software vendor, and upgrades to the package by the
vendor may cause problems with the workaround; and (2) the vendor may point to the
workaround if any problems occur with their product.

Question 2

Purpose of request for proposal (RFP), Difference between RFI

The RFP (Request for Proposal) is a document that is used to communicate an


organization's systems needs to a vendor or other provider who may be able to respond
to those needs. The RFP initiates communication between the two organizations. RFPs
are generally very lengthy and detailed, and the communication that takes place is quite
formal. The Request for Information (RFI), on the other hand, is usually shorter and less
detailed than an RFP. The RFI indicates that the organization is looking for information,
and the vendor is free to respond with that information in a much less formal way.

Question 3

Should analysis phase be eliminated or reduced when we intend to use


a software package instead of custom development or outsourcing
The analysis phase is very important, even if the design strategy chosen is packaged
software. It is critical to understand the business requirements for the problem domain
so that the various packaged solution options can be accurately evaluated. The
business requirements should drive the evaluation of the packaged software options.
We do not want the features of available software packages to determine what is
needed to solve the business problems

Chapter 8

Question 1

Distinguish between two tier, three tier and n tier client server
architectures
The differences in these client-server architectures have to do with the allocation of the various
components of the total application between the client and the server(s). In the two-tiered form,
the server is responsible for the data and the data access logic, and the client handles the
application logic and presentation logic. In the three-tiered form, the client handles the
presentation logic; one server handles the application logic; and a third server handles the data
storage and the data access logic. In an n-tiered client-server form, the client handles the
presentation logic; one or more servers handle the application logic; and one or more servers
handle the data storage and data access logic

Question 2

What is meant by the term scalable? What is its important in architecture


selection?

Scalability is the ability to increase or decrease the storage and processing capacity with ease.
This attribute is important to system developers because it may be difficult to accurately predict
the demands that exist in a particular computing environment. If the team underestimated
demand, it will be easy and relatively inexpensive to increase needed capacity. If the team
overestimated demand, it will be easy to reduce the capacity of the system and perhaps make
better use of the resources elsewhere

Question 3

Why is it useful to define the non functional requirements in more detail


even if the technical environment requirements dictate specific
architecture?

If the technical environment requirements dictate the architecture design, it is still important to
define the other nonfunctional requirements in detail. This is because these requirements will
become important in later stages of the design and implementation phases of the project.

Chapter 9

Question 1

Explain three important user interface design principles

The authors list six principles of user interface design:


Layout - the interface should be a series of areas on the screen that are used consistently for
different purposes.
Content Awareness - the user is always aware of where they are in the system and what
information is being displayed.
Aesthetics - interfaces should look inviting and should be easy to use.
User Experience - experiences users prefer ease of use, while inexperienced users prefer ease of
learning.
Consistency - users can predict what will happen before a function is performed.
Minimize Effort - interface should be simple to use.

Question 2

Why we prototype the user design interface


Prototyping helps the users and programmers understand how the system will perform.
Prototypes can be very useful in helping the users conceptualize how they will actually work
with the system, and prototypes can help identify problems or misconceptions in the interface
before it is actually implemented.

Question 3

Five types of input validation methods


Completeness checks are performed to verify that all required data items have been entered. In
some cases, data is optional in a transaction. However, when specific data is required, a
completeness check will ensure that something is entered in every required field. Format checks
are used when a particular data format is expected in the field and can be verified.. Range checks
are commonly used when a numeric item falls within some expected range of values. A check
digit check is used to validate numeric code fields. In these situations, an algorithm establishes a
check digit for each occurrence of the numeric code. Whenever a numeric code is re-entered into
the system its check digit is recalculated. If the calculated check digit does not match the
expected check digit, there has probably been a data entry error in the code, and it needs to be re-
entered. Consistency checks are performed when there is a relationship between field values that
is known and can be checked. Database checks are used to compare an entry against a value
stored in a file or database to ensure it is a valid value.

Chapter 10

Question 1

What is the purpose of the structure chart in program design?

The structure chart shows all of the components of code that need to be included in a program,
and shows the arrangement of those components as sequence, selection, or iteration control
structures.

Question 2

What does a data couple depict on a structure chart?


Data couples represent the movement of data elements or structures between modules. Control
couples represent parameters, messages, or status flags that are moved between modules.

Question 3

What is meant by characteristic of module coupling?

Module coupling refers to how closely modules are interrelated. Ideally, modules are loosely
coupled, which means that the design is characterized by a minimal number of interactions (e.g.
data passing) between modules. Modules that are loosely coupled can be considered to be fairly
independent and the interactions between them relatively easier to track and maintain, thus
contributing to the overall quality of the structure chart.

Chapter 11

Question 1

What is referential integrity and how is it implemented in a relational database

Referential integrity refers to the need to make sure that the values linking the table together
through the primary and foreign keys are valid and correctly synchronized. For example, if a
customer is placing an order, we need to have information on the customer in the customer table.
The RDBMS will check to see if there is a record for that customer in the Customer table before
it will let an order be entered. Checking for known required relationships helps assure referential
integrity.

Question 2

Describe the metadata associated with the physical ERD


Metadata included in the physical ERD includes information regarding attributes such as data
type, field size, format, default values, primary keys, and foreign keys.

Question 3

What is the purpose of normalization?

The purpose of normalization is to optimize the data storage design for storage efficiency.
Normalization helps ensure that data redundancy and null values are kept to a minimum.

Chapter 12

Question 1

Discuss the issues the project manager must consider when assigning programming taska
to the programmers

Project managers must consider the complexity of the modules being programmed
against the programmers available, as well as the programmer's expertise and
experience. Ideally, a project manager will be able to assign experienced programmers
to the more complex modules, and the less experienced programmers to the less
complex modules. If the programmer's skill and expertise are not a good match for the
project, the project manager may suggest additional training or mentoring to increase
the programmer's skill level.

Question 2

Discuss why testing is so essential to development of a new system


The cost associated with finding and fixing a major software bug after a system has been
implemented is very high. Therefore, thorough testing of the system is imperative. It is not
enough to have written a program; it also needs to be tested completely to verify it performs as
specified.

Question 3

In our experience documentation is left to the very end of the project

It may be that documentation is viewed as less "important" than other aspects of system
development; consequently, it gets left to the very end of the project. Also, some
analysts may be uncomfortable with the writing that must be done to produce
documentation, so it is avoided as long as possible. To avoid a mad rush to churn out
documentation at the end, the team should develop notes on documentation topics
throughout the project. These notes can then be assembled into polished
documentation.

Chapter 13

Question 1

Compare and contrast pilot conversation, phased conversation and simultaneous


conversation

These terms refer to how the organizational locations are transitioned from the old system to the
new system. In a pilot conversion, one location or part of the organization is converted first. The
system is installed at that location and is used for a time until it appears to be stable (initial bugs
discovered and fixed). Then the system is installed at the other locations. The pilot location
serves as a shakedown site for the system. In the phased conversion approach, the system is
installed sequentially at different locations. Gradually, the conversion process spreads across all
locations until all have been converted. Simultaneous conversion means that all locations are
converted at the same time. With this strategy, there is no period in which some locations are
using the old system and other locations are using the new system.

Question 2

Why do people resist change

Resistance to change is a typical response to an externally-imposed need to change. In


determining their own response to a need to change, people will evaluate (implicitly or
explicitly) the potential value of the new system (expected costs versus expected benefits), and
will also assess their perceptions of the expected costs and benefits of transitioning from the
status quo to the new situation. Only if the perceived benefits of the change and the perceived
benefits of the transition outweigh the perceived costs will people’s resistance to change be low.

Question 3

Compare and contrast approaches to training

Classroom training is the traditional approach to training in which a number of


people are trained simultaneously with one instructor. One-on-one training puts
one trainer with one student at a time. Computer-based training uses a CD or
Web-based training program delivered to students as needed. Classroom
training is moderately effective. Its costs are moderate, and it is fairly effective,
especially since it is the method that many people are most familiar with. One-
on-one training is very effective, but is expensive to deliver and reaches only a
few people. Computer-based training is very costly to develop, but is
inexpensive to disseminate after development. It can reach a large number of
people, but its effectiveness can be limited.

You might also like