Personal Environment Network

D02.2
User requirements and functional specifications
Personal Environment Network
Software Requirements Specification
Version 1.0
October 1, 2013
Christian Coello
Prepared for
CISC 680—Software Engineering
Instructor: Jeffrey Kane, Ph.D
Fall 2013
Personal Environment Network
1
D02.2
User requirements and functional specifications
CONTENTS
Part 1: EXECUTIVE SUMMARY ................................................................................................ 4
Part 2:
1.
1.1
1.2
INTRODUCTION ................................................................................................................ 5
M ETHODOLOGY .................................................................................................................. 5
N ETWORK /S OFTWARE F EATURES ON D EVICE ........................................................................ 6
2.
THE NOTATION USED ....................................................................................................... 6
2.1
2.2
2.3
2.4
2.5
O VAL SHAPE ( OR CIRCLE ): ..................................................................................................
R ECTANGLE ......................................................................................................................
U SER A CTION ....................................................................................................................
S WITCH OR C ASE ( EVENT CAUSED BY USER OR DEVICE ) .......................................................
U SER I NTERFACE ATTRIBUTES .............................................................................................
3.
GENERAL DEVICE FEATURES ......................................................................................... 9
3.1
3.2
3.3
3.4
3.5
4.
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
5.
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
6.
6.1
6.2
6.3
7.
7
7
7
8
8
F RIENDS ............................................................................................................................ 9
A DS B Y C ATEGORY ............................................................................................................. 9
C LASSMATES .....................................................................................................................10
D EVICE S PECIFICATION I N S TORES ......................................................................................10
H OME A PPLIANCE D EVICES ................................................................................................10
USE CASE DEVELOPMENT ............................................................................................. 11
U SE C ASE I TEM I DENTIFICATION AND LOCATION ................................................................... 11
A D - HOC S OCIAL N ETWORKING ...........................................................................................12
A D - HOC P HONE S ERVICES ..................................................................................................12
D ETECT F RIENDS ...............................................................................................................13
R ECEIVE A DS BY C ATEGORY ...............................................................................................13
C OMMUNICATE WITH C LASSMATES ......................................................................................14
R ETRIEVE D EVICE S PECIFICATIONS IN S TORES .....................................................................14
S ET /R ETRIEVE INFORMATION FROM H OME A PPLIANCES ........................................................15
DEVICE DESIGN COMMUNICATION FLOWCHARTS ...................................................16
F RIENDS A PPLICATION .......................................................................................................16
A DS B Y C ATEGORY ............................................................................................................17
C LASSMATES A PPLICATION .................................................................................................18
D EVICE S PECIFICATION A PPLICATION ..................................................................................19
H OME A PPLIANCE A PPLICATION ..........................................................................................21
A DHOC PAIRING ................................................................................................................22
W IRELESS N ETWORK D EVICE PAIRING ................................................................................23
U SER D EVICE /E NVIRONMENT I NTERACTION ........................................................................24
F RIENDS /C LASSMATES /S OCIAL N ETWORKING ......................................................................25
USER INTERFACE ............................................................................................................26
G ENERAL GUIDELINES TO USABILITY / USER FRIENDLINESS .....................................................26
S TANDARDS OF A PPLICATION UI .........................................................................................26
U SER INTERFACE FEATURES ................................................................................................26
CODE GENERATION ........................................................................................................28
Personal Environment Network
2
D02.2
7.1
7.2
7.3
7.4
7.5
7.6
7.7
User requirements and functional specifications
C ONNECT T O N ETWORK .....................................................................................................28
D ISCONNECT F ROM N ETWORK ............................................................................................29
F RIENDS A PPLICATION .......................................................................................................30
R ECEIVE ADS BY CATEGORY ...............................................................................................31
D ETECT C LASSMATES ........................................................................................................32
D EVICE S PECIFICATION ......................................................................................................33
H OME A PPLIANCE C OMMUNICATION ...................................................................................35
Personal Environment Network
3
D02.2
User requirements and functional specifications
Part 1
EXECUTIVE SUMMARY
This report contains the user requirement and functional specifications for the
Personal Environment Network. The specifications define the user-system as to how
the device will work throughout the course of a lifetime. PEN will have unlimited
battery life and will not use the internet to access information. PEN will use
transceivers setup around its environment to communicate, receive and send out
information. This document will include all requirements necessary for development
as well as design models and testing plans.
The Personal Environment Network has been proposed as a result of research with
end-users and the release of new technology. The functional specifications are
designed to use new technology such as unlimited battery life and machine learning
which will be incorporated into this device in order the the device to learn everything
about the user. The following represents some of the features the device will have.
 Learn users interests
 Know the environment it’s in.
 Determine the identity of all users in a set location(eg. classroom, office)
 Communicate to the user more information on what they are looking at.
 Contact the owner if the device gets lost.
The processes and procedures which are involved in implementing the functions for
each of these applications are described in the form of flowcharts.
The user of the device will be capable to set their device to accept information from:
 Friends
 Ads by Category
 Classmates
 Device specifications in stores
 Home appliance devices
The specifications also include a number of guidelines relating to the user interface.
There is particular reference to usability/user friendliness. The hardware for this
device will be any device that is ad hoc enabled (cell phones or other WIFI wireless
devices.
Personal Environment Network
4
D02.2
User requirements and functional specifications
Part 2
1. Introduction
This document describes the user requirement and functional spec ifications of the
Personal Environment project. The specifications are derived from the research and
the implementation of new technology that is to be used in the implementation for
this project.
To describe the procedures involved, a flowchart-type notation is used. It is the
intention here to define software to be embedded in the device that will use AD HOC
technology to communicate with its environment. The flowcharts will describe all
possible requirements in the project. As mentioned, the device will send and receive
information via transceivers and communicate the data to the user. This device will
not use cell phone towers and will therefore not access the internet under any
circumstances. The device shall be free to move freely anywhere as the ad h oc
network technology will self-configure itself and link to wireless networks.
The purpose of this documentation phase is to identify requirements and
specifications concerning user input, system response, networking and testing the
implemented software. The document will provide the specifications for building the
working-model of the software to be installed on the device which will then be the
subject of thorough testing before it is mass produced and goes live throughout the
world.
A mobile ad hoc network is also referred to as MANET. As it moves freely in its
environment it self-configures itself in an infrastructure-less network of mobile
devices connected by wireless links. This means that one device is capable of
connecting to another device without the actual use of internet. A personal
environment network is a network of ad-hoc device (cell phones or other WIFI
wireless devices) that organize themselves into an active network to exchange
information that is determined by each individual device. T he application that allows
the information exchange is responsible for security, look and feel and protocol. The
underlining communication protocol is also part of the application. Furthermore, the
application s capable of routing thru a node to get a link to a node outside an original
nodes transmission range. As mentioned, these devices do not need any cell tower
requirements, although it is possible.
1.1 Methodology
In the general approach to determining and describing the user requirement and
functional specifications, the growth and improvement of technology today has
Personal Environment Network
5
D02.2
User requirements and functional specifications
prompted the development of this project. Many devices today are WIFI and ad hoc
ready.
In particular, the following principles from that document are adopted:
 producing a comprehensible specification using diagrams and terminology which
can be understood by a general audience
 writing the specifications primarily from the user’s point of view and making the
device as user friendly as possible.
 defining how the user will interact with the device in terms of user-system
relationships.
An agreed methodology for describing/defining the functional specifications has been
applied for the project as a whole, and every feature of the Personal Environment
network has been defined. This also helps in identifying similar functional
specifications used in more than one category of the device and how it interacts with
the network.
1.2 Network/Software Features on Device
Depending upon the features that will be implemented on the network for the device ,
the documentation of the functionality of the device features has been divided into
various categories:
Device application festures:
 Friends
 Ads By Category retrieval
 Classmate identification
 Device Specification information in stores
 Communication with home appliance devices
The device will not use any database to get data.
2.The Notation Used
The diagrams used are of the flowchart type. The processes are graphically
represented by shapes. The sequences of events are indicated by lines or arrows
between the symbols. In general, the normal sequence is drawn vertically from the top
to the bottom of the diagram. Along the arrows or lines, in text, the user action is
explained.
Personal Environment Network
6
D02.2
User requirements and functional specifications
2.1 Oval shape (or circle):
User Device
This oval represents the user device and will be used to represent how it will
communicate with other wireless devices.
2.2 Rectangle
5.2 Store/Classroom/
Building Transmitter
The rectangle represents the surrounding environment for a user and its device. The
store/classroom/building will be used by the device to get information through the
wireless network.
A more detailed flow chart of user device and environment communication is
documented 5.1 - 5.5 etc.
2.3 User Action
Enters Store/
Retrieve data?
Yes
No
This indicates a user action point in the procedure, with indication of what the
outcome of the question in the parallelogram can be. In accordance with good
practice, question symbols are entered vertically from the top. The exit points are
selected as appropriate.
Personal Environment Network
7
D02.2
User requirements and functional specifications
2.4 Switch or Case (event caused by user or device)
User Selection
Product is stored in
memory
User selects “back”
This symbol is a slightly more complex version of the user action mentioned above.
One event can cause many things to happen by the user whether it means the device
entering a different environment or the device doing something for the user such as
connecting to a network and retrieving environment information. In accordance with
good practice the question symbol is entered vertically from the top. The exit points
are selected as appropriate.
2.5 User Interface Attributes
These User Interface Attributes are especially intended to indicate the way the
application interface will be presented to the user through there device while on any
network. This implementation can vary, depending on different scenarios such as the
user entering or leaving a classroom, going into a store and checking out a product,
changing the settings on home appliances and going through a list of ads.
Personal Environment Network
8
D02.2
User requirements and functional specifications
3. General Device Features
3.1 Friends
The friends feature on the personal environment network is a must. Just like most
social networking sites, the user will be able to set and invite friends on the device
and enable the network to determine if the person the user is i nteracting with is a
friend or not.
 Through the device the user will be able to identify a friend.
 The user will also be able to add a friend to the device via the network
 A user should be able to remove a friend from the memory of the device. When the
device is connected to another user’s device through ad hoc connection, both users
will be able to share and collaborate information with each other.
This friends feature on the personal environment network will behave similarly to a
social networking site. The user will able to share ideas and set privacy control to the
device if he or she approaches someone they wish to identify. For example if a user is
inside the same store that another person who has been blocked by the user, then the
second user will not be able to detect that the first user is inside that same store.
Privacy control is important to consider when implementing the friends features on
the network.
3.2 Ads By Category
When the user walks into to a store, the device will automatically receive data from
the stores network devices. The user should receive the most updated Ads from the
store by category. Once the device receives data from the stores network, the device
should categorize all products in the store to display on the graphical user i nterface on
the device. The device will be determining the interests of the user when the user
seeks more information about a specific product. The device should then save these
details in memory in order to retrieve similar information for the user when
applicable.
If the user has a device with a barcode scanner/reader, the user can scan the barcode
or QR code in order to search the stores network to retrieve specifications, similar
products, and inventory regarding ta particular product in the store. Th is will also
enable the device to store this information in memory and use it to retrieve similar
information when the user walks into another store. The device will now learn more
about the user’s interests when shopping inside a store. Since the user may tend to
shop items in different categories (clothes, electronics, sporting goods) the
application in the device should categorize these product interests and make it
organized for the user to view in the graphical user interface.
Personal Environment Network
9
D02.2
User requirements and functional specifications
3.3 Classmates
A user who is a student will be able to know who their classmates are. This
information will include first and last name, class schedule, and interests. However
the same user will be able to share this information. Once the user exits the classroom
the device will no longer have all classmates’ details unless the user steps back in.
When the device is entered into the classroom, the transmitter embedded inside the
classroom will also send information to the device. This information will contain the
current class going on, the times, and different classes that occur in that classroom.
3.4 Device Specification In Stores
It is important to consider the shopping habits of the user. If the user approaches a
product he or she is interested in, these product types will be st ored in memory and is
important to consider rapid retrieval to bring up information on specifications
regarding a product. Statistics concerning usage are very important for evaluation of
the system, identifying areas for improvement and assessing future e xploitation
potential.
1. A user entering a store will enable the device to access the environment network
and receive ads and specials in all departments. When a user walks into a particular
department in a store, the device will give the user the informatio n necessary to
look for a product.
2. Logging of user activity. Processing the logged data generates valuable information
about the use of the different services, what products interest the user etc. Quick
retrieval of this data in the device will be important as this will also impact the
overall performance of the device the user has.
3.5 Home Appliance Devices
All home appliances will have transmitters that the user’s device can use to retrieve
information. An example of this is on oven. The user will be abl e to set the oven
temperature via the device and monitor activity in a washer and dryer as well. When
the uses the microwave and places popcorn inside the device should automatically
know how long the microwave should be on for after the very first use. Same applies
to the washer and dryer. The device should automatically set time the proper settings
from the user after the first attempt. As the user progresses in time with the use of the
device and personal environment network, the device will become smart er as it learn
from the user over time.
Personal Environment Network
10
D02.2
User requirements and functional specifications
4. Use Case Development
The user of the device sets their device to accept information from:





Friends
Ads By Category
Classmates
Device specifications in stores
Home appliance devices
4.1 Use Case Item Identification and location
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Personal Environment Network
Item identification and location
Device Owner
To enable the device to wirelessly connect with
surrounding devices and to identify an item.
Device has been set to pick up wireless signals from
other devices and to identify an item by receiving signals
from the items themselves via transmitters.
When the user picks up an item in a store it will identify
it based on proximity and signals sent from the items
wireless transmitters. Wherever the user goes, the device
will use the network to determine location but it can also
reroute through others user’s devices to collect this
information.
1. User walks into store
2. User walks into a department
3. User picks up an item he or she is interested in
1. Device is not connected: User goes to another item
to see if it can connect to that one.
2. Location not determined: User walks to another
location to determine current location.
3. Item not identified: Device reroutes through the
network and to find another user device looking at
the same item.
1. Will the network transmitters be down when the
user device needs to connect?
2. Should the device tell the user it can’t connect
when in fact it’s attempting to connect in another
way?
3. What if device identifies the incorrect item?
4. What if the incorrect location is given?
11
D02.2
User requirements and functional specifications
4.2 Ad-hoc Social Networking
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Ad-hoc Social Networking
Device Owner
To be able to share ideas, information, and collaborate
with friends through the network.
The network verifies a user’s friends by the using the list
of friends saved on the device.
The user shares an idea with friends
1. User sends input to the device and sends out a post
for friends to see.
2. A friend of the user shares an idea and the main
user is should be able to see it.
1. If the user posts something with no available
friends connected to see it, an error message
should be displayed.
2. No idea should be received or sent if device is
away from friends.
1. What if user shares an idea when no friends are
around?
4.3 Ad-hoc Phone Services
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Personal Environment Network
Ad-hoc Phone Services
Device Owner
To wirelessly connect to a wireless network environment
without using cellular towers.
The device must connect to other devices to route a
conversation to another end user.
The owner of the device initiates a call to another person.
1. User decides to call someone.
2. User selects a person to call.
3. User initiates a call.
1. The device will not use a cellular network.
2. The network will not use a cellular tower to send
out a call.
1. Will the ad-hoc connection always be reliable?
2. Is Ad Hoc connectivity just as good as a regular
cellular service?
12
D02.2
User requirements and functional specifications
3. What is the backup source for making a call?
4.4 Detect Friends
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Detect Friends
Device Owner
To connect and communicate with friends.
The device has saved settings on the phone that the
network will use to recognize friends.
The user walks into a friend.
1. The user walks into a place.
2. The device detects friend connectivity and pairs
up.
3. The user sees the connection is made and realizes
a friend is nearby.
1. The device will not use a database to determine
who is a friend.
2. Only the devices memory will store friend
information.
1. What if the friend of the main user loses their own
device?
2. How fast will the two devices connect?
4.5 Receive Ads by Category
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Personal Environment Network
Receive Ads by Category
Device Owner
To receive ads from a store when a user walks into one.
The store has transceivers/transmitters which will send
and receive information to the user wirelessly.
The user walks into a store or into a department in the
store.
1. User decides to go shopping.
2. User walks into a store.
3. The mobile device connects to the stores network.
4. The device sends a request for an ad.
5. The ad is received on the user’s device.
1. Device will filter out ads to only display what
products interest the user.
2. The device will still enable the user to view other
categories of interest.
3. The user will connect to other devices to retrieve
an advertisement if the store network can’t send
13
D02.2
Open Issues
User requirements and functional specifications
one.
1. How fast will the network scan the device for the
user’s current interests?
2. What if the user’s interests have changed?
3. How will the device keep updated on the user’s
interests?
4.6 Communicate with Classmates
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Communicate with Classmates
Device Owner
To communicate with classmates devices wirelessly and
recognize them.
Device will recognize classmates when the user walks
into classroom or detects classmates outside the
classroom by saving their identity on the device.
The user walks into a classroom.
1. User goes to class.
2. User walks into class.
3. The device connects to the classroom network.
4. The device connects to classmates devices and
receives more information about them.
1. The device should not receive or send information
from classmates if they have dropped the class
unless they are friends.
1. How will the device know that the a classmate has
dropped the class?
4.7 Retrieve Device Specifications in Stores
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Personal Environment Network
Retrieve Device Specification in Stores
Device Owner
To receive specifications information on an item the user
is interested finding out more about.
All items in the store have network capability and are
able to communicate with user devices wirelessly.
1. The user walks into a store department.
1. The user walks into a store department.
2. The user sees a product.
3. The device connects with the item transceivers.
4. The device sends a request to receive item
specifications for the main user.
14
D02.2
Exceptions
Open Issues
User requirements and functional specifications
5. The item specifications are sent and received.
1. The device should only receive information from
the product the user is looking at and not
surrounding products.
1. How will the device prevent receiving information
from surrounding items?
4.8 Set/Retrieve information from Home Appliances
Use Case
Primary Actor
Goal in Context
Preconditions
Trigger
Scenario
Exceptions
Open Issues
Personal Environment Network
Set/Retrieve information from Home Appliances
Device Owner
To allow the user to set and receive information from
home appliances.
The home network has been set up and all home
appliances have been designed to send and receive
information from the user device.
The user decides to input settings to home appliances.
1. User walks into home.
2. User device connects to network.
3. Home appliances and user device pair up via
wireless connection.
4. The user receives information on appliances and
gets control of them.
1. Appliances will not always be running but must be
on in the background and ready for the user.
1. What if there is a power outage in the users home?
15
D02.2
User requirements and functional specifications
5. Device Design Communication Flowcharts
In this chapter, the applications as defined in chapter 4 are described in more de tail in the form of
flowcharts.
5.1 Friends Application
Friend
Friend Request sent to
user
User accepts or denies
request
User Denies
User Accepts
Device
accepts
information from
friend’s device
Personal Environment Network
16
D02.2
User requirements and functional specifications
5.2 Ads By Category
User Device
Store Transceiver
Send full current ad to user
device
Would you like to
receive All ads?
Yes
No
No
Would you like
to retrieve ads based
on your interests?
Yes
Transceiver receives user
interests from stored
memory on device and
sends out a filtered ad
User Device
Personal Environment Network
17
D02.2
User requirements and functional specifications
5.3 Classmates Application
User Device
Classroom
Wireless
Connection
Successful
Unsuccessful
Classmate’s information is
received and compiled.
It is then sent out.
Network is rerouted to backup
connection
Connection successfully made ?
No
Yes
System displays
Error message
Classmate’s information
Is received and compiled
Introduction Screen
Personal Environment Network
18
D02.2
User requirements and functional specifications
5.4 Device Specification Application
User device
Store Transceiver picks up signal and
connects to network
Device enters a department
Proximity sensors
In user device
Detect product picked
Up by user
Product type is stored
In device memory.
"Back"
Device searches similar products
through store network
Product found?
yes
no
Information display
of selected product
Personal Environment Network
19
D02.2
User requirements and functional specifications
User Device Screen
Personal Environment Network
20
D02.2
User requirements and functional specifications
5.5 Home Appliance Application
User Device
User enters home with
device
Device gets signal to
home network
Unsuccessful
verification
Device Authentication
Device syncs with appliances
Device is successfully verified
User retrieves a list
status on appliances
Appliance settings are
sent to appliance from
device
User and device exit home
Close Connection
User device
Personal Environment Network
21
D02.2
User requirements and functional specifications
5.6Adhoc Pairing
Personal Environment Network
22
D02.2
User requirements and functional specifications
5.7 Wireless Network Device Pairing
Personal Environment Network
23
D02.2
User requirements and functional specifications
5.8 User Device/Environment Interaction
Personal Environment Network
24
D02.2
User requirements and functional specifications
5.9 Friends/Classmates/Social Networking
Personal Environment Network
25
D02.2
User requirements and functional specifications
6.User Interface
6.1 General guidelines to usability/user friendliness
The approach adopted to determining the user requirement and functional
specifications for the user interface takes into account the reviews of user experience
and how people tend to interact with the interface on their devices. Research is taken
into account to provide a satisfactory product for all users.
To implement a user interface with optimal acceptance by the Personal Environment
Network target group of ordinary citizens, the criteria for optimising usability/ user friendliness include the following:
 User control of the device should be possible without a keyboard, by just using
a touchscreen, touchpad, or third party voice recognition software.
 When graphical objects are pressed, there should be rapid graphical response.
Buttons will change from up to down, selected lines in lists will change colour
etc.
 On-text based on data retrieved from the network should be of such a size that
it can be read by people with a limited visual impairment.
 The device should give the user the ability to enlarge text for those with seeing
difficulties.
 Colour contrast will be optimised for a maximum legibility.
 End-users should not need to be tech savvy to use this software.
6.2 Standards of Application UI
In the design of the user interface, extra focus will be given to the detail of usability.
A user friendly interface is the goal of the application on the device. Effectiveness,
efficiency and satisfaction for users plus software attributes will make this a user
friendly user interface.
6.3 User interface features
Alpha Input:
The device will have a touch Screen QWERTY keyboard, shown on screen with
buttons, representing all uppercase characters, selectable by the cursor control device.
Standard keyboard input will also be possible.
Bulletin Buttons:
Personal Environment Network
26
D02.2
User requirements and functional specifications
Large on-screen buttons containing bulletin text in fixed bulletin format.
Numeric Input:
Calculator-like keyboard, shown on screen with buttons, representing numbers 0 -9,
selectable by the cursor control device. The resulting number is shown, and a
backspace button is available for correction.
Selection Buttons:
Buttons used to select the function indicated by the text in the button, selectable by
the cursor control device.
Selection List:
The device interface will show a list of products from user interests, Settings for
home appliances, classmates information, and a device specifications. The list
consists of lines each containing a description of an item or object. The selection of a
line will be indicated by color change or similar means. Only one line can be selected.
Text Field:
An on-screen area with text, usually used for information. Not selectable.
Large text field can have buttons and bar for scrolling text up and down.
Device Status:
The device will use a series of images on the network to represent battery life,
connection status, signal strength, and memory usage.
Personal Environment Network
27
D02.2
User requirements and functional specifications
7.Code Generation
7.1 Connect To Network
Function Connect_to_network
Try
Get networks
Foreach network detected
Connect device to network
If device cannot connect
foreach wireless device connection detected
pair up device with other devices
if cannot connect to a device
display message “Ad Hoc pairing skipped”
else
return true
Else
Display success message
Return true
Catch Exception
Display Exception
Personal Environment Network
28
D02.2
User requirements and functional specifications
7.2 Disconnect From Network
Function Disconnect_From_Network
Try
Get networks
Foreach network detected
Disconnect device from network
If device cannot disconnect
foreach wireless device connection
unpair device with other devices
return true
Else
Display success message
Return true
Catch Exception
Display Exception
Personal Environment Network
29
D02.2
User requirements and functional specifications
7.3 Friends Application
Try
Connect to network
If connection is success
Connect with friends
If user receives friend request
If user accepts
Add friend and save friend details to device memory
Else
Do not add friend
If user sends friend request
send request to user
if friend accepts
Add friend and save to friend details to device
Send details to friend’s device
Else
Display error message “Failed To Connect”
Connect to network
If connection is success
Display success message
Else
Reroute to another connection
Display wait message
For each wireless device detected
Connect to device
If connection is success
Break loop
Display Connected successfully message
Catch exception
Display exception
Personal Environment Network
30
D02.2
User requirements and functional specifications
7.4 Receive ads by category
Try
Bool connected=Call function Connect_to_network
If connected=true
Display message “Would you like to receive all ads?”
If Yes
Send full ad to device
Save ad to memory
Open ad for view
Else
Display Message “Would you like to retrieve ads based on your interests?”
If Yes
Foreach interest category saved in memory
If category saved on phone = category received from store
Display ad from category to device
Else
Show Main Menu
Else
While connected = false//keep calling connect function until successful
connected =Call function Connect_to_network
Catch exception
Display Exception message
Personal Environment Network
31
D02.2
User requirements and functional specifications
7.5 Detect Classmates
Try
Bool connected=Call function Connect_to_network
If connected=true
classmates=new array of classmates
If connected is successful
Foreach classmate in classroom
If users course section and number=classmates course section and
number
//Both users are registered for this same class
Classmates array+=classmate
Foreach classmate in array
Display first and last name
Display age
Display gender
Foreach class in classmates->class schedule
Display class schedule
Else
Display Error message but keep looping to connect to a network
While connected = false//keep calling connect function until successful
connected =Call function Connect_to_network
if user leaved classroom or building
call function disconnect from network
Catch exception
Display Exception message
//The following is pseudocode for the classmates class.
Class Classmates
String first and last name
Int course number
Int course section
Int age
Char Gender
List class schedule
Personal Environment Network
32
D02.2
User requirements and functional specifications
7.6 Device Specification
Try
Bool connected=Call function Connect_to_network
If connected=true
If Yes
If device detects item signals
Foreach item signal detected
If proximity <1 inch
Display item specifications
Save specifications in memory
If user select “Back” button
Return to home screen
Break out of loop
Foreach item signal detected
If items category detected = product category
Foreach product
Display product->category
Display product->item name
Display product->item description
Display product->price
Foreach string of specs
Display specs
Else
Return to home screen
Break out of loop
Else
While connected = false//keep calling connect function until successful
connected =Call function Connect_to_network
Catch Exception
Display Exception
Personal Environment Network
33
D02.2
User requirements and functional specifications
//The following is pseudocode for the Products class.
Class Product
String Category
String Item name
String Item Description
Double price
Double item proximity
List string Specs
Personal Environment Network
34
D02.2
User requirements and functional specifications
7.7 Home Appliance Communication
Try
Bool connected=Call function Connect_to_network
If connected=true
Authenticate user
If Yes and user has been authenticated
Foreach appliance
Display Appliances->Name
Display Appliances->Type
Display Appliances->on value
Display Appliances->off value
Display Appliances->timer value
Call save function to save any settings changed
Else
Return to home screen
Else
While connected = false//keep calling connect function until successful
connected =Call function Connect_to_network
Catch Exception
Display Exception
Function Save
Foreach appliance
Appliances->Name=Appliances->Name
Appliances->Type= Appliances->Type
Appliances->on value= Appliances->on value
Appliances->off value= Appliances->off value
Appliances->timer value= Appliances->timer value
Personal Environment Network
35
D02.2
User requirements and functional specifications
Class Appliances
String Name
String Type
Bool on
Bool off
Timer timer
Personal Environment Network
36