You are on page 1of 18

Systems Analysis and Design in a Changing World, sixth edition 14-1

Chapter 14 Current Trends in System Development


Solutions to End-of-Chapter Problems

Review Questions
1. What are the four UP phases, and what is the objective of each?

1. Inception Develop an approximate vision of the system, make the business case, define
the scope, and produce rough estimates for cost and schedule.

2. Elaboration Refine the vision, identify and describe all requirements, finalize the scope,
design and implement the core architecture and functions, resolve high risks, and produce
realistic estimates for cost and schedule.

3. Construction Iteratively implement the remaining lower-risk, predictable, and easier


elements and prepare for deployment.

4. Transition Complete the beta test and deployment so users have a working system and
are ready to benefit as expected.

2. What are the six UP development disciplines?

(1) Business modeling, (2) requirements, (3) design, (4) implementation,(5)test, and (6)
deployment.

3. What are the three UP support disciplines?

(1) Configuration and change management, (2) project management, and (3) environment.

4. List the basic principles of Agile Modeling. (Chapter 8 page 245.)

Develop software as your primary goal.


Enable the next effort as your secondary goal.
Minimize your modeling activityfew and simple.
Embrace change, and change incrementally.
Model with a purpose.
Build multiple models.
Build high-quality models and get feedback rapidly.
Focus on content rather than representation.
Learn from each other with open communication.
Know your models and how to use them.
Adapt to specific project needs.
Systems Analysis and Design in a Changing World, sixth edition 14-2

5. Why is the word extreme included as part of Extreme Programming?

The intent of XP is to extend the best practices of software development to the extreme.

6. List the core values of XP.

Communication
Simplicity
Feedback
Courage

7. List the XP practices.

Planning
Testing
Pair programming
Simple designs
Refactoring the code
Owning the code collectively
Continuous integration
On-site customer
System metaphor
Small releases
Forty-hour week
Coding standards

8. What is the product backlog used for in a Scrum project?

The product backlog is a list of all the things the system should include and address, including
user functions, features, and technology. The product backlog is continually being prioritized
and is controlled by the product owner.

9. Explain how a Scrum sprint works.

A Scrum sprint is a firm 30-day time box with a specific goal or deliverable. At the beginning,
the team gathers for a one-day planning session, during which they decide on the major goal for
the sprint, drawing from the prioritized product backlog. The scope of that sprint is then frozen.
Team members meet every day to report progress. At the end of the sprint, the agreed-upon
deliverable is produced.

10. Explain the difference between device-top applications, free-standing Internet applications,
and browser-based applications.

Device-top applications are those that run on a client computer without any need to be
connected to a network. They do not utilize client/server technology.
Systems Analysis and Design in a Changing World, sixth edition 14-3

Free-standing Internet applications are those that require a network and run in a client/server
environment be they are custom designed and do not use a browser to display screens.

Browser-based applications require a network connection and run in a client/server environment


but also use the services of a browser to display pages.

11. What is the last mile problem?

The Internet consists of major servers and network connections which consist of large size
computers and fiber or copper cabling around the globe. This is called the Internet backbone.
However to get connectivity from the backbone to an individual house or office, requires
individual connections to each house (or a in-air transmission and receive capability). This last
piece of the connectivity is called the last mile. It is often difficult, because it requires
digging and laying cable from street to street and house to house.

12. Explain what SAAS is and why it is an economically attractive alternative.

SAAS means Software as as Service. It is economically attractive because customers can


purchase (via a service agreement) specific software applications like a service. A customer
does not need to purchase the software itself, nor the computing capability to host it, but only
purchases the service and therefore only pays for what is actually used. It is financially efficient
because the service provide can distribute hosting and operation costs across many clients.

13. What are the six licensing criteria that are usually associated with open-source software?

11 Source codeThe source code must be open for distribution.


11 Freely redistributableRecipients of the source code may also distribute it.
11 Derived worksThe source code can be modified and distributed in its modified form.
11 Distribution of licenseThe open license should apply to all derived or modified software.
11 No discriminationThe license cant restrict who can receive or use the software.
11 No related restrictionsThe license cant restrict other software that may be distributed in
conjunction with the open-source software.

14. List eight or 10 popular open-source applications. You may include some not mentioned in the
text.

Answers will vary. The ones from the text include.

Open Office
Open Project
MySQL
NetBeans
PostgreSQL
Eclipse
GIMP
Systems Analysis and Design in a Changing World, sixth edition 14-4

KTooN
GNU Privacy Guard
ClamWin
Open project
Aptana Studio
SeaMonkey
Unix
Apache
WordPress
phpBB
Joomla

15. Explain the evolution of Web pages.

Web pages have gone through three major evolutionary changes. These changes are not distinct
and separate changes, but simply reflect the major evolution.
The first types of pages were static pages which had text, some images, and links to
other pages.
The second major advance occurred when pages added more animation and dynamic
pages that varied depending on the user and the data available.
The third major advance is to make the browser pages function more like a true
application with dynamic changing of the page itself through dynamic programming and
rapid contact with the server. The user himself can work on the page as though it were
an application.

16. Explain how an API works.

An API (Application Program Interface) consists of the set of program functions or method
signatures that are presented as external functions that can be used by outside programs. In
other words, a system may have a defined API so that things like plug-ins may be connected to
it by executing those specific API methods. An API provides a way that external programs can
use the services of a specific system.

17. What is the difference between widgets and plug-ins and themes?

Plug-in is a generic name to refer to all types of small applications that use and extend the
services of a system (by using its API). A widget is a specific type of plug-in that focuses on the
user interface. A theme is an add-on that changes the look and feel of a system. A theme is not
usually considered a plug-in because it does not have executable statements. It usually consists
only of formatting options that are invoked by the main application to change the look and feel
of the user interface.

18. What is meant by Web 2.0?


Systems Analysis and Design in a Changing World, sixth edition 14-5

Web 2.0 is a loosely defined term that is not standardized in the industry but which refers to the
ability to allow the user to generate content or make changes to a the user interface. It refers to
those capabilities that allow the user to interact more readily with Web pages.

19. What is a mashup and why is it an important contribution to Web 2.0?

A mashup is the concept of combining the capabilities of two or more Web systems and serve it
in a single integrated Web site. Multiple Web systems that have predefined APIs can be
combined by invoking the services of each, via the API of each Web site, and combining them
together into a single Web page or Web site. It is important for Web 2.0 because it allows new
and innovative ways to allow users to interact and obtain services via the Web.

20. What is an RIA and why is it an important contribution to Web 2.0?

Rich Internet Applications consist of Web pages that support elaborate and extensive user
interaction. RIA usually contain extensive multimedia as well as allowing the user to enter data
and make changes dynamically on the Web page. Obviously, this is a major contribution to
Web 2.0 and supporting sophisticated user interaction.

21. What is the difference between JavaScript and JavaFX?

JavaScript is a programming language that is executed within a Web browser. All of the major
Web browsers support JavaScript programming to allow executable code on the client computer
within a browser. JavaFX is a Java (which is entirely different than JavaScript) based
environment running under the Java Runtime Environment (JRE). Java based systems use Java
applets and Java servlets to produce active systems without requiring browser based execution.

22. What is HTML5?

HTML 5 is a new standard for HTML (still under development and approval), that defines
specific RIA components within the standard. As HTML 5 is integrated into the browsers, then
the browsers themselves will have built in capability to support RIA sites.
Systems Analysis and Design in a Changing World, sixth edition 14-6

Problems and Exercises


1. The Unified Process (UP) was first developed by a company called Rational, which is now
owned by IBM. On the IBM Web site, find any information about UP tools available through
IBM/Rational. Briefly describe the suite of tools available. Also, look on the IBM Web site and
other Web sites (such as the Agile Modeling Web site) for opinions on the relationships and
commonality between the UP and Agile Modeling. Report your findings.

Answers will vary.

2. Consider X P's team-based programming approach in general and its principle of allowing any
programmer to modify any code at any time in particular. No other development approach or
programming management technique follows this particular principle. Why not? In other words,
what are the possible negative implications of this principle? How does XP minimize these
negative implications?

Answers will vary.


Some of the potential problems of allowing anybody to make changes to the code are:
Not communicating to the primary author when changes are made,
Primary author (and tester) not being aware of changes and making conflicting tests or
changes,
Primary author becoming defensive about code quality
Primary author wanting to own the code

XP helps with these problems by (1) establishing ground rules that code can be modified by
multiple programmers, and (2) setting up an effective communication system to let others know
when code is changed. Also by integrating continuously with small releases, the impacts of
code changes are kept current for all to use.

3. Visit the Web sites of the Agile Alliance (www.agilealliance.org) and Agile Modeling
(www.agilemodeling.com). Find some articles on project management in an Agile environment.
Summarize key points that you think make project management more difficult in this
environment than in a traditional, predictive project. Do the same for key points that make
project management easier for an Agile project.

Answers will vary.

4. Visit the Web site of the World Wide Web Consortium (www.w3.org) and review recent
developments related to the HTML5 standard. What are some of the basic components of the
standard? What are the major additions to HTML4?

Answers will vary.

HTML5 brings in new elements to structure the web pages as compared to HTML4 which uses
Systems Analysis and Design in a Changing World, sixth edition 14-7

common structures such as: header, columns etc.


These new elements are: header, nav, section, article, aside, and footer.
HTML5 brings a whole new dimension to web world. It can embed video on web-pages without
using any special software like Flash.
Not only videos, HTML5 is said to be capable of playing video games on the browser itself (8-
bit games have been tried on it).
Besides this, HTML5 is considered to be flexible to handle inaccurate syntax. HTML5
specifies the rules related to the parsing and lexing as compared to HTML4. This means that
even if there is an incorrect syntax, similar result is produced by various complaint browsers.
Furthermore, HTML5 denotes to scripting of API (application programming interfaces)
including new APIs like:-
Drag and drop
Database storage off line
Editing of the document
Canvas 2D APIs, etc.

5. Find a company in your community that uses Scrum or XP (or variations thereof) as its
development methodology. Learn how the company has applied the methodology and how it
applies the principles and practices. Also, research what development tools it uses and how well
the methodology is supported.

Answers will vary.

6. Find someone in your community who is working on a software development project that is
using Agile principles. How was the team trained to use Agile Development? How was this
approach adopted in the organization? What is the general feeling about its success? What
aspects does this developer like? Which aspects does he or she find frustrating or difficult to use?

Answers will vary.


Systems Analysis and Design in a Changing World, sixth edition 14-8

Solutions to End-of-Chapter Cases

Case Study: Midwestern Power Services


MPS is currently in the early stages of planning the system upgrades. It hasnt yet committed to
specific technologies or development approaches. It also hasnt yet decided whether to upgrade
individual systems or replace them entirely. The target date for completing all system
modifications is three years from now, but the company is actively seeking ways to shorten that
schedule.

Note that answers will vary and there are really no wrong answers. Poor answers are only those
that are not logically supported.

1. What would you recommend as an approach to upgrading the three listed applicationsa
single total project or three individual projects? Explain your decision.

Answers will vary. Some considerations might be:


Single project approach:
Large and complex project
Large projects are higher risk with more potential for failure
Will possibly overextend the available resources
May require outside resources
Could possibly reduce the overall time to completion due to massive parallel activities

Multiple projects approach


Will probably take longer
Will permit learning curve on how best to solve problems
Will require close communication to ensure consistency across systems
Smaller, less complex projects will be less risk
Can be done with smaller staff

2. Describe the pros and cons of the UP approach versus XP and Scrum development approaches
to upgrading the existing systems or developing new ones. Do the pros and cons change if the
systems are replaced instead of upgraded? Do the pros and cons vary by system? If so, should
different development approaches be used for each system?

Answers will vary.


UP tends to be a more formal approach with more ceremony and more specific planning
required. Both XP and Scrum tend to do well with an organic approach to growing systems
either as a walking skeleton approach or modifying an existing system. The preferred
approach also depends heavily on the organization cultural, whether the developers are used to
working in a purely adaptive environment, or whether they have a more predictive mentality.
UP is also less adaptive and a little more predictive in its planning and execution.
Systems Analysis and Design in a Changing World, sixth edition 14-9

3. Assume that MPS has had very little experience with developing projects by using adaptive
techniques. Do you think it would be viable for them to attempt an adaptive approach for these
three systems? What would be your recommendation for each? Which method would you
recommend and why?

Answers will vary.


If MPS has little experience with adaptive techniques, it should probably try to do two things:
1. Try a smaller project or a preliminary project with some adaptive techniques to teach the
developers how to work in that kind of environment.
2. Probably start with UP because it is more formal and would be less of a shock to the
developers.

However it would be a good idea to take some the more innovative developers and use some
adaptive techniques. They could then train additional developer teams in adaptive techniques.

4. Assuming MPS decided to use one of the three methodologies discussed in the chapter, make a
list of potential problems and the steps they should take to avoid those problems. List any
activities they should consider to ensure success.

Answers will vary. Some considerations:


Management does not know how to manage adaptive projects
Executive management does not understand that progress and status is reported
differently
Management may try to interfere and modify the projects in the middle.
Developers do not understand how to work with adaptive projects
Developers do not have the 'mind set' of Agile and XP (Scrum) philosophies
Project manager does not know how to manage using Adaptive philosophies

To enhance success with adaptive techniques


Review the philosophy frequently to ensure that the project conforms to it
Conduct training at both management and developer level
Seek outside help training or consultants who have experience
Frequent reviews of approach and ways to implement Agile and XP philosophies

5. Assuming that MPS decided to develop and deploy each system individually, what would you
recommend for a development approach? Would you recommend any SAAS solutions? Would
you recommend using MS Visual Studio and IIS or a Unix environment by using some open-
source applications? Explain your decision.

Answers will vary.


Generally the development environment will depend on the organization culture. Either MS
Visual Studio or Unix will work well. Generally, MS requires more resources to develop and to
run the software, however it also has a tightly integrated set of tools and support.
Probably SAAS is not an option because these applications will be very specific to this industry
Systems Analysis and Design in a Changing World, sixth edition 14-10

and to MPS's requirements.


Running Cases: Community Board of Realtors
The Community Board of Realtors Multiple Listing Service is a small system with limited
requirements. In Chapter 9, you identified a complete list of use cases and divided the system into
two subsystems. Using the results from your earlier work, please do the following:

1. Based on Figure 14-6the XP methodology divide your use cases into releases and iterations
within each release. Develop a project iteration plan that includes the necessary activities at each
level (system, release, iteration) for integration testing and acceptance testing. Compare your
answer to this question to the project iteration plan you developed for Chapter 9.

Note: This is a small system, so dividing it into releases may not make sense. However, for
learning purposes, we will divide the system into two releases. Since a release is meant to have
all critical functionality, the first release will be larger than the second release. The table below
identifies which use cases are included in the second release. Often the difference between
releases in a software application is that the same use cases are supported, but later releases
provide more elaborate or more user friendly versions of upgraded use cases.

Release Iteration Description Use Cases


1 #1 Implement first Agent and Office use Add real estate office
cases Update real estate office
Add real estate agent
Update real estate agent
#2 Implement first Listing use cases Add new listing
Record listing change
Delete listing
View listings
#3 Basic Reporting use cases Produce list of RE offices and agents
#4 Conduct integration and system tests No new use cases
#5 Deploy system for acceptance test. No new use cases
Deploy production system.
1.1 #1 Implement remaining Agent and Office Delete real estate office
use cases. Enhance deployed Agent and Delete real estate agent
Office use cases. View statistics on RE office
View statistics on RE Agents
#2 Implement remaining Listing use cases. Product ML book
Enhance deployed listing use cases. View histories of sold properties
View statistics of open properties
#3 Conduct integration and system test
#4 Deploy system for acceptance test.
Deploy production release.
Systems Analysis and Design in a Changing World, sixth edition 14-11

2. Discuss the requirements of this system for mobility devices. What use cases would be best
utilized on a mobile device? What use cases would be best with a desktop user interface?

This system is used by both the Board of Realtors, who work mostly in their offices and Real
Estate Agents, who are seldom in their offices. Hence the use cases that apply mostly to the
Board of Realtors staff will work well on larger computers with keyboards and screens. Some
use cases, particularly those for view the Listings, will work well for laptops and notepads, and
even for smart phone devices.

The following table shows a possible division.


Use case Probable use
Add/Update/Delete Real Estate Office Desktop
Add/Update/Delete Real Estate Agent Desktop
Add/Change Listings Both Frequently done on desktop, but Agents may also
do on notepads and laptops
Delete Listing Desktop
View Listings Mobile devices by Agents
Produce ML Book Desktop in office
Produce list of RE Offices and Agents Desktop in office
View Stats on RE Offices/Agents Desktop in office
View Histories of properties Both Agents may need to see histories
View Stats on Open properties Both Agents may need to see stats

3. Would this application be suited as an SAAS application? What would be critical factors for a
company to consider if it wanted to offer an SAAS version of this application?

Given that every state has a Board of Realtors, it is not unlikely that a vendor company may
produce and provide an SAAS version. One advantage of an SAAS version is that there would
probably be more consistency across states in the functionality of the software and user
functions. Also the cost would be more reasonable, and in all likelihood, the system would be
able to provide more enhanced and state of the art functions, such as more support for mobile
devices.

As with all SAAS services, each Board of Realtors would need to assure that the service
provided is a reliable, robust, and full-featured. Data isolation is a key issue, but SAAS
providers always must guarantee the integrity of the data. Probably the biggest issue would be
whether the SAAS provider could provide support for mobile devices.
Systems Analysis and Design in a Changing World, sixth edition 14-12

4. Can you identify any use cases that would best be implemented as a mashup Web application?
Discuss which ones might fit this requirement and why?

All the use cases and pages that view listings would be enhanced if location and map data were
provided. This would facilitate both Agents and Consumers to use the site to find property
locations.

Other possible mashups might include:


Weather forecast for the local area
News feed for out of town customers
Traffic reports for dense traffic metropolitan areas
Photos of neighborhood and surrounding areas
Lists and locations of schools, churches, and other community services
Locations of shopping malls
Zoning divisions of the area and nearby areas
Systems Analysis and Design in a Changing World, sixth edition 14-13

Running Cases: The Spring Breaks 'R' Us Travel Service

Recall from Chapter 2 that SBRUs initial system included four major subsystems: resort
relations, student booking, accounting and finance, and social networking. In Chapter 9, you
developed a comprehensive list of use cases for each of the four subsystems. You also developed a
project plan by using the adaptive SDLC and other principles that you learned in this textbook.
For this chapter, you will develop a project plan by using XP. The approach for ordering the use
cases will be based on user interface issues.

1. For each subsystem, build a table with the following columns:


a. Use case nameas defined in Chapter 9
b. Primary use devicewhether this use case will be used primarily on a mobile device or a
desktop device or equally prevalent on each
c. Development platformwhether this use case best fits as a desktop app, a free-standing
Internet app, or a browser-based app
d. RIAwhether this use case should be an RIA (for browser-based applications)

Subsystem Use Case Primary Device Platform RIA


Resort
Relations
Sign up with SBRU Desktop Browser No
Edit account information Desktop Browser No
Create/enter resort information Desktop Browser No
Post availability and prices of rooms Desktop Browser No
View/edit room availability Desktop Browser No
Retrieve completed reservations Desktop Browser No
Submit damage report Desktop Browser No
Student
Booking
Join SBRU/enter personal and Both Browser No
financial information
View resort information and Both Browser No some
availability of rooms/facilities video
Make a reservation Both Browser No
Make a payment for reservation Both Browser No
Cancel a reservation Both Browser No
Systems Analysis and Design in a Changing World, sixth edition 14-14

Accounting
and Finance
Process student payments Both Secure Browser No
Make refunds/correct payment errors Desktop Secure Browser No
Process payouts to resorts Desktop Secure - any No
Edit/update/correct payouts Desktop Secure - any No
Social
Networking
Create an individual account (join) Both - mobile Browser No
Set preferences on account Both - mobile Browser No
Create a group account Both - mobile Browser No
Assign admin rights to account Both - mobile Browser No
Search for a person or group Both - mobile Browser No
Link up with a person or group Both - mobile Browser No
Send a private message to a friend Mobile Browser No
Chat with friend(s) Mobile Browser Interactive
Post a comment to a Mobile Browser No
friend/group/photo
Upload photo or video Mobile Browser No
Tag photo Mobile Browser Interactive
Write/update vacation experience Both - mobile Browser No

2. Based on your table from question 1, organize the use cases by using two criteria:
a. The logical ordering based on functional similarity (i.e., as you did in Chapter 9)
b. Group them together as much as possible based on primary use device, development platform,
and RIA characteristics. In other words, you are trying to help the team so everyone is building
similar types of use cases together.

See answer to #3. It includes the grouping.

3. Assuming two separate XP programmer teams, build a project iteration plan as you did in
Chapter 9.

Note: In organizing by primary device, platform, and RIA characteristics, the logical ordering
requirement has to be relaxed. Also the two teams are no longer specifically Student oriented
functions and Resort oriented functions. This exercise might be performed by a project
manager to see if this grouping or if the Chapter 9 grouping will be easier for the development
Systems Analysis and Design in a Changing World, sixth edition 14-15

teams.
In the following iteration plan, the desktop use cases were scheduled first. Then the mobile use
cases were scheduled second. Both teams work similarly on desktop first, then on mobile.
Team 2 also picks up some student mobile functions in its iterations 3 and 4.

XP Team 1 (Student focused) XP Team 2 (Resort focused)


Iter Use Cases Device Iter Use Cases Device
1 Join SBRU/enter personal and Both 1 Sign up with SBRU Desktop
financial information
View resort information and Both Edit account information Desktop
availability of rooms/facilities
2 Make a reservation Both Create/enter resort information Desktop
Make a payment for reservation Both 2 Post availability and prices Desktop
Cancel a reservation Both View/edit room availability Desktop
3 Process student payments Both Retrieve completed reservations Desktop
Make refunds/correct payment Desktop Submit damage report Desktop
errors
Process payouts to resorts Desktop 3 Search for a person or group Both -
mobile
Edit/update/correct payouts Desktop Link up with a person or group Both -
mobile
4 Create an individual account Both - Send a private message to a friend Mobile
(join) mobile
Set preferences on account Both - Chat with friend(s) Mobile
mobile
Create a group account Both - 4 Post a comment to a Mobile
mobile friend/group/photo
Assign admin rights to account Both - Upload photo or video Mobile
mobile
Write/update vacation experience Both - Tag photo Mobile
mobile
Systems Analysis and Design in a Changing World, sixth edition 14-16

Running Cases: On the Spot Courier Services


As you read this chapter, you probably noted that the development methodology used in this
textbook has many things in common with the Unified Process, Scrum, and Extreme
Programming. In fact, our objective in this textbook is to teach you the principles common to all
these methodologies without forcing you to accept only one.
Given these four methodologies Satzinger- Jackson-Bird (SJB), UP, Scrum, XPand what
you now know about Agile and iterative development, do the following for the development of the
On the Spot system:
1. Choose a single methodology. Why did you choose that one?

Answers will vary by student.

2. Mix and match practices from each methodology. Discuss which ideas you like from each
methodology.

Answers will vary by student.

Given the trends in new technology, software availability, and the Web as an application
platform, answer these questions:
1. What kind of equipment would be best and most stable for the truck drivers to use?

Answers will vary by student and over time as technology improves. In most companies such as
On the Spot, special purpose tablets are used some use a stylus to record data, particularly
signatures. For entering package data, it is usually helpful to have some type of keyboard. New
technology includes screen touch pads, virtual keyboards (projected), or even speech-to-text
data entry. This assignment is most fun if students think out of the box and come up with
interesting solutions.

2. What would you recommend as the development approach and platform: a custom application
using Visual Studio and .NET, a custom application using Java or similar language, a Web
application using ASP.NET, a Web application using PHP and JavaScript, or some other
combination. Discuss your recommendation.

Answers will vary by student. Either platform is acceptable, and depending on the background
and experience of the student one or the other will be chosen. The .NET platform is a stable and
well integrated platform used by many companies. The open source platform also is widely
used and provides many different options for development.
Systems Analysis and Design in a Changing World, sixth edition 14-17

Running Cases: Sandia Medical Devices


Based on the discussion of hardware, Internet, and software technology trends in this chapter, it
should be clear to you that the Real-Time Glucose Monitoring (RTGM) system is an interesting
combination of older and newer technology. Except for the interface to software and data on
mobile phones, the server-side portions of the system are a relatively traditional business-
oriented application that can be implemented by using old-fashioned technology. What makes the
RTGM system new are its client side functions, including the automated collection of glucose
levels, the regular transmission of that data to servers, the integration of communication between
patients and health-care providers, and the integration of those functions within software
installed on a portable device that can be carried in a users pocket. With that in mind, answer
the following questions. You may need to do some additional research to fully address them.

1. The chapter classified apps on portable devices as device-top, free-standing Internet, and
browser based. Which type is most appropriate for the client-side portions of the RTGM system?
Be sure to consider such issues as client-server communication requirements and frequency, user
interface quality, and portability across devices and operation systems.

Answers will vary by student. In most of the chapters, however, it was assumed that the client
side software would be special purpose apps that run on the smart phones and on the monitoring
device. Some reasons for developing a free-standing Internet application are the following:
Dependable does not have to depend on browser robustness. This is probably the most
important.
Compatibility can be specifically programmed for devices. No problems with cross
browser support
Efficient can be programmed to run very efficiently streamlined using few resources
Fast can be built to run faster with less latent and delay times

2. Which (if any) social networking capabilities might make a useful addition to the RTGM
system? Be sure to consider the HIPAA requirements described for this case at the end of
Chapter 6.

The current system allows messages to be sent between the medical staff and the patient. This
could be enhanced to allow for online chats to occur. (Of course, phone calls are also, an
option, but often times a quick question can be done via online chat. ) Online chats would be
under the same HIPAA requirements as the messages. They must be protected on the server and
the mobile devices.

Social networking between patients is probably not a good idea at this point. There are diabetic
support groups online where people can share experiences and messages with others that have
similar ailments. However, it is probably too invasive to allow that to be done with this system.
Systems Analysis and Design in a Changing World, sixth edition 14-18

3. When recorded glucose levels generate high priority alerts, physicians or other health-care
providers initiate direct contact with the patient. An ordinary phone call over the cellular phone
network is one way to support direct contact. Because any client-side device used with the RTGM
system must be fully Internet-capable, an Internet telephony application, such as Skype, is
another possible way of supporting synchronous voice or video communication with the patient.
Should Skype or a similar Internet telephony application be used with the RTGM system? Why
or why not? If such an application is used, should it support video? Why or why not?

Answers will vary by student. Some considerations might be:


Skype is not a secure environment. Chat histories are stored at different locations and
can possibly be accessed or hacked. It probably does not meet HIPAA requirements.
(Servers must be in secure data centers.)
Skype is also not 100% dependable. (Although it is quite good.) None of these types of
systems are built with the redundancy and dependability required by medical systems.
Video would probably be helpful for the medical staff to observe the patient. However,
bandwidth limitations make it unreasonable at this point in time.

Data mining is an increasingly important technique for medical research. The ability to
scan medical records of large numbers of patients over extended time periods enables researchers
to better evaluate the effectiveness of drugs and therapies, more accurately connect disease risk
levels to specific patient characteristics, and identify patterns of transmission or occurrence,
progression, and treatment response for rare diseases and conditions. What types of medical
research might be enabled or better supported by the data collected by the RTGM system?
Would your answer change if the database were extended to include additional information that
might be gathered from the patients mobile phone (e.g., location information when each glucose
level was captured, size and content of the patients contact list, call history, and the volume of
text messages and Internet browsing activity)?

Answers will vary by student.

You might also like