In order to achieve improved results we have
a clear Software Engineering Process that helps us, and our clients,
better understand projects requirements and provide a better than expected level of service.
The following diagram shows the steps and activities we encounter during
the lifecycle of an application.
Here are the steps explained and how we applied them in the
past:
Step 1.
Start with business plan.
Who: Client (if needed we can participate in business plans as well)
Effective Experience: Helped several start-up companies through the process.
Tools: Word document and graphics
Step 2.
Create documentation with requirements and have them prioritized.
Who: The Bans Consultant and/or Client
Effective Experience: All projects
Tools: Word documents, or for larger documentation and better requirements
capturing and management IBM Rational Requisite Pro.
Step 3.
Based on requirements create sets of use cases that are discussed
and approved by the client.
A use case represents a functional requirement, showing what happens,
but not how it is achieved by the system. It provides a snapshot model
of a set of system behaviors that meet a user goal.
Who: The Bans Consultant ( with direct connection with Client)
Effective Experience: All Projects
Tools: Word documents
Step 4.
Develop test cases based on the use case.
A test case consists of a set of inputs, execution preconditions, and
expected outcomes developed for a particular objective, such as to exercise
a particular program path or to verify compliance with a specific requirement.
Who: The Bans Consultant and/or Client
Effective Experience: All projects
Tools: Word documents
Step 5.
Develop visual models like UML diagrams, interaction diagrams, flow
diagrams, etc. based on the use cases.
Visual modeling consists in a set of graphical symbols that have a meaning
for the development team and represent a certain activity, action, storage,
flow etc.
Who: The Bans Consultant
Effective Experience: All projects
Tools: Visio Diagrams, Rational Rose (XDE), Oracle Designer, Designer,
Erwin etc.
Step 6.
Based on collected information on previous steps, use cases and visual
modeling, the development team can start coding the solution. This process
together with testing is an iterative process.
Who: The Bans Consultant and/or Client
Effective Experience: All projects
Tools: Java J2EE projects using Eclipse, IBM WSAD (WebSphere), Symantec
Café, Microsoft Interdev and .Net IDE etc.
Languages/Technologies: Enterprise JAVA, J2EE, Visual Basic, C/C++, JSP,
ASP, VB,
DB: Oracle, Sybase, MS SQL, DB2, mySQL, mSQL, Access.
App servers: Tomcat, webSphere, WebLogic, Oracle iAS, IIS
B2B/B2C experience: – WebMethods (B2B), Ariba, XML, Rosettanet,
OAG, web integration and automation, XML messaging, XML Spy, SOAP
Step 7.
Based on the test cases after development is completed, there is the
activity of testing (functional and load testing).
Who: The Bans Consultant and/or Client
Effective Experience: All projects.
Tools: Astra Load Runner, winRunner, Java JUnit, IBM Rational Test Director
etc.
Step 8.
Document defects, prioritize them, assign people to fix them, plan,
re-test.
Defects Management is a complex process and needs appropriate attention.
User acceptance testing is very important to make sure the end-user gets
full benefits from the new development or enhancement.
Who: The Bans Consultant and/or Client
Effective Experience: All projects.
Tools: IBM Rational ClearQuest, Excel, Word, Access, or other software
etc.
Step 9.
After testing has been completed the application is ready for production.
Who: The Bans Consultant and/or Client
Effective Experience: All projects.
Tools: IBM Rational ClearQuest, Excel, Word, Access, or other software
etc.
Requirement changes were managed too.
Tools: IBM Rational ClearQuest, Requisite Pro or Word, Excel for smaller
projects
Versioning software is in place for the whole team.
Tools: CVS, IBM Rational Clear Case
|