31269 Lecture Notes - Lecture 2: Jira (Software), Spreadsheet, Systems Engineering
Week 2 Lecture: Requirements Process
System Development Process
Waterfall System Development Process
• The waterfall model is a sequential design process, used in software
development processes, in which progress is seen as flowing steadily
downwards, like a waterfall, through the phases of Conception, Initiation,
Analysis, Design, Construction, Testing, Production/Implementation and
Maintenance.
Agile System Development Process
• Agile software development is a group of software development methods in
which requirements and solutions evolve through collaboration between self-
organizing, cross-functional teams.
• Promotes adaptive planning, evolutionary development, early delivery,
continuous improvement and rapid and flexible response to change.
• Conceptual framework that focuses on delivering working software with the
minimum amount of work.
• Scrum is an iterative and incremental agile software development framework
for managing project development. It challenges the assumptions of the
taditioal, seuetial appoah to podut developet.
• A key principle of Scrum is that during the project clients can change their
minds about what they want and need, and that unpredicted challenges
cannot be easily addressed in a traditional manner, and can be in the Scrum.
• A sprint is the asi uit of developet i “u, ad is a tieoed
effort, that is, restricted to a specific duration.
• Each sprint is started with a meeting where the tasks are identified and
estimated commitment is made.
• Incremental development slices the system functionality into increments,
where a slice is delivered through cross-discipline work, from the
requirements to the deployment.
• It is developed iteratively and incrementally with repeated cycles. In each
iteration, a small increment is taken to work on, creating a piece of working
software that can be shown to clients as the process is gradually completed.
find more resources at oneclass.com
find more resources at oneclass.com
Requirements Process
• An orderly process is needed to find the correct and complete requirements.
• At any stage of the requirements process, any stage can be visited or
evisited…it does’t have to ou i ode.
• A process is a set of steps (phases) that a software program goes through
when developed. It is a structure imposed on the development of a software
product. Each phase produces deliverables required by the next phase in the
life cycle.
• The requirements process includes:
o Stages/phases
o Activities and tasks
o Techniques
o Tools
o Identifying stakeholders and their needs
o Documenting these requirements in a form of a model that is
amenable to:
▪ Analysis
▪ Communication
▪ Subsequent implementation
• Software system development is dive Reuieets Egieeig
o Requirements Engineering refers to the process of defining,
documenting and maintaining requirements and to the subfields of
systems engineering and software engineering concerned with this
process.
• Requirements are SMART:
o Specific
o Measureable
o Attainable
o Realistic
o Time-bound
• Functional Requirements (things the product must do)
o Describe the behaviour and information that the solution will
manage.
o They describe capabilities the system will be able to perform in terms
of behaviours or operations – specific information technology
application actions or responses.
find more resources at oneclass.com
find more resources at oneclass.com
Document Summary
Waterfall system development process: the waterfall model is a sequential design process, used in software development processes, in which progress is seen as flowing steadily downwards, like a waterfall, through the phases of conception, initiation, Incremental development slices the system functionality into increments, where a slice is delivered through cross-discipline work, from the requirements to the deployment. It is developed iteratively and incrementally with repeated cycles. In each iteration, a small increment is taken to work on, creating a piece of working software that can be shown to clients as the process is gradually completed. It is a structure imposed on the development of a software product. Each phase produces deliverables required by the next phase in the life cycle: the requirements process includes, stages/phases, activities and tasks, techniques, tools. Requirements are elicited rather than captured or collected, implying there are development elements to the elicitation process: some techniques include, brain storming. It is a continuous process throughout a project.