Welcome to Magnet
HOME  .  CORP INFO  .  SERVICES  .  PRODUCTS  .  CLIENTS  .  CAREERS
 
vibrant imagination. agile execution.
services
 MAD'M
 MOBILE SOLUTIONS
 Rich Internet Apps
 WEB SOLUTIONS
 
 GNU/ LINUX
 
 Technologies
 
 quality assurance
 
 digital certificate
   
 
   
 
   
magnet's agile development methodology
 
elaboration
See also core valuescore practices

Elaboration phase aims at better understanding of the project and preparing the ground work for the Construction phase. The entire project is also graphically represented as a wireframe. Main user stories are written and prototyped in the Elaboration phase. The interface design is carried out and risks are identified.

Main User Stories

User Stories are feature descriptions. The user stories are written either like a small story or in bullet points as per the preference and requirement of the project. Each user story will be accompanied by acceptance tests, business value and time estimate as it progresses in the process. Writing the features as user stories makes it easy to understand and allows breaking them down into manageable tasks. User stories also make it easier to validate the implementation of the project as it progresses.

At this stage in the project, we should write the main user stories. Features or requirements that are at the core of the project. Things that are the riskiest or carry the most business value. We need not worry about going to micro levels and writing all user stories.

Having the main user stories written up front also helps in estimating the risks and showing the client the most important features of the project early on.

Wireframe

Wireframe is a flowchart like graphical representation of the project. It shows the various pages in the website and how they link to each other. The wireframe should contain the page title, a one or two line description of what user stories will be happening on that page and a list of items needed to carry out the execution of this page. The wireframe can be made using a tool (like Adalon) or can be done using any HTML editor.

The benefits of making a wireframe include high level flow understanding, ability to tag user stories to pages, identifying validation and any other flow specific information etc. The wireframe also serves as a basis to create the prototype in the feature.

Risk Analysis

Risk analysis should be done as early as possible in the project. The risks in a project can also evolve as the project progresses. MADM recommends maintaining a Top 10 risk chart throughout the project. This risk chart will be updated every week so that the high risk items can be mitigated at the earliest. The MADM process itself mitigates some of the most common risks of software projects.

Top 10 risks in software projects:

 

  1. Personnel shortfalls
  2. Unrealistic schedules & budgets
  3. Developing the wrong functions & properties
  4. Developing the wrong user interface
  5. Gold-plating
  6. Continuing stream of requirements changes
  7. Shortfalls in externally furnished components
  8. Shortfalls in externally performed tasks
  9. Real-time performance shortfalls
  10. Straining computer-science capabilities

 

Acceptance Tests for Main User Stories

Acceptance Tests are written by the customer and mention the conditions for satisfactory acceptance of a user story. Each user story must have clear acceptance tests. The acceptance tests will be carried out to confirm the completion of user story implementation. Acceptance tests are a pre-condition before a story can be considered for a release plan.

In true spirit of MADM, customer is given the right to change the Acceptance tests as the project progresses. This could affect the time and cost estimates and the release plan may need adjustments accordingly.

Modeling - high level design & architecture

MADM strongly discourages a big design upfront. A big design upfront makes it difficult to accept changes in the requirements. MADM models only a high level solution architecture at the beginning of the project. The actual solution design will evolve as the project progresses. The code itself is the design for most of the projects.

The design can be done using CRC (Class Responsibilities and Collaboration) cards; UML (Unified Modeling Language); ER (Entity Relationship) diagrams or any other agreed means. At the Elaboration stage, high level database design will also be created. Again, the database design can also go through revisions as the project progresses.

Prototype critical elements

Prototyping involves making an actual HTML mock up of the project. Prototype is like a live site but no actual programming or no database interaction. Hence it gives clear idea of how the user story will function when the programming is carried out to the customer. In the elaboration stage, we will prototype only the most important user stories. The rest of the user stories will be prototyped in iterations.

Graphic Design

Graphic design is a crucial element of the project and we deliver the graphical design of the project to the customer by the end of the elaboration phase. The design can go through iterations, and will adhere to usability guidelines and design standards. After the design is approved, the design team will deliver final HTML and images to the development team.

Inception Construction
 
© 2007, Magnet Technologies Pvt. Ltd.