19th May 2017
Digital Skills Academy
The purpose of this document is to record the requirements specification for the minute.ly App. The document outlines the proposed functionality that will be available in the application.
This document is a business level document intended for business people and any individual with the need to record minutes of their meetings.
App – Application
Affordances – The properties of an object that inform people how the object could be used. The term ‘perceived affordance’ applies when the object properties are perceived in a way that differs from the real-world, physical properties, especially when the usage of the object depends on perceived rather than real-world properties
Prototype – A lightweight initial design of an interface or product, used to capture initial concepts and layouts to gather feedback from users, as well as project participants and stakeholders.
Scope – the way to describe the boundaries of the project. It defines what the project will deliver and what it will not deliver.
Functional Scope – refers to the services your system offers and that will eventually be captured by the use cases.
CPU – A central processing unit (CPU) is the hardware within a computer that carries out the instructions of a computer program.
OS – Operating System.
OSX – a series of Unix-based graphical interface operating systems.
The following concept has been put forward:
This is going to be a minutes recording App, that will use voice recognition to record and convert the minutes to text.
Our App is required because we have identified an opportunity for busy business people to save time on a daily basis. Many business people today have multiple meetings each day and are required to take minutes. As we all know taking minutes is a cumbersome process and can take a lot of time. Often minutes are not documented well or not done at all. The core feature (technology) that our app offers is the ability to recognize and record voice (of individuals) and then output it in text. Both voice and text version can then be easily shared.
Our App will be mostly used on mobile devices, however the tool has also the ability to be accessed through desktops.
The technology is the functionality of voice recognition and output to text.
The following application minute.ly app designed by Stream Team, has been identified as the initial target device of the following affordances in terms of the user needs bbehavior It gives the users the ability to record and automatically generate minutes for a meeting using the voice recognition technology native to mobile devices (i.e. smartphones, tablets). The minute.ly app monitors and records speech patterns during conversations while recognizing and tagging each individual contributor. The input is converted into a human-friendly format and distributed automatically as the minutes to each team member once the meeting is adjourned.
The features of the device plays an important part in understanding the usage of the app, intuitive, user friendly, multi-platform support, and fully optimized to work on tablet and mobiles platforms such as iOS, Android and Windows.
The use of an API for native device speech recognition enables minute.ly app to recognize words, grammar and punctuation to communicate with the device. This removes the task of having to manually generate and distribute minutes for meetings.
The minute.ly app takes no training for users to do what they need to achieve: Monitor and record the meeting conversation and distribute the final output with a small number of steps to go through.
On desktops we have mouse-overs and tool-tips which are great at explaining what to click on desktop apps and websites. Cursors change (on desktops in Windows, often an arrow tip to a hand with a finger pointed up) when we roll-over buttons and buttons generally have at least 3x states: normal, hover/mouse-over and down/click.
On mobile devices we don’t have these things*. We have “fat fingers” with very inaccurate haptic interfaces on small devices *Therefore* we need to make a concerted effort to assist users visually as much as possible with hints or “Affordances“.
Designers and those in the field of Human Computer Interaction often use afford as meaning “to suggest” or “to invite”.
The Stream Team designers will design the navigation of the minute.ly app with appropriate “butcons” (Button Icons) that will leave the users of the app under no illusion as to what is clickable/tappable in order to progress to the next step that they need to progress to in the app. This will be accomplished by the use of appropriate colours, fonts, shading, and possibly 3D effects to invite the user to ‘tap here’. We will be applying standard Gestalt Principles to draw the users’ eye to what they need to do next. Indeed, we have already tested the prototype with a number of people and their responses have been favourable so far.
Standard controls that we are all used to seeing on CD players and the like are employed in the app to start, stop and pause/resume meetings. The style of the buttons is highly intuitive. Profile photographs are used in the interface to indicate which attendees are present at the meeting.
We have identified through our market research other minute taking apps on Google and App store. In essence, there are similarities in functionality, but the majority of them do not recognise Individual Users and it does not offer remote access to the meeting.
None of the competitor apps are as user friendly as the minute.ly app.
App Name /
Individual user recognition
Voice to text
End of meeting option
Easy to use
By reviewing our competitor’s products, we have learned that customers want the minute.ly app to be easy to use and easy to interact with. We have outlined the main functionality of our competitor’s products below.
|0001||Converting minutes to text|
|0002||Remotely joining the meeting|
|0003||Recognition of individual voices|
|0004||To have the ability to listen back to minutes|
|0005||Sending the minutes|
|0006||Converting minutes to a voice|
|0007||Drag and drop files|
|IR-0002||Voice to Text conversion|
|IR-0005||Connect through Gmail|
|IR-0006||Online and Offline functionality|
|IR-0008||End of meeting option|
|IR-0009||Send tasks to meeting members|
|IR-0011||Screen interact function|
|IR-0012||Stop- Record-Pause-Play function.|
|IR-0013||Meeting Analytics tool|
We have interviewed 14 real people and discussed general functionality and need for the minute.ly app in their daily life. From the feedback of people that we have interviewed we have confirmed the need for the minute.ly app. The people confirmed that if this product would be available in market they would be potential users of the minute.ly app.
This is the documentation of the data gathering research for the minute.ly app and its functionality requirements feedback from people that have been introduced to the minute.ly app functionality.
We have looked at blogs and articles of people looking for minutes recording app. What we found is that people would like to have a minute recording app to make minute recording that is easy to use.
We have quoted some of the notes from people who have discussed the need for minute recording app on forums:
“Hi, I usually use a notebook (the paper kind) but I feel like the transcribing time is wasted effort. I’m moving to more electronic note taking because of that. Have you found a good way to shorten the transcribing time? “– Perry Wilson Mar 12 ’11 at 18:57
“The problem with this approach is that you get the whole hour-long meeting that you have to listen/read through again afterwards to get the actual action points and decisions. Which means you basically process the entire meeting twice, wasting a lot of time.” – Johan Mar 28 ’12 at 6:34
Research for Speech recognition
Speech recognition software uses 2 different kinds of recognition:
Speaker independent software is designed to recognize anyone’s voice, so no training is involved. This means it is the only real option for applications such as interactive voice response systems.
The downside is that speaker–independent software is generally less accurate than speaker–dependent software.
Speech recognition engines that are speaker independent generally deal with this fact by limiting the grammars they use. By using a smaller list of recognized words, the speech engine is more likely to correctly recognize what a speaker said.
These systems analyze the person’s specific voice and use it to fine tune the recognition of that person’s speech, resulting in more accurate transcription.
Voice recognition or Speaker identification refers to finding the identity of “who” is speaking, rather than what they are saying. Recognizing the speaker can simplify the task of translating speech in systems that have been trained on a specific person’s voice or it can be used to authenticate or verify the identity of a speaker as part of a security process.
We have surveyed 23 people. From looking at the survey results we can see that 80% of the people surveyed would be potential minute.ly users. These results give us clear indication that there is a need for the minute.ly app.
From all the surveys completed we have created the validation of the requirements for the minute.ly app as shown in graphic below.
Using the feedback results from people that we surveyed, we have created the final requirements for our the minute.ly app.
|VR-0001||Converting minutes to text|
|VR-0002||Remotely joining the meeting|
|VR-0003||Recognition of individual voices|
|VR-0004||To have the ability to listen back to minutes|
|VR-0005||Sending the minutes|
|VR-0006||Converting minutes to a voice|
|VR-0007||Drag and drop files|
The users have identified some of the key functionality that they would like to have in the minute.ly app in order for them to use it or buy it.
|CSF-0001||Minute.ly app will be usable on all mobile devices||High|
|CSF-0002||Integration to Outlook as most of the businesses use Outlook system||Medium|
|CSF-0003||Operating system compatibility with Mac and Microsoft||High|
|CSF-0004||Competitors may have same app idea and have it developed before us||Medium|
CSF = Critical success Factor
Based on the requirements validation and the user community we have talked to we have created Personas and user Scenarios for Minute.ly app.
|Location: Dublin Suburbs|
|Education: Accountant – ACCA Qualified|
|His Goal: To have monthly meetings with company directors and other finance staff to discuss company finances.|
|Brian has a very busy daily work schedule and relies on accurate information and detailed meeting minutes to review what was discussed.
To avoid mistakes made by staff dictating minutes Brian uses and trusts minute.ly to accurately record and distribute minutes to all the relevant people.
Brian also uses the features of minute.ly to confirm decisions made by company directors and other staff members, months after the meeting was held. He is very happy with the features of minute.ly and finds its functionality invaluable.
|Occupation: Freelance Web Developer|
|Education: BA Computer Science|
|His Goal: James holds regular meetings with client(s) to discuss/agree specifications, timelines, detailed website/app functionality.|
As a freelance web developer James travels around the country for client meetings. He finds that with so many meetings he sometimes forgets important decisions that were reached.
With a lot of meetings to attend James cannot always make it on time or cannot attend a meeting at all due to scheduling conflicts.
He relies on minute.ly to record and distribute the meeting minutes to him if he was unable to attend or review the minutes during the project development if he is unsure what final decision was made.
James has found that all clients he has introduced to minute.ly have found the app very useful. They have recommended the app to their colleagues and think of it as an essential tool for all of their meetings.
|Occupation: Managing Director @ DI Designs|
|Education: Masters in Digital marketing & Business Management|
· Married with 3 kids, aged 14, 12 and 9 years.
· Lives in a private house, in a quiet housing estate, 5 minutes’ drive from Dublin centre.
· Since age 36 she has arthritis in her right hand.
|Her Goal: To have meeting with her designer team to agree on a design and functions of the new website they are developing for ZiGi company.|
|Michelle has a very important new customer Alice, who is owner of a very large international company ZiGi. Alice wants Michelle to present her design and function proposal for the new website.
Michelle has arranged meeting with her design team for Wednesday 2pm. She already has asked 3 designers (Gerry, Ken and Andy) to make a design drafts for this and they will join her at the meeting to work with them on best design options to present to Alice.
Michelle arrives for meeting 15 minutes early to set everything up for it. She turns on a projector for presentation, she makes sure her iPAD is fully charged for the meeting and she starts her Minute App.
When all 3 designers arrive Michelle asks them to record their voice by reading one sentence for her meeting app. She explains that she is using a new App that takes minutes for the meeting so she would not have to write it all down as she has a medical condition with her hand.
All designers have no problem with that and they are very impressed with new app that saves Michelle all the writing.
Michelle starts the meeting and recording of the minutes. All designers present the designs to her and they have a very hard decision to make as she likes more that 3 presented designs.
She goes home and reviews the designs again and goes through her minutes in her Minute app. She notices some details she has missed in meeting on two of the designs that really make them stand out. She decides to present them 2 designs to Alice on Friday.
On Friday Michelle goes to meeting with Alice and starts her Minute App to record meeting minutes. She presents the designs she has for ZiGi website. Alice loves one of the designs, but she wants to add bit more functionality. They agree that it can be done. Alice is very happy and decides to sign a contract with Michelle to design her website.
|Occupation: Event coordinator|
|Location: Dublin city|
|Education: BA Diploma in event management|
· Not married
· Lives in rented accommodation with his girlfriend
· Looking to buy a car
|His Goal: To have meeting with his assistant Ray and convince his new client Mary to go with his company to plan a fundraiser event for a big local company.|
|He had a very busy day and he is going to be late for his meeting with his assistant Ray and their new client Mary at 3pm.
He calls his assistant and asks him to apologise to Mary that he will be 15 minutes late. He asks his assistant Ray to start the Minute app and start the meeting as agreed per agenda.
While he is sitting in Luas Gerry opens his phone and opens his Minutes app to connect to meeting that has just started. He can see that Ray is introducing to Mary Agenda of the meeting and has started to discuss possible locations for the fundraiser, number of people attending and dress code.
He arrives at this meeting 15 minutes late. When he enters the meeting room he apologises and straight away joins the meeting – without anyone stopping meeting and trying to explain to him what was said and covered. He said he liked Mary’s idea that all people will have to wear red or white. Rays idea and the Japanese gardens would be a perfect location as it is going to take place in the middle of June.
Gerry explains his ideas on how the best to approach the raising of funds and organisation of this event, he suggests bands and performers while having BBQ.
Mary loves the idea and decides to go with Gerry’s company as organisers of her company event. She asks Gerry to show her the app he was using to be able to join meeting and follow what they were discussing as she often has a tight time schedules for making meetings and this app would save her time too.
If any of the items below need to be taken into consideration, then list them, add potential mitigations if known. The Further information required should be used as a check list of items that need information, work or investigation prior to the design phase as they only came up while this document was being finalised.
|0001||All those present at the meeting will need a fairly powerful smartphone.|
|0002||All those present at the meeting will have email address.|
|0003||All those present at meeting will be able to speak.|
|0004||Technology will be able to recognise voice|
|0005||Tool will be able to connect with 3rd part calendars|
|0006||minute.ly app will be as useful as pleasure to interact (easy to use)|
|007||Recording system (voice recognition) will be resistant to various disturbances of the background|
|0001||Ideally, only one person at a time can talk or else the software will struggle to identify what’s being said.|
|0002||All present at the meeting will have to speak loud and clear for system to pick up all words.|
|0003||Users can only remote in if the meeting is held online|
|0004||Will system pick up a strong foreign accent|
|0005||Will the app work well on smaller screens/better on ipad/phablets|
|0006||Possibility of slower processor speed and wireless connection|
|0001||If voice data is to be transmitted along with the text based version of the minutes after the meeting is over, this will require considerable bandwidth and a fast connection to the Internet.|
|0002||If customer wants to listen to ‘audio’ version of the minutes he must have powerful battery for his phone.|
|0003||If we offer offline functionality, where is the data stored? (temp on users phone?)|
|0004||We need large database capacity if all recordings and texts is saved on our servers like YouTube|
|0005||As a part of our ongoing responsibility we need to provide regular updates (maintenance &support) to improve functionality|
|0006||How is it affected by background noise?|
|0001||Largely dependent on mature voice recognition technology to perform the core functionality.|
|0002||Meeting can be interrupted for person connecting remotely of bad internet coverage issues.|
|0003||Are we able to connect with Gmail/MS Outlook|
|0004||Will the tool work on smaller screens/less efficient on mini screens|
|0005||What if the system will misunderstand some words spoken as people often hesitate, mumble or slur their words|
|0006||What about technical jargon?|
|0001||Data required by the conversion process|
|0002||Need internet connection to be able to connect meeting remotely.|
|0003||Dependant on microphone quality of each device|
|0004||Dependant on phone technology to convert voice to text?|
|0005||Initial training period during which the app ‘learns’ the operator’s voice|
|0006||Accurate positioning of the microphone|
|0001||APP. DEV. to further advise on proposed software implementation and what APIs are required.|
|0002||Further advice on what text output type system will have and how it is going to be implemented.|
|0003||Email integration with Gmail/MS Outlook|
|0004||What sort of server space do we require?|
|0005||Are we an app or are we also web based to be used on desktops?|
|0006||Compatible with what OS?|
|0007||Are we a free service or paid tool?|
As the development of the app. progresses, we would need to test a number of different voice recognition technologies, a number of which rely on a robust connection to the Internet and some which do not, in order to identify the best one for our app.
As ever with technology, the voice recognition sector is showing great promise and continues to move in a positive direction. In an article in the Guardian in December, 2013, Scott Huffman, senior engineering director at Google, made it clear that Google sees voice as playing one of the biggest roles in this crazy new age of wearable tech – possibly more so than screens and keyboards. In another article in the International Business Times, new technology by Intel called Jarvis is being developed which shows great promise. Intel thinks its new, digital personal assistant (which shares a name with the artificially intelligent computer featured in the “Iron Man” comics and movies) will deliver things that Siri can’t, in large part because he’s not tethered to the cloud. Jarvis technology is something that we would like to consider as a solution for converting meeting minutes to text in the minute.ly app but we may have to wait some time before it matures.
The following table outlines the Out of Scope Requirements:
|001||Video recording device|
|002||Direct to printer option|
|003||Address action items|
|004||Cross reference to related meeting topics in previous meeting minutes. This presumes shared repository perhaps in cloud with smart filing capability. Perhaps this is beyond scope.|
|005||translation in text and voice to different languages|
|006||Off line access instant message assign tasks|
|007||Not an offline|
The following table outlines the functional objectives (not project objectives) of this specification.
|DO-0001||Transfer voice to text||High|
|DO-0002||Give information on recent member activity||Medium|
|DO-0003||Display converted voice to text instantly||Medium|
|DO-0004||Let take a picture||Medium|
|DO-0005||List members involved||High|
|DO-0007||Display attendees picture||Low|
|DO-0008||Show activity such as instant message/file transfer/assign a task||Medium|
|DO-0009||To allow user to stop/record/play||Medium|
|DO-0010||Allows to create meeting||High|
|DO-0011||Allows invite attendees||High|
|DO-0012||Allows you to pre-set the meeting||Medium|
|DO-0013||Allows to store text||High|
DO = Delivery Objectives
Principle of this project is for all team members to have a clear understanding of the product concept and functionality. All team members must have used an app before and have a good understanding how minute taking works in real life.
The following table outlines the Security Requirements:
|001||Data is stored in secure server database(s) with daily incremental backups.|
|002||Strong client passwords are enforced during registration using an industry standard password-checking algorithm.|
|003||Client passwords are encrypted and stored in the database using the SHA encryption algorithm to prevent security breaches|
|004||Email addresses entered during the client registration process must be in valid format, and are verified using a unique security code.|
|005||There is no access to sensitive or client information for the Minute.ly App unless the user is logged in with valid username or email address.|
|006||All code is unit tested and control measures are in place to monitor and assess any errors when they arise.|
|007||Account Access control is limited to system admins who have full access to client account information.|
|008||Application updates are verified using MD5 checksums.|
|009||All communication between the Minute.ly app and application servers/databases is encrypted using Secure Socket Layers.|
|010||Application data on the device is encrypted so that sensitive data such as usernames, passwords, or credit card numbers can’t be accessed easily from the file system.|
|011||All external servers are firewalled and OS updates/patches are installed as required.|
Purpose of an audit is a planned and documented activity performed by selected team’s members to determine by investigation, examination, or evaluation of objective evidence, the adequacy and compliance with established procedures, or applicable documents, and the effectiveness of implementation.
Auditing will be a systematic and independent examination of data, operations and performances of the project for a stated purpose. In underlining audit process the auditors will first recognize the propositions before them for examination, evaluate the implementation process against formal documentation procedures and on this basis formulate their judgment which will be communicated directly to persons interested. The purpose is then to give an opinion on the adequacy of controls within an environment of the audit, to evaluate and improve the effectiveness of risk management, control, and governance processes.
· Provide management with an independent assessment of efficiency and effectiveness of the design and operation of internal controls and operating procedures.
· Provide management with the identification of application-related issues that require attention
· Define where application vulnerabilities exist
· Discuss Information Interfaces
· Walk through Auditing Process
· Identify High Risk Vulnerabilities
· Outline Mitigating Solutions
· Identification and evaluation of the design of controls
· Evaluation of control effectiveness
· Assessment of compliance with regulatory requirements
· Identification of issues requiring management attention
|Auditing Approach||· Work with the developers to enhance education and prevention, rather than fault finding.
· Configuration Management and Project Managers will ensure everyone has their eyes on security, performance and user cantered design.
· Begin by collecting high level data flow diagrams
· Study and review of documentation relating to the application
· Study key functions of the software at work by observing and interacting with operating personnel during work.
· Run through the various menus, features and options to identify processes and options for conformance to business rules and practices.
· Correct any weaknesses found at the end of an applications review in the software that could lead to errors or compromises in security.
· Evaluate the environment under which the application runs.
|Trace the data down to specific functions that request input or return output and document each function’s name, file location and input/output arguments.|
|· Proper controls need to be put in place to ensure the data received is what’s expected and the data returned to the users is of an expected output as well.
· Taking the functions identified in “where to start”, examine each of these functions to ensure proper data validation (and if necessary data scrubbing) takes place.
· Particularly ensure the proper data type (numeric, alpha, or both) is being checked, proper length (min, max, or exact) is specified, if data is required or not, default value is specified, and that functions to clean the data are written.
|Error Handling||· Examine the error handling of all functions to ensure the errors are sanitized to the point of providing “need to know” information back to the user
· Production applications should not provide the same error messages as used in development Best Practice
The following table outlines the Localisation Requirements:
|001||US English to be the seed language for the user interfaces.|
|002||It must be possible to localize all strings to a language and a variance of the language|
|003||Local specific settings will be used in Ireland, such as numbers, dates, times, time zones, decimals and currency.|
|004||For future development we may consider other languages depending on technology progress.|
At this point we don’t intent to design for accessibility.
We will be integrating our product with the outlook client software, outlook.com and Gmail and calendar application on OSX.
For cloud storage services we are evaluating cost effectiveness of amazon AWS.
One of our features that will be part of the minute.ly app is meeting analytics which will provide a report on the following:
|002||User task assigned|
|003||Total amount of instant messages|
|004||Total files edited|
|005||Total of people added to the meeting at the start|
|006||Identifying two or more users talking at the same time|
The following table outlines the monitoring Requirements:
|001||Any application and server downtime is monitored and communicated via app notices.|
|002||A dedicated twitter account will be set up to communicate any issues and/or (un)scheduled downtime.|
|003||Control structures are in place to monitor, report and repair long database queries as well as application hangs and any unhandled exceptions.|
|004||Unusual CPU, memory, network usage is automatically reported to system administrators.|
|005||Usage of the application and report statistics on most/least used functions so developers know where code optimizations are most beneficial.|
|006||Constant external monitoring of the status of external components (databases, web services, fileservers, etc.) is in place.|
|007||Monitor and report the number of application background tasks and scheduled server maintenance/scheduled tasks.|
|008||Monitor the number of new users, active users and total users.|
|009||Track the following user usage over various time periods with historical reporting:
· How often is Minute.ly opened
· The duration users spend using the application
· Which icons/buttons are clicked (or any other custom event)
· Wi-fi and cellular data usage
|010||Record the device information and operating system environment.|
|011||Integration of a feedback form in the Minute.ly application for user feedback and application suggestions.|
The following table outlines the Publications Requirements:
|001||At the end of the meeting give the administrator the option to tweet about the minute.ly app.|
|002||There will be a printable pdf to compliment the product available.|
There are currently two leading Mobile operating systems in the market – the Android OS by Google, and the OS by Apple.
The status quo right now is that multiplatform is the best way to go for any application, which allows it to penetrate a wider market audience.
So how can we go multi-platform in today’s mobile environment?
Cloud Computing! We require a common Mobile Enterprise Application Platform (MEAP) that is available on all mobile platforms. Mobile applications can run on the Cloud and accessed through the MEAP, allowing everyone to have a common ground in mobile application consumption.
Another method is to use HTML5. Since all platforms have full browser capabilities, or at least close to it, HTML5 can become the common ground where developers create their apps and not worry about device-specific quirks. This is mainly because of HTML5’s ability to scale to any screen size and processor because it is a common standard that everybody will be implementing on their mobile platforms.
OPERATING SYSTEMS – There are currently two leading Mobile operating systems in the market – the Android OS by Google, and the iOS by Apple.
The status quo right now is that multiplatform is the best way to go for any application, which allows it to penetrate a wider market audience.
So how can we go multi-platform in today’s mobile environment?
CLOUD COMPUTING – Cloud Computing. We require a common Mobile Enterprise Application Platform (MEAP) that is available on all mobile platforms. Mobile applications can run on the Cloud and accessed through the MEAP, allowing everyone to have a common ground in mobile application consumption.
HTML 5 – Another method is to use HTML5. Since all platforms have full browser capabilities, or at least close to it, HTML5 can become the common ground where developers create their apps and not worry about device-specific quirks. This is mainly because of HTML5’s ability to scale to any screen size and processor because it is a common standard that everybody will be implementing on their mobile platforms.
POTENTIAL SOFTWARE THAT OUR APP COULD RUN ON:
Having looked at the various possible infrastructures for voice recognition software it seems currently that this will need to sit in a cloud.
At a minimum the software we require and may potentially have to be custom build and have the following:
The following table outlines the Documentation Requirements:
|001||A User Guide will be available in Pdf that can be downloaded. However every effort will be made to make the system as intuitive as possible.|
Based on the requirements gathering and analysis phases described above the following high level model of the minute.ly app has been derived.
Main Functional clusters:
Once the user opens the minutel.ly app from their mobile device the app is loaded and the user is provided with a very simple menu: Login or sign up.
The sign up process will be standard and include secure verification process.
Once the user has successfully logged on they are in a secure state and can manage their account such as create/edit meeting or change profile settings.
Prior to leaving the app the user is asked if they want to browse through the help files. They can tick a box if they don’t want to see this in the future.
The help section can always be accessed from the settings page. Attendees can remote login to a meeting if the meeting is in progress. Normal login protocol applies.
|FM-0001||Start Screen||The user is presented with the main start up screen||Low|
|FM-0002||Sign on||The user is presented with sign on screen to enter the sign on details||Low|
|FM-0003||Log In||The user is presented with Log In screen to enter the Log In details||Low|
|FM-0004||Create New Meeting||Selecting this option user will create new meeting||Medium|
|FM-0005||Edit Meeting||This will let edit meeting||Low|
|FM-0006||Start Meeting||This will start meeting||Medium|
|FM-0007||Stop Meeting||User can stop meeting in progress by clicking on this icon||Low|
|FM-0008||Play Meeting||User can restart meeting by clicking on this icon||Low|
|FM-0009||Pause Meeting||User can pause meeting by clicking on this icon||Low|
|FM-0010||Add user||User can add a new user to the meeting by clicking on this icon||Low|
|FM-0011||Instant Message||This will let to send an instant message to one of the meeting members||Low|
|FM-0012||Add file||This will add file to the meeting records||Medium|
|FM-0013||Assign Task||This will assign task to particular member of the meeting||Medium|
|FM-0014||Share||Gives user option to email or share the recorded minutes||Medium|
|FM-0015||Export||This will create Pdf version of minutes taken||Low|
|FM-0016||Help||Will bring users in to Pdf user manual||Low|
|FM-0017||Settings||This will let customise settings for the meeting and user details||Medium|
|FM-0018||Analytics||Helps analyse what functions users are mostly using||High|
|FM-0019||Download||Clicking this will let users to download minutes as pdf file||Low|
|FM-0020||Main Screen||The user is presented with the main screen||Low|
|FM-0021||Exit||This will exit the app and close the app||Low|
Rate the complexity of the functional module H = High, M = Medium, L = low
|FR-1.001||The user is presented with the start-up screen||FM-0001|
|FR-1.002||Opening screen is displayed with displayed icon next (>>) to bring the user to the functional modules outlined in section 7.2||FM-0001|
|FR-1.003||Icon is displayed to start taking minutes. Click to start organising meeting or sign on to meeting.||FM-0001|
|FR-1.004||Option to go back (<<) is displayed which will let user to exit the application||FM-0001|
|AR-1.001||Display background Image of office table layout||FM-0001|
|AR-1.002||Display product logo||FM-0001|
Start Screen functionality has been rated Low complexity. This is a standard startup function and will not create any complications for user.
|FR-2.001||User can click button to sign on to meeting||FM-0002|
|FR-2.002||Option to click button that will bring user back to main menu||FM-0002|
|FR-2.003||User will be brought to Login screen to enter his login details.||FM-0002|
|AR-2.001||Display background Image of office table layout||FM-0002|
|AR-2.002||Display product logo||FM-0002|
|AR-2.003||Displays button s for user to click on -main menu/ Login/Sign on||FM-0002|
Sign-on functionality has been rated Low complexity. This is a standard startup function and will not create any complications for user.
|FR-2.001||Enters user name||FM-0003|
|FR-2.003||Clicks Log in button||FM-0003|
|FR-2.004||Click button to join meeting remotely||FM-0003|
|FR-2.005||Option to click button that will bring user back to main menu||FM-0003|
|AR-2.001||Displaying standard sign in form, with area to enter Username and Password||FM-0003|
|AR-2.002||Display product logo||FM-0003|
Log-In functionality has been rated Low complexity. If user forgets his user name or password he will need to follow standard procedure by requesting it to be sent to users email. After email is receive user will Login as normal.
|FR-2.001||Create meeting title||FM-0004|
|FR-2.002||Enter date and time from pop-up calendar||FM-0004|
|FR-2.004||Select name of the minute taker from your contact list||FM-0004|
|FR-2.005||Select attendees from your contact list||FM-0004|
|FR-2.006||Create the Agenda||FM-0004|
|FR-2.007||Save the meeting with its previously created title||FM-0004|
|FR-2.008||Send invitation out to attendees or start the meeting||FM-0004|
|AR-2.001||Present data field to type in the name of the meeting title||FM-0004|
|AR-2.002||Display Calendar icon for users to enter the current date||FM-0004|
|AR-2.003||Present data field to type in the name of the location||FM-0004|
|AR-2.004||Present link to contact list to select minute taker from||FM-0004|
|AR-2.005||Present link to contact list to select attendees from||FM-0004|
|AR-2.006||Display fields to enter Time, Item and Presenter/Owner for Agenda||FM-0004|
|AR-2.007||Display ‘Save’ button to save the meeting. Auto title from AR-2.010||FM-0004|
|AR-2.008||Display buttons to Start, Edit or Send invitations to new meeting||FM-0004|
Although this item has a complexity rating of Medium and there are a number of steps involved in creating the meeting, it is not a particularly difficult task to perform. Clearly some thought has to be put into the creating of the Agenda but no more so than doing this in a manual way. With the intuitive navigation, it becomes simply a matter of data entry. By way of confirmation for the user, a new entry in the list of meetings scheduled will appear with its title.
|FR-2.001||Click ‘Edit’ button to make changes to any meeting||FM-0005|
|FR-2.002||Select the meeting that you want to edit from the list of all meetings||FM-0005|
|FR-2.003||Select item that needs to be edited (title, date/time, attendees, etc.)||FM-0005|
|FR-2.005||Resend invitations if necessary||FM-0005|
|AR-2.001||Display ‘Edit meeting’ button to choose from a selection of buttons||FM-0005|
|AR-2.002||Display the list of all scheduled meetings||FM-0005|
|AR-2.003||All fields (title, date/time, attendees, etc.) need to be editable||FM-0005|
|AR-2.004||Display button ‘Save (changes)’||FM-0005|
This function has a low level of complexity. If a user can successfully create a new meeting, then editing one is, by extension, an almost identical task and a lot less time consuming depending on what or how many items need to be changed.
Note: This functional section regarding editing relates to a meeting that hasn’t occurred yet. For future requirements, the modelling diagrams will include two different edit functions. One as above and the other to include an edit function that will allow someone to edit a recorded meeting which is a completely different function.
|FR-2.001||Double-click meeting from the list of all meetings to start it||FM-0006|
|FR-2.002||Select from Main Screen, Attendee Screen or Tool Screen||FM-0006|
|FR-2.003||On Main Screen, minutes in text appear live by individual attendee||FM-0006|
|FR-2.004||On Main Screen, controls for Start, Stop/Save, Pause, Play||FM-0006|
|FR-2.005||On Attendee Screen, shows list of attendees present on session||FM-0006|
|FR-2.006||On Attendee Screen, click to add new attendee||FM-0006|
|FR-2.007||On Attendee Screen, additional button to remove absent individual||FM-0006|
|FR-2.008||On Tool Screen, drop a file (doc, jpg, pdf, pps, xls) into the meeting||FM-0006|
|FR-2.009||On Tool Screen, swipe an IM to an attendee||FM-0006|
|FR-2.010||On Tool Screen, assign a task to an attendee||FM-0006|
|AR-2.001||Tooltip to indicate double-click meeting from list to start it||FM-0006|
|AR-2.002||3 Button/Icons to choose from Main, Attendee or Tool Screen||FM-0006|
|AR-2.003||Main screen displays minutes as they are happening||FM-0006|
|AR-2.004||Main screen displays standard controls for Start, Stop, Pause and Play||FM-0006|
|AR-2.005||Display list of attendees present on session on Attendee Screen||FM-0006|
|AR-2.006||Display button to add new attendee||FM-0006|
|AR-2.007||Display another button to remove absent individual||FM-0006|
|AR-2.008||Display a paper clip icon to indicate that an attachment can be made available by any user to the whole meeting for collaboration||FM-0006|
|AR-2.009||Display Chat field with send button and drop-down to choose an attendee from list of attendees to IM||FM-0006|
|AR-2.010||Display option to create ‘Task’ and drop-down to choose who to assign the newly created task to||FM-0006|
Starting a meeting may seem like a simple enough task but we have defined the complexity level as medium. There are a number of different routes that a user might take such as when they are presented with the Main, Attendee and Tool screens. The choices that can be made at this point will become obvious enough after some spent using the app but for new users, a well-defined help section will be created for this function. Once people can relate the functionality of the app to what they do on a regular basis during a meeting with regard to taking minutes, it will be a light bulb moment when they realize that the app has been designed to hopefully make their lives easier.
|FR-2.001||Click the ‘Stop’ button.||FM-0007|
|FR-2.002||All recorded conversation is converted to text and emailed to all||FM-0007|
|FR-2.003||Meeting owner is asked whether he/she wants an audio version in addition to the text based version to be sent||FM-0007|
|AR-2.001||Stop Button to be displayed as part of standard controls on Main screen||FM-0007|
|AR-2.002||Background processing of converted data being prepared to be sent to individual email accounts||FM-0007|
|AR-2.003||Final choice before exiting the app is to select whether an audio version of the meeting is required or not||FM-0007|
This is a low complexity task as the user only has to tap the Stop button and then make a choice of audio version or not.
|FR-2.001||The ‘Play’ button will be combined into a single button with the Pause button to invite the user to playback a meeting in playback mode and also to pause/resume in this mode as required.||FM-0008|
|FR-2.002||Click Play/Pause to pause/resume a meeting in record mode.||FM-0008|
|AR-2.001||Display Play/Pause button in Playback mode||FM-0008|
|AR-2.002||Display Play/Pause button in Record mode||FM-0008|
Low complexity operation. This control speaks for itself as most people are well used to operating a CD player and intuition will kick in to assist with the smooth operation of this function.
|FR-2.001||The ‘Pause’ button will be combined into a single button with the Play button to invite the user to playback a meeting in playback mode and also to pause/resume in this mode as required.||FM-0009|
|FR-2.002||Click Play/Pause to pause/resume a meeting in record mode.||FM-0009|
|AR-2.001||Display Play/Pause button in Playback mode||FM-0009|
|AR-2.002||Display Play/Pause button in Record mode||FM-0009|
Low complexity operation. This control speaks for itself as most people are well used to operating a CD player and intuition will kick in to assist with the smooth operation of this function.
|FR-2.001||New user can be added to the meeting||FM-0010|
|FR-2.002||Click the plus button (+) in the attendees section||FM-0010|
|FR-2.003||Option to search for the person to be added from the scroll list||FM-0010|
|FR-2.004||Choose the particular person by clicking on his/her photo||FM-0010|
Add user – Asset Requirements
|AR-2.001||Display main menu screen with the attendees section||FM-0010|
|AR-2.002||Display smart search with the list of attendees and their photos||FM-0010|
|AR-2.003||Display added user picture, name and time of joining the meeting on the minutes section||FM-0010|
Add user functionality has been rated Low complexity. This action can be accomplished very easily with three clicks. This is a standard add user function and will not create any complications for user.
|FR-2.001||User can send an instant message to another individual attendee||FM-0011|
|FR-2.002||On Tools screen user can double click IM||FM-0011|
|FR-2.003||By clicking IM button a user is presented with an option to choose another attendee to send him/her an instant||FM-0011|
|FR-2.004||On Main Screen, text bar appears where user can type a message to another individual attendee of the meeting||FM-0011|
|FR-2.005||User needs to click to “Send” button to send a message||FM-0011|
|AR-2.001||Instant message IM button in tools section||FM-0011|
|AR-2.002||Text bar, name and photo of the message sender and recipient appears on the main screen||FM-0011|
|AR-2.003||“Send” button displayed on the main screen||FM-0011|
Send instant message functionality has been rated Low complexity. This is a standard function to send a message which exists in most instant message applications and shouldn’t create any complications for user.
|FR-2.001||User can add the file to the meeting||FM-0012|
|FR-2.002||Click the add file “F” button in the tools section||FM-0012|
|FR-2.003||On the main screen user can browse and select the file to be added||FM-0012|
|FR-2.004||User needs to click to “Add” button on the main screen to add the file to the meeting||FM-0012|
|AR-2.001||Add file “F” button in tools section||FM-0012|
|AR-2.002||Browser file and selected file appear on the main screen||FM-0012|
|AR-2.003||“Add” button displayed on the main screen||FM-0012|
Add file functionality has been rated Medium complexity. This is a standard function to add the file and shouldn’t create any complications for user.
|FR-2.001||User can assign task for another attendee of the meeting||FM-0013|
|FR-2.002||User clicks assign task “T” button in the tools section||FM-0013|
|FR-2.003||On the main screen user can browse the attendee to assign task to||FM-0013|
|FR-2.004||User type the task description (title, due date and add to calendar)||FM-0013|
|FR-2.005||User needs to click “Save” button to save task to an attendee||FM-0013|
|AR-2.001||Assign a task “T” button in tools section||FM-0013|
|AR-2.002||Picture and name of the attendee for the task appear on the main screen||FM-0013|
|AR-2.003||Task description (title, due date, add to calendar) appear below attendee’s picture and name on the main screen||FM-0013|
|AR-2.004||“Save” button displayed on the main screen||FM-0013|
Assign a task functionality has been rated Medium complexity. This is a standard function to add the file and shouldn’t create any complications for user
|FR-2.001||Meeting minutes files can be distributed to users||FM-0014|
|FR-2.002||Click the Share button to display the sharing options||FM-0014|
|FR-2.003||Choose a meeting to share||FM-0014|
|FR-2.004||Select a person or group of people to share the meeting minutes with||FM-0014|
|AR-2.001||Display a Share button to distribute the minutes PDF file||FM-0014|
|AR-2.002||Options are presented to share files via email or Bluetooth||FM-0014|
|AR-2.003||Notifications are present to display the device’s Bluetooth status||FM-0014|
|AR-2.004||Active email accounts are displayed for sending files||FM-0014|
Share functionality has been rated Medium complexity. This control performs a single function, .i.e. distributes the meeting minutes. The action can be easily accomplished with three clicks.
|FR-2.010||The entire meeting or a portion of the meeting can be exported||FM-0015|
|FR-2.020||Minutes can be exported to PDF format||FM-0015|
|FR-2.030||Minutes audio can be exported to a single audio file||FM-0015|
|FR-2.040||Older meetings can be exported||FM-0015|
|FR-2.050||Minutes that have been previously exported are cached to avoid re-porting a meeting||FM-0015|
|AR-2.001||Display a button to export minutes||FM-0015|
|AR-2.002||Most recent recorded meeting is displayed first. Older meetings can also be individually selected for export||FM-0015|
|AR-2.003||Options for output formats are presented so the user can selcet one or all output formats||FM-0015|
|AR-2.004||Progress indicators are displayed to the user showing export progress percentage and time remaining||FM-0015|
Export Minutes functionality has been rated Low complexity. Due to comparatively large amount of data gathered in the meeting, PDF and audio file conversion / compression this functionality is device intensive. This functionality is easily accomplished with 3 clicks and export progress is displayed to users.
|FR-2.001||Display a help panel with the active page changing to match what panel/context the help button was clicked from||FM-0016|
|FR-2.002||Option to search the help contents||FM-0016|
|FR-2.003||Help contents are stored locally to enable users to browse help topics without online access||FM-0016|
|FR-2.004||Help contents utilize the native zooming functionality of the device||FM-0016|
|FR-2.005||Help contents can be printed via wireless networked printers||FM-0016|
|AR-2.001||A Help button is present on every screen||FM-0016|
|AR-2.002||Display a search button in the help panel for instant user searching||FM-0016|
|AR-2.003||The help section is categorized / tagged for easy searching||FM-0016|
|AR-2.004||Suggested help topics links are displayed with the links varying on the current context.||FM-0016|
|AR-2.005||Search forms, tags, suggested help topics are hidden by default on lower resolution devices to utilize all available screen space for help content||FM-0016|
Help functionality has been rated Low complexity. It performs a single function, intuitive help contents are displayed to the user
|FR-2.001||A settings panel is displayed to the user||FM-0017|
|FR-2.002||Options for device integration and the current status is displayed e.g. access to microphone, Bluetooth, calendar etc.||FM-0017|
|FR-2.003||Settings for integration with 3rd party providers such as Gmail / Outlook||FM-0017|
|FR-2.004||Settings to allow access to network cellular data as well as Wi-Fi||FM-0017|
|FR-2.005||Control and test microphone integration and volume levels||FM-0017|
|AR-2.001||Display the settings screen with categorized / tabbed options||FM-0017|
|AR-2.002||Display problems with current device settings with a link for suggested resolution in the help section||FM-0017|
|AR-2.003||Picture and profile details are displayed for the current user along with an edit button for updating the user information||FM-0017|
|AR-2.004||An option to clear all previous / archived meetings and file exports||FM-0017|
|AR-2.005||About button to show the current application version as well as available software updates||FM-0017|
Settings functionality has been rated Medium complexity. Due to all of the application device settings as well as 3rd party provider settings present in one panel, users have a large range of settings to configure.
|FR-2.001||After clicking a button user will see meetings statistics||FM-0018|
|FR-2.002||User can choose to view a relevant meeting from the list of meetings||FM-0018|
|FR-2.003||User can find participants along with active contributors||FM-0018|
|FR-2.004||Displays overall and detailed info of each minute taken||FM-0018|
|FR-2.005||Shows total time spoken per attendee||FM-0018|
|FR-2.006||Shows time of the recording (start, finish, duration)||FM-0018|
|FR-2.007||Shows interruptions (2 attendees talking)||FM-0018|
|FR-2.008||Provides reference to meeting related tools such as emails, tasks, files.||FM-0018|
|AR-2.001||Button that brings user to menu with statistics||FM-0018|
|AR-2.002||Statistics menu laid in a tree with branches leading to each functionality||FM-0018|
|AR-2.003||Links to related tools under each branch||FM-0018|
|AR-2.004||Return button – moves user one step back, escape button – brings user to the main screen||FM-0018|
Analytics functionality has been rated High complexity. Due to relatively large amount of data gathered in this section user will have to dig in to find relevant info. Analytics is not intended for regular usage but rather for occasional reporting purpose.
|FR-2.001||By clicking a button a user is presented with an option to open a local storage for pdf files (by default empty) or cloud storage (all recordings are stored there by default).||FM-0019|
|FR-2.002||In any type of storage, a user can scroll down to find any particular recording.||FM-0019|
|FR-2.003||In cloud storage a user can select recording for download as pdf file into local storage (mobile).||FM-0019|
|FR-2.004||User can confirms the selected record to be downloaded||FM-0019|
|FR-2.005||When confirmation is provided recording converted to pdf is being instantly downloaded onto local mobile (local storage) for offline usage.||FM-0019|
|AR-2.002||Directory on mobile for storing pdf files||FM-0019|
|AR-2.003||Radio button followed by prompt for conversion to pdf and download (confirmation dialog)||FM-0019|
|AR-2.004||Upon download, a message pops up with info the file has been downloaded and it can be viewed by clicking a presented link (redirecting the local storage).||FM-0019|
Download functionality has been rated Low complexity. This control does what it says i.e. downloads pdf files. This action can be accomplished very easily with three clicks. Finding right file for conversion to pdf and downloading could be more intensive.
|FR-2.001||The minutes appear live by individual attendee||FM-0020|
|FR-2.002||Using main screen interface user can start recording a minute||FM-0020|
|FR-2.003||User can pause / resume recording||FM-0020|
|FR-2.004||User can stop / save recording||FM-0020|
|FR-2.005||The recording can be played back||FM-0020|
|AR-2.001||Window where the minutes appear||FM-0020|
|AR-2.003||Pause / Resume button||FM-0020|
|AR-2.004||Stop / Save button||FM-0020|
Main Screen functionality has been rated Low complexity. Using this part is very straight forward; the appearing live minutes are positioned neatly along with pleasant design and eye friendly readability- it has been reported as very easy to follow. Navigation is extremely simplified and probably as intuitive as possible.
|FR-2.001||By clicking Exit button a user is prompted to confirm further action by clicking ‘Yes’, ‘No’ or ‘Want Help’||FM-0021|
|FR-2.002||Click on “Yes” securely ends user session i.e. logs out and brings user to Main Menu page||FM-0021|
|FR-2.003||Click on “No” means no action, user stays logged in and his session opened||FM-0021|
|FR-2.004||Click on “Want Help” brings user to the help page for detailed FAQ and documentation.||FM-0021|
|AR-2.002||Dialog box prompting for confirming further action||FM-0021|
|AR-2.003||Inner dialog’s buttons ‘Yes’, ‘No, ‘Want Help’||FM-0021|
Exit functionality has been rated Low complexity. This control is self-explanatory; it will allow user exit the session and close the application. This is a standard function and will not create any complications for user.
After interviewing potential users and analysing survey results we can see that as a minimum functionality for our product 80% of users have identified following 4 functions outlined in the table below.
|MFS-0001||Converting voice to text||High|
|MFS -0002||Recognition off individual voices of users||High|
|MFS -0003||Joining meeting remotely||High|
|MFS -0004||Emailing typed minutes to meeting members||High|
MFS = Minimum Feature set required as a Minimum Viable Product (MVP) release