Subscribe by Email


Showing posts with label Plan. Show all posts
Showing posts with label Plan. Show all posts

Monday, February 25, 2013

What is meant by Software Process Improvement?


About Software Process Improvement

- SPI or Software Process Improvement is a program that has been developed to provide guidance for the integrated long – range plan for the initiation and management of the SPI program. 
- SPI is based up on a model called the IDEAL model which has the following 5 major stages:
  1. Initiating
  2. Diagnosing
  3. Establishing
  4. Acting
  5. Leveraging
- These 5 major steps form a continuous loop. 
- However, the time taken for the completion of one cycle varies from one organization to other. 
- Depending on the available resources an organization must be able to decide whether or not it would be able to commit to software process improvement. 
SPI requires many activities to be carried out in parallel to each other. 
- Some part of the organization may take care of the activities in one phase while others take care of the other phase activities.
- Practically, the boundaries of the various stages in a software process improvement are not clearly defined. 
- The infrastructure also plays a great role in the success of the SPI. 
- The value added to SPI by infrastructure just cannot be underestimated. 
- It provides a great help in understanding its roles.

About Initiating Phase

- As the name indicates this is the starting point of the process. 
- This stage involves setting up of the improvement infrastructure. 
- Then the infrastructure’s roles and responsibilities are defined. 
- The resources are checked for availability and assigned.
- Finally, an SPI plan that will guide this initiating phase as well as the other higher stages. 
- It is during this stage that the goals of the software process improvement are defined and established based up on the organization’s business needs. 
- During the establishing phase these goals are further refined and specified.
Two components are typically established namely:
Ø  A software engineering process group or SEPG
Ø  A management steering group or MSG 

About Diagnosing Phase

- In this stage, the organization as per the SPI plan starts. 
- This stage serves as foundation for the stages that will follow. 
- The plan is initiated keeping in view the vision of the organization along with its business strategy, past lessons, current business issues and long term goals. 
- Appraisal activities are carried out so that a baseline of the current state of the organization. 
- The results of these activities are reconciled with the existing efforts so as to be included in the main plan.

About Establishing Phase

 
- In this stage the issues to be addressed by the improvement activities are assigned priorities.
- Also, the strategies for obtaining a solution are also pursued. 
- The draft of the plan is completed as per the organization’s vision, plan, goals and issues. 
- From general goals, measurable goals are developed and put in to the final SPI plan. 
- Metrics essential to the process are also defined.

About Acting Phase

 
- Solutions addressing the improvement issues discovered in the previous stages are created and deployed in and out of the organization. 
- Other plans are developed for the evaluation of the improved processes.

About Leveraging Phase

 
- This stage is led by the objective of making the next pass through the process more effective. 
- By this time the organization has developed solutions and metrics concerning performance and achievement of the goals. 
- All this data obtained is stored in a process database that will later serve as source information for the next pass. 
- Also, this information would be used for the revaluation of the strategies and methods involved in the SPI program.
- Software process improvement activities work with two components namely, the tactical component and the strategic component. 
- The former is driven by the latter that is based up on the needs of the organization. 


Thursday, February 14, 2013

Explain Telerik TeamPulse?


About Telerik TeamPulse

- Telerik TeamPulse has been developed by Telerik as an agile project management tool in the year of 2010. 
- One of the characteristic features of the TeamPulse is that it can be integrated as well as hosted as local Microsoft team foundation server 2008, 10 and 12 services. 
- However, it cannot be integrated with the Microsoft visual studio.
- This Telerik product is available under commercial license. 
- The features of TeamPulse have been mentioned below:
  1. Bug tracking
  2. Integration with the telerik’s web UI test studio
  3. Time tracking
  4. Backlog management
  5. E – mail notifications
  6. Cross – project dashboard known as xView and developed with html5.
  7. Task board
  8. Storyboard with WP limits
  9. TeamPulse can be integrated with Microsoft TFS (team foundation server) 2008, 2010 and 2012.
  10. Requirements manager
  11. Best practices analyzer
- The extension provided with the Telerik TeamPulse is the TeamPulse ideas and feedback portal which is based on html and is compatible with html5.
- Since TeamPulse is commercial software, it is not available for a hosted solution but it is to be used only on premise. 
- When you add TeamPulse to TFS the planning, tracking and collaboration improves automatically.
- With the real time project intelligence of Telerik TeamPulse you can improve decision making power. 
- It provides you with up-to-date views of the status of the project. 
- By using TeamPulse, you bridge the boundaries between the team members and their geographical location i.e., the communication is improved. 
- This tool has been exclusively designed for scrum and kanban teams i.e., any of these either kanban or scrum or scrumban can be used.
- It has been designed to reduce the delivery time, eliminate the waste and improve the work flow. 
- It also provides you a convenient way for collecting and managing the customer feedback. 
- It lets you create products that your customer actually needs. 
- TeamPulse lets you manage project well with the following:
  1. Work burn down
  2. Velocity
  3. Cycle time
  4. Iteration delta
  5. Agile best practices and a number of other reports. 

- Telerik TeamPulse favors most of the agile projects.
- It lets one plan, manage and monitor the results thus improving the overall process. 
TeamPulse has got a rich interface with in–context guidance making the integration with TFS faster. 
- Its other features include:
  1. Automatic notifications
  2. Bug tracking
  3. Gantt charts
  4. Interactive gantt charts
  5. Privacy settings
  6. Project templates
  7. Reporting
  8. Scheduling
  9. Task feedback
  10. Workload
  11. Dashboard
  12. Email integration
  13. Issue tracking
  14. Messaging or IM
  15. RSS feed
  16. Collaborative
  17. Issue tracking system
  18. Risk management capabilities
  19. Web application
- The tool has not got any remote capability features. It comes with the following resource management features:
  1. Time sheets
  2. Compare project
  3. Management software
- Teampulse has been developed with the view that all the clients, scenario and environment differ from each other.
- Large enterprises require a tool that is capable of scaling their workload. 
- Teampulse fits every scenario even though if you require some time to master it. 
- Firstly, you need to set up the project info, template, iterations. 
- Then you need to create your team and lastly take a view of the summary of your project. - It is recommended by the system to start with the stories.
- Being an enterprise tool, it has got many features which might make you feel like it might be quite complex to use. 
- But it is quite user friendly. 




Friday, December 14, 2012

Transition Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
The above mentioned phases are responsible for the representation of the rational unified process at the highest level in the way which is similar to waterfall model representation but the difference is that the key for the rational unified process lies in the development iterations which form an integral part of all the phases of the rational unified process. 

Also, each of the four phases of the rational unified process are characterized by two things namely the objective and the milestone. The objective drives the whole phase from the beginning to the end and the milestone concludes the end of it. 

The phase is said to be complete with successful result if and only if it passes the milestone since this only marks the conclusion of the phase. All of the phases of the rational unified process are visualized in the form of a chart called the RUP hump chart which is drawn over the course of the whole process. 

In this article we shall discuss exclusively about the fourth phase of the rational unified process i.e., the transition phase. 

Objective of Transition Phase

- The primary objective with which the transition phase is driven is “to transit the software system or application” from the phase of development in to the actual phase of production. 
- This also extends the availability of the software system or application to the end user in such a form that it is understandable by the end user. 
- This phase involves the below mentioned activities:
  1. Training the end users
  2. Training the maintainers as well.
  3. Carrying out beta testing on the software system or application for validating it against the expectations of the end users.
  4. Checking the software product against the quality level that was set in the inception phase.
- When all the objectives are said to be accomplished, the software system or application is said to reach the ‘product release milestone’ and the development cycle is said to be concluded.
- This fourth phase of the rational unified process does the fine tuning of the software product.
- It is based on the feedback from the user and the software product is made ready for the release. 
- The transition phase is basically focused on the availability of the software system or application to the end users.
- The transition phase often involves the spanning of the several iterations. 
The software product is tested in order to prepare it for the release and also minor adjustments are made as per the feedback provided by the end users. 
When this point in the software development life cycle is reached, it is required that the feedback from the end user should be majorly focused up on the following issues:
  1. Fine tuning of the software system or the application.
  2. Configuration of the product
  3. Installation issues
  4. Usability issues
- By this time, almost all the major issues of the product structure should have been worked out in the earlier phases of the software development life cycle. 
The product release milestone can be defined as a point where it is decided that all the objectives of the project have been met and whether or not another development cycle is required. 
- The basic and majority of the evaluation as well as the refinement of the software system or application is done based up on the feedback from the user.
- This can be considered to be a kind of fine tuning exercise for the software system since the system has already met the requirements of the users as it is driven by the use cases. 
- At the end, a final evaluation is done and accordingly the project is released to the public or is considered for another development cycle. 


Thursday, December 13, 2012

Construction Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
For representing the process at a high level, it is necessary that all of the above mentioned four phases should work together just as it is done for the water fall styled model. But here the key difference is that the primary key to the process is nothing but the development iterations that are involved in each of the development phase. Each of the above mentioned phases is driven by the objective and ended by milestone. The RUP hump chart gives the visualization for all the above 4 phases. 

Here we shall talk about the third phase i.e., the construction phase. 

About Construction Phase of Rational Unified Process

- The construction phase is driven by the primary objective for building the software system or application. 
- The primary focus of the construction phase is taken up by the components development as well as the development of the other features of the software system or application. 
- A bulk of coding is carried out in this phase only. 
- For developing a large project, it is required that several construction iterations are carried out in order to make an effort for dividing the use cases in to the segments that are manageable and that can be used in the production of the demonstrable prototypes. 
- The software version that is released in this phase is its first external release.
- The elaboration phase is concluded with the initial operational capability milestone. 
- The major thing with which the construction phase is concerned is moving the executable architecture that was created in the elaboration phase to the operational system. 
- Therefore, a beta version of the software system or application is ready to be evaluated by the project team. 
- In the elaboration phase the software product resides on the architectural baseline.
- Here, it is moved to a system that is so complete enough that it can make transition to the end users’ community. 
- The architectural baseline is grown enough to become the completed operational system via the refining of the designing in to the code. 
- This phase acquires the largest part of the whole rational unified process. 
- The remaining part of the software system or application is built on the foundation that was laid earlier in the elaboration phase. 
- Short and time boxed iterations help towards the implementation of the features of the system where an executable release of the system or application is released at the end of each iteration. 
- In this phase, writing the full test use cases becomes customary where each one marks the beginning of a new iteration. 
- The elaboration phase makes use of certain UML (unified modelling language) diagrams which are mentioned below:
  1. Activity
  2. Sequence
  3. Collaboration
  4. State i.e., transition and
  5.  Interaction overview diagrams
- The purpose of the rational unified process is to provide the industry tested practices for the development, implementation and delivery of the software system or application. 
- It also provides a comprehensive frame work for the effective project management. 
- This process is actually one of the many other processes which are contained within the rational process library of the IBM RMC (rational method composer). - This makes it easy to make selection and deploy the only components that you need for your process. 
- The rational unified process is adopted for 1000s of the projects nowadays worldwide. 
- It lessens the burden of inventing a new thing again and again rather it focuses on re-usability. 


Wednesday, December 12, 2012

Elaboration Phase - One of the phase of Rational Unified Process


The life cycle for a project under the context of the rational unified process is known to consist of the following four phases:
1. Inception phase
2. Elaboration phase
3. Construction phase
4. Transition phase

Here we shall discuss about the second phase of the unified process i.e., the elaboration phase. In Rational Unified Process, the four phases represent the process at a high level although the iterations that are carried out in every phase of development are the key to the process. 

Each phase here is provided with an objective and a milestone. It is necessary to have a milestone for each so that it could be decided that when and where a particular phase is ending and the next one is starting. All the above phases as well as the process disciplines are visualized in to what is called an “RUP hump chart”. 

About Elaboration Phase in Rational Unified Process

- The primary objective of the elaboration phase is defined as the mitigation of the key risk items whose identification is done by the analyzation of the whole phase from the beginning till the end. 
- It is here in the elaboration phase where the project starts taking the shape. - In elaboration the following 2 basic things take place:
1. The analyzation of the problem domain is done.
2. Basic form is given to architecture. 

- The following are the outcomes of the elaboration phase:
1. A use case is obtained in which both the actors and use cases have been identified. This use – model consists of most of the developed use – case descriptions. It is required that this use – case model should be at least 80 percent complete. 
2. A description concerning the architecture of the software system in a development process. 
3. An architecture that is executable and realizes the use cases which have an architectural significance. 
4. A revised risk list.
5. A revised business case.
6. A plan for the overall development of the project. 
7. Prototypes which give a demonstration on the mitigation of the identification of the technical risks. 
8. An optional preliminary user manual.

- There is a milestone criteria called the life cycle architecture milestone which involves answering the following questions:
1. Stability of the architecture?
2. Stability of the vision of the product?
3. Have the major risk elements been addressed and resolved and has been indicated by the executable demonstration?
4. Has the sufficient detailing has been done for the construction phase plan and is it accurate?
5. Have all the stakeholders agreed for achieving the current vision using the current plan under the current architectural context?
6. Is the expenditure of planned resource vs. actual resource acceptable?

- It is important that the project should pass this milestone and if it doesn’t there are 2 possibilities:
1. It can either be redesigned or
2. It can be cancelled.

- However, when the project leaves this phase, the project is transitioned in to an operation that involves high – risk i.e., to say here the changes are quite detrimental as well difficult to be made. 
- The system architecture serves as the key domain analysis for the elaboration phase. 
- The basic thing here is addressing of the major technical risks threatening the project. 
- Another thing is to have a bare system which provides answers to all of the major technical questions. 
- Once all the questions have been answered by the end, the development team will know whether a working system can be successfully built or not. 



Tuesday, December 11, 2012

Inception Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
This article is dedicated entirely to the first phase of the unified process i.e., the inception phase. The major development takes place in the iterations of development which are carried out within each phase. All of the above four phases have their unique key objective as well as milestones.

The accomplishment of the objective is denoted by the milestone. An RUP hump chart is used for the visualization of all the four phases of the rational unified disciplines and phases over the time. 

Objective of Inception Phase

- The primary objective of the inception phase provide adequate scope to the software system or application as a basis on which the validation of the budgets and initial costing could be done.
- The inception phase involves the establishment of a business case which is inclusive of the following:
  1. Business context
  2. Success factors such as the market recognition, expected revenue and so on.
  3. Financial forecast
- In order to complement the business case, the following things are generated:
  1. A basic use case model
  2. Project plan
  3. Initial risk assessment
  4. Project description which in turn includes the following:
    a)   Key features
    b)   Constraints and
    c)   The core project requirements

- Once the generation of the above mentioned sources is complete, the verification of the project begins against the following criteria:
  1. Stake holder concurrence on the following:
  a)   Cost estimates
  b)   Schedule estimates and
  c)   Scope definition
  1. Understanding of the requirements as per the evidence obtained by the fidelity of the use cases.
  2. Credibility of the following:
  a)   Cost and schedule estimates
  b)   Priorities
  c)   Development process and
  d)   Risks involved
  1. The depth and breadth that was developed for any architectural prototype.
  2. Establishment of a base line using which the planned expenditures and actual expenditures can be compared.
- If for one or the other reason the project is unable to pass the milestone (commonly termed as the life cycle objective mile stone) then there are only two possibilities after redesigning the program (for meeting the criteria in a better way) as mentioned below:
  1. It can be cancelled or
  2. It can be repeated
- This phase is involved with launching the project. 
- A proper business case can be developed for the project. 
- It is by the end of the inception that the development team comes to whether to carry on with the project or not. 
- In inception phase, one can see a core idea being developed in to a vision for a product. 
- In this phase may reviews, discussions, etc. are carried out regarding the business case involved in the project. 
- The scope of the project is delimited in the inception phase and also the product feasibility is established. 
- This is perhaps the smallest of all the phases of a project and also according to its ideal nature it should be short. 
- If the duration of the inception phase is too long it indicates that there has been an excessive up – front specification (even though this goes against the spirit of the rational unified process.).


Wednesday, November 14, 2012

Explore Test Director Window, Test Director Modules and elements?


The test director is a web based application and it provides well support to communication of a very high level. Further, it regulates collaboration between the testing teams which are widely distributed. Overall, it helps in driving a global application testing in a more effective and efficient manner. 
Being the global test management tool, it is also counted in the list of the industries’ best test management solution.

Features of Test Director

Test director comes with a whole lot of features to make software testing a better experience:
  1. Web based site administrator
  2. Domain management
  3. Collaboration module
  4. Advanced reports add – in
  5. Automatic trace-ability notification
  6. Hierarchical test sets
  7. Work flow for all modules of the test director
  8. User industry standard repositories
  9. Link test plan to requirements
  10. Integrates with MS office
  11. Manages automated and manual tests
  12. Accelerates testing cycles
  13. Supports test runs across boundaries
  14. Integrates with third party and internal tools
  15. Structured information sharing
  16. Easy defect reporting
  17. Customization reports
Here we shall about the following:
1. Test director window, 
2. Elements and 
3. Test director modules.

Test director helps in the following tasks:
  1. Organizing and managing all the phases of testing.
  2. Specifying the test requirements
  3. Planning tests
  4. Executing tests
  5. Tracking the defects and so on.
- The test director launched from one’s web browser by requesting the url of the test director. 
- When you enter this URL and press enter the test director window pops up.
- If you are running the test director, it will take some time to get downloaded in your system. 
- Whenever the test director is launched a version check is automatically carried out and the latest version is downloaded. 
- Once done with this, you will get a test director log-in window. 
- Now you select a domain among the list of domains provided by the test director or you can select default. 
- In the project list go for testdirector _ demo. 
- You need to log-in as a QA tester. 

Test Director Modules

- In the test director window click on the requirements tab. 
- This requirements tab represents the requirements module which enables you to define the test specifications which includes the following things:
  1. Defining purpose of testing
  2. Defining requirement topics
  3. Analyzation of the requirements
- Similarly, the test plan tab represents the test plan module which powers you to create a test plan based on the requirements specified above. This module facilitates the following tasks:
  1. Defining goals and strategies
  2. Dividing the plan into categories
  3. Development of  the tests
  4. Analyzation of the plan.
- With the test lab module the tests can be run on the software system or application and the result can be analyzed. The defects module you can carry out the following tasks:
  1. Add the defects
  2. Determination of the repair properties
  3. Repair of the open defects
  4. Analyzation of the data

Elements of Test Director

Now coming to the elements of the test director, there are some elements that are common to all the test director modules and these are:
  1. Test director tool bar
  2. Menu bar
  3. Module tool bar
  4. Tools button
  5. Help button
  6. Log out button
All of these elements can be found in the top level of the test director window. Module tool bar consists of the buttons for the commands that are frequently employed in the current module. 


Saturday, August 4, 2012

What factors are needed to prioritize themes?

Need of users is considered before planning for a project. To achieve the best combination of product features, schedule, and cost requires deliberate consideration of the cost and value of the user stories and themes.
We need to prioritize and this responsibility is shared among the whole team. Individual user stories or features are aggregated into themes. Stories and themes are then prioritized relative to one another for the purpose of creating a release plan.

There are four primary factors to be considered when prioritizing:
1. The financial value of having the features.
2. The cost of developing new features.
3. The amount and significance of learning and new knowledge created by developing the features.
4. The amount of risk removed by developing features.

1. Determine the Value of Theme
- Estimate the financial impact over a period of time.
- It can be difficult to estimate the financial return on theme.
- It usually involves estimating number of new sales, average value of sales and so on.

2. Determine the Cost of Developing new Features
- Estimating cost of a feature is a huge determinant in overall priority of a feature.
- The best way to reduce the cost of change is to implement a  feature as late as possible.
- The best time to add feature is when there is no more time to change.
- Themes seem worthwhile when viewed in terms of time they will take.
- It is important to keep in mind that time costs money.
- The best way to do this while prioritizing is to do a rough conversion of story points or ideal days into money.

3. Learning New Knowledge
The knowledge that a team develops can be classified in two areas:
Product Knowledge
- It is the knowledge about what will be developed.
- It includes knowledge about features that are included and the features that are not included.
- Better knowledge of product will help the team to make better decisions.

Project Knowledge
- It is the knowledge about how product will be created.
- It includes knowledge about technologies, skills of developers, functioning of team together etc.
- The other side of acquiring knowledge is reducing uncertainty.

4. Risk
- A risk is anything that has not happened yet but might happen. It would threaten or limit the success of the project.
- Types of risks involved in a project are : schedule risk, cost risk and functionality risk.
- Struggle exists between high risk and high-value features of a project.
- Each approach has its drawbacks and the only solution is to give neither risk nor value total supremacy when prioritizing.

All these factors are combined by thinking first of the value and cost of the theme. Doing so will sort the themes into an initial order. Themes can then be moved forward or back in this order based on the other factors.


Sunday, July 29, 2012

How does agile teams work?

Agile teams work together as a team but include roles filled by specific individuals.
- First is the product owner, who is responsible for the product vision and for prioritizing features the team will work on.
- Next is the customer, who is the person paying for the project or purchasing the software once it is available.
- Users, developers, and managers are other roles on an agile project.


How does agile team work?


- Agile teams work in short, time-boxed iterations that deliver a working product by the end of each iteration.
- The features developed in these iterations are selected based on the priority to the business.
- This ensures that the most important features are developed first.
- User stories are a common way for agile teams to express user needs.
- Agile teams understand that a plan can rapidly become out of date. Because of this, they adapt their plans as appropriate.


What kind of planning are used for agile teams?


Agile teams use three levels of planning:
- Release planning : The release plan looks ahead for the duration of the release - typically, three to six months.
- Iteration planning : The iteration plan looks ahead only the duration of one iteration - typically, two to four weeks.
- Daily planning : A daily plan is the result of team member commitments made to each other in a daily stand-up meeting.

During release planning, the whole team identifies a way of meeting the conditions of satisfaction for the release, which includes scope, schedule, and resources. To achieve this, the product owner may need to relax one or more of her conditions of satisfaction.
A similar process occurs during iteration planning, when the conditions of satisfaction are the new features that will be implemented and the high level test cases that demonstrate the features were implemented correctly.


Facebook activity