SoftFrame  
About Us Services Portfolio Resources Contact Us
 
 
  Resources
 
 
  SoftFrame Development Method
  At SoftFrame we know how to develop top-quality software that will satisfy your customers. We design the software so that we can add new features with each new release and we pay attention to the little details so that we don't have to waste time fixing bugs. Defective software is bad business.
 
Five Activities For Success
•  Find out what customers need
•  Define the product behavior
•  Choose the right architecture
•  Obey coding standards
•  Test continuously
The first two activities ensure that you build the right product and the rest help you build the product right.

If we do a good job of finding out what the customer needs, define how the product works, and choose an appropriate software architecture, then we can run the implement-test-release development cycle at top speed.

Within the development cycle we run tests repeatedly to avoid introducing bugs when we modify existing code.

  SoftFrame Development Method
Click to replay
Find Out What Customers Need
You can save a lot of time by identifying the needs of your customers before you start writing software. Sometimes what they want is different from what they need. Brainstorm ideas and concepts to find out how their business works and build a common vocabulary.
Define the Product Behavior
Use interaction design to define what product you should build and how it should work. Develop use cases and scenarios for using the product. Model the concepts. Mock up a user interface.
Choose the Right Architecture
If you select the right software architecture for your product you won't have to rewrite everything just to add new features for each product release. Typical architectures include MVC (model-view-controller), messaging, network, peer-to-peer, pipeline, data- or event-driven. Don't ignore security, performance, or fault tolerance because these are architecture-busters.
Obey Coding Standards
You can review and repair code more efficiently if you agree beforehand on a common coding standard. Don't delay exception handling or internationalization. It takes a lot more work to add these aspects later and it can destabilize the product. Comment your code as you go; you won't have the luxury of doing it afterwards, even if you could remember what you did.
Test Continuously
Good software is implemented in layers. Each layer builds on the functionality of the layer below. If you test each layer thoroughly, you can depend on it as you add the next level of functionality. Build regression tests that you can run over and over again during the development cycle to make sure you haven't introduced a bug when you change the code. By the time development is complete, you should have tested the product thoroughly; don't expect your customers to do the job for you!
 
  Back to top
 
Home | About Us | Services | Portfolio | Resources | Contact Us