Content/Document/Project Management System - Which is right for my needs? - project-management

So I just started an internship with this nonprofit company and it's pretty cool. My first assignment was to find a type of program that would work well for the company and its users. I and some team members just finished summarizing down what I think is a good list for the needed functionality. Before I started working, I've never even heard of content/document/knowledge/project management systems. So I've done a bit of research on many other programs and I've narrowed it down to Joomla, activeCollab, Basecamp, sharepoint and a few more. Which program out there would fit my needs the best? It doesn't have to be from the list I just wrote, those are just the programs that popped up first when I started searching.
MUST-HAVE CAPABILITIES
Searchable
Keyword search
Advanced search: Ability to tag & search documents by different categories, for example, type of file (e.g. PDF, Word, etc.), service line (e.g., fundraising, strategy, etc.), type of document (e.g., deliverable, data set, etc.)
In-document search
Categorization
Simple navigation to browse all content
Simple to set up and modify the tree/hierarchy used to browse content
Workrooms
Provide each team a separate workroom to post their own documents
Easy to navigate from team workrooms to the Toolkits (best if team workrooms reside in the same system the toolkits reside)
Version Control
Ability to see which is the most recent file
Security
Password protected
Tiered security, i.e. certain permissions for certain users (to create workrooms, change navigation tree, change toolkits, view/post team files, etc.)
Multi-year support
Easy to “archive” old workrooms or files so the navigation doesn’t become cluttered over time
Share across workgroups
Ability for power users to access multiple team workrooms
Ability to send docs from one group to another—or to the toolkits (by simple tagging or simple “submit” feature)
Uploading
Ability to upload files to workrooms
Ability to submit a new file for consideration for a toolkit (not a file currently in any workroom)
OPTIONAL CAPABILITIES
Messaging
Opt-in notification of uploaded files or changes to existing files
Version Control
Ability to see who has the file checked out
External Access
Client access to certain documents
Within our website
Users gain access from our website
It looks like it resides on our website
Collaboration Tools
Team Calendar
Blog / Forum
Instant Chat
WebEx/Remote Presentation (for virtual team meeting)
Ratings
1-5 Star document rating (by user community)
Searching & Sorting documents by rating (best documents display first in search results)
Simultaneous Edit
Multiple people can edit the same document at same time
Workflow
Ability to tag a file to be reviewed by another user (ability to “escalate” a file for review by someone else)
Messaging alerts when a file has been flagged for a user

Most of the features that you mentioned above are available for free using Plone, which is an application that runs on top of Zope. I actually built and deployed an instance of Plone for a non-prof that had a lot of the features that mentioned above. They features might not have had the same names, but you get a lot of the same functionality.
Here's what my users really liked about Plone:
The ability to index the content of MS Office documents, so that people could search for documents based on content in addition to property and tags/keywords.
Usability. The default theme for Plone isn't the flashiest thing that you will ever see, but it's usability is excellent.
How easy it was the change the system and add new sites or functionality.
Here's what I liked about Plone:
Zero licensing costs. I was able to implement features that usually only come in very expensive systems for free. And I'm aware of these types of costs, because I administer FileNet systems for a living
It was very easy to install, upgrade, and administer. Please take that "pro" with a grain of salt if you're not a professional systems administrator :)
Overall, it was just very easy to work with.
And here are my cons:
If you need the web site to be accessible on the public internet, then your hosting costs may be higher-than-expected. It's definitely cheaper to set up a vanilla Joomla site than it is to set up a vanilla Plone site. Please note that you sound like you need a lot more than a vanilla content management system, so their may be no difference in hosting costs.
Plone is built on Zope, and Zope is an application server. It's easy to set up and use, but it works a little differently than a lot of other web and application servers. If you're used to administering a LAMP stack, then this will be different (but not necessarily bad).
One final con is true with all modern content management systems: don't give your users enough rope to hang themselves. When it take 2 minutes to a wiki and a blog to a web site, then users expect you to add new sites all of the time. Every new site adds a lot of administrative work to your plate, so try and get as much functionality as you can from each site that you add.
Hope that helps!
Tom Purl

Basecamp. Even if it doesn't have all the features you think you need, it does what it is supposed to (37Signals loves to rant about too many features, you aren't gonna need it (YAGNI), etc.)
Joomla is a pain. Activecollab is a poor clone of basecamp (unless it has changed drastically in the year or so that its been since I tried to use it to get out of paying for basecamp).

Related

Language to Create User-Friendly Web Applications

I wish to create web application for users. So far, I have been developing mock-ups on PowerPoint.
I've asked around and I've been told to study HTML, Javascript, CSS. The books I find from https://www.allitebooks.in/ are for super-beginners, i.e. how to write "hello world", how to use css to select font and color.
Then I saw that Duolingo wrote it's website in Scala. To me, Duolingo is a user-friendly, easy-to-use website that allows user interactions to type, drag-and-drop.
But can Scala be useful?
Right now, I am looking to create a web application that takes user input and dynamically updates webpages. The web application is mostly graphics (I'm more of a visual person)
Also, user should be able to drag and drop things. For instance, if there is a bowl of fruit, how to allow users to type in description, and drag it where they wish?
One more thing. If user decides to save data, it should be saved on the cloud (user has account, but they don't have to download software).
Application is free for individual users, but huge organizations need to pay nominal fee.
A website being user-friendly doesn't have anything to do with what language it was built with. A good design is what makes a website more appealing and as you said user-friendly. Designs are typically made in softwares like Photoshop, Sketch,Xd... Now once you have a design you like, comes the web dev part of building a website. Typically this is split into two parts:
Frontend : Here you implement the design using HTML, CSS and JS. There are no alternatives as browsers only understand these languages. HTML is used to create the structure of the design. CSS is used to style the different elements. JS is a programming language used to make pages more dynamic.
Backend: Here we deal with tasks than need to be tackled on the server i.e Login, singup,send email etc. Now because a server can be thought of just being a computer,you can technically use any language that has capabilities to make http requests. Here Scala can be used. Typical languages include PHP, Python, NodeJS etc.
I kept this brief and didn't want to go in much detail, just to paint a picture of what is used for which purpose. I recommend before thinking about building a website like duolingo, to take some kind of course that explains in detail how websites are built.

Is there a self-hosted web-based web UI prototyping tool?

The question says it all, we know most of the hosted web-based UI prototyping tools out there, but we would like to have ours hosted on our own internal servers, preferably with on-line multi-user collaboration functionality (i.e. users modifying the prototype, making comments, etc. in parallel).
Any suggestions will be appreciated.
Sketchflow (in the top-end version of Expression Blend from Microsoft) meets almost all your criteria. It ain't cheap, but it is very powerful.
The deployment package of a Sketchflow build can just be placed on an internal server (no IIS required to deploy).
Multiple users can overlay their comments and pen drawings over the top of the screens. Their feedback is packaged as a unit and sent back. All feedback can then be loaded back into the Expression Blend project and the feedback from 1 or more users viewed overlaid on the correct screens.
It does not meet your multiple-user authoring requirement though, but as they say "too many cooks...".
Most tools are either desktop based or hosted. Seen very few which offer a downloadble multi user version. iRise is one choice with the editor as a desktop product and a centralized server for sharing among users. The budget is typically from $50K to $250K. A similar option exists for Serena composer as well, not sure of the price though.
Both iRise and Serena are not real collaborative tools, the central server is only for sharing the finished prototypes and getting feedback.
If the requirement is for a completely web based multi user tool then 10screens can be an option - http://www.10screens.com. The same product available on the site in a hosted mode can be downloaded and installed on your own servers.

What Software Do You Use To Create Sitemaps / Site Structure For Large Sites?

Just wondering what software you use to create a visual sitemap / site structure representation before you start big sites?
I am looking to map out a large site, but cannot find any good software to help me map the site visually (And in pages/categories)..
Maybe SketchFlow http://electricbeach.org/?p=145 ? which is included in the Expression Blend Trial http://www.microsoft.com/downloads/details.aspx?FamilyID=92E1DB7A-5D36-449B-8C6B-D25F078F3609&displaylang=en
I strongly suggest taking a look at this tool: http://www.balsamiq.com/products/mockups
The Balsamiq tool is the best for doing mockups (i assume this is what you are referring too when talking about sitemaps before you start...). With this software you can quickly generate a working wireframe of what ever you are creating. So much functionality that you can actually share it with your client to get some good sign offs prior to typing the first bit of code.
Very powerful!
And the other one...just shown at the last MIX09 is SketchFlow. Couldn't remember it to save my life. This is a WAY COOL tool for site maps and UI mock up. I was trying to find you the actual MIX presentation as it is super cool to watch. But here are some YouTube videos of that presentation from a user perspective I guess.
http://www.youtube.com/watch?v=zsAZjb7FKXA
http://www.youtube.com/watch?v=f3ErrS68YMM
Check it out!
update...found the SketchFlow video!!! http://videos.visitmix.com/MIX09/C01F
Great keynote from there too: http://videos.visitmix.com/MIX09/KEY01
I know this is an old question, but for others who find this via search, I personally love mocking my websites up with mind mapping tools. I've tried several but my favorite was MindNode for Mac and Xmind for Windows.
XMind free download:
http://www.xmind.net/
MindNode free download:
https://mindnode.com/
I've also tried MindMeister which works just as well as other mind mapping tools and is hosted for you so you can access your mind maps anywhere. However, MindMeister only allows you three maps (currently) without upgrading to a paid subscription.
Another that I've worked with is mockflow.com which is great for mocking up websites with all their features and buttons and even making clickable navigation. They have a free version, but again it's very limited without upgrading to a paid version.
I'm using Slickplan. This cloud based app allows me to have access to my projects from different machines regardless of their operating systems. All I need is one of the leading web browsers (Chrome, Firefox, Safari).
With Slickplan you can create visual sitemaps from scratch or you can use Site Crawler to import your existing website to visualize and reorganize its structure.
Of course you can always export your projects to the XML format, and use the exported file to create pages and menu systems inside some popular content management system - Slickplan provides plugins for WordPress, Joomla, concrete5 and a few more.

How to design a good about box?

There is not official standard dealing with the layout of about boxes, which display the credits of a computer software and other information.
What should a good about box contain? And... is it okay to put an easter egg in?
(source: seasip.info)
I generally prefer to make tabbed "About" boxes. The first tab usually displays information about the application (name, version, copyright, etc.). The other tab is usually a log of changes with the most recent changes at the top.
Legal will want their copyright and stuff, marketing will want their branding (even though the user has already bought the product), the dev team will want their names up there in liquid crystal, but what do users need?
App name and version number. Users may need this to troubleshoot problems, perhaps while in contact with tech support or when using a knowledge base. Use a version number system such that this is all the user needs to specify their build. Version number is also needed for the users to know if they can upgrade.
A brief statement of what the app does (e.g., “Photograph and picture organizer.”). Users often end up with software for which they can’t guess the purpose. “About” is a logical place to tell the user what the app is about.
Put the above in conspicuous text at the top of About. Have a single OK button. Everything else that may be required by others in your company really isn’t of any interest to the user and can all be in “fine print.”
You could also include the web site or email for tech support if you can rely on that being stable for years, but usually users have this before going to the About box.
Easter eggs are fine if you think it’s appropriate to have a little fun in your app and your users lean towards the geeky side of things. Just make sure it isn’t something that will alarm a low-end user (or a future high-end developer; see: http://blogs.msdn.com/jensenh/archive/2005/10/20/483041.aspx).
Looking at a few examples of About boxes:
Name of the software
Name of the publisher/author
Copyright and licensing information
Version information
A nice logo
These days, it probably wouldn't hurt to have a way to directly go to the website for the software in the About box itself.
Microsoft's Windows Vista User Experience Guidelines tend to have useful information on designing good user interfaces. I wasn't able to find information specific to About boxes, but the section for Dialog Boxes may be somewhat relevant.
A team in my workplace actually has made the coolest About box ever:
Every time you open it, it displays a different simple game, with pictures of the dev. team (memory games, tic-tac-toe, sudoku, etc)
As for the About page content, that is the best place to have the version / release information so you can offer easy support.
I am using mine as the abstract description and a link to the legal pages and a credits page. If you have a website, its URL should be there as well -- might as well make that click-able into your own web-view browser to your big "Company About" page on your web server (don't launch a real browser, or the user just left your application).
Make it enjoyable to read but be concise. Avoid any scrolling or paging -- except to a completely different set of informational screens.
Also, let it be obvious and easy to dismiss.
By-the-way, if you add an easter egg to an app that is submitted to Apple Store, you have to disclose the sequence for Apple to 'test'; they promise to keep the sequence confidential. If they discover it later, which will make it back to them through forums, etc., then they will automatically pull it from the store.
I tend to add program name, version, company copyright, contact information, license information. I also add various variables for problem resolving. Winows version, servicepack, dll version if i use critical dll's etc. A large application icon. Sometimes I add an easter egg or some keycombo that launch parts of the program meant for debug and support purposes.

COTS Workshop Registration System

Does anyone have any experience with any COTS systems for managing workshops and the associated registrations, courses, communications, etc.?
We have a home-built Perl system that is about 8 years old and is currently embedded as an iframe in a SharePoint portal site (externally facing). Needless to say, it isn't integrated into our site well, looks like crap, needs an overhaul, lacks features, etc. It would be nice to find either a product we can install or a service that provides those features.
Thanks!
You might also look into Moodle - it's a platform developed to supplement classroom teaching (or implement online learning courses) but should have all the major features you listed, and would support your needs reasonably well, as well as enhancing your event with an online component such as slide/presentation distribution only to registered users or users that took a particular class, etc)

Resources