Tuesday, July 13, 2010

Software developement method

• Phase 1 - Architecture
o
Analysis
We don't write a line of code until we know your business as well as the people who keep it running every day. During our initial Analysis stage, we'll interview your key employees and stakeholders to get a thorough sense of all your company's operations—and the pain points we'll need to address in our software. The way your company works will be reflected in the solution we create.
Objectives
 Review existing business process
 Identify organization/brand position
 Identify user profiles
 Create use cases
 Research supporting technologies


o
Interface Design
Once we know exactly how our software fits into your business process, we build a functioning model that allows users to interact with it. This step is a key principle of Interface-Driven Architecture and a critical part of our process. Because we do it early in the development stage, it allows us to ensure your software is intuitive, easy to use, and really does what you need it to do—well before launch.
Objectives
 Define site/application structure
 Create site/application design
 Design user interaction
o
Usability Testing
Once we've designed your prototype, you and your stakeholders take it for a test drive. We assemble focus groups of target users to test the product, leave comments on-screen, and deliver feedback until we get the usability just right. This methodical usability testing process lets us ensure the software is both effective and easy to use—well before implementation.
Objectives
 Assemble virtual focus groups
 Test use cases
• Phase 2 - Fabrication
o
Software Engineering
You can't build a house without a blueprint. And you can't code software without a component model. This is the foundation on which your software will be built, including all best practices, design patterns, UML diagrams, and relational databases.
Objectives
 Create domain model
 Create data schema
 Create API (Application Programming Interface)
 Create user documentation/help system
o
Coding
The Interface-Driven Architecture methodology makes coding faster and easier for us—and less expensive for you. Unlike a traditional development process, ours establishes all the system's requirements before a line of code is written. And because our programmers are knowledgeable in a wide range of programming languages, we have the expertise to choose the language and database that will work best for your project.
Objectives
 Develop system component
 Perform unit testing
 Perform coverage testing
 Perform load testing
o
BETA Testing
During the coding phase, we build the code. In the beta testing phase, we try to break it. Many software developers will leave the beta testing up to the user—so that as you use the "finished" product, you find the errors and request the fixes. We prefer not to deliver the software until it's perfect—so we test in-house. Our dedicated testers work in partnership with coding specialists to find and eliminate problems before the software is launched.
Objectives
 Test all use cases
 Conduct acceptance testing