Software Development Lifecycle How do I interpret user needs and implement them into a program? How does creating “user stories” help with this? The client and customer are two of those most useful resources in just about any software project. THe reasoning behind this is as so. The client provides the vision, some kind of service or product they wish to provide with customers or the public. This is a great first step towards the developement of any successful long term project. THe customer is arguably just as important as the client. For instance, you can design software to offer top destination vacation packages as per the request of your client. Customers, however, may havbe the desire to soprt through these destinations by things such as pricing, vacation types, previous vacations taken etc. The client does not always have all the important bits of information for a successful product, often times it is through interviewing potential customers of the clients vision that we can find more information that actually provides the client with the highest quality product. The overall point is to use all the information you can gather and create a product that is satisfactory to the client and the clients clients. THe goal should be to make everyone as happy with the results as possible, given whatever constraints are present. User stories in the agile-scrum method typically involves approaching the potential customers of the clients visionary product to find what features could be provided to help ensure tue success.
How do I approach developing programs? What agile processes do I hope to incorporate into my future development work? Developing programs and software depends on many things. However by using the agile-scrum framework we can break large software projects or expansions into smaller chunks with measurable progress. Instead of completing the entire project all at once, spending perhaps months planning, or even having to restart development (as the waterfall approach results in) we can plan minimally and work on measurable progress. For example, in our developement process for SNHU Travel we worked on smaller chunks related to the project which would over time lead to a more refined product. When our client decided to change the whole direction of the project towards that of a detoc/rehab based vacation search engine minimal damage was caused. The whole project did not have to restart at the planning phase, much of the already completed work was salvagable or useable, and developers/testers could for the most part continue their work unimpeded. In essence, using a waterfall method can cause damage to budgets, time constraints, confidence, and generally the whole project. THe Agile methodology expects this type of change and enables it with minimal damage. Personally, I wrote my entire final project using a lot of what I had learned from the Agile process. I began with the promps that needed to be answered, provided some large points to each promps, then proceded to provide details to each point over a peroid of days. Each time I would finish a chunk of the project I would go back and check the quality of the completed peice and ensured it would match with the rest. I continued this process until I had written the longest paper I've written in my life, which was certainly a good one despite the length. In the future for large projects I plan to break these down into smaller chunks that work together and use what I've gathered from this agile framework to ensure my own success. This whole class has truly shown me how not only this can provide me the framework to succede in an enormous amount of work, but just as well work with another team of individuals to create something on a much grander scale.
What does it mean to be a good team member in software development? I've learned in this course that to be a good team member requires transparent and quick communication. Of course maintaining good relationships with those around you is important, but utilizing tools for communication and organizing large scale project is imperitive as well. The best method for accurate and precise communication is (as established by this course) face-to-face communication. We live in a world where texting, posting and calling are common fronts where miscommunication often occurs. Communicating face-to-face ensures that anything we need to address in regards to a current task may be effectely communicated. Understanding that we are all human beings, what we should all be doing and any struggles any one of us are encountering all helps us to work together in a far more efficient manner than "going it alone".