Six (6) SDLC Core Processes
At the end of the exercise, the students should be able to:
? Implement the SDLC core processes.
? MS Word and PowerPoint
? Other related applications
1. Form a group with four (4) members.
2. Read and understand the case study carefully.
3. Brainstorm all the functions that can be done from the case. Keep it at a very high level.
4. You may refer to this link https://app.diagrams.net/ as a tool in creating the diagram.
5. These activities closely relate to Core Process 1: Identify problem and obtain approval.
Keeping Track of Your Geocaching Outings
When Eros Agape turned 16, his dad bought him a new Garmin handheld GPS system. His family had always enjoyed camping and hiking, and Eros was usually the one who monitored their hikes with his dad’s GPS system. He always liked to carry the GPS to monitor the routes, distances, and altitudes of their hikes. More recently, though, he had found a new hobby using his GPS system: geocaching.
Geocaching is a high-tech version of the treasure hunts that most of us did when we were kids. Participants search for geocaches or caches that are small, hidden, waterproof containers that typically contain a logbook and perhaps a small item. When found, the participant sometimes gets instructions for the next move – to either enter information into a logbook or to look for the next cache
As Eros became more involved with his hobby, he discovered that there are many different kinds of activities for geocaching enthusiasts. The simplest ones are those that involve caches found by using GPS coordinates, although even some of these tasks can be difficult if the caches are well hidden. Some of the activities involve multipoint drops where there is a set of clues in multiple locations that must be followed to arrive at the final cache point. Some activities involve puzzles that must be solved to determine the coordinates of the final cache.
Before long, Eros wanted to make his own caches and post them for people to find. He discovered that there were several Web sites with access to geocaching information, caches, and memberships. He joined one of the geocaching Web sites and used it to log his finds. But he decided he would like to create his own system for tracking all the information he had about his caches. Conveniently, Eros’ older brother, Barnabe, a college student majoring in information systems, was looking for a semester project for one of his programming classes. The two of them decided to develop a system to help Eros keep trac of all his geocaching activities.
In this case, each group will go through the various core processes of SDLC and perform some of the activities of a development project. The project is divided into days, as was the Tradeshow System project. The daily assignments for this case should be considered as preliminary efforts and rough drafts. The objective of these assignments is to help the students remember the overall approach to software development.
Day 0: Define the Vision
Brainstorm all the functions this geocaching system might do. Keep it at a very high level. These activities closely relate to Core Process 1: identify problem and obtain approval.
Task 0-1: Write a rough draft of the System Vision Document based on your ideas. (Hint: Think of
what Eros wants the system to do and why this helps him.)
Day 1: Plan the Project
Based on the scope and vision described in System Vision Document, divide the project into at least two separate subsystems that can be done in separate iterations. For example, perhaps a first version can run a laptop, with a second version that includes mobile components for a smartphone. These activities are related to Core Process 2: Plan and monitor the project – what to do, how to do it, and who does it.
Task 1-1: Divide the system into at least two separate components or subsystems, which can be supported with two iterations. Briefly describe each.
Task 1-2: Create a work breakdown structure that lists all the steps to complete the first iteration. Put a time estimate on each step. (Hint: Use the wbs for Tradeshow System project as a model.)
Day 2: Define and Understand the Requirements
On Day 2, the objective is to get an overall view of what the system needs to do for Eros. There are two primary areas to focus on to obtain this high-level understanding of the system: a list of use cases and a list of domain classes. Document this information in lists, but diagrams should provide a visual representation that is often easier to remember ad understand. These activities support Core Process 3: Discover and understand details.
Task 2-1: Identify a few use cases that apply to one subsystem. (Hint: Think of what Eros plans to do with the system. He will use the system to “do what’?)
Task 2-2: Try to identify the classes that apply to the first project iteration. (Hint: Think of “information things that Eros wants the system to “remember”.)
Task 2-3: Create a simple use case diagram from the lust of use cases. (Hint: Use the one in Tradeshow System project as a model.)
Task 2-4: Create a simple class diagram from the list classes. (Hint: Drawing by hand is fine. Use the one in Tradeshow System project as a model. Think of other information that applies to each class.)
Day 3: Define the user experience
These activities are the continuation of what has begun in Day 2. The objective here is to further define what Eros will need and how he will actually use the system. Determine exactly how each use case works – what steps and options are available with the use case and even what the display and data entry screens will look like. These activities primarily support Core Process 3: Discover and understand details.
Task 3-1: Select a single use case and identify the steps required to perform the use case. (Hint. Think of what Eros does and how the system responds.)
Task 3-2: Make a workflow diagram of the selected use case. (Hint: Each step from Task 3-1 goes in an oval. Connect the ovals with arrows.)
Task 3-3: Sketch out one of the screens that will required to support a use case. The screen should
allow for data entry and display of information. (Hint: Don’t make it elaborate. Focus only on the input and output data fields that apply to only one use case.)
Day 4: Develop the Software Architecture Design
The high-level software architectural design of the system generally includes decisions about how the system will be built and what the database will look like. Design is a technical activity that requires experience in programming. These activities support Core Process 4: Design system components.
Task 4-1: Design a preliminary database schema for the classes in this iteration. (Hint: Each class becomes a table. The attributes become table columns.)
Task 4-2: Decide whether you will build a desktop system or a browser-based system. Write a couple paragraphs listing the pros and cons of each alternative to defend your decision. (Hint: Either option is valid. Think of a reasons your decision.)
Day 5: Develop the Detailed Design and Program System
It is probably have had many class projects where a system is designed and then programmed it. These kinds of activities support Core Process 5: Build, test, and integrate system components.
Task 5-1: Write a paragraph describing what programming language(s) you would recommend and what development environment you prefer. For this answer, draw on your previous programming and development experiences. (Hint: There are many valid solutions. Give reasons for your preference.)
Day 6: Test and Deploy the System
There may have had opportunities to perform comprehensive testing of a programming class projects, especially if there are developed systems that integrated with other systems. These activities support Core Process 6: Complete systems tests and deploy solution.
Task 6-1: Write a paragraph describing the difference between programmer testing and user testing.
(Hint: Why is it hard to test your own work? What do the users know that you don’t know?)
Task 6-2: Write a paragraph describing all the issues that might need to be addresses to deploy this system. (Hint: Search the Internet to learn about deployment issues.)
Task 6-3: Look at www.geocaching.com, which is a commercial Web site. What other issues need to be addressed to deploy this type of Web site? (Hint: Think about all the issues related to security, robustness, financial protection, high volumes, uptime, different browsers, and so forth.)
GRADING RUBRIC (100 points):
Criteria Performance Standards Points
Content - Completion Contains complete required activity deliverables 50
Content - Accuracy Coverage of information in the deliverables with impeccable accuracy 30
Formatting Excellent formatting; almost impeccable consistency 10
Organization/ Collaboration Clear and appropriate focus; logical and controlled organization throughout; highly consistent group collaboration 10
Satzinger, J., Jackson, R., & Burd, S. (2015). Systems analysis and design in a changing world: Course technology. Cengage Learning.