Cool Gears for Software Development Part 1

There was a time when development community was not very strong , neither companies commercially valued the importance of the tolls or plugins for Development. Now that is no longer is the case. Development of a product without tools or plugins, I dint think no one now does that. Using right set of tools or a plugin that ease the development effort or increase the product experience is equally appreciable.

At times there was only tools or plugins for the desktop applications, now look around, we are not limited to desktop anymore, we are blessed and charmed with hundreds of tools/plugins/utility for web/devices even focused to technology. I personally admire of such tools that make my development life easier. Through this not so short engineering experience life I have experienced lots of cool tools. Now I think its a shame If I do not share those experiences with my fellows. So from now one I will occasionally will try to come up with an experience sharing post with few tools that I have used or using.

Lets start with the fairly newest one, recently I was working on a product that requires a MS word to pdf conversion. System hosts a on premiss small utility service that receives  MS word formatted document from various sources and put watermark on those docs and upload those to server for review and so on and on. Fairly simple  idea, but when comes to conversion to PDF that no longer simple. Based upon document formatting and the content converting pdf might turn into a tricky task. And lets not forget the performance, we were expecting a huge conversion hourly. We dint want put too much effort on this one as its a tiny part of the big picture, so its time to go for a tool/utility that will do the job for us.

Though there is many open-source solution available but we decided to give it a try Spire pdf converter, why after going through the tutorials It seems fairly easy to integrate, but concerns was two,

  1. how well it can handle loads
  2. how good is the quality of the converted pdf’s

But I find it very helpful, the converted pdf’s was good quality, with embedded media (images) or plain text file with formatting. Converted pdf can keep the formatting intact from source document. Interesting tip about the tool is there is desktop application available to convert to pdf from diff sources along with .net library to build your self. For same purpose application you can try it also.  That library you can download from here and for the same codes you can see here. I see there is a free to test version is also available, so enjoy 🙂

Despite of many good features I believe there is still some feature enhancement can be introduced in the list of existing feature. Like I want to invoke a service may be REST to convert my document , such feature might come handy in cloud applications I believe.

 

Advertisements

Gears that will save your time to build a great web application

Template Start-up Kit

http://sidewaffle.com/

Automapper

https://github.com/AutoMapper/AutoMapper

POP3/IMAP Library

http://quia.cf/orange/pooxy4/nph-poxy.pl/es/20/https/github.com/bertjohnson/OpaqueMail

AddToCalendar – free widget button for event page

http://addtocalendar.com/

Free online tool to unminify

http://unminify.com/

Free online tool for development

http://quirktools.com/

Free online tool for RWD Test

http://responsivetest.net/

Analyze IIS logs using LogParser

https://gallery.technet.microsoft.com/Log-Parser-Studio-cd458765

Caliber RM an Excellent tool for Requirements Management

Preface:
Software development organizations must improve business impact and responsiveness. They also need to ensure that projects meet end-user demands. To achieve this organization needs a requirements management solution that can track progress, communicate and manage changes to requirements, and focus resources throughout the application lifecycle. On my searching of such a tool I came up with Borland’s Software Requirements Management tool CaliberRM. According to feature list this solution does all that, ensuring a common understanding among all stakeholders of the business, user, functional and nonfunctional requirements related to a project.
Now let’s take sneak review on this product.
CaliberRM:
CaliberRM is a requirements management system that enables project teams to deliver higher quality applications that meet end-user specifications. It helps applications to meet end-user needs by allowing all project stakeholders — marketing teams, analysts, developers, testers, and managers — to collaborate and communicate the voice of the customer throughout the software delivery lifecycle.
According to The Borland Software Requirements Definition & Management solution is an iterative and collaborative approach for defining and managing software requirements across the five critical requirements process areas—elicitation, analysis, specification, validation and management. Figure-1 elaborate this process


Figure-1
It enables teams to fully define, manage and communicate changing requirements. Changes to requirement data are recorded and stored in the database, providing reliable and up-to-date information for effective requirements based application development and testing.
CaliberRM is comprised of the components listed below.

 

Component Description
CaliberRM Requirements Management System
CaliberRM Administrator Controls administrative functions for projects
Estimate Professional Generates estimation requirements to plan and deliver projects on time and within budget.
Document Factory Generates customized documents from user-defined templates
Requirement Viewer Provides a detailed view of a requirement without launching the full product
StarTeam Toolbar Allows you to launch components from the system tray
Import Utility Imports a project from a file previously created by the Export utility
Export Utility Exports a project into an ASCII file, which can then be imported to another application
Diagnostic Tool Provides current status information on server connectivity to aid in troubleshooting, as well as an automated system for reporting problems to Support
 Help Help files for the application

 

Additionally, there are several integrated third-party products that, as a whole, provide a complete solution to application life-cycle management, from developing requirements to testing the application.
Key CaliberRM Features:
Some key features are:

  • Centralized Repository — CaliberRM provides a central, secure repository for project requirements.
  • Adaptable to fit you’re processed— CaliberRM is designed to bring speed and agility to the software requirements process.
  • Requirements traceability across the lifecycle — CaliberRM has an open architecture that permits software requirements to be linked to a variety of artifacts across the lifecycle.
  • Impact analysis throughout the application lifecycle — multiple methods of traceability visualization help users immediately understand the scope of analysis required to gauge the effect of a requirements change.
  • Online Glossaries to standardize and define terminology — Glossaries are useful to define industry terms, project references, corporate language, etc., to help ensure that team members look at requirements the same way.

CaliberRM shipped with a new tool Team define where Interactive simulations and visual scenarios can be captured. The simulations, scenarios, associated resources, textual requirements and feedback can all be reviewed directly through a web browser.


Figure-2
Figure-2 shows a snapshot of one of the tools Estimate Professional. We can estimate software technical/no technical requirement at beginning of the project. From an initial estimate of total project size or project effort, estimates of project schedule (duration), staff size and cost can be made using various estimating models. CaliberRM ESTIMATE Professional uses two such models: Larry Putnam’s Methodology and the latest update of Barry Boehm’s Constructive Cost Model.
So finally we can summarize our findings. It’s no secret that poorly understood user requirements and uncontrolled scope lead to many software project failures. A commercial requirements management tool that stores requirements and related information in a multi-user database provides a more robust solution .Caliber-RM is best suited for users who wish to take a database-centric, rather than a document-centric, approach to requirements management.