Project team

advertisement
Software Life Cycles
and
Roles in Project Team
Damian Fok s3859
Mirosław Dąbrowski s3672
Roles in Project
Team
Presentation plan:
•
•
•
•
•
•
•
Introduction
Project team and its role
Choosing team members
Project team structures
Roles in IT project
Summary
Sources
Basic Terminology
What is a project?
– non-routine and time-limited unit of work, typically
producing a one-time product/service
What are project teams?
– consist of representatives from various disciplines and/or
functional units brought together to work on the
development of a new product/service or an incremental
improvement over an existing product/service (Cohen &
Bailey, 1997)
What is project leadership?
– collection of roles associated with the management of
projects and project teams
Introduction
• The project team is the group of people
responsible for planning and executing the
project.
• Project team is created in strategy
phase.
• Project team chooses life cycle model.
Project team and its role
• Solving complex problems
• Basic motto Time-Costs-Quality
• Project teams are especially useful where
results requires breakthrough and
creativity and the way of solving a problem
is not described.
Choosing team members
• Team consists of experts who know the
domain of problem.
• Having qualified team members will not
guarantee a success.
• Each member has his own specific
personality traits which have an influence
on other team members.
Project team structures
STAR structure
-Leader position(central)
-Leader assigns tasks
-Time absence –
problems
For big project teams
Project team structures
NET structure
-Members have contact
with each other.
-Leader doesn’t
cooperates
-5 participants limit
Roles in IT project
> Leaders –
coordinators
> Analysts
> Designers
> Programmers
> Testers
> Organizers
> Administrators
> Documentators
> Integrators
Leader
–Controls whole group
–Tackles with team conflicts
–Coordinates team
–Uses team resources
–Self confident
Analyst
–Creates system model
–Contacts with customer
–Analyzes problems
–Makes suggestions
Designer
• Depends on analyst job
• Implementation description
• Cooperates with programmers
• Specialised(i.e. database, user interface)
Programmer
•
•
•
•
Programming language skills
Experience
Imagination
Cooperation with other programmers
Tester
»Makes reports
»Checks errors
»Checks functionality
Organizer
Technical Writer
Copywriter
Team-work atmosphere
Work atmosphere is very important, has a big
influence on team-work performance.
Leader should strongly cooperate with all team
members.
It’s very important to maintain
a good teamwork to achieve
success.
Sources
• 1. J. Płodzień, E. Stemposz: “Analiza i projektowanie
systemów informatycznych”, wydawnictwo PJWSTK
• 2. Wikipedia
• 3. Andrzej Jaszkiewicz ‘Inżynieria Oprogramowania
CASE’, Helion 1997
• 4. Other internet sources
Software
Life Cycle
Introduction
• Itroduction
• Product Life cycles.
–
–
–
–
•
•
Waterfall
Prototyping
Incremental development
Spiral model
Summary
Sources
1. Waterfall model
This is a class model of product
life cycle introduced in 1970 by
Winston W. Royce
User requirements
all requirements
Analisys
1
blueprints
Design
2
Development
3
4
The waterfall model is a
sequential software
development model
whole completed
product
Testing
5
Instalation
6
Maintenance
Do and dont's about waterfall
model
•
Forcing to very strict control testing.
•
•
Very high cost of mistakes made in previous stages.
(mistakes made in stage of user requirements and specification are
revealed in testing stage)
•
•
•
Client (investor) takes part only in early stages of product life cycle, (he is not
committed) so his commitement in product’s development weaker in time.
This has obviously negative influence on product’s quality in client’s eyes.
„We rate best things made by ourselves or made with our presence.”
•
Easy to management (next phase starts after previous).
•
Helps with planing and monitoring the product’s development.
2. Prototyping
•
•
•
•
•
•
•
Is a methodology where main target is to minimize risk
connected with defining inappropriate requirements.
Main stages in prototyping PLC:
User requirements (general)
Designing a prototype
Proptotype verification by client
Defining all requirements by client
Designing whole system in cascade mode
Prototyping
• Allows to eliminate misunderstanding between client and
developers.
• Helps with spotting missing functions, not well design
services, lack of specific requirements.
• Has a fast product demonstration.
• Prototypes are mock-ups of the screens of an application
which allow users to visualize the application that is not
yet constructed
Do and donts about prototyping
• Cost effective (Development costs reduced)
• Prototypes can be easily changed
• Time of receiving a final product after presentation of very advanced
prototype is very small.
• Ability to spot misunderstanding between client and developers.
• Helps with finding lacks in specification/requirements.
• High user satisfaction
• User’s expectation on prototype may be above its performance.
3. Incremental development
• defining all user requirements, creation of general project
• choosing subset of system functions
• detailed project development and implementation of a part
of the system doing choosen functions.
• testing and delivery to client
• repeat until ready
http://www-128.ibm.com/developerworks/library/j-ant/
Incremental development
pluses
►very offen contact with client (shorter terms comparing
to cascade model)
►no need to defining whole requiremnts at the begining
►If Potential delays occurs in specific part of project, this
can be easily racted by starting work on next part.
Delayed part can be finished later.
Incremental development
minuses
►Additional cost basing on indepedences of product
parts
►Potentail difficulties with getting subset of functions
to copletely
independent functions
Incremental development
User
requirements
Processed in iterations
General
project
Choosing
subset of
functions
Detailed project,
implementation,
testing
Deliver part of
the system
4. Spiral model
Each phase starts with a design goal and ends with the client (who may be internal)
reviewing the progress thus far. Analysis and engineering efforts are applied
at each phase of the project, with an eye toward the end goal of the project
Stages in spiral model:
1.
2.
3.
4.
User requirements and planing,
Risk analysys,
Development,
User evaluation and transition to point 1.
Defined by Barry Boehm in his article
„A Spiral Model of Software Development
and Enhancement” from 1985
Spiral model
• Each spiral coresponds to create complete product.
• Analysys of risk targets to decision if project schould be
contiuned or not.
• This model is similar to prototyping but in spiral model
stages are process once again only in next iteration.
• The Spiral model is used most often in large projects (by
companies such as IBM and Microsoft) and needs constant
review to stay on target
Spiral model
Planing
testing
Risk
analysys
construction
Summary
• The product lifecycle goes though many phases and
involves many professional disciplines and requires many
skills, tools and processes.
• Product life cycle (PLC) is to do with the life of a product in
the market with respect to business/commercial costs and
sales measures.
Sources
• 1. J. Płodzień, E. Stemposz: “Analiza i projektowanie
systemów informatycznych”, wydawnictwo PJWSTK
• 2. Wikipedia
• 3. Andrzej Jaszkiewicz ‘Inżynieria Oprogramowania
CASE’, Helion 1997
• 4. Other internet sources
Software Life Cycle
and
Roles in Project Team
www.akof.nazwa.pl/byt/
Download