Mobile Application Quality Attributes
Quality Attribute | Applicability | Realization Plan | Priority |
---|---|---|---|
Maintainability | Maintainability is important so that future developers can work on the application. | The application will use javascript based frameworks consistently, so that all applications developed use the same technologies. | HIGH |
Scalability | Scalability of the application is relatively low priority. Being released as a mobile application will allow it to be released to many users at once. Scalability is much more import in the recognition server. | The application will be released using standard mobile application platforms. Work that does not scale well will be offloaded to the recognition server. | LOW |
Performance | Performance of the application is very important. Image recognition performance will be handled on the image recognition server, so the performance that is important is the application's responsiveness. | Currently not handled by the Rock Raiders Team. Public Beta testing is expected to be performed by the RocReadaR main team. | HIGH |
Usability | Usability is incredibly important to the customers, as it will be used by the users directly. This is of ever increasing importance with the growing expectations of mobile applications. | Currently not handled by the Rock Raiders Team. Public Beta testing is expected to be performed by the RocReadaR main team. | HIGH |
Security | Currently not handled by the Rock Raiders Team. | Currently not handled by the Rock Raiders Team. | UNKNOWN |
Availability | Availability of the application is relatively low priority. Being released as a mobile application will allow it to be available almost 100% of the time. | The application will be released using standard mobile application platforms. | HIGH |
Management Portal Quality Attributes
Quality Attribute | Applicability | Realization Plan | Priority |
---|---|---|---|
Maintainability | Maintainability is important so that future developers can work on the application. | The application will use javascript based frameworks consistently, so that all applications developed use the same technologies. | HIGH |
Scalability | Scalability of the management portal is relatively low priority. Image recognition however, will require high scalability. | The application will be hosted in a cloud platform. Scaling to more instances will remain an option in case it is required. | LOW |
Performance | Performance is of medium importance. The application should be very usable, but it is not terrible if the publishers experience minor delays. | The application will be hosted in a cloud platform. Scaling to more instances will remain an option in case it is required. Formal usability testing with both publishers and non-publishers will be performed in the middle of development, and slow sections will be identified. | MEDIUM |
Usability | Usability is incredibly important to the customers, as it will be used by the publishers directly. | Formal usability testing with both publishers and non-publishers will be performed in the middle of development. | HIGH |
Security | Security is somewhat important, however it is not expected to be an issue. The main issues are standard web security issues and accidental release of publisher information and images. | Standard security practices regarding user accounts and web technologies will be practiced. User access control levels will be implemented. | MEDIUM |
Availability | Availability of the portal, while relatively easy to do, is important so that publishers can use the application when they need to. | The application will be hosted in a cloud platform. Scaling to more instances will remain an option, and automatic restart configuration will be utilized if available. Development will begin in the cloud platform midway through development so stability can be analyzed. | HIGH |
Image Recognition Server Quality Attributes
Quality Attribute | Applicability | Realization Plan | Priority |
---|---|---|---|
Maintainability | Maintainability is important so that future developers can work on the application. | The application will use javascript based frameworks consistently, so that all applications developed use the same technologies. | HIGH |
Scalability | Scalability of the Image Recognition Server is exceedingly important. The application must be able to scale to 30,000 users. | Scalability will be achieved through a variety of important practices. First, the application will be hosted in an auto-scaling cloud platform. The application will be designed in a way that tracker files will be analyzed on the image recognition server. The tracker files will be organized in a fashion that will allow searching using the most relevant files first. Finally, if possible, the content returned from the image recognition server will be hosted on using a different service, and the image recognition server will send simply a reference to the secondary service. Scalability testing will also be performed. | VERYHIGH |
Performance | Performance of the Image Recognition Server is exceedingly important. | Performance will be achieved by using the tracker organization techniques described above, for scalability. Tracker files will be organized to allow searching using the most relevant files first. Keeping the app scalable will also make sure that even in high load, it will perform quickly. | VERYHIGH |
Usability | Not applicable. The Image Recognition Server has no user interface. | N/A | |
Security | Security is of relatively low priority. | The system must be able to handle denial of service attacks, and so any tools available from the cloud platform will be utilized. Files not allowed to be shown to the public by the publishers will have permissions in business rules to prevent access. | LOW |
Availability | Availability of the Image Recognition Server is exceedingly important. Without the image recognition server, the mobile application would be useless. | The application will be hosted in a cloud platform. At least 2 instances will be available at all times. Automatic restart configuration will be utilized if available. Development will begin in the cloud platform midway through development so stability can be analyzed. | VERYHIGH |
Version | Date | Comment |
---|---|---|
Current Version (v. 3) | Feb 09, 2016 23:02 | IAN SALITRYNSKI (RIT Student) |
v. 2 | Feb 09, 2016 22:16 | IAN SALITRYNSKI (RIT Student) |
v. 1 | Feb 09, 2016 21:59 | IAN SALITRYNSKI (RIT Student) |