Loading...
HomeMy WebLinkAbout20-9 Resolution No. 20-9 RESOLUTION AUTHORIZING EXECUTION OF A DEVELOPMENT AGREEMENT WITH SEVEN HILLS TECHNOLOGY, LLC FOR PROFESSIONAL SERVICES IN CONNECTION WITH WEB APPLICATION DEVELOPMENT BE IT RESOLVED BY THE CITY COUNCIL OF THE CITY OF ELGIN, ILLINOIS, that Richard G. Kozal, City Manager, and Kimberly A. Dewis, City Clerk, be and are hereby authorized and directed to execute a Website Development Agreement on behalf of the City of Elgin with Seven Hills Technology, LLC, for professional services in connection with web application development, a copy of which is attached hereto and made a part hereof by reference. s/David J. Kaptain David J. Kaptain, Mayor Presented: January 22, 2020 Adopted: January 22, 2020 Omnibus Vote: Yeas: 9 Nays: 0 Attest: s/Kimberly Dewis Kimberly Dewis, City Clerk WEBSITE DEVELOPMENT AGREEMENT THIS AGREEMENT is made and entered into this 22nd day of January,2020,by and between the CITY OF ELGIN, an Illinois municipal corporation (hereinafter referred to as "CITY") and SEVEN HILLS TECHNOLOGY, LLC, an Ohio limited liability company(hereinafter referred to as "CONSULTANT"). WHEREAS, the CITY desires to engage the CONSULTANT to furnish certain professional services in connection with Web Application Development (hereinafter referred to as the PROJECT); and WHEREAS, the CONSULTANT represents that it is in compliance with Illinois Statutes relating to professional registration of individuals and has the necessary expertise and experience to furnish such services upon the terms and conditions set forth herein below. NOW, THEREFORE, it is hereby agreed by and between the CITY and the CONSULTANT that the CITY does hereby retain the CONSULTANT for and in consideration of the mutual promises and covenants contained herein, the sufficiency of which is hereby acknowledged to act for and represent it in the matters described herein, subject to the following terms and conditions and stipulations, to-wit: 1. SCOPE OF SERVICES A. All work hereunder shall be performed under the direction of the Chief Technology Officer of the CITY, herein after referred to as the "DIRECTOR" B. Outline of the services to be provided by the CONSULTANT will, at a minimum, include the following major activities and process flows. CONSULTANT shall provide the services to the CITY for the PROJECT as outlined herein and as detailed in the Proposed Solution Overview, attached hereto and made a part hereof as Attachment A. 1. Apply For: i. Business License ii. Grants iii. Jobs iv. Liquor License v. Building Permit vi. Rental License vii. Real Estate Transfer Stamp viii. Serve on a Board or Commission ix. Youth Scholarship Fund 2. Find: i. Agendas & Minutes ii. Bid& RFP Postings iii. City Maps iv. Census Information v. Community Resources vi. Comprehensive Plan vii. Elgin Parks and Bike Paths viii. Engineering Resource Center ix. Elgin Events x. Garbage Collection Schedules xi. Human Services Resources xii. Jobs xiii. Munici pal Code xiv. Open Permits xv. Video Center xvi. Visitors Guide xvii. Voter Information xviii. Search optimization to search cityofelgin.org web site on Civicplus 3. Pay For: i. Business License Renewal ii. City issued citations and tickets iii. Miscellaneous Government Services Invoice iv. Utility bill 4. Report: i. Code Violation ii. Crime iii. Graffiti iv. General concern or complaint v. Compliment 5. Register For: i. Automated External Defibrillator(AED) ii. Burglar and Security Alarms iii. Bicycles iv. CPR Classes v. Golf Tee Time vi. Landlord Training Program vii. Parks & Recreation Programs viii. Personal Property, Valuables Serial Numbers ix. Police Community Programs x. Security Camera xi. Volunteer Opportunities xii. To Vote 6. Rent: i. Elgin Art Showcase ii. Recreational Facilities iii. Meeting Space iv. Park Shelter v. Hemmens Cultural Center 7. Other: i. Freedom of Information Act (FOIA) submission ii. Joint Underground Locating Information for Excavators (JULIE) iii. Feed back iv. Blogs 8. Sign Up For: i. Utility Bill Auto Pay ii. E-billing iii. Volunteer Opportunities iv. Bid Notices v. ComEd Outage Alerts vi. Job Announcements vii. RAVE Public Safety Alerts 9. Mapping C. A detailed Scope of Services is attached hereto as Attachment A. 2. PROGRESS REPORTS A. A detailed project schedule for the Project is included as Attachment B, attached hereto and made a part hereof. Progress will be recorded on the project schedule and submitted monthly as a component of the Status Report described in B below. B. The CONSULTANT will submit to the DIRECTOR monthly a status report keyed to the project schedule. A brief narrative will be provided identifying progress, findings and outstanding issues. 3. WORK PRODUCTS All work products prepared by the CONSULTANT pursuant hereto including, but not limited to, reports,designs, calculations, work drawings, studies,photographs,models and recommendations shall be the property of the CITY and shall be delivered to the CITY upon request of the DIRECTOR provided, however, that the CONSULTANT may retain copies of such work products for its records. Such work products are not intended or represented to be suitable for reuse by the CITY on any extension to the PROJECT or on any other project, and such reuse shall be at the sole risk of the CITY without liability or legal exposure to the CONSULTANT. 4. PAYMENTS TO THE CONSULTANT (Lump Sum Method) A. The CITY shall make periodic payments to the CONSULTANT based upon actual progress within 30 days after receipt and approval of invoice. Said periodic payments to the CONSULTANT shall not exceed the amounts provided hereby in Attachment C, attached hereto and made a part hereof, and full payments for each task shall not be made until the task is completed and accepted by the CITY. B. CONSULTANT shall conform to the provisions and requirements of the Level of Effort and Associated Cost which are attached hereto and made a part hereof as Attachment C. 5. INVOICES A. The CONSULTANT shall submit invoices in a format approved by the CITY. Progress reports(2A above)will be included with all payment requests. Total implementation cost to the City shall not exceed $218,000. Total monthly Azure or other hosting service cost to the City shall not exceed$1,600 per month. B. The CONSULTANT shall maintain records showing actual time devoted and cost incurred. The CONSULTANT shall permit the authorized representative of the CITY to inspect and audit all data and records of the CONSULTANT for work done under this Agreement. The CONSULTANT shall make these records available at reasonable times during the Agreement period, and for a year after termination of this Agreement. 6. TERMINATION OF AGREEMENT Notwithstanding any other provision hereof,the City may terminate this Agreement at any time for convenience or any other reason upon thirty (30) days prior written notice to CONSULTANT without penalty. In the event this Agreement is so terminated CONSULTANT shall be paid for goods provided and/or services actually provided or performed, on an ad valorum basis prior to such termination, except that such payment and/or reimbursement shall not in any event exceed the total amount set forth for the total contemplated payment provided for herein. Additionally, in the event this Agreement is so terminated, CONSULTANT shall immediately cease the expenditure of any funds paid to CONSULTANT by the City and shall refund to the City any unearned or unexpended funds. 7. NOTICE OF CLAIM If the CONSULTANT wishes to make a claim for additional compensation as a result of action taken by the CITY,the CONSULTANT shall give written notice of his claim within 15 days after occurrence of such action. No claim for additional compensation shall be valid unless so made. Any changes in the CONSULTANT's fee shall be valid only to the extent that such changes are included in writing signed by the CITY MANAGER and the CONSULTANT. Regardless of the decision of the DIRECTOR relative to a claim submitted by the CONSULTANT, all work required under this Agreement as determined by the DIRECTOR shall proceed without interruption. 8. BREACH OF CONTRACT If either party violates or breaches any term of this Agreement, such violation or breach shall be deemed to constitute a default, and the other party has the right to seek such administrative, contractual or legal remedies as may be suitable to the violation or breach; and, in addition, if either party,by reason of any default, fails within fifteen (15)days after notice thereof by the other party to comply with the conditions of the Agreement,the other party may terminate this Agreement. In the event this agreement is terminated pursuant to a breach or alleged breach by CITY, CONSULTANT damages shall be limited to a pro rata ad valorem fee. CONSULTANT shall not be entitled to any additional damages of whatsoever nature, including but not limited to consequential, indirect or other fees or damages. 9. INDEMNIFICATION To the fullest extent permitted by law, CONSULTANT agrees to and shall indemnify, defend and hold harmless the CITY, its officers, employees, agents, boards and commissions from and against any and all claims, suits,judgments, costs, attorney's fees, damages or other relief, including but not limited to worker's compensation claims and any and all claims made by or against the city based on additional material costs or any other costs incurred as a result of damage to property or increased cost resulting from an inaccurate bid by CONSULTANT without regard to any consideration of the CITY'S receipt of"increased value" or "benefit of bargain" in any way resulting from or arising out of negligent actions or omissions of the CONSULTANT in connection herewith, including negligence or omissions of employees or agents of the CONSULTANT arising out of the performance of this Agreement. In the event of any action against the CITY, its officers, employees, agents, boards or commissions, covered by the foregoing duty to indemnify,defend and hold harmless such action shall be defended by legal counsel of the CITY's choosing. The provisions of this paragraph shall survive any expiration, completion and/or termination of this Agreement. 10. NO PERSONAL LIABILITY No official, director, officer, agent or employee of the CITY shall be charged personally or held contractually liable under any term or provision of this Agreement or because of their execution, approval or attempted execution of this Agreement. 11. INSURANCE A. Comprehensive Liability. The CONSULTANT shall provide, pay for and maintain in effect, during the term of this Agreement, a policy of comprehensive general liability insurance with limits of at least $1,000,000 aggregate for bodily injury and $1,000,000 aggregate for property damage. The CONSULTANT shall deliver to the DIRECTOR a Certification of Insurance naming the CITY as additional insured. The policy shall not be modified or terminated without thirty(30)days prior written notice to the DIRECTOR. The Certificate of Insurance which shall include Contractual obligation assumed by the CONSULTANT under Article 10 entitled "Indemnification" shall be provided. This insurance shall apply as primary insurance with respect to any other insurance or self- insurance programs afforded to the CITY. There shall be no endorsement or modification of this insurance to make it excess over other available insurance, alternatively, if the insurance states that it is excess or prorated, it shall be endorsed to be primary with respect to the CITY. B. Combined Single Limit Policy. The requirements for insurance coverage for the general liability and auto exposures may be met with a combined single limit of$1,000,000 per occurrence subject to a $1,000,000 aggregate. C. Professional Liability. The CONSULTANT shall carry Professional Liability Insurance. Covering claims resulting from error, omissions or negligent acts with a combined single limit of not less than $1,000,000 per occurrence. A Certificate of Insurance shall be submitted to the DIRECTOR as evidence of insurance protection. The policy shall not be modified or terminated without thirty(30) days prior written notice to the DIRECTOR. 12. CONSTRUCTION MEANS, METHODS,TECHNIQUES, SEQUENCES, PROCEDURES AND SAFETY The CONSULTANT shall not have control over or charge of and shall not be responsible for construction means, methods, techniques, sequences or procedures, or for safety precautions and programs in connection with the construction,unless specifically identified in the Scope of Services. 13. NONDISCRIMINATION In all hiring or employment made possible or resulting from this Agreement, there shall be no discrimination against any employee or applicant for employment because of sex, age,race,color,creed,national origin,marital status,of the presence of any sensory,mental or physical handicap, unless based upon a bona fide occupational qualification, and this requirement shall apply to, but not be limited to, the following: employment advertising, layoff or termination,rates of pay or other forms of compensation and selection for training, including apprenticeship. No person shall be denied or subjected to discrimination in receipt of the benefit of any services or activities made possible by or resulting from this Agreement on the grounds of sex,race, color,creed,national origin, age except minimum age and retirement provisions, marital status or the presence of any sensory, mental or physical handicap. Any violation of this provision shall be considered a violation of a material provision of this Agreement and shall be grounds for cancellation, termination or suspension, in whole or in part, of the Agreement by the CITY. 14. ASSIGNMENT AND SUCCESSORS This Agreement and each and every portion thereof shall be binding upon the successors and the assigns of the parties hereto; provided, however, that no assignment shall be made without the prior written consent of the CITY. 15. DELEGATIONS AND SUBCONTRACTORS Any assignment, delegation or subcontracting shall be subject to all the terms, conditions and other provisions of this Agreement and the CONSULTANT shall remain liable to the CITY with respect to each and every item,condition and other provision hereof to the same extent that the CONSULTANT would have been obligated if it had done the work itself and no assignment,delegation or subcontract had been made. Any proposed subcontractor shall require the CITY's advanced written approval. 16. INDEPENDENT CONTRACTOR This Agreement shall not be construed so as to create a partnership, joint venture, employment or other agency relationship between the parties hereto. 17. SEVERABILITY The parties intend and agree that, if any paragraph, sub-paragraph, phrase, clause or other provision of this Agreement, or any portion thereof, shall be held to be void or otherwise unenforceable, all other portions of this Agreement shall remain in full force and effect. 18. HEADINGS The headings of the several paragraphs of this Agreement are inserted only as a matter of convenience and for reference and in no way are they intended to define, limit or describe the scope of intent of any provision of this Agreement, nor shall they be construed to affect in any manner the terms and provisions hereof or the interpretation or construction thereof. 19. MODIFICATION OR AMENDMENT This Agreement and its attachments constitutes the entire Agreement of the parties on the subject matter hereof and may not be changed,modified,discharged or extended except by written amendment duly executed by the parties. Each party agrees that no representations or warranties shall be binding upon the other party unless expressed in writing herein or in a duly executed amendment hereof, or change order as herein provided. 20. APPLICABLE LAW This Agreement shall be deemed to have been made in, and shall be construed in accordance with the laws of the State of Illinois. Venue for the resolution of any disputes or the enforcement of any rights pursuant to this Agreement shall be in the Circuit Court of Kane County, Illinois, without jury; and agrees that service by first class U.S. mail to Brad Gardner,4050 Executive Park Dr, STE 330, Cincinnati, OH 45241 shall constitute effective service. 21. NEWS RELEASES The CONSULTANT may not issue any news releases without prior approval from the CITY, nor will the CONSULTANT make public proposals developed under this Agreement without prior written approval from the CITY prior to said documentation becoming matters of public record. 22. COOPERATION WITH OTHER CONSULTANTS The CONSULTANT shall cooperate with any other consultants in the CITY's employ or any work associated with the PROJECT. 23. INTERFERENCE WITH PUBLIC CONTRACTING The CONSULTANT certifies hereby that it is not barred from bidding on this contract as a result of a violation of 720 ILCS 5/33E et seq. or any similar state or federal statute regarding bid rigging. 24. SEXUAL HARASSMENT As a condition of this contract, the CONSULTANT shall have written sexual harassment policies that include, at a minimum, the following information: A. the illegality of sexual harassment; B. the definition of sexual harassment under state law; C. a description of sexual harassment,utilizing examples; D. the vendor's internal complaint process including penalties; E. the legal recourse, investigative and complaint process available through the Illinois Department of Human Rights, and the Illinois Human Rights Commission; F. directions on how to contact the department and commission; G. protection against retaliation as provided by Section 6-101 of the Human Rights Act. A copy of the policies shall be provided by CONSULTANT to the Department of Human Rights upon request 775 ILCS 5/2-105. 25. WRITTEN COMMUNICATIONS All recommendations and other communications by the CONSULTANT to the DIRECTOR and to other participants which may affect cost or time of completion shall be made or confirmed in writing. The DIRECTOR may also require other recommendations and communications by the CONSULTANT be made or confirmed in writing. 26. NOTICES All notices, reports and documents required under this Agreement shall be in writing and shall be mailed by First Class Mail, postage prepaid, addressed as follows: A. As to CITY: Jeff Massey Chief Technology Officer City of Elgin 150 Dexter Court Elgin, Illinois 60120-5555 B. As to CONSULTANT: Brian Adams Seven Hills Technology 4700 Ashwood Dr Blue Ash, OH 45241 27. COMPLIANCE WITH LAWS Notwithstanding any other provision of this Agreement, it is expressly agreed and understood that in connection with the performance of this Agreement, CONSULTANT shall comply with all applicable Federal, State, City and other requirements of law, including, but not limited to, any applicable requirements regarding prevailing wages, minimum wage, workplace safety and legal status of employees. Without limiting the foregoing, CONSULTANT hereby certifies, represents and warrants to the City that all of CONSULTANT's employees and/or agents who will be providing products and/or services with respect to this Agreement shall be legally authorized to work in the United States CONSULTANT shall also, at its expense, secure all permits and licenses, pay all charges and fees, and give all notices necessary and incident to the due and lawful prosecution of the work, and/or the products and/or services to be provided for in this Agreement. The City shall have the right to audit any records in the possession or control of CONSULTANT to determine CONSULTANT's compliance with the provisions of this section. In the event the City proceeds with such an audit, CONSULTANT shall make available to the City CONSULTANT's relevant records at no cost to the City. CONSULTANT shall pay any and all costs associated with any such audit up to the amount of$900. The entity submitting this bid or proposal hereby warrants and represents that to the extent it may be applicable, it is registered with the Illinois Secretary of State's Office or has been incorporated in the State of Illinois; and such entity further hereby warrants and represents that it is in good standing in the state of its incorporation or organization. Without limiting the foregoing, CONTRACTOR hereby certifies, represents and warrants to the CITY that all CONTRACTORS employees and/or agents located in the United States, who will be providing products and/or services with respect to this CONTRACT, shall be legal residents of the United States. 28. EXECUTION This agreement may be executed in counterparts, each of which shall be an original and all of which shall constitute one and the same agreement. For the purposes of executing this agreement, any signed copy of this agreement transmitted by fax machine or e-mail shall be treated in all manners and respects as an original document. The signature of any party on a copy of this agreement transmitted by fax machine or e-mail shall be considered for these purposes as an original signature and shall have the same legal effect as an original signature. Any such faxed or e-mailed copy of this agreement shall be considered to have the same binding legal effect as an original document. At the request of either party any fax or e-mail copy of this agreement shall be re-executed by the parties in an original form. No party to this agreement shall raise the use of fax machine or e-mail as a defense to this agreement and shall forever waive such defense. The person signing THIS CONTRACT certifies that s/he has been authorized by the CONTRACTOR to commit the CONTRACTOR contractual and has been authorized to execute THIS CONTRACT on its behalf. IN WITNESS WHEREOF, the parties hereto have entered into and executed this agreement effective as of the date and year first written above. FOR THE CONSULTANT FOR THE By: 7"/>--- L - By: •/ City Manager Attest: zeal eliza6 City Clerk F:U.egal Dept\Agreement\Seven Hills Agreement-Clean-l-3-20.docx ATTACHMENT A Proposed Solution Overview II �I System Architecture -a r Prepared For 1 ri LGIN Portal Applications Prepared By Se Aven HTTPS TLS 1.2/1.3 Pubic Internet HTTPS HTTPS TLS 1.2/1.3 TLS 1.2/1.3 Elastic Cloud - . •ft Azure Elasticsearch iliallimaYs41 4 APM PbAel web App Aw I CIIntegration Sync R=P 19-040 Web Application Development-Technical Proposal =','c;:- 1 S. The solution is divided into a number of parts, each playing a part to achieve a fault-tolerant and performant experience for users across all devices. Microsoft Azure The application will be hosted in a cloud environment. Our preference is hosting in Azure, however we're able and willing to work in other environments such as Amazon AWS, Google Cloud, or Digital Ocean. Azure Web Application Gateways Azure Web Application Gateways will be used as the public-facing endpoints for everything in Microsoft Azure. They will provide the following in this solution: Web Application Firewall Web Application Gateways have built-in features for protection against common web application vulnerabilities including Cross-Site Scripting. Layer 7 Routing Because we will have multiple URLs pointing to multiple applications in Microsoft Azure, the layer 7 routing features allow us to use host header-based routing to efficiently route traffic to the correct back end components. TLS Certificate Management TLS Certificates can be managed at the gateway, centralizing the management of certificates, and certificate upgrade scenarios. This will allow us to be responsive to new requirements or to regularly update certificates. API App Service One Azure App Service will be utilized to hold the back end API that the on-site devices, as well as the web user interface, will communicate with. This API will be written in the latest version of RFP 19-040 Web Application Development-Technical Proposal Node.js. The app service will be configured to auto-scale based on load thresholds to avoid downtime as traffic and utilization increases with the deployment of new stations and clients. Using an App Service gives us the ability to deploy multiple instances for high availability, and deploy additional deployment slots to handle separate environments for QA/Staging and Production. Integration App Service The other Azure App Service will run the integration sync program, which will store information in Elasticsearch to allow for cross-site searching. This application will be monitored and run on a loop to ensure data is up to date between all systems. The integration app service will be written using Node.js Azure Storage with Static Hosting Azure's BLOB storage allows us to store static content that will encompass the user interface that all administrative users and public users will see and interact with. Azure storage is redundant and fault-tolerant by default and will be configured for geographic redundancy for the best fault tolerance and durability available. The web portal application will be written using modern Javascript tooling and React.js. Elastic Cloud Elastic Cloud is our solution for reporting, diagnostic review, alerting, and proactive monitoring. We must utilize a system separate from Microsoft Azure for this purpose in case there are problems in our Azure deployment itself. Elastic Cloud is a hosted environment that is deployed to either Amazon Web Services (AWS) or Google Cloud Platform (GCP) and hosts the major components of the Elastic Stack. Components in Elastic Cloud are accessible securely via HTTPS, and with managed users and passwords, with assigned roles. This will allow us to control who has access to the diagnostic information for this platform. RFP 19-040 Web Application Development-Technical Proposal The relevant components for this solution are as follows: Elasticsearch Elasticsearch began as an HTTP based platform for full-text search built on top of Apache Lucene. Since its inception, it's grown to a full-featured search, monitoring, aggregation, and business intelligence platform. Data is stored in Elasticsearch in JSON documents and distributed across a cluster for replication and high availability. On top of Elasticsearch sits tools that help to visualize and take action on the data it stores. In this solution, documents stored in Elasticsearch will be the information gathered from each integrated system so we can provide a full cross-system search. Elasticsearch will also hold metric information for each component of the architecture and mobile apps, giving us a complete picture of the deployed environment. Application Performance Monitoring (APM) Tied into all non-mobile applications we build is the Elastic APM library. This library allows us to choose custom information from the application code to send up to Elasticsearch for analysis and monitoring. Most commonly this will be API timings so we can proactively monitor if API requests are slowing down, and see the overall volume of our inbound requests, informing when we need to scale to more instances of the applications. The other important piece of information tracked with APM is application errors. If any error occurs in any deployed system in Azure, that error's information will be captured and tracked centrally so it can be investigated proactively. Kibana Kibana is the visual interface to Elasticsearch. Kibana comes pre-configured with dashboards, charts, and visualizations for application logs, APM data, and system metrics collected by Metricbeat. We will utilize Kibana to build our monitoring dashboards and give an always up to date and clear picture of how the entirety of the system is being utilized, how things are performing, and any issues that need to be addressed. This will be the foundation for our proactive monitoring and alerting efforts. RFP 19-040 Web Application Development-Terhriral Proposal ' Our Methodology Approach The project is broken down into multiple pieces and phases. Each piece has a specific purpose within the overall scheme of the solution. Each phase denotes a period of time where things are expected to be completed. We have split into teams to tackle each piece independently. This will increase the implementation speed as well as create avenues for quick decision-making and autonomous behavior. Agile Framework We use an agile methodology when developing software. Large scopes are broken into very small development sprints. This allows us to make minor changes easily without causing dramatic scope changes. Sean Price is a Scrum Alliance certified Scrum Master and will be in charge of making sure our agile approach is running smoothly. Development items are broken down into Epics, which contain Features. Features are broken down further into Stories and Bugs. When planning work, we assign Stories and Bugs to developers. Completion of these items then rolls up to show the completion of their respective Feature. The Feature progress then updates the completion percentage of the Epic. It's easy in an agile environment to get behind on schedule or allow too many scope changes that cause the roadmap to become inaccurate. Our project management software and techniques help keep us on target and allows us to project work ahead of time so we can get an early picture of our goals. Agile Deliverables Reports Reports will he available throughout the project. Typical sprint reports such as Burn Down and Burn Up charts will be available 24/7 through our project management application. -F 19.040 Web Application Development-Technical Proposal A custom Sprint Report will also be sent out at the end of every sprint. This small retro report will show things such as the number of hours worked, features worked on, bugs found, and more. This report will be created by Seven Hills Technology personnel and sent to all members working on the project. An example of the Sprint Report is available in the "Example Communications" section. Product Backlog The Product Backlog is the list of all development items for the project. Items will be moved from here to the Sprint Backlog during the sprint planning meeting. The Procuct Backlog will also be available 24/7 through our project management application. The full history of this information is available in the project management application as well. Sprint Backlog The Sprint Backlog is the list of all development items on the active sprint. These items are moved from the Product Backlog to the Sprint Backlog during the sprint planning meeting and are then assigned to developers. Product Increment The Product Increment is the list of development items that were delivered during the duration of the sprint. These items are then added as part of the next release. Management of Sprints Sprint planning meetings will be run by either Brad Gardner, Sean Price, or Brian Adams. Sean will be responsible for ensuring the agile deliverables are prepared for each sprint planning meeting. Each sprint we run is two weeks in duration. RFP 19-040 Web Applicatior Development-Technical Proposal c` ;_ . Project Teams Team Personnel Project Management Team Lead: Sean Price The project management team will be responsible for gathering requirements, running Members: Sean Price, Brian Adams meetings, providing status updates and reports, and ensuring the success of the project. Integration Team Lead: Brad Gardner The integration team will be responsible for creation the integrations between our API and Members: Brad Gardner, Andrew Robb the external systems. This includes integrations with Salesforce and Elasticsearch. API Team Lead: Sean Price The API team will be responsible for creating the API used by the web portal and the mobile Members: Sean Price, Matt Osbourne portals. Web App Team Lead: Brian Adams The web app team will be responsible for creating the front-end of the public web portal. Members: Brian Adams, Spencer Dangel Mobile App Team Lead: Brian Adams The mobile app team will be responsible for creating the native Android and IOS apps for the Members: Brian Adams, Alec Reser portal. Phase 1: Information Gathering Phase 1 will be the process of collecting documentation, examining any necessary source code or API's and familiarizing ourselves with the existing systems and what our exact options for integration are. During this phase, extensive documentation will be created regarding the systems interaction and other environment details. RFP 19-040 Web Application Development•Technical Pt oposal ■ 11 • ■ • • ■ I o--:-♦ -- ---16 \1 C Imo, t During this phase, a QA environment will be setup. This QA environment will be used by both Seven Hills Technology personnel as well as Elgin personnel when testing the items during development. Phase 2: Detailing and Design After all the information has been gathered, we will start designing the user interfaces for web and mobile. During this phase, we start by gathering detailed information about the users and we create "personas" from these users. These personas guide our UX. After the personas have been created we create user journey maps for the personas. These journey maps are graphics outlining common scenarios the users will encounter, possible resolutions, as well as track their levels of emotion and any insights we may gain from the data. Once the journey maps are complete, we will detail each user interaction into stories in our project management application. The user stories will include information for testing and �, development to maximize our documentation .11)- and the developers' understanding of the problem. To round out the design phase, we will create several wireframes for the general look and layout of the portal. We will regroup with Elgin personnel upon completion, where we can make any adjustments. RFP 19-040 Web Appivatro^Development•Technical Proposal Once the overall design has been agreed upon, our Ul/UX team will begin designing each page and interaction with the portals. Upon completion, these designs will be connected into a prototype that will be accessible to all involved in the project at any time. The screens that were created during the design will be added to the user stories to provide a clearer picture for the development teams. Once the designs have been added to the stories, the development of the portal will being. Phase 3: Development We will break into small teams for the development of the solution. The teams will be chosen based on personnel strengths and passions. Each team member will have a specific role in completing the tasks at hand. Each developer on each team will have both be writing software for each user story as well as testing and performing QA duties on their other team members' work. By having other team members perform QA on other members' work, we reduce the possibility of future headaches due to errors or system inefficiencies. Development takes place in iterations called sprints. Each sprint is two weeks long. At the start of the sprint, a sprint planning meeting will take place. During this meeting, work is assigned to each developer and any clarification on stories can be made. Once the meeting breaks, the development staff begins working on the user stories. When a developer is finished with a story, they submit the story for code review. After one of our team leads reviews the code, it will be sent to QA. Another member of their specific team will perform QA on the story at this point. The integrations team will take the information outlined in Phase 1 and begin creating the integration sync program. The integration sync program will be responsible for keeping RFP 19-040 Web Application Development-Technical Proposal information from all independent systems in sync and indexing each system into our Elasticsearch instance. By doing this, we can create a cross-system full-text search and allow the portal to read information from a central source. The API team will be responsible for providing all of the business logic and error checking necessary for the mobile and web app teams. The API team will interface frequently with the integrations team to make sure all necessary data is getting stored in Elasticsearch. The web app team will create the browser-based web application for navigating the portal. Their application will talk to the API as well as any other systems that may be required such as Paymentus. The web app team will be focused on delivering accessible and intuitive experiences to the browser, regardless of device or screen size. The mobile app team will be working on the native iOS and Android applications. To keep costs down, cross-platform development technology will be used. The mobile app team will be consistently pushing new releases to TestFlight and internal test tracks within Google Play. This will allow our development staff as well as city staff to download, install, and use the mobile apps for QA. Phase 4: Final Testing and Go-Live We will begin our final testing phase upon the completion of development. During this phase, all stories and features are re-tested again, as well as the integrations between each system. This testing is done entirely in our QA environment. Any bugs discovered during the final testing phase will be promptly fixed by our development staff. Once the final testing is complete we will schedule a date to go live with the portal. We will release the x mobile apps to their app stores in conjunction with the 7 launching of the web portal. We will have a dedicated , ,IE team ready to respond to support calls or other issues during the first two weeks of the applications being live. RP?19-040 Web Application Development-Technical Proposal After the initial go-live, the project is considered finished. We have provided hosting and support options should the city desire an hourly or pre-paid support plan. Hosting options have also been provided should the city desire to have a fully-managed solution for the portal. RFP 19-040 Web Application Development-Technical Proposal Timeline to Fe 2L,2cjv1,42243 gyp✓ 2O N'1tZV )v,4 )) ,2o rt.), 2t' t• _ Tee ENOe1 3aOlete, Ort-a944 t403.22.13 41.c1M9 .44.3 930- c kexd 41a.7029 • I) Research and 2w [ , Protect Manager.Integrron Der Document eswing systems • 2)OA Envtro•reent Setup 30 i _ Protect Mara • 3)Phase'Complete td • 4) UX Research 1w 4'_ _ -_J Prupct Manager • S) UX DesynMiocwups 2w .-. _: Petco Manage, • 6)Please 2 Complete Dd • 7)Create ntegrat orn*On 344 Integrator"-,Dar roostng systems • & Magnate user 2W API Del management wet Seleetwoe • 9)Wet API 5,64 10 ( API Der • ID)'Mt UI Setup 30 _ Web Der •11) Mobile App Setrp 30 L_ Moble Der • 12)'Apply For senor. 3w 30 _. API Der.Web Dec.Mob*,Der •13)'Foga'sector: 7w 30 _._.., API Der,Morse De;Web Dor •14)-Pay For'section Ow ._ _. API Dec.Mobile Dec Web Cw. • IS)-Ripon'sachem 2w 20 _ I API Derr,MOOM Der,Wee D. • 16) Rigstar For sectan 4w Id __, API Dec Mab*De..Web Dec • 17)'Rare section I w 3d : ; AP,Der,MOO Dec.'Web Dec • 181 'Other soman 1.30 API Der.Mob*Dec.Web Dec • 19, 'Slip Up Far'section 3w i---I API Der,MuO*Der.Web Der •20, 'Mapping*secton 'w 34 : API Dev Mob.e Der Web De. •21)Rase 3 Compete •22) 1estng I Protect Manager •23 Deptoymon1 1w [ - Prates-Manager •24. Phase 4 Complete 3 r Phase Start End Phase 1: Information Gathering Z/2/20Z9 -9/16/20w Phase 2: Detailing and Design 12/20 D /14/20X. ' Phase 3: Development 1/16/20 /27/2020 Phase 4: Final Testing and Go-Live q/28/2020 Jef10/2020 RFP 19-040 Web Appi,catlon Development-Technical Proposal F',12P; C' . Seven s T e c h n o I o g y RFP 19-040 Web Application Development - Cost Proposal Prepared For: Prepared By: Daina DeNye Brian Adams City of Elgin 150 Dexter Ct. Seven Hills Technology Elgin, IL 60120 4700 Ashwood Dr Blue Ash, OH 45241 41111 171 11 -ri H-hr =1 II lilt -- -- -. • =- 11 ''"` ►i���is�t. —•-- �..,,,.. .t,.t__.� �� Application Development/Systems Integration Pricing Name Subtotal Research and Design $ 23,000.00 Researching of integrations with existing systems, UX and design Integration Sync Program Development $ 25,000.00 Creation of synchronization programme toi integrations, int€.•sr:ae with Salesforce API Development $ 57,750.00 Creation of API for :.•se by the web portal and mobile portal Web Portal Development $ 50,250.00 Creation of mobile-friendly web application portal Mobile App Development $ 54,000.00 Creation of Andi old and i0S mobile app poitl Testing and Deployment $ 8,000.00 Final testing, deployment, initial deployment support $ 218,000.00 Total $ 218,000.00 Payment Terms The total project cost will be split over the planned project duration and billed in semi-monthly increments. Payment terms will be NET 30. Hourly Cost Seven Hills Technology uses a blended hourly rate of$125/hr for all employees. This includes our senior project management, technical leads, as well as standard developers. RFP 19-040 Web Application Development-Cost Proposal Hosting and Support Seven Hills Technology provides a white glove hosting and support service for our clients. This service includes hosting and support for all systems and software written by our team. Our service also includes proactive monitoring, access to our issue tracking system, operating system patches, and more. Our goal is to help you feel less stressed and allow you to focus on what's really important. What's Included • Application nosting • Standard business hours phone and email tech support • Server operating system patches • Bug fixes • Proactive monitoring and alerting Hosting We will use a common cloud service provider for software hosting. Options for these hosting environments include AWS, Azure, and Digital Ocean. We also have less expensive hosting options available through our managed services partner if desired. Below is a table breaking down our hosting service for Azure: Name Subtotal Elastic Cloud Hosting Estimate $ 450.00 Hosting for Elasticsearch (used for cross-site search) per icrr-anc monitoring, basiness analytics Azure Hosting Estimate $ 1,000.00 Hosing for the web application,API, and integration service. Hosting Service Estimate $ 150.00 Service lee to, mr:na tr a.i r�asung $ 1,600.00 PIP 19-040 Web Application Development-Cost Proposal P