Please enable JavaScript.
Coggle requires JavaScript to display documents.
The Personal Software Process Strategy, Paul Jiménez Vela | 2440238 -…
The Personal Software Process Strategy
PSP's Purpose
Is to held a better software engineer
A powerful tool to use in many situations like:
Manage work
Asses talents
Build Skills
Software engineers need a sophisticated array of tools and methods, and the knowledge to use it appropriately
PSP is not magic
It may suggest where and how could be something improved
The Personal Software Process (PSP) is a self-improvement process designed to help control, manage and improve the way you work
It is a structured framework of forms, guidelines and procedures for developing software.
PSP provides historical data needed to better make and meet commitments
With more experience, it will be possible to enhance the process to take advantage of new technologies, tools and methods
The logic for a Software Engineering Discipline
Software has become a critical issue in modern society
The alternatives are to improve a the performance of practicing software engineers while encouraging more people to enter the field
A disciplined software engineering organization will have well-defined practices
Its professionals will use practices, monitor and strive to improve their performances
They will also have confidence and data required to resist unreasonable commitment demands
Practiced disciplines have the further of making software engineering more fun
Writting code can be highly rewarding
Get cleve routine to work is an achievement
Is so satisfying to see a program doing what its intended
PSP can help to make software engineering the fun it should be
What is a software process?
Is the sequence of steps required to develop or mantain software
In contrast, a team that follows consistent process definitions can better coordinate the work of individual members and more precisely track progress.
Software process sets out the technical and management framework for applying methods, tools and people to the Software tasks
As better methods are found, they are incorporated into the organizations officials process definitions
A defined process permits each new project to build on its own experiences as well as its predecessors
Defined processes provide:
Enable effective communication about the process among users, developers, managers, customers and researchers
They enhance managements understandings, provide a precise basis for process automation, and facile personnel mobility
Facilitate process reuse
Support process evolution
Aid process management
Process Maturity
Processes are like habits, hard to establish an even harder to break
The processes for large-scale software development can themselves be quite large and complex
This is why the software process maturity framework was developed
It contains 5 levels of progressively more-mature process capability:
Initial
Repeteable
Defined
Managed
Optimizing
The SEI has refined these level definitions and their practices into the CMM for software
Personal responsibilities
Personal Excellence
Personal Motivation
The Personal Software Process Strategy
Approach steps:
Identify large-system software methods and practices
Define the subset of these methods and practices
Structure methods and practices
Provide exercises suitable for practicing
PSP0: The Baseline Process
PSP1: The Personal Planning Process
PSP2: Personal Quality Management Process
PSP3: A Cyclic Personal Process
TSP: The Team Software Process
Sociaty is demanding more and better software faster and cheaper
As our products becomes larger, and are used in increasingly critical aplications, uncertainly will no longer her acceptable
PSP recognizes that even the most challeging tasks are not totally creative
PSP teaches how to measure the work
It also helps to learn from your performance variations and then to incorporate the theory in documented practices
Many of practices from PSP can be used by teams and even by individual engineers
Tools to support PSP
Tools can be enormously helpful, and can make the methods described previously
It aids WORD PROCESSORS, SPREADSHEETS AND STATICAL PACKAGES
But CASE enviroments are needed that embody the PSP methods in enginering workstations
Some facilites are:
Maintain data
Statical Calculations
Track defects
This facilites make PSP methods easier to introduce and use
Log time automatically
Personal Processes Need to Fit Individual Preferences
Software professionals should define their own processes
The process should evolve with users
Feedback increase process improvement
To provide clear and helpful feedback about an individual's performance, you have to know exactly what happened and the consequences that followed from their behavior
When we provide feedback, we have a tendency to ask questions that force people to defend themselves, such as “Why did you do that?"
A far more effective approach is to ask questions that stimulate thinking and help the person move forward into the future: "What would you do differently next time to improve your results?"
This question allows the person to look at what they did, learn from the outcome, and think about what they need to change to improve their results.
Paul Jiménez Vela | 2440238