SoftwarePractice.org: Home | Courseware | Wiki | Archive

Team 6: Cybertone Systems

From SoftwarePractice.org

Contents

Team Members

Developers

Team Member Student Number Email
Aman Poonia 10075772 aman.poonia@student.uts.edu.au
Amish Joshi 10169023 joshi_amish@hotmail.com
David Young 10041693 nod911@optusnet.com.au
Preeti Thakran 10237079 priti_rakhi@yahoo.com.au

System Overview

Cybertone systems are leaders in interactive advertising tools which is used to target consumers only with products that they are interested in. Across the city positioned at strategic shopping and congested public areas there are Cybertone advertising points (CAP). CAP’s consist of a wireless transmission receiver which will notify the CAP when a particular consumer wearing a Cybertone identifier is in range of the CAP; these Cybertone identifiers are unique to each consumer so the CAP can lookup what categories of products the consumer is interested in and display an advertisement tailored to each individual consumer.

The CAP has an extensive centralised identity bank for each Cybertone active consumers, which it can refer to when a consumer is in range to select a suitable advertisement. The identity bank (should be a different name as we store the buying pattern and behaviour of the consumer in this bank. It should be more expressive and inclusive) entries for each consumer is populated using an initial questionnaire upon signup and also have extensive records of past and present purchases from consumers credit cards. New Cybertone active consumers are required to sign a waiver to allow Cybertone access to the consumer’s credit card purchases. It should also be able to indemnify Cybertone from any issues that may arise from Cybertone personalised marketing.

Once the CAP has detected a Cybertone active consumer and referred to its identity bank to select a suitable advertisement for the consumer. Using a sensor field around the CAP it then detects body language from the consumer such as where they are looking, gestures, what they are doing, etc; Then tailors the advertisements audio and display in response to the consumers physical movement. (We need to work on this paragraph. It is not very clear)

Once the advertisement is completed and/or the consumer is out of range the CAP then repeats the process for the next Cybertone active consumer to move within range.

Stakeholders Needs and Expectations

Personas

Stakeholders

  • Cybertone
    • Cybertone employee's
      • Andrew
      • Garry
    • Cybertone Shareholder's
      • Mr Smith
    • Cybertone Customers (advertisee)
      • Consenting Consumer's
        • John
        • Jane
  • General public (in viscinity of an advertising point)
    • Bill

Narratives (expectations)

  • Andrew is a data entry operator for Cybertone Systems and his job is to enter new customers details, preferences, etc into the system. Andrew would like the system to be easy to enter data and navigate through pages and most importantly stable so there is no data loss.

Persona - Andrew is a high school quaified computer operator who wants to do the minimum amount of work possible to complete his job.

  • Garry is a Project Manager at Cybertone Systems whose responsibility is to ensure the smooth running of the system. He is an experienced candidate and has managed several systems in the past and likes to get his work done on time.

Persona - Garry has a 4 year computer science degree and over 3 years experience in Project management and software development. He is in-charge of defining the technical and functional requirements based on client needs, plans projects, establishes priorities and monitors progress. He also has a strong problem solving skills, logical thinking and an acute attention to detail.

  • Mr smith, the owner of Cybertone systems; wants to reach out to as many shoppers as he can with personalised advertisements because each time an advertisement is displayed Cybertone earn money.

Persona - Mr Smith is the owner/founder of Cybertone. He has great business acumen and knows that customised changeable advertisement points are worth many times more than static single advertisement billboards because every time an advertisement is displayed it is only shown to a person guaranteed to be interested in that product.


  • When John enters a shop he would like to be greeted and shown an advertisement for a product/service that interests him.

Persona - John is a middle class man who can afford to splurge frequently on new products that entices him.


  • Because of Bill's feelings towards Cybertone systems he does not want to be disrupted by an advertisement when he is close to an advertising point.

Persona - Bill is an older aged man who doesnt take to new technology very well; Bill is against the use of customised advertisements due to privacy reasons hence he is not a Cybertone client.

  • Jane is a frequent shopper and spends a lot of time looking around for things and deciding on what she likes before making a decision so she requires catchy products to interest her.

Persona - Jane is an office secretary who does not blindly spend money on goods and only buys products that she finds valuable.

Key Contextual Factors

Technological Issues

Cybertone Systems is the leader in bringing "ubiquitous targeted advertising" in the market. They have invested reasonable amount of time in research in developing advance algorithms for adapting image display and audio in response to physical movement information. Therefore, they have an edge to their competitors. Enabler

However, these algorithms are dependent upon the sensors to provide them continuous data so if sensors are not working properly or have any hardware problem if can cause the efficiency of the system. Risk

CIB will be storing user’s information, which gives a complete picture of one’s buying behaviour. This information is highly valuable to many people so they might try illegal ways to obtain it such as hacking the system or employee taking away the information and selling it off to competitor. So effective authentication and access system has to be placed. Risk


Privacy Issues

There are organizations and groups, which will oppose the technology on the bases that it indents to persuade individuals to buy particular products. They see it as invasion of privacy and cashing in someone liking and taste. Constraint

There might be some consumers who will sign up to experience the new technology but are concerned about being exposed about their choices and buying habits for e.g. if a middle aged man prefers to watch adult movies in free time and while walking in the shopping mall with friends (or not) is targeted with adult movie advertisement and people who are passing by are able to see the advertisement as well it might be an embarrassment for the individual. Constraint

Another concern is securing the identity of the consumers. Given that identity theft is increasing at a phenomenon rate and hard to detect the leak of information, consumers might be concerned in giving their shopping history and bank details which potentially can be used by the frauds/hackers. Constraint


Business

Cybertone is bringing the latest technology in the market, which so far has been seen only in the movies, is expected to catch the public eye. Consequently every small and big company will be interested in using this start of the art technology to promote their services and products. It is expected to grow exponentially. Enabler


Legal Issues

Being a new technology, the Government or industry might have to develop rules, regulations or standards to properly address the related issue in an effective manner. This way technology will not be misused and will benefit the society in a planned way. Enabler

Customer Needs

Usage Narrative

Subscriber

Customer 1

  • John walked past a Cybertone advertising point and was targeted with an advertisement for a brand new design lycra bodysuit suitable for bicycle riding; he was very embarrassed and hoped no one new the advertisement was referring to him.

Persona: John is a middleclass man who is involved in competitive cycling as a sport. He however is is very shy and sometimes gets embarrassed about his sport due to the tight clothing he must wear.

Customer 2

  • Jane walked into her favourite department store and was targeted with an advertisement for a new perfume that she had been waiting to be released. The advertisement told her it was available to purchase now on level 33; she was happy to hear that and made her way to level 33 to purchase some.

Persona: Jane is an upper-class woman who lives off her inheritance (unemployed); Because of her status she must always be well presented so she is always interested in new fashions and cosmetics/perfumes. Because of her immense spare time and bank account she is a compulsive Buyer and must have every new product to come onto the market.

Customer 3

  • Rahul enters the Broadway shopping mall and an advertisement targets him informing the latest movies screening at the hoyts cinema this week. Rahul gets excited to know “Harry Porter and the order of the phoenix” screening is going on and plans to see the movie with his girlfriend.

Persona: Rahul owns a telemarketing company and works seven days a week. He is very fond of movies but does not get time to check the schedule of movies and list of movies being screened. He likes to watch movie whenever he gets time

Customer 4

  • Chris is going to co-op bookshop to purchase a novel. Just before entering the shop he is targeted with an advertisement regarding a new drug for HIV virus and how it might be able to help him cure his disease. Suddenly he is reminded of his ill fate and diminishing health. He feels very depressed and decides to quit the Universal Targeted eXperience.

Persona: Chris got infected with HIV virus from his girlfriend and is currently under treatment. His health is constantly diminishing and is under heavy medication. Chris loves to read novels as it helps him to forget his worries and makes him happy.


Advertisers

Advertiser 1

Bora is the marketing manager for Jeans West (Pty Ltd). He wants to promote special offers during their sale periods. He signs a contract with Cybertone to advertise in all the Westfield shopping centres. He has 2 advertisements done for the promotion i.e. one in a male voice for female audiences and vice a versa. Through experience he's learnt that male voice seems to attract more female customers and same goes for the opposite sex. However, as the advert is not specific and is only a generic one, he chooses to advertise alternatively for male and female clothing.

Advertiser 2

Ken is the restaurant manager for a Thai place in the foodcourt in Broadway Shopping Centre. He wishes to advertise his lunch deals to all the customers coming to Level 3. He signs up for an advert to run from 11:30am - 3:00pm for all the customers coming up to level 3, 7 days a week. Also, to attract additional customers he may have anywhere between 1 -3 deals to be advertised at no extra cost.


New Subscribers

Alan is a recruitment consultant who works 9 hrs a day, 6 days a week. He has no time to go window shopping. However, he has a keen interest in playstation games. He wishes to subscribe to receive information on playsataion games, as that could potentially save him from doing research on the internet. For doing so, he enters his details via the website to subscribe. He then receives an unactivated card within 5 business days. To start receiveing the information and activate the card, he needs to go one of the cybertone offices or any post office and identify himself. ONce he's done that he is all ready to enjoy the comfort of advertising according to his interest. Upon registration he receives an id and password which he can use to log on to the website anytime and change his personal details, preferences, interests...etc. However, a 48 hr time period is required by the system to activate his new details.


System Administration

Michael is head of maintenance team. The cyber tone system is complex and growing every minute, due to number of customers registering their interest every minute. Michael has to make sure that the system is updated on a regular basis to provide satisfactory services to both the advertisers and the customers. He's got a team of professionals for onsite maintenance as Cyber tone guarantees to fix any functional problem within 12 hrs of reporting. The cyber tone system has both audio and visual components which makes it difficult to detect the cause of any structural malfunction quickly. The admin keeps a back up of all the data provided by the customers and details given by the administration, in case they are required to build one all over again.

Scenario 1

The display at Bondi Westfield has stopped functioning from 2 customers entering the range field at the same time. The centre management logs in a complaint at 11am. The maintenance team reaches the site at 2pm and starts working on the machine. (This is one common problem the team is facing at the moment, and the developers are in the process of finding a permanent solution or alternative to it). The display needs to be reprogrammed and after doing that it needs to be tested again. The new settings are such that the display will play the advertisement for the 2 customers one by one. In doing so for example, If Jack and Adam enter the field together, then the system detects that A comes before J , and hence will play Adam's advert first. This is only a temporary arrangement till this problem is fixed by the expert team. All the customers are sent a written notice informing them of this temporary arrangement to avoid them from getting upset.

Scenario 2

Kelly walks in Manly shopping centre where cyber tone starts playing the advert for a new pair of sunglasses available in the market. However, she realizes that the advert is not very clear and she has to strain her eyes to read what is written in the advert. She registers a complaint with the customer service department and leaves her feedback. The maintenance team arrives at the site and realizes that the device is on the top floor of the shopping centre and the sunlight from the glass roof makes it hard for the customer to enjoy the advert. The team then repositions the device such that the sunlight has no effect on the display what so ever.

Quality narrative

Performance

Case 1

  • John, a Cybertone advertising subscriber; walks into broadway shopping centre and a CAP targets him and starts a personally suited advertisement. Meanwhile Jane who is also a Cybertone subscriber walks past the CAP but due to it already being in use by John; an advertisement isnt shown to Jane who is disapointed whe wasnt shown any new products that she might like.

Narrative – The system’s detection time is anywhere between 1-3 seconds, once a new customer enters the cyber tone range. The number of customers for cybertone is growing rapidly, so to satisfy maximum customers the maximum length of the advert is set to 1 minute during peak periods and 2 minutes in off peak periods.(For this the advertisers may be required to provide 2 copies of their advertisements, i.e. edited and non edited ones)

Case 2

  • John and Jane both are affiliated to CyberTone advertising program. They are both individually going to Coles Superstore for grocerry shopping. Both enters CAP's sensor area at the same time and the system starts the advertisement for both of them simultanouly. In doing so the quality of the advertisement is very poor. Both John and Jane do not enjoy it.

Narrative – The expert team is currently working on this problem. For temporary basis only the system is programmed such that if 2 customer enter the range at the same time, then the system scans their name and plays the advert in alphabetical order. The customer are informed of this temporary arrangements, therefore, they are not frustrated and happily wait for their advert to be played.

Case 3

  • During christmas when shopping centres see their peak usage; Every cybertone advertising point tries to access the consumer database simultaneously creating huge loads that the central servers cannot handle and the entire system becomes inoperable.

Narrative – The maintanence team is currently working on improving the system capacity with the growing numbers of users.This will require installation of more devices and a structured approach as to which advert to play. For time being they are programming the system to play generic advert during peak seasons like Easter and Christmas than specific adverts. This will not only avoid the customers from being upset but more than 1 person can relate to the advert at the same time. This is due to the fact that the needs of multiple customers are same during that period.


Security

Case 1

  • Sharon gained illegal access to Cybertones customer database and all of their credit card details, purchase histories and preferences. Sharon then used the credit card details to steal money from many of cybertones customers bank accounts.

Narrative - The cyber tone system should have a unique code which they will need to provide when dealing with any financial institution. This code should not be a static one but one of those where you need to enter an id and a different code is generated every single time. To ensure high level security a combination of 3 codes should be used which entitles 3 trusted members of the maintanence team to sit together and perform the transactions. In doing so, cyber tone can rest assured that even if the credit card details are obtained or one of the security card is captured, a fraud cannot occur. This system is currently being used by many top financial institutions around the world, including Citibank, and is said to be one of the safest system in current times.

Case 2

  • Sharon again gained illegal access to Cybertones customer database with the sole purpose of obtaining the purchase histories and preference of all users. She then used this information by selling it to ABC marketing company to whom this information is very valuable.

Narrative - Cyber tone will need to develop a system where the user information is stored under a unique id number and not their personal details (eg. their first or last name). This will restrict any third party in assessing the interests of the customers and using it to their advantage. Furthermore, the system should code the file relating the ids and the personal details, such that it takes a 2-3 step procedure to decode the file. Each step should require authorization from a different member of the maintanence team.

Conceptual Architecture

Creating the conceptual architecture is an iterative process that involves examination of the systems’ functional requirements, its desired quality attributes and other factors that affect the structure of the architecture. The conceptual architecture is, by its nature, closely intertwined with the functional requirements of the system. It can therefore be used very early in the system development lifecycle, as an aid to clarify and understanding what is that the stakeholders expect the system to do.

Using Narrative description technique to finding the key concepts to identify domain components

Image:Narrative_description_technique.JPG

Conceptual Architecture Diagram v1.0


Image:Conceptual_Architecture_v1.0.gif


Steps to be taken:

  • We have to clarify compenents and responsibilites to see whether they can meet their functional requirements.
  • We have to clarify connectors, indicating the flow of information.
  • We have to evaluate behavior of the architecture against usage and quality scenarios by using use-case maps. It will help to identify any flaws in our architecture.
  • We have to identify sterotypes as it will indicate the nature of the components, and applying sterotypes to the conceptual architecture will help to clarify its structure.
  • We have to define data models as it furthers clarifies the architecture by allowing us to be more explicit about the nature of the information that is being created, communicated and stored in the architecture.

Conceptual Architecture Diagram v2.0


Image:Conceptual_Diagram_v2.0.gif




Image:Conceptual_Diagram_v3.0.jpg

Component responsibilities

  • User: The 3 types of users configured to use the interfaces are Unregistered users, Registered users and Administrators.
  • Wireless Sensor: The wireless sensor detects RFID tags within range and sends their unique code to the Customer ID lookup object.
  • Image Sensor: The image sensor takes a series of images and passes them on to the behavioural detection object.
  • Unregistered User Interface: Unregistered users are directed to the registration interface.
  • registration: Unregistered users enter their personal details (name, address, credit card details, etc) and select categories and specific products they are interested in.
  • Registered User Interface: Registered users enter their customer ID and password which will be authenticated before providing access to the system.
  • Administrator: Users with Administrator privilleges can log in with their User ID and password which will be authenticated before providing access to management options.
  • Management: The management Interface allows users of administrator level to manage customer accounts and advertisements. i.e. add, remove, edit, etc.
  • Authentification & Identification: This object checks the password provided against the supplied User ID to ensure security of all users information.
  • Update Profile: This makes the requested changes to profiles that either the users themselves or administrators have edited.
  • Customer ID: Refers to the Unique code recieved from the wireless sensor and looks up the entry in the Central Identity Bank.
  • CIB (Customer Identification database): Stores all users profiles.
  • Customer Profile: Receives specific customer profile from the CIB and sends name, gender, age and preferences to the product selector object.
  • Behavioural Detaction: Depending on which image sensor the data comes from the location of the user can be identified. The images are analysed and the person's mood and current actions can be identified and passed on to the product selection object.
  • Product Selection: This uses all the information recieved from the customer profile and behavioural detection to select a suitable product advertisement catered for each particular person and their current behaviour. It pulls the advertisement from the advertisement Database and sends it to the output.
  • Ad Database: Stores all advertisements and their variations.
  • Output: Recieves the advertisement and depending on the users behaviour it will vary the audio and video outputs to best suit each viewer at the present time.
  • Audio: Plays audio recieved from the output.
  • Video: Displays video recieved from the output.

Behaviour

This diagram shows the behaviour of the system when the customer walks into the sense of field and how the system selects a suitable advertisement according to the sensor inputs.

Image:Display ad.jpg


This diagram shows the registration process for a new user and how a new profile is created.

Image:Reg new user.jpg


This diagram shows how an administrator deletes or creates new ones or updates existing advertisements.

Image:Update ad.jpg

Data Model

Below is a more detailed description of the data stored in the storage elements of the architecture; namely the Customer Identification database (CIB) and the Advertisement Database.

Customer Identification details

User Data
RFID code --------------------> Purchase history
First Name Personal Interests
Last Name
Gender
Email Address
Password

The Customer Identification details stores information about registered customers of Cybertone. Importantly storing the customers contact details, individual RFID code and purchase history and interests for advertisement selection purposes.

Advertisement details

Advertiser Advertisement
Company Name
Product --------------------> Advertisement ID
Email Address Behaviour version
Password
Phone Number
Billing Address

The advertisement details stores information about the companies and their products which Cybertone is advertising. Variations of the advertisement are stored depending on the behavioural input.

Initial Execution Architecture


Image:Initial Execution Architecture.jpg

Implementation Architecture

Implementation Architecture Diagram Version 1

 Image:ImplementationArchitectureV2.jpg

 Image:Legend1.gif

The implementation architecture captures the high-level structure of the software modules that comprise the system and divides the architecture into application-related components and infrastructure components.

The implementation architecture elaborates the various technologies that will be used in CyberTone System. Registered, unregistered and administrator will be able to login in the website using their passwords and will be authenticated and identified; and given access rights according to their privilege. The HTTP request goes to web server which further goes to application components of CyberTone.

Also the application components will liaise will database when their user has update his details or information using the MySQL Database. Application components will send information to the output drivers which will be displayed on monitor and speakers. The wireless sensors will communicate with the application components via wireless protocol and provide them updated information continuously.

.

Anticipated issues for following milestones

We are a little worried that when it comes time to build the final prototype for Milestone 2 that we might have designed the system above our programming expertise and wont be able to fully comply with the final architecture.

Notes for Group Members

We will be using this section to inform other group members about important announcements such as group meetings.

How about we all meet up today before the demonstration?

Guidelines For Managing Project Teamwork

Project Leader Role and Responsibilities:

  1. Facilitate all the meetings
  2. Arrange meeting times and notices to all members within sufficient time
  3. Follow up with individual team members regarding their share of work
  4. Communicate with all team members regarding any issue related to the project.
  5. Monitor and Review the progress of the work and the project
  6. In consultation with team members assign responsibilities to each of them
  7. In consultation with team members set time frame, goals and milestones for the project

Note: Amish Joshi has been chosen as Project Leader

Meeting dates:

  1. Every Monday 4pm – 6pm Level 5 Tower Building
  2. Every Thursday 5pm – 6 pm Level 5 Tower Building

Note: Project leader can call for an urgent meeting, if required

Mode of Communication:

  1. Physically meeting
  2. Emails
  3. UTS Online Discussion Board
  4. Phone
  5. Wiki

Conflict Resolution:

  1. Aman Poonia has been chosen as the Liaison Officer
  2. If any team members have any issue they will approach liaison officer for discussion
  3. Liaison officer will take required course of action
  4. If any member has conflict/issue with liaison officer then they will discuss the matter with project leader

Budget

Team will invest 12 hours collectivily per week for the project.

If the progress is unsatisfactory then the hours maybe increased.


Protocols for Using Wiki:

Source-code Repository:

Instructor comments

You need to add more to your wiki! The two usage narratives that you have written are fine. But there should be more - consider good and bad experiences. Also what about the user registering or changing their preferences? Are there any other users besides the shoppers? The quality narratives should address a specific quality attribute - state which one! You need to pick TWO top priority quality attributes. Lian 26th March

Milestone 1 Feedback Your analysis and design work needs significant improvement. You must make sure that you provide written explanations of your design decisions. Diagrams alone are close to worthless. Here are some specific comments:

  • Poor assumption on how system should work - it should support the detection and analysis of multiple people in the sensor fields, and simultaneous display of video/audio, but not necessarily on the same output devices. Of course some kind of strategy/protocol may need to be devised for this issue. You can express some of these different situations of use, in your usage narratives.
  • The contextual factors need improving. Some factors are simultaneously enablers/constraints/risks. Make sure you identify what each factor is.
  • The stakeholder narratives are slightly naive. There are a number of important stakeholders missing, eg. advertisers, privacy lobby, media regulatory authority.
  • Usage narratives: so far only subscribers are included. What about advertisers, new subscribers, system admin/maintenance? I question the HIV case - would they have this information in their profile?
  • Quality narratives. These should be written positively and specify measures. For performance, what is the required response time for the system to detect and subsequently output the tailored media? Within 1 minute? For security, what kind and levels of protection are required?
  • The initial conceptual architecture is presented as a diagram only - what about the description of component responsibilities?
  • The final conceptual architecture needs work. Five of the components are questionable - Registration, Unregistered User, Registered User, Web Interface, Administrator. More appropriate would be a single presentation component dealing with the Subscriber, where they can register and update their profile. The Update Profile component should be a responsibility of the subscriber presentation component. This component could be accessed through an HTTP web external interface. You do need some kind of presentation component for administrators, but you already have a Management component.
  • The stereotypes are not explained. Data models are missing.
  • Why do the Web Interface and Authentication components have a Realtime stereotype?? The Image Sensor should be transmitting video data. You tend to use the term 'object' - architecturally we are dealing with 'components', which are larger-grained than objects. The Customer ID component doesn't seem to do much.
  • UCMs: missing any explanation. Include lifecycle events as well for next milestone.
  • Execution architecture - is this a process or concurrent subsystems view? Missing any explanation.
  • Implementation architecture is reasonable at this stage. Are you assuming that the incoming video data from the sensor field is transmitted wirelessly? If so, then state this assumption earlier. Should the "wireless protocol" label be shown as an API call?

Lian 1st May

Personal tools