Presentation is loading. Please wait.

Presentation is loading. Please wait.

Real Estate Investment & Review Tool

Similar presentations


Presentation on theme: "Real Estate Investment & Review Tool"— Presentation transcript:

1 Real Estate Investment & Review Tool
Team #2 - 15th October 2018 Alex Miller - Ashley O’Brian Venkata Sravanti Malapaka - Yuxuan Chen - Yonghyun Cho Md Shadman Rafid - Shiraksha Rao - Vikram Mudaliar Webber Wang - Jose G. Vicente H.

2 Agenda Remote Team Member Operational Concept Description Requirements
Prototype Architecture Life Cycle Plan Feasibility Evidence Quality Focal Point

3 Remote Team Member

4 Team Strong Points Operational View Technical View
Team members are very collaborative and goal oriented, they are always willing to help. Everybody has taken up their role and has been productive. Team members are always eager to learn new technologies (AngularJS, GraphQL) and tools (JIRA, GIT). Team keeps regular communication using “Whatsapp” and “Slack”. Weekly meeting. Team uses effectively the free resources provided by internet. Ex. Google Drive, Google Docs.

5 Team Weak Points Operational View Mitigation Technical View Mitigation
Difficult to set meeting hours where everybody is available due to different personal schedules. Using internet resource as “doodle” we can find the time periods that fits the best for most of the team members. As this is a two semester project and some of the team members will be not in second semester. We are going to lose knowledge. Make sure that the architectural decisions and code are well documented. Technical View Mitigation Most of team members don’t have experience in IT industry. Look for expert experience in current course, in internet, and using it as reference. Most of team members don't have experience using Angular JS or GraphQL. Look for tutorials and documentation in internet.

6 Technical Concerns And Solutions
AngularJS requires a lot of JavaScript files to load and this can result in website performance issues. Dynamic on demand load of JavaScript files using other products like RequireJS. Module dependency management Create unit and integration tests. Incorrect or inadequate interfaces with other systems like Zillow or Google API. We need to manage versions of the web or rest APIs provided by Zillow and Google. GraphQL poor performance for complex queries. Enabling Apollo Engine to cache query results for a certain time. Deficient website usability and understandability.. We provide prototypes to the client in order to know if the design is going well.

7 Operational Concept Description

8 System Purpose The Real Estate Investment and Review Tool is built for people with money who would like to invest on property to rent out. This allows prospective investors a medium to search for trustworthy and capable service providers. Investors can keep track of the financial performance of their properties. Users can review and rate service providers with whom they have worked or know. Service providers can reply to reviews on their page. People can discuss on different topics the discussion boards. Admin can use the blog to post about related topics.

9 Shared Vision Create a web application to find, review, rate and discuss about Service Providers in real estate sector. Web application to allow users to track their investments. Provide service providers ability to reply to reviews about them. Provide the admin with an ability to access the website usage statistics, to post on the blog and to moderate the site.

10 Program Model Stakeholders Initiatives Value Propositions
Assumptions: Users will use the website once its deployed. Website will always be up from the server side. Website is able to connect with Google and Zillow APIs. Client (Maintainer) keeps the system updated and moderated. Users provide and add to the list of service providers over time. Stakeholders Initiatives Value Propositions Beneficiaries Developers: Team Members Client: Alex Miller Ashley O’Brian Maintainer (Admin): Users: Investors Service Providers Develop the website. Provide Requirements Win Conditions Hosting the System Feedback/Input Provide initial Service Provider data to populate the system. Use the System Test the System Moderate the Site Post on the Blog Add service provider data when needed Provides a trustworthy platform for new investors to search for service providers in an area no known to them. Decreases the amount of time, effort and money previously spent by investors to search for service providers Allowing investors to track the financial performance of their past investments which they used to do in the past with the help of an excel spreadsheet. Decreases the complexity of tracking the financial performances of investors’ properties. Client Unregistered Users

11 Benefit Chain Diagram

12 System Boundary & Environments

13 Element Relationship Diagram

14 Review Service Provider
Core Capabilities Capability Description Priority Login/Logout Any registered user should be able to login/logout using the address and password they used to create their account High User Types The user privileges should be separate according to the type of user one is i.e. Unregistered user, Investor, Service Provider, Admin etc. Search Any user registered or unregistered should be able to search for service providers by any field like name, area, address etc. Review Service Provider Any registered user should be able to review and rate a service provider. Track Investment Any Investor who has added properties to his/her profile can track the financial performance of those properties using the tracking tool Add Service Provider Any registered user can create a new profile for a new service provider providing all the required information as required by the website. Reply to Reviews A service provider should be able to reply to any review left on his/her page.

15 Level of Service Goals Level of Service Goals Priority
Browsers Supported: Safari, Firefox, Chrome, Edge High RWD/Mobile Capability: Desktop, Laptop, Smartphone Database Scalability: Be able to handle and ever increasing list of service providers and users in the website System information shall always be accessible to manager or admin System shall be able to differentiate between different users accessing the website.

16 Organizational Goals Organizational Goal Priority
Provide a trustworthy and easy to access platform to provide service provider data. High Provide investors easy means of tracking financial performance of their investments. Provide service providers a free platform to advertise and market their businesses. To reduce the physical and financial costs for prospective investors to look for service providers for their properties. To provide the community a means of discussing different topics and occurrences related to the real estate industry Medium

17 Constraints API Requirements: System should be able to extract information from Zillow, Google and other APIs required to track the financial performances of properties added by investors. OS Requirements: The Client wanted the development of the website to be Windows centric.

18 Business Workflow Search Service Providers - User
Write Review – Registered User Business Workflow

19 Business Workflow Create New Service Provider Page- Registered user
Create New Service Provider Page- Service provider Business Workflow

20 Business Workflow Add, Compare Track Property - Investor
Read and reply to review - Service Provider Business Workflow

21 Business Workflow Read or Share blog –User
Read, Create, Join Discussion – Registered User Business Workflow 21

22 Requirements

23 Win Conditions Priority Score Win Win Condition 0.850 0.813 WC- 1
As a registered user, I can reset my password through an authentication system 0.850 WC- 2 As a non-registered user, I can create an account from a link on the home page 0.813 WC- 2.1 Registered user can make pages or profiles for service providers WC- 2.2 As a registered user, I can choose to activate two factor authentication for login WC- 2.3 Registered user can login using Social Media sites

24 Win Conditions (Contd)
Win Win Condition Priority Score WC- 3 As a registered user, I can manage investments to my investment profile 0.781 WC- 3.1 Registered user can track an investment property by inputting the address, rent, purchase price, loan amount, down payment, and expenses WC- 3.2 Registered user can export my tracking tool data to a “CSV” file WC- 3.3 Registered user can see the performance of my investments over time using the visualization tool WC- 4 As an administrator, I can view website utilization statistics 0.698

25 Win Conditions (Contd)
Win Win Condition Priority Score WC- 5 As an unregistered/registered user, I can view a list of service providers 0.650 WC- 5.1 Unregistered/registered user can search for service providers WC- 5.2 User can find a service provider by , phone number, or name WC- 5.3 User can I have access to service providers contact information WC- 5.4 Non-registered user can search service providers by state, city, and service type (eg. Real Estate Agent, Property Manager, Contractors, etc)

26 Win Conditions (Contd)
Win Win Condition Priority Score WC- 6 As a registered user, I would like to leave reviews for service providers 0.594 WC- 6.1 Service provider can see the reviews posted about them by others. WC- 6.2 Registered user can rate a service provider without leaving text reviews WC- 6.3 Registered user can vote on reviews WC- 6.4 Verified Service provider can reply to reviews left on their page WC- 6.5 As a non-registered user, I can read reviews

27 Win Conditions (Contd)
Win Win Condition Priority Score WC- 7 As a site admin, I have at least all of the same permissions as a registered user 0.523 WC- 7.1 Administrator can verify the identity of a Service provider WC- 7.2 Administrator can post articles to the blog WC- 7.3 Admin can remove a flagged user WC- 7.4 As an administrator, I can moderate the user created content

28 Win Conditions (contd)
Win Win Condition Priority Score WC- 8 Registered use can adjust their notification settings 0.239 WC- 8.1 As a user (investor or service provider), I will receive notifications by about the comment reviews others have registered WC- 9 Non-registered user can read the site blog 0.230 WC- 9.1 Non-registered user can share blog posts on popular social media applications through links inside of the blog WC- 9.2

29 Win Conditions (contd)
Win Win Condition Priority Score WC-10 Registered user can start a discussion in the discussion board of the site 0.227 WC-10.1 Non-registered user can read the site discussion board WC-10.2 Non-registered user can search the discussion board using text input

30 Prototype

31 Service Provider List - (backup slide)

32 Service Provider Search - (backup slide)

33 Service Provider Profile - (backup slide)

34 Review - (backup slide)

35 Review - (backup slide)

36 Review - (backup slide)

37 Investments

38 Investments

39 Investments

40 Architecture

41 Top Level Logical Architecture

42 Top Level Physical Architecture

43 Class Diagram

44 Unregistered User Use Cases

45 Investor Use Cases

46 Service Providers Use Cases

47 Administrator Use Cases

48 System Context Diagram

49 Unregistered User Use-Cases
REAL ESTATE INVESTMENT AND REVIEW TOOL

50 Registered User Use-Cases
REAL ESTATE INVESTMENT AND REVIEW TOOL

51 Admin Use-Cases REAL ESTATE INVESTMENT AND REVIEW TOOL

52 Life Cycle Plan

53 Key Stakeholders STAKEHOLDERS ROLES Alex Miller
Client and Website Maintainer Ashley O’Brian Client Shriraksha Rao Feasibility Analyst, Trainer Yonghyun Cho Requirements Engineer, Developer Yuxuan Chen Developer/ Prototyper, Trainer Vikram Mudaliar Life Cycle Planner, Software Architect Md Shadman Rafid Operational Concept Engineer, Trainer Venkata Sravanti Malapaka Project Manager, Software Architect Webber Wang Tester, Quality Focal Point, Developer Jose Gabriel Vicente Hernandez IV and V, Tester

54 Future Plan 1/2

55 Future Plan 2/2

56 COCOMO II Scale Drivers
Factors Scale Rational Precedentedness Very Low No existing or similar System Development Flexibility Nominal Client’s negotiation is achievable and requirement is acceptable Architecture/Risk Resolution Majority of the risk is avoidable by following mitigation strategies Team Cohesion High Seamless Interaction in the team Process Maturity ICSM Principle Process Maturity - KPA (Key Performance Area)

57 COCOMO II Cost Drivers Login:
DATA - Larger DataSet because of login credentials CPLX - Moderate Level Computational Operation & simple GUI builder SITE - Multisite Development (Multicity and Phone) Investment Page: CPLX - Use of standard math and statistical routines Tool - Software tool - Chart.js

58 COCOMO II Cost Drivers Search SP
CPLX - Use of standard matching technique SP profile RELY - Required Software reliability (Trust requirement) CPLX - Evaluation of simple expression and simple read and write statement RUSE - The code can be reused for Investor’s profile creation

59 COCOMO II Cost Drivers ●Analysis Result: SLOC: 15129 Effort needed:-
Optimistic: 26.6PM Most Likely: 33.1 PM Pessimistic: 41.4 PM ●Total time: 152 Hours/PM

60 Feasibility Evidence

61 Google Authentication API
Analysis of NDI & COTS COTS Purpose Get Zestimate API •Extract the price associated with the properties Google Authentication API •Google Sign-In a secure authentication System instead of User Login •Connecting to Google user and service securely AngularJS •Comprehensive for Frontend development •Easier Data binding •Popular Language now and in near future NodeJS •High performance •Tight binding between Client and Server •Data Streaming - reducing the overall duration of the process Google Places API •Determines the physical location of the business •Provides places autocomplete and Query autocomplete

62 Business Case Analysis
Objective ○Analyze cost and benefit of the project ○Calculate ROI value Steps ○Cost Analysis ○Benefit Analysis ○ROI Analysis

63 Business Case Analysis – Cost Analysis
Cost includes Personal Cost , Hardware and Software Cost 1) Personal Cost Activities Time Spent (Person/Hour) Client Meeting 6 Win Win negotiation sessions 1 and 2 2 Weekly Team Meeting 4hr*4 week = 16 Development and Prototyping 12hr * 1 Person * 4 week = 48 Total 72 Maintenance Cost 2hr/week Total (PH/year) 108

64 Business Case Analysis – Cost Analysis
2) Hardware and Software Cost Type Cost Rationale Web Domain $12/yr Uses same infrastructure as Google as a result can be accessed faster AngularJS, NodeJS Free Free Frontend and Server side Scripting language GraphQL Free Data Storage – open source to fulfill query based on the available data APIs – Zillow, Google, Facebook, LinkedIn License Free APIs with License

65 Business Case Analysis – Benefit Analysis
●Non-financial benefits and cost ○Reduced amount of man-hour required to store and view the investment data ○Increase in Organization reputation and trust ○Easier to associate highly rated Service Provider with customer - increasing usability Activities & resources used % Reduce Time saved (Hours/Year) Investment tracking tool 98 62 Review of Service Provider 95 90 Total 152 Increase in Organization reputation and trust: the website will be the main point of contactbetween an Investor and Authorized service provide in or out of state

66 Business Case Analysis – ROI Analysis
●To determine the assurance of Project feasibility Year Cost Benefit Cumulation Cost Cumulation Benefit ROI 2018 72 -1 2019 108 152 180 -0.25 2020 118.8 298.8 304 0.02 2021 130.68 429.48 456 0.06

67 Business Case Analysis – ROI Analysis

68 Architectural Feasibility

69 Architectural Feasibility - LOS
Level of Service Requirement Product Satisfaction LOS-1: Usability - The system will represent User’s investments using graphical visualization tool Product Strategy: GraphQL, Zillow API,& Chart.js Process Strategy: Line graph can be used to represent the investment of the Investor over month LOS-2: Performance - System will search for only authorized service provider based on location and Professional information Product Strategy: Google Places API Process Strategy: Maps the search to the location determined by the user LOS-3: Responsive - The system should be rendered properly on various browsers/devices Product Strategy: AngularJS - Custom Directive Process Strategy: Testing the website on different platform

70 Architectural Feasibility – Capability Feasibility
Capability Requirement Product Satisfaction CR-1: Locate Service Provider Software/Technology used: GraphQL query Feasibility Evidence: Obtains accurate Service provider based on their information store in DB CR-2: Chart for Investment Statistic Software/Technology used: Chart.js Feasibility Evidence: Simplifies adding chart to web application for visualization by the user CR-3: Login - using social media Software/Technology used: Social media APIs Feasibility Evidence: Develop a prototype to determine the feasibility of third-party system login Locate Service Provider: Determines the Service providers based on location and personal information Investment Statistic: Generates the investment statistics based on the range/feature provided by the investor

71 Architectural Feasibility - Evolutionary Feasibility
Evolutionary Requirement Product Satisfaction ER-1: Creating a Discussion Board on the website Software/Technology used: WordPress -> Forum Feasibility Evidence: Easy to create and use by the Registered User ER-2: Creating a Blog section Software/Technology used: WordPress Feasibility Evidence: Allowing people to interact and comment with ease

72 Risk and Risk Mitigation
P(L) S(L) RE Risk Mitigation Update and Upgrade to API 8 5 40 Risk Avoidance - Compatible code and Reference/incremental checking Data Privacy and Security 2 7 14 Risk Transfer – Mitigating risk by using Encryption standards or COTS Data Reliability 4 Buying Information – Authorizing the Service provider based on the approval from the organization Risk Exposure Data Privacy and Security - third party tracking system embedded in the website

73 Quality Focal Point

74 Traceability Matrix WC-3: Investment tracking WC-5: Service Providers
Requirements ID Verification Type Test Identifier Test Case [WC-1] A registered user can reset password through Testing [TC-01] Password reset [TC-01-01] Check that a user can request & reset password using a URL [TC-01-02] Check that the user can login with the newly reset password. [WC-2] A non-registered user can create account from a link on the home page [TC-02] Account creation [TC-02-01] Check that the signup on home page links to the signup form [TC-02-02] Check that the signup form successfully registers a new user [WC-3] A registered user can manage investments on the investment profile page [TC-03] Investment tracking tool [TC-03-01] Check that a registered user can add an investment property with property details WC-3: Investment tracking WC-5: Service Providers

75 Traceability Matrix (Contd)
Requirements ID Verification Type Test Identifier Test Case [TC-03-02] Check that a registered user can export the tracking data to a “CSV” file [TC-03-03] Check that a registered user can view the investment metrics with a visualization tool [WC-4] An admin can view website statistics Testing [TC-04] Website Analytics [TC-04-01] Check that admin can view analytics such as site traffic, bounce rate, avg time on page [WC-5] An user can view a list of service providers [TC-05] Viewing service providers [TC-05-01] Check that both registered & unregistered have permission to view service providers

76 Traceability Matrix (Contd)
Requirements ID Verification Type Test Identifier Test Case [TC-05-02] Check that service providers can be searched for using , phone number, name, location, or service type [WC-05-03] Check that the service provider’s contact info is available for the user [WC-6] A registered user can leave reviews for service providers Testing [TC-06] Review system [WC-06-01] Check that a registered user can leave reviews for providers [TC-06-02] Check that a registered user can leave reviews without text [WC-06-03] Check that a service provider can read their own reviews given by others

77 Traceability Matrix (Contd)
Requirements ID Verification Type Test Identifier Test Case [TC-06-06] Check that a registered user can vote on reviews (like/unlike) [TC-06-07] Check that only a verified service provider can reply to reviews [WC-7] An admin has at least all of the same permissions as a registered Testing [WC-07] Admin privileges [WC-07-01] Check that an admin can edit the verification status of a service provider [WC-07-02] Check that an admin can delete a flagged user [WC-07-03] Check that an admin can delete user content

78 Traceability Matrix (Contd)
Requirements ID Verification Type Test Identifier Test Case [WC-8] Registered user can adjust their notification setting Testing [TC-08] Notification system [TC-08-01] Check that a registered user can update notification setting in his profile [TC-08-02] Check that a registered user receives a notification when a review is posted [WC-9] Non-registered user can post blogs [TC-09] User permissions [TC-09-01] Check that a non-registered user can share blogs using a link [TC-09-02] Check that a non-registered user can read a blog [WC-10] Non-registered user can start a discussion on the discussion board [TC-10-01] Check that a user can start a discussion [TC-10-02] Check that a user can search discussions using text input

79 Traceability Matrix Summary
Completed Incompleted Total Requirements 2 8 10 Passed Failed Untested Total Test Cases 5 1 19 25

80 Defect Injection and Removal Matrix
Avoidable Defects: Modules dependency could be broken. COTS package may not integrate with codebase Unavoidable Defects: C. Diagrams don’t reflect the current requirements D. Inability to test on client’s server environment Defect Injection Phase Defect Removal Step Requirements Design Coding Total Requirements Review C 1 Design Review B Testing D A 2 Customer Detected 4 Map each defect by which phase the defect started in, and when it phase it can be removed

81 Quality Management Strategy: Defect Prevention
Priority Level Description Buying Information High Team Identify key risk areas through prototyping, allow better resource managements. Following good coding standard Personal, Team Good practices help reduce number of bugs introduced Version control Version tracking allows work to be merged more easily Peer Review Medium Team review helps coders catch errors before committing them to the codebase Team Meetings Weekly meetings can help prioritize and mitigate risk

82 Quality Management Strategy: Defect Detection
Automated Testing: Unit test the individual modules before system wide integration. Integration tests validate modules still work after integration Code linting: Run a program that analyzes code for potential errors Checks for adherence to coding standards or conventions UI/UX Testing: Test for functionality & performance of user interface Code Review Help identify additional bugs that automated tests can’t catch

83 Quality Management Strategy: Defect Tracking
Jira Each defect is created as a new issue with Issue Type “Bug” Quality Focal Point will prioritize defects and assign them accordingly Bi-Weekly Risk and Defect Report: All team members may contribute additional risk items to the report Track progress of identified defects and quality of solutions

84 Technical Debt Description Category 1 Category 2 Fixed? How to fix it?
Active Weeks Lack of unit tests and integration tests Methods, Tools & Process Shortfalls Prudent Deliberate No Need to schedule time for create unit test and integration tests. 2 Undocumented code Need to schedule time to comment code. Our system has technology that not all developers are familiar with Personal Shortfalls Reckless Inadvertent Yes Need to delegate portions of development to proper teammates 1

85 Definition of done Code associated to the requirement completed.
Code with unit and integration tests. Code well commented. Code reviewed for at least two different developers. Feature related to code tested in standalone server. Non-functional requirements accepted. Feature accepted by product owner. End-to-end user testing

86 Metrics considered by the team
Requirements Volatility - number of changes in System requirements, each week Developer Code Review 3. Test Defect per LOC- measuring test defects incrementally whenever there is an increase in the number of lines of code (per added feature)

87 Questions

88 Thank you!


Download ppt "Real Estate Investment & Review Tool"

Similar presentations


Ads by Google