All Posts (2)

Sort by

These past few weeks of soliciting donations for TM/C's Mapping Solutions event have been an education of sorts. At times, it's seemed that my attempts to spread the word, in person and through mail, add up to nothing more than exercises in preparation for future failures. These weeks have illustrated why perseverance is a necessary trait for anyone who wants to get into the nonprofit business.

But along with perserverance, this experience has also taught me a fundamental lesson about the essence of the conventional nonprofit funding model: it's fundamentally inconsistent. And when funding is inconsistent, so is programming. For this reason, many nonprofit organizations, TM/C among them, are beginning to realize the need for an entirely different model of nonprofit funding. One that not only emphasizes empathy, but equity as well. Such a model would require nonprofits to perceive their potential funders as investors in a cause that translates into dollars and cents. After all, social capital is still capital.

As Tom Raiser, author of ROI for Nonprofits: The New Key to Sustainability, writes, Nonprofits "are very good at filling the need, but are often less adept at: 1) Demonstrating the value of their services [and] 2) Communicating the value in a way that is understood at, fundamental economic level, that makes sense to the private sector. If this demonstration and communication gap can be bridged, the private sector can then be cultivated to become investors in the [nonprofit] that provides something of value to them."

So, in keeping with Raiser's advice, last week I decided to think about my approach to soliciting funds not simply as a volunteer, or 'crusader', but as a salesman or marketing representative selling the service of tutoring and mentoring in a region of metro Chicago that is cripplingly underserved.

Read more…

Testing an important part in SDLC

Software testing is an investigation of the code and overall product functionalities of the system done to make sure that a high quality of product is developed. There are various approaches to software development of which the most common approach is normal waterfall model or the SDLC approach.

The normal Software SDLC process includes the following process -

  1. Requirement Gathering/Planning phase - In this phase the goal and scope of the software is determined. Then as per the goals and aims of the software, requirement is gathered and well documented. It is important that testers are included in this phase itself so that critical points of the application are well understood in the begining itself.
  2. Design - In this phase the function specification created in the requirement gathering phase is converted into design of the code
  3. Implemetation - In this phase code is written using documents of requirement gathering and design phase
  4. Intergration and Testing - Once all the modules of the application are coded, they are integrated and then test is performed on the code to make sure that it is working properly. This is when issues are reported by the testers and regression testing is done.
  5. Release - This phase is final release phase of software where the final code is released after testing and debugging.
  6. Maintenance - In this phase code maintenance is done depending on enhancements.

Testing is a very critical part of the sofware development. Be it as small project like development of websites or integration of big systems involving complex datastructures and databases, improper testing or no testing can break the product.

Most of us experience use technology on a day to day basis. We experience lack of proper testing when we see bugs in our daily use of technology when we see messages like - "Link not found", "Improper input" etc when we use websites. These are all results of improper code and lack of testing. Whenever a code is developed for a non-commercial purpose it tends to become raw and untested which results in a software failure. A detailed approach and well defined SDLC cycle is very important when developing a product. There are various ways testing can be performed. Testing can be manual as well as automated.

Although crucial to software quality and widely deployed by programmers and testers, software testing still remains an art, and due to limited understanding of the principles of software. The difficulty in software testing comes from the complexity of software: we can not completely test a program with moderate complexity. Testing is more than debugging a code. The purpose of testing can be quality assurance, verification and validation, or reliability estimation or just a user perspective of usage. Be whatever the purpose of testing is, it should be taken into consideration very seriously.

Read more…

Blog Topics by Tags

Monthly Archives