Proteligent BirdsEye Pro Marketing Requirements Document 2/15/05 Javed Mohammed,
[email protected] Background Proteligent’s vision is to develop “smart and simple” monitoring software. The target market is Small to Medium Enterprises (SMEs). SMEs have limited resources but need a reliable IT infrastructure. Regardless of the type of business or non-profit, communication and IT are mission critical applications, where a system down event can have serious consequences. BirdsEye is a first generation Monitoring software that proactively monitors servers, workstations and network devices and can prevent costly downtime or track and manage performance. BirdsEye is an easy-to-use, Windows based system-monitoring tool that helps prevent system downtime. BirdsEye monitors the seven vital signs of any IT infrastructure: Local and Remote Network Applications, System Log files, Network connectivity, Disk Space usage, Memory usage, and CPU usage. A System administrator does not have to go to each and every system to look at it’s resources or log files. All of this is provided by a small client software which brings all this information together on one easy to view system. BirdsEye's unique layered web interface gives an instant access to the current system status. With each click you can drill down to the next level of detail. Historic information of up to one year allows you to project increases in future usage and plan system upgrades early. Color coded "traffic-light" alerts indicate problems, allow the Admin to intervene early and prevent downtime. A proactive alert system notifies via email or SMS. In summary BirdsEye does the following: AutoDetect – BirdsEye automatically detects the systems on the local network. Monitors Proactively. BirdsEye monitors the network and system resources quickly. This includes servers, workstations, and network devices. You can also monitor the resources remotely via the web. Notification – If there is a potential problem with a server or eg network application you can learn about it wherever you are, by email and SMS cell phone. Reporting – Simple reporting provides history from one day to one year. As with any first generation product there are inherent limitations, customer feedback, competitor moves, and lessons learnt. The following MRD builds on BirdsEye to come out with a competitive and upscale BirdsEye Pro.
PROTELIGENT CONFIDENTIAL
1
Marketing Requirements Overview BirdsEye Pro (BEP) is defined as a monitoring and management tool forSMEs. The sweetspot for this product is the Mid-market which has companies with 25-500 employees and revenues of $5M to $50M. There are 640,000 Mid-market businesses according to Aberdeen Group. Compared to the first generation BirdsEye, BEP is required to be a “Swiss Army knife” an all in one tool. BEP must be scalable to reach the mid-tier market and have the capability through APIs to allow plug-ins and features it does not directly support. The target end-user is either the IT Sys Admin or the IT Solution provider who will use BEP to provide value added services eg by becoming a Managed Service Provider (MSP). The competitive landscape, consists of the mid-tier companies like Concord, Mercury Interactive, Heroix and others. Schedule Requirements, necessitate that the alpha product be ready in 6-7 months and a beta version be available in 9 months from project start. The Release should be by the one year limit. Enhancements from BirdsEye to BirdsEyePro BE Pro builds of the experience gained with the first generation product BirdsEye. BirdsEye. BE auto-Detects Clients, Monitors 6 Vital Signs, has history and limited reporting and notification. It differs as follows: Birdseye
Æ
Birdseye Pro
Monitoring
Æ
Monitoring, Fault Diagnosis, Management & Detailed reporting
Network protocol applications Æ
Networking
Æ
Internal applications & services and Network protocols Bandwidth (In & Out traffic) 1. IP protocol 2. VPN & remote
PROTELIGENT CONFIDENTIAL
2
Terminology and Block Diagram
BirdsEyePro HTML Presentation
Dashboard
Unix Server
Windows Server Console Network Device
BirdsEyePro Engine
Redhat Linux Database
Backup & Recovery
PROTELIGENT CONFIDENTIAL
3
Dashboard, Console and other software design considerations The original BirdsEye was designed to be an easy to install, configure and use software. Although BEP will add many more capabilities the goal should still be a software that masks the complexity from the end-user without compromising the needs of the more advanced user. From an end-user perspective the software should do the following. 1. The “out-of-the” box experience to download and install/configure BEP should be intuitive, fast, error-free and safe from harming other applications. 2. The Installation and Configuration of BEP should be through Wizards, with optional manual configuration capability (just as it is for current BirdsEye). Auto-discovery should also be a part of the Configuration Wizard. A End-user should see visible results of monitoring at the end of the configuration process. For novice users, BEP should default to certain settings and for power users have the capability to set the thresholds where warning and error message notifications are sent. 3. Both the Console (for configuration) and the Dashboard should use Icons, machine names and appropriate color-code to designate the status of a system. The latter referring to the Green is OK, Yellow is Warning and Red is Panic with additional colors to signify other status. 4. The look and feel of the Console should be different and apparent to the end user, so there is no confusion about the purpose of each. 5. The MRD does not specify how many levels of Zoom-In / Zoom-Out capability BEP will have. BE had four levels. It is preferable that BEP have less, ideally just two. 6. The Level 1 overview screen should provide a Network and System Topology view. To get there BEP must provide a Discovery & Mapping tool in the console. A well thought out Level 1 screen is better than having four different options. From the original BirdsEye the Matrix view is a good backup view. 7. The Level 2 view should provides the details and history on the selected system. Reporting should be fast and provide detailed reports including graphing capabilities for 1 day, 1 week, 1 month, to 1 year. For detailed reporting it may be better to use an interface to an existing reporting program like Crystal Reports. 8. The dashboard of BEP should show updates without the user seeing intolerable delays. The request is not to use Frames as BE does. This can speed up pages when they are loaded. From a back-end perspective, BEP should do the following
PROTELIGENT CONFIDENTIAL
4
Store all relevant monitoring data for display, reporting, and backup-recovery purposes in a RDBMS database. The number of entries in the database and disk space should allow for 1 year of 500 clients sampling at an average of 5 minutes and monitoring 25 variables (Actual # TBD) Although this is not an architecture document, it is preferred that the monitoring where possible should be all agent-less. The current BE has three level-one views and four drilldown levels. This should be simplified to not only offer more flexibility but also reduce the number of steps to get to the required screen. Versions of BirdsEye Pro The following are the different versions that we will need of BirdsEye Pro. 1. Trial (10 monitors) for 10 or 30 days 2. Personal Edition (3 monitors) 3. Small Business Edition (10 monitors) 4. Unlimited Edition (Maximum capability) Need to be able to upgrade easily and seamlessly from 1. to 4 using license key
Platforms BEP must operate on the following software and hardware platforms. Software Windows XP Professional, 2000, and above Red Hat Linux 7.2 and above Sun Solaris 8.0 (Both Intel & Sparc Editions) Hardware Intel Pentium 3 and 4 for Windows on windows2000 Server and Professional Intel Pentium3 for Solaris on Solaris7 Intel version and Sparc for Solaris8 BirdsEyePro System Monitoring Capabilities BirdsEyePro must build on the existing six groups of parameters that can be monitored on each client. The existing System monitors are: 1. 2. 3. 4. 5. 6.
Remote and Local Network Applications (DNS, HTTP, FTP, SMTP, POP3, LDAP, TELNET, IMAP, PING ) System Logs (SysLogs), Application and Security Logs Network connectivity Hard Disk Usage Physical and Virtual Memory Usage CPU Usage
PROTELIGENT CONFIDENTIAL
5
Functional Requirements
BEP is an all in one utility, which can monitor Applications, System and Network resources. Application Management –Monitoring and diagnosing problems with packaged (and Web) applications, databases, for analyzing and improving the performance of applications, and for routine administration of applications, including configuration changes. Specific examples of applications would include MS Exchange, and SQL Server. System Management – Monitoring server availability and performance, reduce down time, address CPU usage and availability of disk resources and recovery. The main functionality centers around real-time or near real time monitoring, fault diagnosis, and management. Network Management – Monitors network availability and performance. Checks network components for failure, or performance degradation against specified baseline metrics suppresses downstream alarms and performs root cause analysis to isolate the cause of the failure Detailed reporting across all three levels provides history, which includes trend analysis, which can be used for capacity planning. Monitoring and management capabilities should with authentication be both internal as well as remote. This capability is not only important for branch office IT management but also for the Service Provider market BirdsEye-Pro Monitoring and Management
Application Management
Database Management
Application Level Management Availability & Performance
Configuration Management
System Level Management Fault Management
Performance Management
Network Level Management
PROTELIGENT CONFIDENTIAL
6
What’s New The following is a non-prioritized list of features that need to be added or changed in addition to the monitors covered later. General 1. Real time monitoring & notification 2. 500 systems performance 3. Problem assessment & solving 4. Notification using Modem/phone line (if email does not work) 5. "Smart Diagnostics" (Knowledge base) 6. DB support/Root Cause Analysis 7. Security and Virus warnings GUI 8. Open for programming/script Graphical representation 9. Browser GUI for server configuration w/login 10. Graphs without need for JAVA browser plug-in 11. Network Topology Discovery & Mapping 12. Switch able look & feel (rich instrument look & printer friendly) 13. Full Reporting, Graph and Analysis 14. On demand reporting 15. Custom reports by date range (on-demand graph) Flexibility & Power Users 16. Dynamic IP addressing 17. Security – users & administrators (double layer of security) 18. Clustering 19. Linux server – Birdseye 20. Possibility for plug-ins / customer scripts 21. API for customization 22. Solaris, Redhat & Mandrike Linux support for monitoring Additional Monitoring 23. More detailed apps monitoring, customizable 24. More detailed network monitoring – eg routers 25. Remote monitoring 26. Patch monitoring 27. Back-up monitoring 28. Network Performance Monitoring (Bandwidth) 29. Network Traffic monitoring 30. Intrusion detection
PROTELIGENT CONFIDENTIAL
7
BEP will monitor the following categories: System Monitors Application Monitors Web/URL Monitors Network Service Monitors
SYSTEM MONITORS CPU Utilization Monitor Reports CPU usage and warns if it is overloaded. DHCP Monitor Determines if an IP address can be obtained from a DHCP server. Directory Monitor Monitor file count and size within a directory. Disk Space Monitor Reports Disk usage and warns if it starts getting full. File Monitor Monitor file system parameters such as the size, age, and content of a file, and receive notification of any changes. IPMI Monitor (Nice to have, TBD if required) Monitor hardware parameters such as temperature, voltage, fan speed, etc. on Intelligent Platform Management Interface (IPMI) enabled servers. LDAP Monitor Verify that an LDAP server is working correctly by connecting to it and performing a simple authentication. Optionally, it can check the result for expected content. Log File Monitor Generate warnings and errors based upon data in an application's log file. For example, many applications write error messages to a log file. This monitor can scan those log files, looking for error messages and generating alerts when it finds them. Memory Monitor Measure virtual memory usage and receive proactive notification of problems. Network Monitor Track network statistics for your server. Information provided by the network monitor can help you track down performance problems related to network interfaces on your servers.
PROTELIGENT CONFIDENTIAL
8
NT Dial-up Monitor Dial into an ISP or Remote Access server and confirm that a connection can be made. Once connected, it can execute user-defined commands and measure performance. NT Event Log Monitor Watch one of the Windows NT Event Logs (System, Application, or Security) and trigger alerts when entries are added. NT Performance Counter Monitor (Not sure if this is required) Retrieve the value of any Windows NT Performance Counter and send alert if this value is out of a specified range. Service Monitor Verify that specified processes are running, including Web, Mail, FTP, News, Gopher, Telnet, and DNS.
APPLICATION MONITORS Allows monitoring of web servers, application servers, middleware and other applications. Apache Web Server Monitor Apache server statistics such as bytes per second, requests per second, and CPU load. CheckPoint FireWall-1 Monitor Checkpoint firewall parameters such as fwEvent, fwRejected, and fwLogged. Cisco Works Monitor Cisco Works server parameters. MAPI (TBD) Test Microsoft Exchange server by sending a message via MAPI. Microsoft Applications Monitor performance for most Microsoft applications including: Active Directory • ASP • Exchange • IIS • SQL • .Net • Windows Media Player and Server
PROTELIGENT CONFIDENTIAL
9
Database Monitor Verify database queries. NetScape Enterprise/iPlanet Monitor key performance statistics for NetScape Enterprise/iPlanet web servers. Oracle9i Application Server Monitor server statistics for Oracle9i Application Servers. Oracle JDBC (TBD) Test an Oracle database by connecting to it and performing a query using JDBC.
WEB/URL MONITORS (All except URL Monitor TBD) These monitors are used specifically for monitoring web site performance or web related processes including web services. eBusiness Chain Monitor Verify that a complete chain of actions is completed as intended including front-end Web servers, e-mail notifications, back-end databases and more. Link Check Monitor Monitor all internal and external Web site links for link integrity. URL Monitor Verify availability and access time for specified URLs to ensure Web pages are available within an acceptable time frame. On Windows NT, BEP takes advantage of the platform's integrated support to monitor secure HTTPS URLs in addition to HTTP URLs. URL Content Monitor Retrieve a selected URL, checking for multiple strings of text within the page. URL List Monitor Monitor an entire list of URLs, rather than defining several separate URL monitors. URL Sequence Monitor Verify a session that includes multiple pages. An example of this would be entering an account name via a Web form and checking an account status for the page that is returned. Web Server Monitor Report data recorded by the Web server log such as hits, bytes, errors, hits per minutes and bytes per minute.
PROTELIGENT CONFIDENTIAL
10
• • •
Netscape Enterprise & FastTrac Microsoft IIS Apache
Web Service Monitor Send SOAP requests to a Web Service enabled application to verify availability. NETWORK SERVICE MONITORS The following monitors are used for monitoring network services and network related processes/operations. DNS Monitor Verify that the Domain Name Server (DNS) is accepting requests. Verify that the address for a specific domain name can be found. Formula (Bandwidth) Composite Create a measurement based on an arithmetic calculation of the results from two other monitors. FTP Monitor Verify that a file can be retrieved from a file transfer protocol (FTP) server. Mail Monitor (SMTP, POP3, IMAP) Verify that the mail server is accepting requests, and that messages can be sent and retrieved. Ping Monitor Verify that specified hosts are available via the network to ensure continuous availability of critical connections. Port Monitor Determine whether a service on a port can be connected to. Real Streaming Monitor Measure the availability and quality of a Real stream from a client-side perspective. RTSP (Real Time Streaming Protocol) Monitor Determine the availability of real time media streams. Monitor real time media streams. SNMP Monitor Use industry-standard Simple Network Management Protocol (SNMP) to monitor network devices. SNMP Trap Monitor Search through SNMP traps for specific values. Together with BEP native SNMP listener, this monitor lets BEP act as an SNMP management console.
PROTELIGENT CONFIDENTIAL
11
APPENDIX A Various documents still needed and to be developed with the following hierarchy: BirdsEye Pro PRD / Business Case
PRD - Product Requirements – (TBD Later)Screen MockupsReport TemplatesWhat the user sees and gets. Business Case Justification, RevenuesCosts, ROI, Market Share. Engineering Deliverables to PM: Functional Spec, Design & Schedule for, Beta and GA: 1.
Func Spec: Response to MRD, what Engr. Can deliver, when and how. Detailed document w/ responses to the MRD and/or PRD.PM and Engr. Need to agree on Func Spec meeting the MRD/PRD and the Business case requirements.
2.
Design: Engr. Develops Design to meet Func Spec. PM does not approve, this is included in the PM schedule since it is a deliverable for the ARB meeting. PM expects that the Func Spec will be updated after the Design, so detailed documents (Fact Sheets, Sales Pres, etc.) will be done after the Design Doc.
3.
Schedule: Engr. Provides the schedule with the Design. PM needs to approve the schedule since it impacts the Business case.
4.
Internal (Architectural) (SRS)
5.
Feature Des. Spec
6.
Des Doc / Eng Detailed design description
PROTELIGENT CONFIDENTIAL
12
APPENDIX B The Following are more detailed notes based on Engineering feedback on BirdsEye for BEP 1) Modularity · Each object to have protocol defined or indicated to communicate with other objects / modules · Each module to run as stand alone 2) · ·
Notification Selection, e-mail, etc. Provide: To a group By particular device
3) “Push to server” limited due to Firewall · Change to server pop/pull · Evaluate performance Impact / benchmark. Over predetermined port / fixed port · Replace static HTML pages with dynamic HTML pages – ask Nicole 4) Omni features – avoid duplication w/Omni provided features 5) Writing file all the time · Change to system file under WIN32 6) GUI – provide utility for change / configure facility to id physical device (e.g. as provided by product Nanny) 7) Client INSTALL / Initialization – do it in parallel mode thru MULTIPLE Threading concept (50K threads!) 8) Linux / Unix install – Provide thru “ftp” in the background – (instead of telnet) 9) Cleanup – playback file to be smaller & compact – loaded by # of items
2) · o o
Display of Top Down / Total Network resources Categorize by type and with “icon” selection capability; add items such as: Printer Router, etc.
3) · ·
Names to resources –to be flexible Specification of logical names/icon by user Property page for each discovered resource
4) ·
Option of deleting resources as needed Have generic control panel per resource if possible
5) · · ·
Backend db engine needed to provide: Dynamic HTML Data sorting Performance, etc.
6)
Enhanced Distribution of Linux / Unix /
PROTELIGENT CONFIDENTIAL
13
1. Type wise display of network resources Current implementation: All the networking resources including computers, printers, routers etc. are displayed under a single category. Feature enhancement: Networking resources would be displayed under different sections/ categories in the Explorer and Web-based display. This categorization will be based upon the type of the device such as computer, printer and router. 2. Logical name assignment for resources Current implementation: There is no support for assigning logical name to a discovered resource. Either the host name or the IP address is shown when that resource is discovered. Feature enhancement: Enhancement will be made in manual discovery process to let user assign logical name to the resource he is to discover. To handle this for auto-discovery process, ‘Edit Properties’ page on each discovered resource will let user to change its name. 3. Delete (un-discover) unwanted resources Current implementation: Not Supported Feature enhancement: Support will be added so that on each network resource user can operate upon the ‘Delete’ option. This option will be provided as part of the main menu and also the short-cut menu through the mouse right-button click. 4. Backend database engine Current implementation: Not Supported Feature enhancement: This improvement is believed to improve/enhance the following: • • • •
Dynamic HTML pages generation Data sorting, reports generation and Audits Improved intelligence for identifying trends and patterns Better handling of data generation for graph display
5. Distribution of Linux and Solaris package Current implementation: Not Supported Feature enhancement: Distribution and installation of Linux, Solaris etc. client software through BirdsEye central management server (Explorer).
PROTELIGENT CONFIDENTIAL
14