prototype report - software engineering ii - … · web viewview/edit user and project data author...
TRANSCRIPT
Prototype Report
Software Quality Analysis as a Service (SQAaaS)Team Number - 01
Kavneet KaurRequirement Engineer
George LlamesIIV & V
Aleksandr ChernousovLift Cycle Planner
Supicha PhadungsilpFeasibility Analyst
Reza KhazaliSoftware Architect
Jincheng HeQuality Focus Point
Aditya KathuriaPrototyper
Chris HarmanOperation Concept Engineer
2017/11/25
1
Version History
Date Author Version Changes made Rationale
09/27/17 AK 1.0 Created Balsamiq UI Mockups Flow Charts for profiling system Tableau for multiple metrics and
statistics
Better understanding of the UI requirements
09/27/17 AK 1.1 Created React UI components Added Request for Analysis Added multiple statistics components
To mitigate the risk of low personnel experience with ReactJS
11/25/17 AK 2.0 Added Other Charts and legends to Statistics page.
Got statistics to work with all projects and metrics.
Created a metric picker for statistics. Added Project status page. Added Login, Registration and Add
collaborator components. Added user Dashboard components. Cosmetic changes done.
To demonstrate the feasibility and fulfill the requirements agreed upon in the win-win negotiation.
2
Table of ContentsPrototype Report....................................................................1Version History.......................................................................2Table of Contents....................................................................3Table of Tables........................................................................4Table of Figures......................................................................51.Introduction..........................................................................................6
1.1.Status of Prototypes.......................................................................................................................61.2.Purpose of Prototypes....................................................................................................................6
2.Navigation Flow....................................................................................73.Prototype..............................................................................................8
Table 1: Request Analysis.....................................................................................................................8Figure 1: Request Analysis....................................................................................................................8Table 2: User Dashboard......................................................................................................................9Figure 2: User Dashboard.....................................................................................................................9Table 3: Multi Metric Statistics...........................................................................................................10Figure 3: Multi Metric Statistics..........................................................................................................10Table 4: Forgot Password...................................................................................................................11Figure 4: Forgot Password..................................................................................................................11Table 5: Sign Up..................................................................................................................................12Figure 5: Sign up.................................................................................................................................12Table 6: Login.....................................................................................................................................13Figure 6: Login....................................................................................................................................13Table 7: Logout...................................................................................................................................14Figure 7: Logout..................................................................................................................................14Table 8: Analysis Request Status........................................................................................................15Figure 8: Analysis Request Status.......................................................................................................15Table 9: Add Collaborator...................................................................................................................16Figure 9: Add Collaborator.................................................................................................................16Table 10: Admin Requests Notification..............................................................................................17Figure 10: Admin Requests Notification.............................................................................................17Table 11: Users Information...............................................................................................................18Figure 11: Users Information..............................................................................................................18Table 12: Projects Information...........................................................................................................19Figure 12: Projects Information..........................................................................................................19Table 13: Access Information.............................................................................................................20Figure 13: Access Information............................................................................................................20
3
4
Table of TablesTable 1: Request Analysis.........................................................................................8
Table 2: User Dashboard..........................................................................................9
Table 3: Multi Metric Statistics..............................................................................10
Table 4: Forgot password (UI render)....................................................................11
Table 5: Sign Up.....................................................................................................12
Table 6: Login.........................................................................................................13
Table 7: Logout......................................................................................................14
Table 8: Analysis Request Status............................................................................15
Table 9: Add a Collaborator...................................................................................16
Table 10: Admin Requests Notification..................................................................17
Table 11: Users Information..................................................................................18
Table 12: Projects Information...............................................................................19
Table 13: Access Information.................................................................................20
5
Table of FiguresFigure 1: Request Analysis.......................................................................................8
Figure 2: User Dashboard........................................................................................9
Figure 3: Multi Metric Statistics.............................................................................10
Figure 4: Forgot password (UI render)...................................................................11
Figure 5: Sign Up....................................................................................................12
Figure 6: Login.......................................................................................................13
Figure 7: Logout.....................................................................................................14
Figure 8: Analysis Request Status..........................................................................15
Figure 9: Add a Collaborator..................................................................................16
Figure 10: Admin Requests Notification.................................................................17
Figure 11: Users Information.................................................................................18
Figure 12: Projects Information.............................................................................19
Figure 13: Access Information................................................................................20
6
1.Introduction
This report provides the status and purpose of prototype for SQAaaS. The SQAaaS project focuses on visualization of data provided by the client for the quality of software. Also, the current prototype does not have any user profiling ability and is on HTTP. A profiling system needs to be added and system needs to be made secure by adding HTTPS. The ability to view multiple metrics and other statistics like best commits, worst commits and contribution pie chart will also be added to the prototype.
1.1. Status of the prototype
The second prototype improved upon the first this and contained the following things – React UI components for the user and admin dashboard, multiple metric trend chart using client API for data and adding a project with the help of GitHub API. The Final prototype integrates the existing components with the backend and adds some new components too. The following components now work completely and are not just UI renders- login, registration, add collaborator, request for analysis, user dashboard, project analysis status, multiple metric system, contribution pie chart and worst/best commits. This prototype also adds cosmetic changes to the earlier completed components and UI renders for the admin dashboard with static data.
1.2. Purpose of the prototype
The second set of prototypes were developed to mitigate the risk of inexperience of the personnel in ReactJS technology. UI components developed in React gave a good hands-on experience to the team members. Also, the research that went into choosing canvas API for rendering multiple metrics would help to provide the Level of Service of a fluid, efficient and interactive system. The final prototype focuses on providing most of the agreed upon requirements since members were now comfortable with ReactJS. This will make the client and other stakeholders confident about the product and they will be able to have a closer look on how the final product will look like. Also, this will act as an evolutionary prototype and the final product will be built upon it by making changes to this.
7
2.Navigation Flow
View/edit user and
project data
AdminUser
Login Register
SQAAS website
Forgot Password
Add Collaborator
Manage per user Access
View StatisticsRequest for Analysis
View Active projects and
Favorite Projects
View Analysis Status
Manage Request
Notifications
8
3.Prototype
Table 1: Request Analysis
Description A user can request for a project to be analyzed
Related Capability
UC-7
Pre-condition
The user logs on to the system and clicks the add new project button in the drop-down.
Post condition
The request for analysis of the project is sent for approval and the project is added on the analysis requests table for status.
Figure 1: Request Analysis
9
Table 2: User Dashboard
Description A user can look at projects he has analyzed and favorite projects.
Related Capability
UC-9, UC-11
Pre-condition
The user logs on to the system or clicks on the home menu button.
Post condition
User sees a list of favorite projects and a searchable list of all the projects that have been approved by admin and are analyzed.
Figure 2: User Dashboard10
Table 3: Multi Metric Statistics
Description A user can see multi-metric analysis result of the project along with other statistics like contribution chart and worst/best commits.
Related Capability
UC-10
Pre-condition
The user logs on to the system and chooses of the project from his dashboard and then selects the metrics for comparison.
Post condition
User sees various statistics like contribution pie chart, worst/best commits and trade-space view of the metrics for that project.
Table 4: Forgot password
(UI render)
Description A user can ask for changing the password that has been forgotten.
Related Capability
UC-4
Pre- The user logs on to the SQAaaS website and clicks the forgot
Figure 3: Multi Metric Statistics
11
condition password link on the login panel.Post condition
User is redirected to the forgot password page where he can enter the email for his account.
Figure 4: Forgot password (UI render)
Table 5: Sign Up
Description A user can register to the website.
Related Capability
UC-1
Pre-condition
The user logs on to the SQAaaS website and clicks the sign-up link on the login panel.
Post condition
User can register after which the user is redirected back to the login page and success message pops up.
12
Table 6: Login
Description A user can login to the website.
Related Capability
UC-2
Pre-condition
The user visits the SQAaaS website.
Post condition
User can input their credentials and are redirected to the use dashboard if correct credentials are input. They also see a success or failure message depending on the input.
Figure 5: Sign up
13
Figure 6: Login
Table 7: Logout
Description A user can logout of to the website.
Related Capability
UC-3
Pre-condition
The user visits the SQAaaS website, logins the website and clicks logout button from the top bar dropdown.
Post condition
User logs out and is redirected to the login page.
14
Table 8: Analysis Request Status
Description A user can view the status of the submitted requests for analysis.
Related Capability
UC-8
Pre-condition
The user visits the SQAaaS website, logins the website and clicks Analysis request button from the top bar dropdown.
Post condition
User can view the status of all the requests of project submitted for analysis.
Figure 7: Logout
15
Table 9: Add a Collaborator
Description A user can add a collaborator to the project so he can also have access to a closed source project.
Related Capability
UC-6
Pre-condition
The user visits the SQAaaS website, logins the website and clicks add collaborator button from the top bar dropdown.
Post condition
The user can input an email to add that user as a collaborator. The user gets a success message when the request is sent.
Figure 9: Add a Collaborator
16
Table 10: Admin Requests Notification
Description An admin can view the current collaborator requests and grant or deny these requests.
Related Capability
UC-15, UC-16
Pre-condition
The user logins the SQAaaS website as an admin or clicks the Requests button in the sidebar.
Post condition
Admin views all the current request notification, on clicking grant/deny the request is granted/denied. On clicking the cross icon, the requests are deleted.
Figure 10: Admin Requests Notification
17
Table 11: Users Information
Description An admin can view the current collaborators and change their profile information if required.
Related Capability
UC-19
Pre-condition
The user logins the SQAaaS website as an admin and clicks the Users button in the sidebar.
Post condition
Admin views all the users and can select any user. By clicking on fields the admin can also modify that information.
18
Table 12: Projects Information
Description An admin can view the current projects which are analyzed and change their information if required.
Related Capability
UC-18
Pre-condition
The user logins the SQAaaS website as an admin and clicks the Projects button in the sidebar.
Post condition
Admin views all the projects and can select any project. By clicking on fields the admin can also modify that information.
Figure 12: Projects Information
Figure 11: Users Information
19
Table 13: Access Information
Description An admin can view and change information about access of projects to the users.
Related Capability
UC-20
Pre-condition
The user logins the SQAaaS website as an admin and clicks the Access button in the sidebar.
Post condition
Admin views the information about project access by clicking on a user and change the access information by clicking on the respective checkbox.
Figure 13: Access Information
20