Está en la página 1de 4

## Zackery Frazier

## 001
## zmf9

Throughout the first weeks of Software Engineering,


we frequently broke into groups in order to complete
team oriented activities. These activities were designed
to simulate the work flow of a software engineering team
that is both brain storming an application, as well as
the planning that goes into designing the details, writing
user stories, dividing work up between team members,
and estimating how long each feature would take to develop.
I recently interned as a software engineer at a local company
and found that the procedures followed in class were nearly
identical with those that I took part in while working.
The exercises served as a great tool to refresh my memory on
standard procedures, as well as learn some of
the theory behind the standard practices that I initially
took as arbitrary decisions.
The process began with a need to think of a
theoretical application to develop. All of the members
had a dog, so we thought that a lost dog tracking application
would be a novel concept. At this point, we needed
to think of the scope of the project, as well as what a
typical user would prefer out of this kind of software.
We decided that there would be a need for users to register
dogs, gather the location via GPS (pinpointed by an
chip implant), as well as different terms of service. For
example, users may wish to simply pick up their dog themselves,
or pay a little more to have it delivered. These ideas were
purely conceptual at this point, and next came the need to turn
them into tangible, descriptive user stories. The segment of
the process was intriguing, as each team member gave their
estimate via cards at the same moment, providing an unfiltered
look into what everyone actually felt, gather than simply
conforming to the group. We then came together in attempt
to name all of the assumption we made with the previous
estimates, provoking us to re-think some of our previous
estimates. These included assumptions relating to legal
concerns for our potential application, as well as assumptions
relating to API’s we anticipated using. In most cases, estimates
were lengthend. Finally, we democratically divided each
user story into several tasks. These tasks
were descriptive implementation details pertaining to
each user story, averaging around three per story.
Software engineering is implicitly a team oriented
activity, so positive and efficient team interaction is key.
Our team thoroughly enjoyed the polite polite discussion
that went into making critical development and projection
decisions, and I believe this open discourse
contributed to a well-rounded simulation of real world
software development. We operated primarily in a democratic
fashion. If team members both had different thoughts on an
topic, be it the estimated length of time to
give a certain user story or a type of feature, we would
routinely allow all members to express their beliefs or ask
questions, and then hold a vote. The decision with a majority
was taken. We would then ask any party that voted against the
majority decision if they had any burning objections,
at which point we would have held another discussion.
However, it never did come to this point.
In hindsight, there were only a few ways I thought
the exercise could’ve been improved. One idea would be to
have groups create a tangible mockup for our application.
I believe that direction could have sparked more creativity
in designing our application, as well as how long each feature
may take. Also, we ran In terms of practices that went well,
applying democratic principles to the decision
process went remarkably well in terms of gauging every team
members understanding of the direction of the application as
well as ensuring everyone’s opinion was heard.
In conclusion, I felt that stepping into the shoes
of a real life software development team turned out to
be an enriching experience, as it gave a lightweight
glimpse into the challenges, rewards, and learning
experiences that developers face everyday.

Title: Set home range


Description: The owner can set the dog's home location on a map.
My Estimateimate: 3 Days
Group Estimate: 5 Days
Priority:
Tasks:
1. Show map
Display map centered on user's location
Estimate: 2 Days

2. Select location and range


Allow user to click spot on the map and enter a
radius. Store lat/lon and radius in database.
Estimate: 1 Day

Title: Alert owner when dog is out of bounds


Description: A notification will be sent to the user when the
dog leaves home.
My Estimate: 5 Days
Group Estimate: 5 Days
Tasks:
1. Create notifications
Create a system for sending notifications to user.
Estimate: 2 Days

2. Monitor dog's location


Check dog's location every 5 minutes to see if
it has gone out of range.
Estimate: 2 Days

Title: Report a lost dog


Description: I want to be able to report a dog as lost.
My Estimate: 5 Days
Group Estimate: 3 Days
Tasks:
1. File a report page
Click a link that directs the user to a report page
Estimate: 1/2 Days
2. Fill in report
Prompt the user for the dog's name, description, id,
and last seen location.
Estimate: 1/2 Days

3. Save report
Store the lost dog report in the lost dogs database.
Estimate: 1 Day

Title: Browse through found dogs


Description: I want to be able to view a list of dogs that have
been posted as found.
My Estimate: 2 Days
Group Estimate: 2 Days
Tasks:
1. Create database
Create database to hold all dog records.
Estimate: 1/2 Day

2. View dogs page


Create a page to display dog records.
Estimate: 1 Day

Title: Share on social media


Description: Share lost dog info via Twitter, Facebook.
My Estimate: 13 Days
Group Estimate: 8 Days

Title: Claim a dog


Description: If I see my dog while browsing, I want to claim it.
My Estimate: 5 Days
Group Estimate: 5 Days

Title: Remove lost dog posting


Description: If I find my dog, I want to remove my lost
dog post.
My Estimate: 1 Day
Group Estimate: 1 Day

Title: Book dog delivery


Description: Users can have dog delivered to them via uber.
My Estimate: 13 Days
Group Estimate: 13 Days

Title: Track lost dog's route


Description: The owner can view where the dog has been on the
map.
My Estimate: 3 Days
Group Estimate: 3 Days

Title: Calculate best route to dog


Description: I want to view directions on a map to my dog's
location.
My Estimate: 5 Days
Group Estimate: 5 Days

Title: Compare to friends


Description: I want to compare my dog's information to friends'
dogs.
My Estimate: 8 Days
Group Estimate: 3 Days
Revised Estimate: 8 Days

Title: Report a dog as found


Description: If I find a dog that isn't mine, I want to list
it on the lost dogs board.
My Estimate: 2 Days
Group Estimate: 2 Days

Out of scope:

Title: Send feeding reminders


Description: Notify the user when it is time to feed the dog.

Title: Finalize payment


Description: Allow users to pay electronically.

Title: Arrange for dog pickup.


Description: A user can log a spaceflight for dog delivery.

Title: View vitals


Description: User can view a dog's hunger, thirst, and other
metrics.
Title: Calorie / weight loss counter
Description: Measure the weight your dog loses or gains.

Title: Communicate with dog


Description: Allow user to speak with dog telepathically.

También podría gustarte