Object Oriented System Analysis and Design (Oosad) INSY3063: Prepared by Meseret Hailu (2022) 1 5/17/2022
Object Oriented System Analysis and Design (Oosad) INSY3063: Prepared by Meseret Hailu (2022) 1 5/17/2022
Get the concept of create a document for the course work project.
6. The Capability Maturity Model (CMM) aims to measure the maturity of the
software development process within an organization.
This is done by managing the tasks and their coordination through a certain
set of values and principles.
The initial goal for the agile methods is to reduce the overhead in the
software development process with the ability to adopt the changes without
risking the process or without excessive rework
5/17/2022 Prepared by Meseret Hailu(2022) 10
Agile Methods in General
Each method differs from the other by choosing its appropriate set of
terminology and practices.
With the growing maturity of cloud computing technologies, there are many
research interests in using agile development software to build cloud
applications.
4. Scrum method,
Each method has its own principles, life cycle, roles, advantages and disadvantages
etc.
All of these agile software development methods build the software in iterations and
incremental processes.
5/17/2022 Prepared by Meseret Hailu(2022) 12
Agile Methods in General
Assignment
I. Identify the following agile methods:
1. Test-Driven Development (TDD) method,
4. Scrum method,
6. Crystal methods
Scrum also has unique project roles, which include a scrum master and
Product Owner. (See Chapter I how it works)
5/17/2022 Prepared by Meseret Hailu(2022) 14
Large Scale SCRUM (LeSS) Structure
How Does Scrum Work?
It has the following Steps
Step 1: Product backlog
The product backlog is used to draw up a list of tasks that a team must
complete to successfully achieve the stakeholders’ goals.
Step 2: Sprint planning
Selected tasks from the product backlog are chosen for teams to focus and
work on, then ultimately be delivered during the sprint.
Step 3: Sprint backlog
Tasks discussed in the previous phase are added into the sprint backlog.
A scrum team is usually a team of five to nine members that work on the
tasks mentioned in the sprint backlog.
The team has daily scrum meetings, 15 minute long sessions during
which the team members synchronize their activities with each other,
report on the bottlenecks they are facing, and plan on what they aim to
achieve in the next 24 hours.
The product owner, scrum master, stakeholders, and the scrum team
attend the meeting.
During this stage, the team discusses what they accomplished in the
previous sprint.
to the backlog.
Step 5.2: Sprint review -
Sprint retrospective, the sprint retrospective meeting follows the sprint review.
Here, the team identifies potential mistakes and issues, as well as ways to handle
them. Data from this stage is incorporated while planning the next sprint.
Step 6: Increment
The stakeholders receive a workable and usable output.
The LeSS Rules define what is LeSS (and what isn’t) and they provide a
concrete framework for applying LeSS.
Within the LeSS Framework, product groups can apply the experiments and
discover what works best for them at a certain moment
5/17/2022 Prepared by Meseret Hailu(2022) 19
Large Scale SCRUM (LeSS) Structure
Why Less
Traditional sequential-lifecycle development doesn’t work well.
It doesn’t work well for either small or large product development efforts
Why Less
None of those answers is particularly useful, and while it is true that it is
best to avoid adding people to your development effort,
It is also true that large scale product development isn’t going away so
we need to discover ways to do it well.
Why Less
None felt right. Scrum, on the other hand, felt right for single-team
development.
So, the question then became “How can we scale Scrum without losing
its strength?”
Why Less
Scrum hits the sweet spot between abstract principles and concrete practices.
so that we will be able to say: For large groups, LeSS hits the sweet spot
between defined concrete elements and empirical process control.
Why Less
This should be avoided so that a process can empirically be created by the
product group.
Most other scaling frameworks fall into the trap of providing a defined process.
LeSS is Scrum Scaled Rather than having Scrum as a building block for a
scaled framework .
we need to look at Scrum and for each element ask “Why is it there?” followed
by “If we have more than one team, how can we achieve the same purpose
on a larger scale?”
5/17/2022 Prepared by Meseret Hailu(2022) 24
Large Scale SCRUM (LeSS) Structure
Why Less
Scaled up instead of tailored down - A common concept for process
development is to define a universal, overarching framework and then
contextually tailor it down.
This does not work well because people often assume everything is needed in
their particular context.
LeSS should be kept to the minimum. We acknowledge that scaling will require
“more” but instead of “polluting” LeSS with optional elements, we have
separated out a different framework LeSS Huge.
LeSS Product
LeSS Sprint
More or LeSS
Data gathering is a process of preparing for and then collecting data needed to
facilitate project decision making.
Data is collected to provide information regarding a specific topic, and the
information obtained is keep on record and used to make decisions about
important issues.
Because of this, it is important to understand the quality of the data collected in
terms of its accuracy, reliability and relevance.
Some Information Gathering Skills:
Interviewing
Observation
Brainstorming
Interviewing
The interview is the most flexible and direct tool for eliciting requirements. It
also is more prone to misunderstanding and failure than any other technique
Interview with stakeholders of the system—users, sponsors, and domain
experts— is an indispensable tool not only for its verbal responses but also
because it allows one to observe and learn from nonverbal reactions:
attitudes, body language, and emotional overtones.
These nonverbal connotations put the requirements into a human context that must be taken
into account to build a successful information system.
The interview is also a sensitive tool: It is very flexible but exactly because of
its flexibility it can lead us to blind alleys.
Interviewing
Since an interview is limited by a timeframe it is also a precious commodity, the
use of which must be planned with great care.
Interviewing needs a great amount of “people skill” and experience, but there
are things that we must know and actions that we must take to increase its
chances of success.
Early interviews in the requirements gathering process have a broad scope,
while later ones are defined by more focus on detail.
Assginment:
Structured interview.
Observation
Observation needs something that can be observed.
Observation of individuals functioning within teams leads to the following list
of characteristics of an effective team member.
Such a person(observer):
Understands and is committed to group goals;
Is friendly, concerned, and interested in others;
Acknowledges and confronts conflict openly;
Listens to others with understanding;
Includes others in the decision-making process;
Observation
Recognizes and respects individual differences;
Contributes ideas and solutions;
Values the ideas and contributions of others;
Recognizes and rewards team efforts; and
Encourages and appreciates comments about team performance
Brainstorming
The term brainstorming has now become the accepted way of referring to
group attempts to solve specific problems or develop new ideas by amassing
spontaneous, unrestrained contributions by members.
The technique of brainstorming utilizes the logical steps in problem solving
by clearly separating the suggestion of solutions from the discussion of their
value.
The basic rule in brainstorming is that no one can comment on or in any way
belittle the suggestion of another member.
The only response to another’s suggestion that is allowed is building on it with
another idea.
Brainstorming
This tends to increase the number and variety of suggested solutions, as the
threat of having an idea “shot down” by the group is reduced.
Much of the value of brainstorming can be achieved by separating step four
Brainstorming can be used to generate possible solutions for simple problems,
but it is unrealistic to expect it to accomplish most problem-solving or planning
tasks.
The technique is of value as part of a larger effort that includes individual
generation of information and ideas and subsequent compilation, evaluation, and
selection.
Brainstorming
Brainstorming can be used to generate components of a plan, process,
solution, or approach and to produce checklists.
The major benefits of brainstorming are as follows:
It encourages “out-of-the-box” thinking; that is, by challenging and inspiring each other,
the participants are likely to go beyond conventional boundaries.
Full solutions can emerge from the accumulation of ideas: One participant may build
upon another’s proposal or streamline it.
The scope of the solutions will go beyond the narrow interests of individual groups.
Brainstorming
Among the responsibilities of the conductor, the following are the most
important.
Establish a professional and objective tone for the meetings.
Establish and enforce the rules.
Introduce the meeting’s goals and agenda.
Manage the meeting and keep the participants focused.
Facilitate the process of decision making and accord building, but avoid taking sides in the
arguments.
Make certain that all stakeholders have an equal chance in voicing their opinions.
Control disruptive and unproductive behavior with subtlety but decisiveness
Agile Documentation
Product documentation
These materials also help the system administrators install and maintain
the system.
User documentation includes tutorials, user guides, troubleshooting
manuals, installation and reference manuals.
System documentation .
Agile Documentation
The composition of documents produced for software projects depends on various
aspects.
The required documents may be determined by the type of the project and its
environment, contract with the customer, company politics and the methodology
used for managing the software development.
Each software project may need different documents, for example, a complex photo
editing software may utilize a comprehensive end-user documentation, while an
internal tool developed for the needs of the company may require only a system
requirements list
Agile Documentation
Some times Software Documentations needs Technical Writers
Software companies either employ their own Technical Writers or outsource the
creation of the documentation.
This depends on the character of the software being developed and its demands on the
documentation.
Complex products with long-term development, which require detailed user guides and
manuals benefit from having Technical Writers employed full-time. This way, the
documentation can be created more quickly and precisely with the collaboration of
Subject Matter Experts.
Each Technical Writer is assigned to one, two or three development teams and sits in
the office of one of these teams
Scrum: less.works