From c79ceffbc63cb60e916470894fef75fabd568feb Mon Sep 17 00:00:00 2001 From: pedrof81 Date: Sat, 29 Oct 2016 11:31:48 +0100 Subject: [PATCH 1/3] Update Assignment 2 Requirements: Introduction, Purpose/Scope, and Description --- ESOF-docs/Assignment 2.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ESOF-docs/Assignment 2.md b/ESOF-docs/Assignment 2.md index 17d39b47e..8cae31579 100644 --- a/ESOF-docs/Assignment 2.md +++ b/ESOF-docs/Assignment 2.md @@ -1,8 +1,15 @@ Requirements: Introduction, Purpose/Scope, and Description >Grade: 3pts - >Note: This is a generic introduction to requirements as well as requirements elicitation in the project (how is this done? How does the team decides on whether to implement a new features, etc. ) +Before we can start building a project it is essential that the team study the costumers and user needs so the team can have a clear statement and understanding of required properties of a solution to solve the problem. +The requirements for a system are the descriptions of what the system should do, the services that it provides and the constraints on its operation.Some of the problems that arise during the requirements engineering process are a result of failing to make a clear separation between these different levels of description. +We can divide them in two: user requirements and system requirements. +User requirements are statements of what services of the system is expected to provide to system users and the constraints under which it must operate. + +(Not Finished) + + Specific Requirements and Features (Functional and Non-Functional requirements) >Grade: 5pts From dad2b408b185f788ec69fdbf6c867c439c5d9b6a Mon Sep 17 00:00:00 2001 From: pedrof81 Date: Sat, 29 Oct 2016 14:26:04 +0100 Subject: [PATCH 2/3] Update Assignment 2 Introduction Requirements-Introduction 2 --- ESOF-docs/Assignment 2.md | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/ESOF-docs/Assignment 2.md b/ESOF-docs/Assignment 2.md index 8cae31579..902740e98 100644 --- a/ESOF-docs/Assignment 2.md +++ b/ESOF-docs/Assignment 2.md @@ -1,15 +1,30 @@ -Requirements: Introduction, Purpose/Scope, and Description ->Grade: 3pts ->Note: This is a generic introduction to requirements as well as requirements elicitation in the project (how is this done? How does the team decides on whether to implement a new features, etc. ) + +**Requirements** Before we can start building a project it is essential that the team study the costumers and user needs so the team can have a clear statement and understanding of required properties of a solution to solve the problem. The requirements for a system are the descriptions of what the system should do, the services that it provides and the constraints on its operation.Some of the problems that arise during the requirements engineering process are a result of failing to make a clear separation between these different levels of description. We can divide them in two: user requirements and system requirements. + User requirements are statements of what services of the system is expected to provide to system users and the constraints under which it must operate. +System requirements are more detailed descriptions of the software system’s functions, services, and operational constraints. -(Not Finished) +Software system requirements are often classified as functional requirements or non-functional requirements. +Citra requires a 64-bit processor and OpenGl3.3 in order to emulate the 3DS. +The functional requirements for a system describe what the system should do. +Non-functional requirements, as the name suggests, are requirements that are not directly concerned with the specific services delivered by the system to its users. + +Requirement engineering processes may include four important high-level activities. These focus on assessing if the system is useful to the business (feasibility study), discovering requirements (elicitation and analysis), converting these requirements into some standard form (specification), and checking that the requirements actually define the system that the customer wants (validation). + +Since Citra is not supported by any company they don't have a deadline to implement features, so how does the team decide on whether to implement a new feature or no? They implement features when they want or when the contributors have a feature that have the quality they require in order to avoid bugs or setbacks +For requirements elicitation we informal interview the developers and discover their requirements in their project site https://citra-emu.org/. + +Their main focus right now is to fix bugs that stop games from booting and bugs that crashes the program when running. While issues about specific games not booting are valid bugs, they are currently not interested in them unless there are several games which fail with the same or similar messages. There are too many non-working games right now to file individual issues for every one of them. +In future with low priority they intend to implement features like cheat code support, improve speed of cut scenes and support for smartphones, but right now, the main focus is getting the PC port stable. +Given the circumstances of this project (hobby, volunteers, low amount of time that developers have to work and inconsistent frequency of commits, specific knowledge about console hardware, emulation, among other areas) the reality of the new features is contributors of Citra contribute what they like and not always what is ideal. + +** Specific Requirements and Features ** Specific Requirements and Features (Functional and Non-Functional requirements) >Grade: 5pts From 8f610acd29ea9d5e6ece1b376a7c214a3e241226 Mon Sep 17 00:00:00 2001 From: pedrof81 Date: Sun, 30 Oct 2016 09:18:57 +0000 Subject: [PATCH 3/3] final update assigment2 final update requirements introduction --- ESOF-docs/Assignment 2.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ESOF-docs/Assignment 2.md b/ESOF-docs/Assignment 2.md index 902740e98..d30721bc5 100644 --- a/ESOF-docs/Assignment 2.md +++ b/ESOF-docs/Assignment 2.md @@ -9,17 +9,19 @@ User requirements are statements of what services of the system is expected to p System requirements are more detailed descriptions of the software system’s functions, services, and operational constraints. Software system requirements are often classified as functional requirements or non-functional requirements. -Citra requires a 64-bit processor and OpenGl3.3 in order to emulate the 3DS. The functional requirements for a system describe what the system should do. Non-functional requirements, as the name suggests, are requirements that are not directly concerned with the specific services delivered by the system to its users. Requirement engineering processes may include four important high-level activities. These focus on assessing if the system is useful to the business (feasibility study), discovering requirements (elicitation and analysis), converting these requirements into some standard form (specification), and checking that the requirements actually define the system that the customer wants (validation). -Since Citra is not supported by any company they don't have a deadline to implement features, so how does the team decide on whether to implement a new feature or no? They implement features when they want or when the contributors have a feature that have the quality they require in order to avoid bugs or setbacks -For requirements elicitation we informal interview the developers and discover their requirements in their project site https://citra-emu.org/. +Since Citra is not supported by any company they don't have a deadline to implement features, so how does the team decide on whether to implement a new feature or no? -Their main focus right now is to fix bugs that stop games from booting and bugs that crashes the program when running. While issues about specific games not booting are valid bugs, they are currently not interested in them unless there are several games which fail with the same or similar messages. There are too many non-working games right now to file individual issues for every one of them. -In future with low priority they intend to implement features like cheat code support, improve speed of cut scenes and support for smartphones, but right now, the main focus is getting the PC port stable. +For requirements elicitation we informal interviewed the developers as we also discovered their requirements in their project site https://citra-emu.org/. +As said by one of the developers in our informal interview, requeriments are mostly fixing bugs and implementing new features.With an emulator, you already have a "spec" to follow - the original console that you're trying to emulate, so new "features" generally means emulating a part of that console that you do not already implement (or at times, implement incompletely). User requests commonly aren't related to emulation but rather usability features - For example, a user wouldn't request to implement 3DS fragment lighting (we already know to do that, it's part of the hardware!), but they might request to implement cheat code support or changes to the UI.These types of usability features tend to be a lower priority(as we still don't have the most important thing, the fully working emulation completed), so they aren't a big driving factor in the work that we do currently. This may change as the project becomes more mature. +Lastly, they say optimization is another big area - lots of effort is spent identifying bottlenecks and rewriting things to improve speed. Emulation of modern video game systems requires both fast/efficient code and a fast computer. + +They implement features when they want or when the contributors have a feature that have the quality they require in order to avoid bugs or setbacks but their main focus right now is to fix bugs that stop games from booting and bugs that crashes the program when running,having a fully working emulation completed.Issues about specific games not booting are valid bugs, they are currently not interested in them unless there are several games which fail with the same or similar messages. There are too many non-working games right now to file individual issues for every one of them. +In future they intend to implement features like cheat code support, improve speed of cut scenes and support for smartphones. Given the circumstances of this project (hobby, volunteers, low amount of time that developers have to work and inconsistent frequency of commits, specific knowledge about console hardware, emulation, among other areas) the reality of the new features is contributors of Citra contribute what they like and not always what is ideal.