Saturday, May 7, 2011

Reading Blog - The Mythical Man-Month Ch 16 -17

Summary:
The chapters discuss the complexity of a program and how it can overcome programmers. The importance of working as a team comes into play in able to be able to control the project. If each programmer has their own role, the project will go smoothly.



Discussion:
I feel more examples are needed in these paragraphs to better drive home the idea. I do understand where they are coming from. Never having worked on a large program with that many people working on it, I can not relate.

Monday, April 11, 2011

Reading Blog - The Mythical Man-Month Ch 13 - 15

Summary:

Ch 13
Programs and projects are bound to have bugs. This requires a lot of testing and debugging. Top-down designs will make it easier to fix these issues and make it less time consuming.

Ch 14
Projects must be kept on schedule and have deliverables or goals reached on the road to completion. Estimating the time it will take to complete a project and planning ahead will make it go by a lot easier and finished faster.


Ch 15
Documentation is important especially when trying to explain to the user what it is the program does, how it is run, inputs, and troubleshooting. Programs should have a test program to verify it works correctly before the user gets to use it. It also helps in the future if changes need to be made.



Discussion:
These mostly talk about scheduling and documentation. It seems its important to estimate scheduling of release as well as document it. Also, the documentation of the program will also be needed for users to properly learn the program.

Extreme Programming Installed chapters 22 - 24

Summary:
Ch 22
We want to avoid bugs and defects when programming. We slow down the project and fail tests when these arise. It is very important to keep track of these to reference back and avoiding them in the future for better programming. This will speed up the project as a whole.

Ch 23
XP is meant to be simple with a great emphasis on communication and feedback. The progression of the project depends on these. Goals should also be kept realistic to the point where you can have deliverables weekly.

Ch 24
It is important to properly  deliver a project and estimate its completeness. Having these documented estimates can lead you to push back deadlines and release dates put on by managers. You do not want to release code that is not properly finished.



Discussion:
I am glad to be done with this book! I think I have implemented enough XP into our senior design project and I learned better like that than reading the book

Saturday, April 9, 2011

Reading Blog - The Mythical Man-Month Ch 10 - 12

Summary:
Ch 10
Documentation is key for organization in a team project, budget documentation being one of the most important ones. It is important because it drives technical decisions and specifications. This will also aid in the communication process of the project.

Ch 11
the chapter tells us that most first releases are usually never fully correct. Because of this, programs should be designed to make it easier to change or add features later to avoid complete redesign. 

Ch 12
This chapter illustrates the differences between the target machines and vehicle machines. Target machines are those machines for which a program is designed to run on. The vehicle machine is the machine in which the program was built on. It is important top differentiate the two.




Discussion:
I enjoyed chapter 10 the most because it talked about budget and a bit of the business side of programming which I feel I have not seen a lot of. It helps understand real world situations.

Reading Blog - The Mythical Man-Month Ch 7 - 9

Summary:
Ch 7
This chapter deals with the importance of communication. It is key to accomplish the goals of the project. A workbook is an excellent way to keep the communication going by documenting everything needed to get the project finished. It should be distributed and kept up to date.

Ch 8
The chapter focuses more on the productivity of a team. Many times, planned schedules are not always correct because productivity may be slowed by unexpected problems that could not be accounted for. Meeting also play a role in the delayed time.

Ch 9
Space management is an important thing to take into consideration when dealing with projects. It can dictate the direction of your project and may need to take into account various trade offs.




Discussion:
I mostly enjoyed the chapter dealing with productivity. I have often found myself planning but they are always derailed with unexpected problems.

Reading Blog - The Mythical Man-Month Ch 4 -6

Summary:
Ch 4
Design and implementation are two very different things as discussed in the chapter. Architecture is a complete detailed specification of the UI. It must be drafted before implementation.

Ch 5
This chapter does more differentiation. It talks bout the early life of the design and avoiding adding on to it late into the process for second release.

Ch 6
The documentation of instructions describes what the user sees in a program. When the specifications are written up for this, it is important that they be precise and exact. Communication between builders and architects should be kept to avoid mis-communication of specifications and documentation.



Discussion:
This book is helping me understand different roles of programming and what each role entails. I am enjoying learning more about the different roles.

Reading Blog - The Inmates are Running the Asylum Ch 3 -5

Summary:
Ch 3
In most projects, the programmers steer what features will be on the system. Managers give them a list and programmers weed out what they feel will not be done in a realistic time fame. Users do not seem to care much for added features so long as they can accomplish their goals with the product. The goal and use of a product should be the most important thing over release date. It is no good to meet a release date with a unusable product.

Ch 4
This chapter discusses user friendliness. Today's technology, is expected to interact with users in an easy and intuitive way. Preferably the way they interact with other humans. The current software tries to tend to our needs but sometimes doesn't by constraining us into an enclosed state where it thinks it is doing what we need. We need more flexibility in today's software.

Ch 5
The design of a product is the most outstanding part of a project. We must deliver products that encase all the features and design the user wants. It is all about the end product over the release date.



Discussion:
The book is giving good information in my opinion. It is more release driven and gives us advice an topics I feel haven't been covered as much in other books. I look forward to reading more of this.