Pages

Search This Blog

Friday, August 26, 2011

Agile development is a term that was derived from the Agile Manifesto, which
was written in 2001 by a group that included the creators of Scrum, Extreme
Programming (XP), Dynamic Systems Development Method (DSDM), and Crystal; a
representative of feature-driven development; and several other thought leaders
in the software industry. The Agile Manifesto established a common set of
overarching values and principles for all of the individual agile methodologies
at the time. It details four core values for enabling high-performing teams.

Individuals and their interactions

Delivering working software

Customer collaboration

Responding to change

These core values are supported by 12 principles, which you can find at the
following Web site: Manifesto for Agile
Software Development.
These values are not just something the creators of the Agile Manifesto
intended to give lip service to and then forget. They are working values. Each
individual agile methodology approaches these values in a slightly different
way, but all of these methodologies have specific processes and practices that
foster one or more of these values.

Individuals and interactions are
essential to high-performing teams. Studies of "communication saturation" during
one project showed that, when no communication problems exist, teams can perform
50 times better than the industry average. To facilitate communication, agile
methods rely on frequent inspect-and-adapt cycles. These cycles can range from
every few minutes with pair programming, to every few hours with continuous
integration, to every day with a daily standup meeting, to every iteration with
a review and retrospective.
Just increasing the frequency of
feedback and communication, however, is not enough to eliminate communication
problems. These inspect-and-adapt cycles work well only when team members
exhibit several key behaviors:

respect for the worth of every person

truth in every communication

transparency of all data, actions, and decisions

trust that each person will support the team

commitment to the team and to the team’s goals

To foster these types of behavior, agile
management must provide a supportive environment, team coaches must facilitate
their inclusion, and team members must exhibit them. Only then can teams achieve
their full potential.
Moving toward these types of behavior is
more difficult than it might appear. Most teams avoid truth, transparency, and
trust because of cultural norms or past negative experiences from conflict that
was generated by honest communications. To combat these tendencies, leadership
and team members must facilitate positive conflict. Doing so not only helps
create productive behavior but also has several other benefits:

Process improvement depends on the team to generate a list of impediments or
problems in the organization, to face them squarely, and then to systematically
eliminate them in priority order.

Innovation occurs only with the free interchange of conflicting ideas, a
phenomenon that was studied and documented by Takeuchi and Nonaka, the
godfathers of Scrum.

Aligning the team toward a common goal requires the team to surface and
resolve conflicting agendas.

Commitment to work together happens only when people agree on common goals
and then struggle to improve both personally and as a team.

This last bullet, about commitment, is
especially important. It is only when individuals and teams are committed that
they feel accountable for delivering high value, which is the bottom line for
software development teams. Agile methodologies facilitate commitment by
encouraging teams to pull from a prioritized work list, manage their own work,
and focus on improving their work practices. This practice is the basis of
self-organization, which is the driving force for achieving results in an agile
team.
To create high-performing teams, agile
methodologies value individuals and interactions over processes and tools.
Practically speaking, all of the agile methodologies seek to increase
communication and collaboration through frequent inspect-and-adapt cycles.
However, these cycles work only when agile leaders encourage the positive
conflict that is needed to build a solid foundation of truth, transparency,
trust, respect, and commitment on their agile teams.

For more details Visit: http://msdn.microsoft.com/library/dd997578.aspx

Monday, August 22, 2011

Microsoft Visual SourceSafe (VSS) is a source controlsoftware package oriented towards small software development projects. Like most source control systems, SourceSafe creates a virtual library of computer files. While most commonly used for source code, SourceSafe can actually handle any type of file in its database, but prior versions have been shown to be unstable when confronted with large amounts of non-textual data (images, binary executables, etc.).

History

SourceSafe was originally created by a company called One Tree
Software. One Tree SourceSafe had gone through several releases in their
1.x to 2.x cycles, supporting DOS, OS/2 (with a Presentation ManagerGUI), Windows, Windows NT, Mac, and Unix. When Microsoft bought OneTree in 1994,[3]
they immediately ceased development on all versions except for Windows.
Microsoft "Visual SourceSafe 3.1", a Windows 16-bit-only, rebranded One
Tree 3.0 version, was briefly available before Microsoft released a
Version 4.0.

Overview

SourceSafe was initially not a client/server SCM, but rather a local
only SCM. Architecturally, this serves as both a strength and weakness
of design, depending on the environment it is used in. It allows a
single user system to be set up with less configuration than that of
some other SCM
systems. In addition, the process of backing up can be as simple as
copying all of the contents of a single directory tree. For multi-user environments, however, it lacks many important features found in other SCM products, including support for atomic commits of multiple files (CVS has the same problem as it is built upon the original RCS). SourceSafe inherits its shared
functionality using direct remote file system access to all the files
in the repository. This, together with a bug where the code is using old
memory after a call to reallocate, are contributing factors to why SS databases sometimes go bad.

Starting with VSS 2005, Microsoft has added a client–server mode. In this mode, clients do not need write access to an SMB
share where they can potentially damage the SS database. Instead, files
must be accessed through the VSS client tools - the VSS windows client,
the VSS command-line tool, or some application that integrates with or emulates these client tools.

For more details visit: http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe

QUESTIONS Technology Focus: Developing applications that use system types and collections

1. You are
developing a text processing application by using the .NET Framework.
You write the following code to iterate over a collection of strings and
populate a ListBox control with the values it contains (line numbers
are for reference only). The GetStrings function returns an array of
strings.

Sunday, August 21, 2011

Microsoft Student Partner

Now's your time to shine!

the program

As
a Microsoft Student Partner, you’ll be challenged to use your
enthusiasm and knowledge to lead the technology discussion on your
campus. You’ll demo the latest and greatest technologies, host events,
and connect with other students and faculty to inspire them to create
what’s next.

the perks

Sure,
you'll get access to Microsoft software, training and swag, but we
think the real perks are the intangible ones. We're talking about the
skills, connections and portfolio you'll build in this role. You'll get
the inside scoop to our latest products and job opportunities, meet
like-minded individuals from around the world, and boost your resume
with invaluable real world skills.

the people (YOU!)

You'll
need to be part technology guru, part trendsetter, and full on student.
We select top young minds from around the world that are passionate
about technology, marketing and entrepreneurship. If your eyes light up
every time you get your hands on the hottest technology gadget and you
can't wait to show the world, then this is the role for you!​
For More Details Visit: https://www.microsoftstudentpartners.com/