Dumb Idea or Good Idea?
One of the most often used terms you hear in a meeting at Microsoft is “that's the dumbest thing I have ever heard“. Sometimes this is true (remember Hailstorm?), sometimes its not (combine Excel and Word into one suite of well-integrated products). I've been kicking around ideas for starter kits for Whidbey. A starter kit is an out-of-the box pre-built app that should solve a specific customer problem (check the existing ASP.NET starter kits). I asked two colleagues for their opinions on my idea. One said “That's the dumbest thing I have ever heard“ (PS: you rock Joe), the other said “that's a great idea, I spent the last summer doing this!” (PPS: you rock too Shreyas).
Your mission: Decide who's right :)
The idea is to create an intranet web site starter kit for a corporate IT department, including features like asset tracking, a help desk ticket system, reporting, FAQs, employee phone book, dynamic Org Chart, downloads, etc. A customer could get the starter kit, change some settings and be up and running in minutes (rather then months).
Why create this starter kit? Because our developer division doesn't focus much attention on IT apps (try and find good examples on using Active Directory) and I think we could create a compelling application that you could drop into your company and get working easily.
PS - If you do like this idea, prioritize/stack rank the features you think are most important. Each feature has a letter next to it, so if you think something is a must have, add it as a PRI 1 in your response.
Pri 1 - Features a,b,c
Pri 2 - Features d,e,f
Pri 3 - all the rest
MyHelpDesk Starter Kit
[a] MachineTrack web page
This consists of a Hosted Windows Forms Control embedded on a web page (similar in concept to ActiveX) that polls your local machine using WMI for information an admin wants to track like CPU, RAM, registry keys, HD space remaining, Operating System, etc and adds it into the company asset tracking database. The user clicks a button, and similar to Windows Update, the control inspects the machine configuration.
Data is then stored in the company asset tracking database, which can have multiple copies of the same machine information at different times (Jan, Feb, Mar) and also store multiple machines per user.
Extensibility - Code could be added to automatically suggest software to install – ex: Check for Norton Antivirus, if not installed, show the user a link on a web page to install.
- This would be a user report front-end of the contents of your PC using ASP.NET or SQL Reporting Services. You would be able to see all the info captured in [a].
[c] HelpDesk Ticket System
Have a mechanism for users to submit helpdesk requests (for a specific category) which go into a queue of open helpdesk tickets. The user also receives an email confirming the ticket has been opened.
The helpdesk ticket is then assigned to (or picked up by) a support person who then contacts the user to fix the request.
When the support person closes the ticket, an email is sent confirming this to the user, and the support person can add comments on the ticket.
Extensibility – In the “close ticket” email, you coudl include a link to a unique survey form which asks the user to rate the support person’s help.
This an engine to create and organize Frequently Asked Questions for administrators.
- You can define multiple FAQs (rather then one large one) and also create categories to better organize FAQ questions. All this is done through a web-based interface.
- This would be a list of all corporate approved downloads ranging from utilities like WinZip to corporate TrueType fonts. All downloads would be categorized and include some other attributes like file name, description, vendor URL, version, location (install from the closest copy to you geographically), download count, user ratings, and comments.
[f] Phone Book
- Using Exchange/Active Directory, create a simple web front-end for the corporate phone directory. Users can insert/update their phone numbers and search for the phone numbers of other employees (should this be separate or rolled into the org chart?)
[g] Organization Chart
Using Exchange/Active Directory, admins can create a report-to chain. Using ASP.NET’s treeview control, you can create a simple visual employee hierarchy. Which shows you, your manager, your manager’s manager, etc. Clicking on an employee shows their information (office, phone, email, title, etc)
Extensibility – Easily add the ability to have a picture associated with each employee. Users can only change their picture
- Typical contact/about page
- Simple user control listing announcements as html (no admin gui for this)
[j] Administrative Reports
This is a group of reports that takes the information gathered in AssetTrack and the HelpDesk system
Want to see how many users hard drive is >90% full?
Want to see which employees have the lowest RAM/CPU speed?
Want to see which employees are still on old operating systems?
Who closed the most support tickets?
Who average the most closed per hour?
Who has the best review scores?
Extensibility – Add the ability to see all of the above reports over time (trend up/trend down)?
[k] Active Directory user management
I don’t know what to do here (if anything). What are the common tasks you would want to manage in a web interface?
So what do you think? Also, is making Active Directory and Windows authentication a requirement okay? Does the app need to play with Windows Sharepoint Services and Sharepoint Portal Server?