78
CmpE 202 – Project 2 Challengers 1 Spring 2011 Department of Computer Engineering CmpE 202-03 (Students Work) EVOLUTION – STABLE ARCHITECTURE PATTERN Submitted to: Dr. M. E. Fayad Submitted by Team Name

CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

  • Upload
    haphuc

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

1

Spring 2011 Department of Computer Engineering

CmpE 202-03

(Students Work)

EVOLUTION – STABLE ARCHITECTURE PATTERN

Submitted to: Dr. M. E. Fayad

Submitted by Team Name

Page 2: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

2

Acknowledgement

We respectfully thank Prof. M.E.Fayad for his guidance and encouragement that helped us complete

this project. Prof. Fayad helped us understand the concepts during the entire course. We also thank

Shivanshu Singh for his time and effort. This project provided us a good learning experience and we

are grateful to the professor for his extended help during the entire course of the project.

Team:

Table of Contents Acknowledgement ........................................................................................................ 2  Abstract......................................................................................................................... 5  1. Introduction.............................................................................................................. 6  

Page 3: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

3

Transformation (EBT).................................................................................................................... 6  Responsibility (EBT)....................................................................................................................... 6  Sustainability (EBT) ....................................................................................................................... 7  

2. Pattern Documentation ........................................................................................... 7  2.1. Pattern Name: Evolution (Stable Architectural Pattern) .................................................... 7  

2.2. Known As ..................................................................................................................7  2.3. Context: .....................................................................................................................8  

3. Problem................................................................................................................... 10  3.1. Functional Requirements ...................................................................................................... 10  3.2. Non-Functional Requirements.............................................................................................. 12  

4. Challenges and Constraints .................................................................................. 13  4.1. Challenges............................................................................................................................... 13  4.2. Constraints ............................................................................................................................. 14  

5. Solution ................................................................................................................... 16  5.1. Pattern Structure and Participants...................................................................................... 16  5.2. Class Diagram ........................................................................................................................ 17  5.3. Class Diagram Reference ...................................................................................................... 18  5.4. CRC Cards ............................................................................................................................. 19  

6. Consequences ......................................................................................................... 27  7. Applicability ........................................................................................................... 28  

7.1. Application 1 .......................................................................................................................... 28  7.1.1. Case Study: Go Green ............................................................................................28  7.1.2. Class Diagram .......................................................................................................29  7.1.3. Use Case ...............................................................................................................31  7.1.4. Behavior Diagram ..................................................................................................35  

7.2. Application 2 .......................................................................................................................... 37  7.2.1. Case Study: Child Birth ..........................................................................................37  7.2.2. Class Diagram .......................................................................................................38  7.2.3. Use Case ...............................................................................................................39  7.2.4. Behavior Diagram ..................................................................................................45  

8. Traditional Class Diagram.................................................................................... 47  9. Modelling Issues [EXTRA] ................................................................................... 49  

9.1 Abstraction .............................................................................................................................. 49  9.2 Detailed Study ......................................................................................................................... 50  

10. Design and Implementation Issues [EXTRA] .................................................. 50  

Page 4: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

4

10.1 Interface Implementation..................................................................................................... 50  

11. Testability [EXTRA]........................................................................................... 52  12. Known Usage [EXTRA] ...................................................................................... 52  13. Lessons Learnt and Heuristics [EXTRA] .......................................................... 53  14. Conclusions: ......................................................................................................... 54  15. Updated Problem Statement............................................................................... 55  1. Abstract................................................................................................................... 57  2. Description of the domain ..................................................................................... 58  4. Description of the Program that is wanted.......................................................... 63  5. Detailed Requirements .......................................................................................... 64  6. Non Functional Requirements .............................................................................. 67  7. Use Cases and User Context.................................................................................. 68  8. References for further study ................................................................................. 77  9. Table of Figures...................................................................................................... 77  10. Acknowledgement ................................................................................................ 78  

Page 5: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

5

Abstract

The project aims to model the system based on Evolution by applying concepts of Stability

Modeling. The core concepts are Enduring Business Themes and Business Objects. The objective is

to build a stable and a flexible model that can be re-used. The re-usability factor ensures that once

created, it could be applied efficiently to various applications, without changing the core concepts.

Our aim is to model the three Enduring Business Themes, Sustainability, Transformation and

Responsibility. The system based on Evolution encapsulates these Enduring Business Themes.

Evolution means undergoing transformation by possessing responsibilities in order to be sustainable.

We have designed the model by defining the relationship between Enduring Business Themes and

Business Objects. We then used CRC cards to get a better insight about the design. We have then

applied this design to model two applications using use cases, class diagram and behavioral model.

We have then compared the Traditional Model and the Stability Model to highlight the advantages

of the Stability Model.

Page 6: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

6

1. Introduction In Project 1, we modeled our system using the Traditional approach. Since the class diagram in

traditional model provided a static design view, we could not use the model in other applications.

Having a dynamic design view helps in re-using the model to various applications.

We have modeled the dynamic view of the system for the traditional model “Go Green” developed

in Project 1. This dynamic modeling is called Stability Modeling. The three Enduring Business

Themes (EBT) encapsulated in super EBT are realized through their Business Objects (BOs) to

arrive at a model. This model is re-usable and can be applied to various applications.

The 3 EBTs are Transformation, Responsibility and Sustainability. The 12 BOs are AnyActor,

AnyExperience, AnyAction, AnyConsequence, AnyEvent, AnyDevice, AnyDecision, AnyParty,

AnyPolicy, AnyLocation, AnyOption and AnyHabit.

Transformation (EBT)

Transformation means undergoing a change. This is chosen as EBT as it is not restricted to our

project alone. It can be adapted in other applications which aim at transformation. The effects of

emission of green-house gases were not immediate. Earth transformed into what it is currently as a

slow process. The “Go Green” concept is about bringing a transformation to make Earth better place

to live.

Responsibility (EBT)

Responsibility means being accountable for one’s own action. It means an obligation or burden we

are obliged to perform. Our actions, our words are responsible for our future. For example, for a

Page 7: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

7

child to grow up into a good human being, the child, people and surroundings are responsible.

Hence, transformation into better system is possible when the system exercises certain

responsibilities.

Sustainability (EBT)

Sustainability means to endure without giving away or yielding. Any prevalent system should be

stable. Any system undergoing transformation will have to exercise certain responsibilities to be

sustainable in that form.

2. Pattern Documentation

2.1. Pattern Name: Evolution (Stable Architectural Pattern)

Our project topic is “Evolution- Stable Architectural Pattern”. We have chosen Evolution as our

Super Enduring Business Theme as “Go Green” is about Earth evolving into a better place to live.

Evolution encompasses the process of Transformation by adopting certain Responsibilities to ensure

Sustainability.

Since this pattern is re-usable we have all the BOs pre-fixed with “Any” as it depicts a generic

pattern.

2.2. Known As

“Evolution- Stable Architectural Pattern” can also be known as-

• “Change- Stable Architectural Pattern”

Page 8: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

8

Any system, which wants to develop itself into another form, it has to undergo certain

change. Since change is not an immediate effect, it needs time and effort to achieve this new

state. Hence, this pattern is comparable to the “Evolution” architecture

• “Progress- Stable Architectural Pattern”

Progress can be defined as a growth in a system in a positive way. Our goal is to achieve a

better place for all living forms on Earth. Tracking the progress will enable us to see the

positive growth in the system. Therefore, “Progress- Stable Architectural Pattern” is similar

to our “Evolution- Stable Architectural Pattern”

2.3. Context:

We have chosen “Evolution” as our super EBT since it can be applied in many application areas.

This super EBT is realized using the EBTs of Responsibility, Transformation and Sustainability

which define the boundaries of our system. Any system undergoing the process of Evolution has to

consider these boundary conditions. In order to evolve, the system needs to adapt certain

Responsibilities to achieve the desired Transformation and maintain Sustainability.

Other potential application areas/scenarios are as follows:

1. Cure for cancer: In this context, evolution represents movement from Cancer being an

incurable disease for mankind to where an effective and reliable cure for Cancer becomes

available. This will require responsibilities to be fulfilled by scientists, engineers as well as

patients which will lead to a transformation in drug discovery and a sustainable growth in

solutions to cure cancer. The cure needs to be sustainable over a long period of time to ensure

that it works in the long-term for a diverse group of patients globally.

Page 9: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

9

2. Basic education: In this context, evolution represents movement towards 100 percent literacy

rate through basic education of all human beings. The Government, other Public entities as well

as Private entities and even individuals have to take on their responsibilities to play their part.

This will result in a fundamental transformation of the society. This transformation will need to

be a steady change so that it can sustain over generations and lead to achieving 100 percent

literacy as this cannot be achieved in a short-term.

3. Nuclear disarmament and world peace: In this context, evolution represents movement to a

world without nuclear arms leading to stable world peace. Every individual and organization has

to fulfill responsibilities to make this happen. The transformation involved is very slow but if

everyone fulfills their responsibilities then a sustainable change for better can be achieved

globally.

4. Child birth: In this context, evolution represents birth of a baby from an embryo stage. The

doctor, hospital, Government and pregnant woman all play a key role. Eventually, the

transformation happens in the form of child birth. If all responsibilities are properly fulfilled then

the child is born healthy with ability to sustain a long life.

Our project focuses on application of this pattern to Scenario 4.

Page 10: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

10

3. Problem

The problem expects to come with a solution to the architectural pattern “Evolution” that

encompasses the Enduring Themes Sustainability, Transformation and Responsibility. The problem

also expects to show that, this can be applicable across several domains. Any project, person or

product should be able to conform to this solution. Our project should be able to show the following

things as an outcome of adopting the architectural pattern “Evolution”.

3.1. Functional Requirements

Responsibility: For any system to achieve its goal, responsibility is a primary requirement.

Responsibility is the ability to act without supervision. For example, if we have to make our Earth a

better place to live, we are responsible for our actions. It is our responsibility to work for the

betterment of the Earth.

Sustainability: Any goal that is achieved should be sustainable. It should last for a longer time.

Otherwise the sole purpose of achievement goes in vain. The system should work towards

sustainable development in order to reap its benefits for longer periods of time.

Transformation: Any system undergoes transformation over a period of time. A child grows into an

adult. Even the goals initially set, when achieved transform through the course. For example, by

cultivating good habits to improve the quality of life on Earth, we transform to become more

responsible human beings.

AnyActor: This plays the lead role in the system. The actor cultivates Any Habit which depicts the

actor’s responsibility.

Page 11: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

11

AnyOption: Any Actor chooses Any Option. The option may be a good one or bad one. Any

Option may have positive or negative impact on the people.

AnyHabit: Any Habit shows the responsibility. Any Actor has Any Habits. Any Habit may be good

or bad.

AnyExperience: Any Actor develops Any Experience. Any Experience is indirectly because of the

Any Event and its Any Consequence.

AnyAction: Any Action shows how responsible it is. Any Action results in Any Event. Since Any

Action shows responsibility, it should be for a good cause.

AnyEvent: Any Event that occurs is based on Any Action. Any Event results in Any Consequence.

Any Event may be good or bad depending on Any Action.

AnyConsequence: Any Consequence is the outcome of Any Event. Any Consequence leads to

Transformation. So, Any Event that occurs must be good, for the Transformation to be positive.

AnyDecision: Any Decision is taken for the sustainability of the system. Any Party makes decision

in the interests of the system. Any Decision is related to Any Device because, Any Device comes up

with metrics that help in making Any Decision.

AnyDevice: Any Device helps in making Any Decision. Any Device has metrics, that helps in

making decisions.

AnyParty: Any Party is a group, or an organization. Any Party formulates Any Policy. Any Party

takes up Any Decision for the sustainability of the system.

Page 12: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

12

AnyPolicy: Any Policy is made by Any Party if the situation has to be brought under control. Any

Policy brings about Transformation in the system. Any Policy made affects Any Location.

AnyLocation: Any Location is affected by Any Policy. Any Policy is made to bring about

Transformation in Any Location.

3.2. Non-Functional Requirements Perseverance - Perseverance means steady persistence in a course of action, a purpose, a state, etc.,

Perseverance is very important during Transformation or any other task because, any actor should be

highly dedicated and not get distracted when faced with problems while performing a challenging

task.

Completeness - No task is complete until it has been brought into effect. The Transformation is also

a highly challenging and time consuming task. Completeness is one of the important requirements in

accomplishing any project.

Effectiveness - Anything with no effectiveness isn’t much useful. The tasks we perform must be

effective, such that, it should be able to help the plant, animal and the human community.

Acceptance - It requires us to accept the present situation, and the effects. We must accept the

changes that are required to bring about and work towards it. Any actor should accept the changes

as quickly as possible and work towards the betterment of the situation.

Page 13: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

13

4. Challenges and Constraints

4.1. Challenges

1. AnyOption can be good or bad. Choosing the good option is a challenge.

2. AnyHabit can be good or bad. AnyActor must choose the right habit which poses a

challenge.

3. AnyDecision should always be taken carefully. AnyPolicy made depends on the decision

taken. So, AnyDecision must be always taken in the best interests.

4. AnyPolicy made must be really helpful and must achieve the goals specified.

5. AnyAction depicts the Responsibility. Thus AnyAction should be good.

6. One of the main challenges is to identify the 3 EBTs, the Enduring Business Themes,

because, an EBT has to be persistent across several domains and also throughout the lifetime

of a system.

7. Every BO needs to have a tangible IO. Identifying IO and maintaining their minimum

requirement is a challenge.

8. Maintaining the balancing condition is a challenge.

9. Identifying the BOs i.e... Business Objects is also quite challenging, because, any IOs,

Industrial Objects should be able to plug to these connectors, i.e. BOs.

10. Any consequence is a result of Any Event, which itself is because of Any Action. So every

consequence must be a result of every action.

Page 14: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

14

11. Any Decision aims to achieve sustainability. So, it depends on whether the decision is taken

in best interests of the system or not. It depends on the system.

12. Any actor has to be classified as humans or creatures.

13. Any Party must be a human, organization or a country.

14. Any Actor and Any Party differ from each other. Understanding this difference and applying

it accordingly, is a challenge. It depends on the context, where it is being applied.

4.2. Constraints

1. Any Actor cultivates one or more habits.

2. Any Actor chooses one or more options.

3. One or more actions are responsible in a system.

4. One or more habits depict responsibility.

5. Any action results in one event.

6. Any event has one or more consequences.

7. Transformation is caused by one or more consequences.

8. Any Party makes one or more decisions.

9. Any Device helps in making one or more decisions.

10. Any Party makes one or more policies.

11. Any policy affects one location.

Page 15: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

15

12. One or more policies bring about Transformation.

13. One or more parties aim for sustainability.

14. One or more decisions are taken to achieve Sustainability.

Page 16: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

16

5. Solution

5.1. Pattern Structure and Participants

We have tried to provide a best solution to the problem. Our solution is based on reusable pattern

that provides a generic solution to all the scenarios that aim to “Evolution”. It uses its sub-goals,

Sustainability, Transformation and Responsibility and the above mentioned Business Objects. Our

main aim is to provide solution to any scenario under this “Evolution” using non-persistent IOs.

Page 17: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

17

5.2. Class Diagram

Page 18: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

18

5.3. Class Diagram Reference

Page 19: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

19

5.4. CRC Cards

<<P-EBT>>(Responsibility)

Responsibility Collaboration

Client Server

Being accountable for actions AnyHabit

AnyAction developHabit() maintainHabit()

resultOfAction()

Attributes: degree, duration, typeOfHabit, typeOfAction, effect

<<P-EBT>>(Sustainabilty)

Responsibility Collaboration

Client Server

Support living AnyParty

AnyDecision

nurture()

striveToLive()

decideToSustain()

Attributes: duration, typeOfNourishment, amountOfNourishment, noOfLivingFormsNurtured, typeOfLivingForms

Page 20: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

20

<<P-EBT>>(Transformation)

Responsibility Collaboration

Client Server

Bring change constantly AnyPolicy AnyConsequence

bringChange() transform()

beget ()

Attributes: typeOfPolicy, noOfLivingFormsAffected, typeOfConsequence, stateBeforeChange, stateAfterChange

<<P-B0>>(AnyHabit)

Responsibility Collaboration

Client Server

Prolong an action over a period of time Responsibilty AnyActor

interpretResponsibility() affectPerson()

adoptedByPerson()

Attributes: duration, typeOfHabit, causeForHabit, reasonToStopHabit, reasonToContinueHabit

Page 21: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

21

<<P-B0>>(AnyOption)

Responsibility Collaboration

Client Server

Provide choices for person to choose AnyActor optedByActor()

describe()

offerChoices()

Attributes: numberOfOptions, typeOfOption, name, feasibiltyOfOption, typeOfHabitResulted

<<P-B0>>(AnyActor)

Responsibility

Collaboration

Client Server

Choose options for healthy living AnyHabit

AnyOption

developHabit()

followGoodHabit() chooseFeasibleOption()

Attributes: name, dateOfBirth, gender,habitPossessed, analyticalSkills

Page 22: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

22

<<P-B0>>(AnyExperience)

Responsibility Collaboration

Client Server

Affect personality AnyActor

enlighten()

enhancePersonality()

degradePersonality()

Attributes:

type, startDate, endDate, name, effect,

<<P-B0>>(AnyAction)

Responsibility Collaboration

Client Server

Result in an event Responsibility AnyEvent

depictResponsibilty() cause ()

beAccountable()

Attributes: location, purpose,outcome, type, objectiveOfAction

Page 23: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

23

<<P-B0>>(AnyParty)

Responsibility Collaboration

Client Server

To support policies made AnyPolicy AnyDecision

Sustainablity

devise () follow ()

aimForSustenance()

Attributes: numberOfPeople, name, goal, location, numberOfPoliciesMade

<<P-B0>>(AnyPolicy)

Responsibility Collaboration

Client Server

Help in achieving the goal AnyParty

AnyLocation

create ()

suppor () apply ()

Attributes: duration, partyName, type, numberOfFollowers, validLocation

Page 24: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

24

<<P-B0>>(AnyLocation)

Responsibility Collaboration

Client Server

Abide policies if applicable AnyPolicy

abide ()

check ()

housePeople()

Attributes: name, latitude, longitude, typeOfLocation, numberOfValidPolicies

<<P-B0>>(AnyDecision)

Responsibility Collaboration

Client Server

Help in determination after consideration

AnyDevice AnyParty Sustainabilty

makeDecision()

adhereToDecision() sustain()

Attributes: startDate, endDate, effect, complexity, type

Page 25: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

25

<<P-B0>>(AnyEvent)

Responsibility Collaboration

Client Server

Provide outcome for any action AnyAction AnyConsequence

causeEvent() executeEvent()

mitigateRisk()

Attributes: duration, effect, type, detail, complexity

<<P-B0>>(AnyDevice)

Responsibility Collaboration

Client Server

Provide data for analysis AnyDecision

provideData()

facilitate ()

analyzeData()

Attributes: size, name, precision, accuracy, type, features

Page 26: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

26

<<P-B0>>(AnyConsequence)

Responsibility Collaboration

Client Server

Provide conclusion for an action AnyEvent

Transformation

affect ()

consume ()

introduce ()

Attributes: duration, type, effect, complexity, location

Page 27: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

27

6. Consequences

1. One of the important issues using Stability Pattern is to come up with IOs that can be plugged to

the BOs.

2. We have to maintain the synchronization between the IOs and the BOs. So, naming the IOs

correctly is also a challenging task

Page 28: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

28

7. Applicability

7.1. Application 1

7.1.1. Case Study: Go Green The first case is Go Green. It shows a simple use case of how commuters develop the habit of

travelling in vehicles. This emits smoke and other toxic gases, which result in Global Warming.

These habits depict the Responsibility of the actors. Global Warming causes melting of polar ice

caps. This endangers species like Polar Bear which loose fur, and eventually die. So, in order to

bring Transformation, Government and other organizations take decisions and make policies. The

decisions aim at Sustainability of the system.

Page 29: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

29

7.1.2. Class Diagram

Page 30: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

30

Page 31: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

31

7.1.3. Use Case

Use Case # 1

Use Case Title: Go Green

Actor Role

Any Actor Commuter, Polar Bear

Any Party Certification Board, Government

Class Type Attributes Operations

Responsibility EBT degree effect typeOfHabit

depicts()

Transformation EBT duration typeOfLivingForms stateBeforeChange stateAfterChange

achievedBy()

Sustainability EBT duration typeOfLivingFormsAffected

benefits()

Any Actor BO name habitsPossessed analyticalSkills

is()

Any Habit BO typeOfHabit duration interprets()

Any Option BO numberOfOptions typeOfOption name

canBe()

Any Experience BO type effect

prompts()

Any Action BO outcome type

determines()

Any Event BO effect duration complexity

resultsIn()

Any Consequence BO complexity location effect

endsIn()

Page 32: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

32

Any Party BO name numberOfPeople goal

makes()

Any Decision BO startDate endDate type

persistsIn()

Any Device BO features accuracy size

facilitates()

Any Policy BO duration validLocation type

describes() aims()

Any Location BO name latitude longtitude

undergoes()

Commuter IO name gender species intelligence

chooses()

Non-Carpooling IO smoke emitted

becomes()

Driving IO type mileage model

leadsTo()

Death IO cause age nature

formulates()

Polar Bear IO gender species

faces()

Emitting Toxic Gases IO amountOfSmoke numberOfToxicGases typeOfToxicGases

causes()

Increasing Temperature IO temperature impact

forms()

Melting of Ice Caps IO location amountOfSnow temperature

endangers()

Going Green IO methods effects

decidedBy()

Smoke Detector IO size model shape

isEncompassedBy()

Page 33: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

33

characteristics

Certification Board IO size numberOfPeopleEmployed profession

interactsWith()

Government IO size location numberOfPeople duty

uses()

Carpooling Policy IO model mileage smokeEmitted

appliesTo()

Country IO location population numberOfSpecies size problems

undergoes()

Use Case Description

1. Commuter is AnyActor

2. Commuter chooses AnyOption what does Commuter choose?

3. AnyOption canBe Driving what can AnyAction be?

4. Driving leadsTo Non-Carpooling what does Driving lead to?

5. Non-Carpooling becomes AnyHabit what does Non-Carpooling become?

6. AnyHabit interprets Responsibility what does AnyHabit interpret?

7. Responsibility depicts AnyAction what does Responsibility depict?

8. AnyAction determines Emitting Toxic Gases what does AnyAction determine?

9. Emitting toxic gases causes Increasing Temperature what does Emitting toxic gases cause?

10. Increasing Temperature forms AnyEvent what does Increasing Temperature form?

11. AnyEvent resultsIn AnyConsequence what does AnyEvent result in?

Page 34: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

34

12. AnyConsequence endsIn Melting of Ice caps what does AnyConsequence ends in?

13. Melting of Ice caps endangers Polar Bear what does Melting of Ice caps endanger?

14. Polar Bear faces death what does Polar bear face?

15. Death formulates AnyExperience what does Death formulate?

16. Any Experience prompts Certification Board whom does AnyExperience prompt?

17. Certification Board interactsWith Government whom does Certification Board interact with?

18. Government uses Smoke Detector what does Government use?

19. Smoke Detector is isEncompassedBy AnyDevice what does smoke detector encompass?

20. AnyDevice facilitates AnyDecision what does AnyDevice facilitate?

21. AnyDecision persistsIn GoingGreen what does AnyDecision persist in?

22. Going Green is decideBy Any Party Whom is GoingGreen decidedby?

23. AnyParty makes AnyPolicy what does AnyParty make?

24. AnyPolicy describes CarPooling Policy what does AnyPolicy describe?

25. Carpooling policy appliesTo Country what does Carpooling applies to?

26. Country existsIn AnyLocation where does Country exist?

27. AnyLocation undergoes Transformation what does AnyLocation undergo?

28. Transformation is achievedBy AnyPolicy how is Transformation achieved?

29. AnyPolicy aims Sustainability what does AnyPolicy aim?

30. Sustainability benefits AnyActor whom does Sustainability benefit?

Page 35: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

35

7.1.4. Behavior Diagram

NOTE: An inverted image has been inserted below for the sake of readability when printed on a paper.

Page 36: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

36

Page 37: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

37

7.2. Application 2

7.2.1. Case Study: Child Birth The second application is Child Birth. The application describes how a Pregnant Woman exercises

her Responsibility by following certain rules and prescriptions suggested to her. The doctor

prescribes medicines to the pregnant woman and assists in child birth. All actors possess certain

Responsibilities and must ensure the baby undergoes positive Transformation. The government

imposes certain conditions and introduces policies for the Sustainability of all beings.

Page 38: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

38

7.2.2. Class Diagram

Page 39: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

39

7.2.3. Use Case

Title Deliver baby

ID 2.1

Actors Roles

Any Actor PregnantWoman, Doctor, Baby

Actor Type Attributes Operations

Transformation EBT durationToTransform

noOfLifeFormsAffected

enable()

Responsibility EBT typeOfHabit,

typeOfAction

trigger()

Sustainability EBT amountOfNourishment

typeOfLivingForms

isFor()

AnyActor BO name

gender

accountsFor()

Page 40: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

40

AnyActor BO name

gender

habitsPossessed

accountsFor()

AnyHabit BO typeOfHabit

duration

reflects()

AnyOption BO purpose

number

develop ()

AnyEvent BO duration result_in()

AnyConsequence BO type basedOn()

AnyPolicy BO partyName

validLocation

duration

decidedBy()

AnyParty BO name

goal

collaborate ()

AnyDevice BO size, effect, precision

assist ()

AnyDevice BO size, effect, precision

assist ()

AnyLocation BO typeOfLocation

name

have()

PregnantWoman IO intelligenceLevel follow()

Doctor IO qualification suggest()

Baby IO height

weight

harmedBy()

SmokingCigarett

e

IO noOfPeople

effect

form()

Page 41: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

41

LaborWard IO size

noOfEquipment

foundIn()

Hospital IO noOfRooms admit()

FoetalMonitor IO accuracy

usedIn()

Government IO support

stability

finalize()

PregnancyTravel IO validity enforcedIn()

LaborPain IO intensity

duration

leadTo ()

EatPrenatalTable

t

IO brandName

noOfTablets

nourish()

AbdomenStretch IO startTime helpDeliver ()

Contractions IO interval constitute()

Page 42: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

42

Policy duration

Airport IO formPartOf()

Use Case Description

1. Doctor is AnyActor and he suggestsTo EatPrenatalTablet what does doctor prescribe?

2. PrenatalTablet nourishes PregnantWoman what is the effect of PrenatalTablet on Pregnant

Woman?

3. PregnantWoman follows PregnancyTravelPolicy Who follows PregnancyTravelPolicy?

4. PregnancyTravelPolicy enforcedIn Airport which formsPartOf AnyLocation Where is

PregnancyTravel Policy applicable?

5. AnyLocation has AnyPolicy Where is AnyPolicy enforced?

6. AnyPolicy is decided by AnyParty Who decides on AnyPolicy?

7. AnyParty collaborate with Government to With whom does Government collaborate?

8. finalize AnyDecision What do AnyParty and Government do?

9. AnyDecision is facilitated by AnyDevice What facilitates AnyDecision?

10. AnyDevice which is Fetal monitor, assists to monitor Abdomen stretch What does

AnyDevice monitor?

11. Fetal monitor usedIn laborWard Where is foetal monitor used?

12. Labor ward foundIn hospital Where is labor ward found?

13. Hospital admits PregnantWomen Where is pregnantwomen admitted?

14. PregnantWomen feels laborPain What does pregnantWomen feel?

15. LaborPain leads to contractions What does laborpain lead to?

Page 43: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

43

Page 44: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

44

Alternatives:

1. Any form of smoke other than Cigarette Smoke could harm baby

2. If baby is not present at an area where there is smoke, it will not be harmed.

3. Policies pertaining to diet and exercise could also be imposed on Pregnant woman apart from

travel policies.

Page 45: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

45

7.2.4. Behavior Diagram

NOTE: An inverted image has been inserted below for the sake of readability when printed on a paper.

Page 46: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

46

Page 47: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

47

8. Traditional Class Diagram

Page 48: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

48

8.1 Measurability Quantitative

The total number of methods in any system can be calculated using the formula

T = CXM

where T= total no of operations

C = total number of classes

M = number of methods per class

a) Traditional Model

C = 56

M = 3

T = 56*3 = 168

b) Stability Model

C = 29

M = 3

T = 29*3 = 87

Analysis:

• This shows that Stability model has less number of operations and lesser complexity

Page 49: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

49

• The number of applications built on Traditional model is one because of tangible nature of

system whereas the Stable model uses EBTs and follows a non-tangible model

• Because of this the cost of the system is reduced

Qualitative Measurement

The reusable nature of the system helps to extend the Stable model to various applications

and this highly desirable and reduces the time to market the product.

9. Modelling Issues [EXTRA]

9.1 Abstraction The chief entities that make up the stability model are:

1. Enduring Business Themes (EBT)

2. Business Objects (BO)

3. Industrial Objects (IO)

1. EBTs consist of the classes that are persistent across different domains and throughout the

lifecycle of a system. They are unchangeable. They are the sub-goals when combined together result

in the mail goal that has to be achieved. They consist of the core knowledge, which are used by the

BOs and IOs.

2. BOs consist of classes that act as connectors between the real life objects and the EBTs. The BOs

Page 50: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

50

have to be re-usable. So, the BOs have to be carefully chosen.

3. IOs consists of non-persistent classes. They may or may not remain constant throughout. They are

plugged with the BOs to connect to EBTs. They are never directly connected to EBTs. IOs change

according to the requirements.

9.2 Detailed Study In this project, we have tried to overcome the drawbacks of the Traditional Modeling System. The

traditional models aren’t reusable across other applications. This is mainly because, they contain

only non-persistent objects. In order to maintain re-usability and stability, we need to use some

persistent objects. Identifying the EBTs was quite challenging since, they are persistent. So, we had

to choose a set of EBTs that didn’t change over time. BOs too are very important. Since, they act as

the connectors, they are a channel to achieve the ultimate goal. The IOs however are non-persistent.

They can be added or removed depending on the requirements and scenarios. However, IOs make

the pattern complete. One can understand the pattern completely when IOs are applied to the

stability model.

10. Design and Implementation Issues [EXTRA]

10.1 Interface Implementation The interface provides a simpler and easier understanding of the involving sub-systems. It

hides the inner detailed involved, thus making things look simpler.

Page 51: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

51

The interface conceals all difficulties involved by presenting the user a colorful version of the

system. Thus, the user doesn’t have to deal with the inner complexities. For example, when a person

goes to a restaurant, he doesn’t know what items are available in the restaurant. He can’t peep into

the kitchen to check what is available. Obviously, the kitchen will be in a state of chaos, with the

chefs cooking multiple delicacies, with all vegetables spread around. So, the hotel manager presents

the visitor a menu card which displays the items available and the price of each item.

Restaurant.java package.mystructure.restaurant public interface Restaurant{

public items getItems(); }// End of interface This is a very nice interface. It doesn’t mention anything but just shows the food items

available. It can be used for all types of items. Suppose the restaurant has two types of items - food

and drink. Both of them can use it.

Also, it can be used by other restaurants too. It is not restricted to a single type of restaurant.

Now, let us try to apply the implement the interface for food items.

public class FoodItems implements Restaurant { public items getItems(){ FoodItems foodItems = new FoodItems(); return foodItems; } }; //end of a class

Page 52: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

52

Now let us consider another class HotelManager. package.mystructure.Restaurant public class HotelManager implements Restaurant{ public DrinkItems welcomeGuest(){ Menu menu = new Menu(); DrinkItems drinkItems = (DrinkItems)menu.showItems(); return drinkItems; } }; //end of class

11. Testability [EXTRA] Our model “Evolution“ can be used with no changes being made to the core design and only

plugging the industrial objects for the number of applications. Then the stability model is said to be

testable. We have two applications in our project.

1. Go Green

2. Giving birth to a baby

Both the applications don’t change the core design. Using these applications and many other

applications, it can be inferred that, the “Evolution“ is stable and testable.

12. Known Usage [EXTRA] Our stability model “to be filled“ is applicable in many scenarios. Some of the applications

Page 53: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

53

where it can be used are:

1. Setting up a business: Setting up a business is one of the profound examples that incorporate our

Stability model. It isn’t an easy task to up bring a business from the scratch. There are several

responsibilities that need be performed. In order to bring about a transformation, i.e from the scratch

to a full-fledged business, the business has to grow at a sustainable pace.

2. Learning an Art: Learning any form of art isn’t a cake walk. It comes with its own challenges,

hard work and determination. It can be well applied across our Stability Model because, the student

himself is responsible for the way he learns, the way he practices. As a student learns the art better,

one can see the maturity, which is a slow transformation. This can occur only if the student is

dedicated enough to practice and progress at a sustainable pace.

13. Lessons Learnt and Heuristics [EXTRA]

We had a great time working on this project. We realized that, identifying the EBTs was the

most challenging tasks, since they have to be persistent. We had to work a lot on our BOs since, it

had to be applicable across several applications. This project gave an insight into how can one come

up with a generic model that is stable enough to be re-used in different application scenarios.

Then coming up with application specific class diagram was quite challenging and

interesting.

Heuristic 1: The class diagram should include less number of connections between the BOs and IOs

in order to reduce the complexity and the chances of cross-overs. Also, lesser the connections, lesser

the possibility of unbalanced class diagram or an erroneous class diagram.

Heuristic 2: The Use Cases and Behavioral Diagram follow an iterative approach. It can’t be done

Page 54: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

54

completely aloof of each other, since both of them capture the dynamic behavior of the system.

14. Conclusions:

The project gave an insight into developing stability models. By creating our stability model, we

could apply in two applications. They were well applicable, re-usable among the two applications. It

can be re-used in other applications too. The project also practical knowledge of designing

behavioral diagrams and how they differ from the class diagrams. It was a wonderful experience

doing this project.

Page 55: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

55

15. Updated Problem Statement

Page 56: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

56

Figure 1: Green Earth for a Better Tomorrow

Page 57: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

57

1. Abstract Goal

The goal of our project “Go Green” is to identify some key solutions to make Earth a better place to

live. The model aims at conserving the Earth’s resources by focusing on measures such as reducing

energy consumption, using eco-friendly products, preserving flora and fauna and making better

policies to encourage reuse and recycle. We have used this in our traditional class diagram and have

attempted to model the stability model in 2nd project.

Motivation

The term “Go Green” is used to describe the process of changing the lifestyle for a protected and

healthier environment. Many people around the world have adapted the very idea of “Go Green” in

their lives and this gave us motivated us to explore methods and model a system to retain and

improve the Earth’s resources and hence, save our planet. In traditional modeling we have used the

concept of Go Green and applied the same concept to have a stable pattern in the 2nd project. For the

stability model we have also used the concept of Child birth and have explained how using the same

EBT and BO we can apply the model to suit various applications.

Idea

The term “Go Green” is used to describe the process of changing the lifestyle for a protected and

healthier environment. Many people around the world have adapted the very idea of “Go Green” in

Page 58: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

58

their lives and this gave us motivated us to explore methods and model a system to retain and

improve the Earth’s resources and hence, save our planet.

Major Findings

Deforestation is increasing across the globe. The forests are turning into deserted landscapes

due to climatic changes and high temperatures. Global Warming is playing a major role in the

destruction of the forests. Forests are not the only ones affected by this, other lives on Earth are also

affected.

In order to establish sustainable living we need to adopt some principles like recycling,

reusing and reducing energy and resource consumption. Also, calculating carbon footprint will help

us understand the amount of carbon emitted thereby enabling us to contribute to a better

environment.

2. Description of the domain

The “Go Green” project is an attempt to make Earth greener and better the lives of human

beings, the flora and the fauna. Reduced global warming, using energy sources efficiently,

forestation, organic food consumption, using better products, better policies are a few of the attempts

to make Earth a healthier place to live.

Page 59: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

59

Figure 2: Go Green for a better surroundings

Emission of greenhouse gases like carbon dioxide, methane, CFCs (chloroflurocarbons),

ozone, burning of fossil fuels, have resulted in global warming, thus leading to imbalance in the

atmosphere. Increase in global temperature has been mainly caused by concentrations of greenhouse

gases. Human activities such as deforestation, which is a major contributor to global warming, pose

great threats such as, melting of polar ice caps, depletion of the ozone layer, changes in agricultural

yields, intense weather changes, extinction of rare species of both plants and animals, changes in

sea-levels. These could be very few challenges.Forestation, good practices such as car-pooling,

biking/walking, contribute to improving the present situation.

Page 60: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

60

Figure 3: Factors that cause damage to the Earth

Use of chemical fertilizers, pesticides, additives such as coloring, not only affect our health,

but also affect our surroundings. Chemical fertilizers and pesticides, as we know, harm the soil too

and make them less fertile. By using organic food, we completely avoid using any of the artificial/

synthetic products. No growth hormones or antibiotics are given to the animals from which the

organic meat, dairy and other products are produced. Thus, the organic foods are found to be safer,

environment-friendly, farmer friendly, and also better tasting.

Page 61: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

61

We have been using non-renewable sources of energy at an alarming rate. From drying

clothes, air-conditioning, we are dependent on electricity. Also, we have been using fossil fuels,

petroleum products, etc without realizing its effects on us. Apart from the fact that, these sources of

energy are finite, we also need to keep in mind that, the pollutants, by products, wastes produced by

these sources of energy reduce to a great extent, the emission of toxic gases and carbon dioxide

which further reduce the global warming. Harnessing renewable sources of energy such as solar

energy, wind energy etc is a major step towards going green. Also, if we have to use non-renewable

sources of energy, using them efficiently helps in making our Earth greener. Simple practices such

as switching off the computers when not in use, biking to work at least twice a week also makes a

significant contribution.

It has been found that, using better products contribute to a better Earth. But, what we don’t

realize is that, we have made our lives so comfortable by using mediocre products, which may make

our lives easy now, but have a negative impact on the surroundings, atmosphere and also affect us in

the future. Everyday, we use tons of plastics without realizing that, plastics are hard to recycle and

how disposing the petroleum-based plastics can affect our environment.

Better policies made by the government, non-profit organizations, also contribute to a better

environment. Rules and regulations that enforce the people to use better products, to plant more

number of trees, to use energy efficiently which attempt to make Earth a better place to live.

Page 62: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

62

Figure 4: Impact of Green Earth

Page 63: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

63

Figure 5: Block Diagram of model “Go Green”

4. Description of the Program that is wanted

Our model should aim to cover the following:

Green Earth will improve human life, vegetation and wildlife.

Better Products such as organic food, less use of plastics, using the energy resources

efficiently will lead to Green Earth.

Page 64: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

64

Better Policies set by the Government to drive innovation for better product design and

commercialization along with increased forestation and setting energy efficiency guidelines

will help make Earth a better place to live.

Forestation, efficient energy consumption will result in reducing the global warming which

will help in making our Earth more green.

Better human life and better flora and fauna will result in better consumption of the food by

humans, and wildlife.

5. Detailed Requirements

Green Earth:

■ Increase in Organic food consumption will result in a greener Earth.

■ Greener Earth will improve the life on Earth.

■ Forestation, reduction in global warming and not using plastics contribute to Green Earth.

Human Life:

■ Green Earth means reduced global warming which would lead to better human life

■ Improved living conditions of humans will help devise better policies for the environment

■ Improved living conditions would lead humans to take better care of their environment

leading to better flora and fauna.

Forestation:

■ Planting more trees, growing more forests will act as both source and sinks of carbon dioxide

emissions which result in reducing the Global Warming.

Page 65: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

65

■ More the plants, trees and forests around us, greener the surroundings, which will make the

Earth look greener.

■ Better policies, rules and regulations and strict measures by the Government to restore

forests, will result in an increase in the number of forests. Such programs and sincere efforts

will result in growing more forests, which is the need of the hour.

Reduced Global Warming:

• Forests play a key role in reducing Global Warming since, forests are both sources and sinks

of carbon dioxide emissions.

• Using renewable resources of energy, carpooling practices, hybrid vehicles etc are some of

the ways of using energy efficiently which will result in reducing the global warming.

Reducing global warming will result in greener Earth since, the reduction of toxic gases,

measures to prevent melting of polar ice-caps will preserve the plant and animal life.

Energy Efficiency:

■ Biking and walking as far as possible, not burning fossil fuels, coal, oil etc helps to conserve

the non-renewable sources of energy, which will thus, reduce large emissions of carbon

dioxide and other toxic gases which increase the surrounding temperature causing Global

Warming.

■ Better products such as hybrid cars, CFL lights instead of incandescent bulbs, waste-derived

bio-fuels, are some of the ways to efficiently use the energy resources. Also, using renewable

resources of energy for developing products will help conserve the energy resources.

Page 66: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

66

■ Better policies, programs to use renewable sources of energy will help. Government

regulated measures, setting new rules and regulations to use the energy resources in a

reserved manner will result in efficient energy consumption.

■ Utilizing house-hold appliances such as the washer/dryer, dishwasher on full load will reduce

energy consumption.

Policies:

■ Active participation by the Government, industry and public in introducing norms and

regulations to help produce better products which can help reduce waste, reuse existing

products, build more energy efficient products and promote forestation.

■ Better policies will create the right incentives which will involve participation by individuals

and corporations.

Products:

■ Use of products made of bio-degradable and/or recycled material would result in the

reduction of the use of products made of plastics.

■ Fruits and vegetables grown naturally are better products as compared to the ones grown with

the use of fertilizers and other chemicals, and hence promote humans to include organic food

in their diet.

■ Use of products that use better alternative sources of energy like those obtained from fuel

cells, solar power, nuclear power, wind power etc. would lead to efficient use of energy.

■ The government introduces new and better policies that encourage the manufacture and use

of the above mentioned better products.

Say No To Plastics:

Page 67: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

67

■ Plastics are known to cause heavy damage to the ecosphere. Using better products is one way

to say no to plastics. Better products include bio-degradable material which will reduce the

damage caused by disposing harmful material.

■ Reduced plastic usage will lead to a better earth because, plastic disposal and burning plastics

releases toxic fumes which harm the atmosphere.

■ The burning of plastics also results in the emission of green house gases which destroy the

atmosphere. So, lesser the use of plastics, greener the surroundings.

Organic food consumption:

■ Increase in organic food consumption will reduce the usage of industry products such as

pesticides which in turn reduces the energy consumption and industry waste.

■ Positively reinforced cycle will help grow better wildlife and vegetation leading to greener

earth and producing better organic products.

Flora and Fauna:

■ Green Earth will result in stable climate which will improve the quality of vegetation and

wildlife

■ Better vegetation and wildlife will maintain the balance of environment which will allow

agricultural, diary and meat products to be available throughout the year improving quality of

human life

■ Improved Human life will result in better products that will ensure Greener Earth

6. Non Functional Requirements Quality:

Page 68: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

68

This system should aim to improve the quality of human life, flora and fauna. This should also improve the quality of the surroundings, the products we use, and the food we consume.

Usability:

This system should be useful, elegant and clear to the users. The users should not have trouble in understanding about what type of products to be used, what measures should be taken to grow forests etc.

Documentation & Availability: The system should be well documented and easily available to let people across the world as well as organizations to get a clear understanding.

Price: The system should be cost-effective for both the generation and consumption of products involved in the system. 7. Use Cases and User Context

Dear Professor: All the user cases have been re-written below. – Thanks.

Use Case Id: 1

Use Case Name: Generate more compost

Actors Roles

Person 1. Farmer 2. Consumer

Page 69: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

69

Farm Animal 1. Cow 2. Hen

3. Goat

Plant 1. Wheat crop

2. Rice crop

Use Case Description:

When Person(Farmer) uses less of fertilizers and pesticides, Plant(Wheat crop, Rice crop) grows in

natural conditions which increases the yield. This yield would further provide a good source of

nutrition to Person(Consumer) and Farm Animal(Cow, Goat, Hen) which would in turn improve the

compost generation. This compost would allow the growth of Plant(Wheat crop, Rice crop), hence

provide natural manure to Person(Farmer). This cycle would result in the increase in the total

compost generated.

Use Case Id: 2

Use case name: Use more bio degradable products

Actors Roles

Person

1. Consumer

2. Material Scientist

Plant 1. Tree

Page 70: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

70

2. Wheat crop

3. Rice crop

Wild Animal 1. Lion

2. Tiger

Use Case Description:

Increase in use of plastic products increases production of carbon-dioxide in the atmosphere which

leads to global warming.As Person(Consumer) realise this effect,they will start using alternatives

such as recycled paper bags which will in-turn increase the production of better bio degradable

products by Person(Material Scientist).This will reduce the carbon-dioxide production leading to

greener Earth, improving the life of Plant(Tree, Wheat Crop, Rice Crop) and Wild Animal(Lion,

Tiger)

Use Case Id: 3

Use case name: Pass laws and policies

Actors Roles

Person 1. Federal and State

Government Official

2. Consumer

Plant 1. Rice crop

2. Wheat crop

Wild Animal 1. Lion

Page 71: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

71

2. Tiger

Use Case Description

Person(Consumer) are unable to drive large scale changes.When Person(Federal and State

Government official) pass the right laws and policies it enables the production of better

products(e.g.better energy efficient products, organic food products) and forestation. This leads to

reduced carbon-dioxide which reduces global warming and therefore greener earth leading to better

life of Wild Animal(Lion, Tiger) Plant( Wheat Crop, Rice Crop) and Person(Consumer).

Use Case Id: 4

Use case name: Monitor electricity usage

Actors Roles

Person 1. Consumer

2. Engineer

3. Supplier

Plant 1. Tree

Wild Animal 1. Lion

2. Tiger

Use Case Description

Person(Engineer) have devised a SmartMeter which can be installed by Person(Supplier) in every

home and office. This helps monitor and track the energy consumption on per hour basis.So,

Page 72: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

72

Person(Consumer) can keep a tab on the energy usage which lowers the Earth’s temperature and

preserves Plant(Tree) and Wild Animal(Lion, Tiger).

Use Case Id: 5

Use case name: Increase use of renewable forms of energy

Actors Roles

Person 1. Consumer

2. Engineer

Plant 1. Tree

Wild Animal 1. Lion

2. Tiger

Use Case Description

Using non renewable forms of energy like coal, petroleum will lead to emission of carbon-dioxide in

atmosphere and increase mining and deforestation.This leads to destruction of

Creature(Vegetation,Wildlife). When Person(Engineer) starts producing more household and

industry appliances which use the renewable forms of energy like solar powered cells, wind power

generation global warming and deforestation is reduced which improves the lives of

Person(Consumer), Plant(Tree) and Wild Animal(Lion, Tiger).

Use Case ID: 6

Use Case Name: Increase in car pooling and use of public transport

Page 73: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

73

Actors Roles

Person 1. Individual

2. Colleague

Plant 1. Tree

Pet Animal 1. Dog

2. Cat

Use Case Description:

When Person(Colleague) starts carpooling and Person (Individual) starts using more public

transport, it reduces the amount of fuel burnt, thereby reducing the effect of global warming. This

will improve the quality of life of Plant (Tree) and Pet Animal (Dog, Cat) and Person (Individual).

Use Case Id: 7

Use Case Name: Check the level of heat-trapping gases in the atmosphere

Actors Roles

Person 1. Scientist

2. Driver

3. Researcher

Page 74: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

74

4. Resident

Plant 1. Tree

2. Wheat crop

3. Rice crop

Pet Animal 1. Dog

2. Cat

Wild Animal 1. Lion

2. Tiger

Use Case Description

Increase in heat-trapping content in the atmosphere increases the overall temperature of the earth

leading to drought which would affect Plant(Tree, Wheat Crop, Rice Crop), Wild Animal(Lion,

Tiger), Pet Animal(Dog, Cat). To prevent this, Person(Scientist, Researcher) devise certain formulae

and methods called “carbon footprint” to calculate the amount of carbon dioxide emitted from

automobiles, air crafts, electric heaters, lights etc. By knowing the carbon

footprint,Person(Driver,Resident) take measures such as reduce the usage of electric heaters, recycle

paper etc to maintain the carbon dioxide content to a minimal level.

Use Case Id: 8

Use Case Name: Preserve forests

Actors Roles

Page 75: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

75

Person 1. Student

2. Profession

Wild Animal 1. Lion

2. Tiger

Farm Animal 1. Cow

2. Pig

3. Hen

Plant 1. Tree

Use case description

Person(Student, Professional) must use less paper and use alternatives like computers. Going vegan

would bring down the demand for vast pastures and vacant land used for slaughtering and breeding

of Farm Animal(Cow, Pig) and breeding of Farm Animal( Hen) is reduced. All these would reduce

cutting of Plant(Tree) and hence preserve forests as well as (Lion, Tiger).

Use Case Id: 9

Use Case Name: Save animals from extinction

Actors Roles

Person 1. Individual

2. Scientist

Page 76: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

76

3. Environmentalist

Arctic Animal 1. Polar Bear

2. Beluga Whale

Use Case Description

According to Person(Scientist, Environmentalist), increase in the Earth’s temperature will result in

melting of ice caps and increase in sea level.This would lead to extinction of Arctic Animal(Polar

bear, Beluga whale). Person(Individual) must ensure to maintain Earth’s temperature by reducing

green house gases emission.

Use Case Id: 10

Use Case Name: Eat Organic food

Actors Roles

Person 1. Farmer

2. Consumer

Plant 1. Crop

2. Vegetables

Draft Animal 1. Bullock

2. Ox

Page 77: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

77

Diary Animal 1. Cow

2. Goat

Farm Animal 1. Hen

Use Case Description

Organic food is naturally grown by Person(Farmer) with the help of Draft Animals(Bullock, Ox) for

ploughing and minimal use of tractors thus reducing the use of fossil fuels.Consuming organic food

by Person(Consumer) leads to better health as it has less of pesticides and artificial fertilizers.

Consuming organic eggs and diary products prevents Diary Animal(Cow, Goat) and Farm

Animal(Hen) from being induced by artificial hormones, helping them have better life.

8. References for further study http://www.wikinvest.com/concept/Natural_%26_Organic_Foods_Consumption http://www.carbondiet.ca/green-living/going-green-tips/energy-saving-tips.html http://windy-future.info/2009/07/10/renewable-energy-sources/ http://www.dnr.wa.gov/ResearchScience/Topics/ForestResearch/Pages/futureofwashingtonsforest.aspx http://www.wikihow.com/Go-Green-at-Work 9. Table of Figures Figure 1:

http://blog.michellekaufmann.com/wp-content/uploads/2008/03/green-earth.jpg Figure 2:

http://www.sweetmelissasdream.com/GoGreenIntheCity.jpg Figure 3:

http://www.dinosaurfact.net/extinction/greenhouse_effect.jpg http://vivalagourmand.files.wordpress.com/2010/08/pesticide1.jpg

Page 78: CmpE 202 – Project 2 · PDF fileCmpE 202 – Project 2 Challengers ... Shivanshu Singh for his time and effort. This project provided us a good ... The system based on Evolution

CmpE 202 – Project 2 Challengers

78

http://www.plu.edu/~hoodbs/deforestation/home.html

Figure4: http://schoolchat.files.wordpress.com/2008/04/green-planet.jpg http://78notes.blogspot.com/

http://www.yenra.com/catholic/prayers/forthedignityofhumanlife.html 10. Acknowledgement

We respectfully thank Professor M Fayad for his support and encouragement to go ahead with the project “Go Green”.