Anda di halaman 1dari 15

AlphaMailClient

ReportI
8September,2016

RishabhJain
UtkarshSehgal

AlphaMailClient

SoftwareRequirementsSpecification

Pageii

AlphaMailClient

TableofContents
REVISIONHISTORY................................................................................................................................................II
DOCUMENTAPPROVAL........................................................................................................................................II
1.INTRODUCTION.....................................................................................................................................................1
1.1PURPOSE...............................................................................................................................................................1
1.2SCOPE...................................................................................................................................................................1
1.3DEFINITIONS,ACRONYMS,ANDABBREVIATIONS................................................................................................1
1.4REFERENCES.........................................................................................................................................................2
1.5OVERVIEW............................................................................................................................................................2
2.GENERALDESCRIPTION....................................................................................................................................2
2.1PRODUCTPERSPECTIVE........................................................................................................................................2
2.2PRODUCTFUNCTIONS...........................................................................................................................................2
2.3USERCHARACTERISTICS......................................................................................................................................2
2.4GENERALCONSTRAINTS.......................................................................................................................................3
2.5ASSUMPTIONSANDDEPENDENCIES......................................................................................................................3
3.SPECIFICREQUIREMENTS................................................................................................................................2
3.1EXTERNALINTERFACEREQUIREMENTS...............................................................................................................3
3.1.1UserInterfaces.............................................................................................................................................3
3.1.2HardwareInterfaces....................................................................................................................................3
3.1.3SoftwareInterfaces......................................................................................................................................3
3.1.4CommunicationsInterfaces.........................................................................................................................4
3.2FUNCTIONALREQUIREMENTS...............................................................................................................................4
3.2.1<FunctionalRequirementorFeature#1>..................................................................................................4
3.2.2<FunctionalRequirementorFeature#2>..................................................................................................4
3.3USECASES............................................................................................................................................................5
3.3.1UseCase#1.................................................................................................................................................5
3.3.2UseCase#2.................................................................................................................................................5
3.4NONFUNCTIONALREQUIREMENTS......................................................................................................................6
3.4.1Performance.................................................................................................................................................6
3.4.2Reliability.....................................................................................................................................................6
3.4.3Availability...................................................................................................................................................6
3.4.4Security........................................................................................................................................................6
3.4.5Maintainability.............................................................................................................................................6
3.4.6Portability....................................................................................................................................................6
3.5INVERSEREQUIREMENTS......................................................................................................................................6
3.6DESIGNCONSTRAINTS..........................................................................................................................................7
3.7LOGICALDATABASEREQUIREMENTS..................................................................................................................7
3.8OTHERREQUIREMENTS........................................................................................................................................7
4.ANALYSISMODELS..............................................................................................................................................7
4.1USECASEDIAGRAMS........................................................................................................................................8
4.2CONTEXTDIAGRAMS.......................................................................................................................................8
4.3DATAFLOWDIAGRAMS................................................................................................................................8
4.4STATETRANSITIONDIAGRAM...................................................................................................................8
4.5ENTITYRELATIONSHIPDIAGRAM..............................................................................................................8
A.APPENDICES..........................................................................................................................................................9

SoftwareRequirementsSpecification

Pageiii

AlphaMailClient
A.1APPENDIX1.........................................................................................................................................................9
A.2APPENDIX2.........................................................................................................................................................9

SoftwareRequirementsSpecification

Pageiv

AlphaMailClient

1.Introduction
Client is meant to be a role. For example, a web application which provides message management,
composition, and reception functions may internally act as an email client; as a whole, it is commonly
referred to as webmail. Likewise, email client may be referred to a piece of computerhardwareor

softwareworldwhoseimportantroleistoworkasaemailclient.

1.1Purpose
ThisApplicationisusedforsendingandreceivingmailtoandfromtherecipient.

1.2Scope
1)ThisApplicationnamedalphamailwillbeusedtosendandreceivemessagesand
attachmentsofflinei.e.withouttheuseofanybrowser.
2)UnliketheothermailserversthisApplicationcanbeusedfortheotheruserswhoarenot
registeredinthealphamail.
3)Evenifuserlacksinternetconnectionthenalsosendingmailsispossible.
4)MailServerlikeyahoo,Gmail,Hotmail,outlookcanbeusedforaccessingthemailsend
bythesender.

1.3Definitions,Acronyms,andAbbreviations
SMTPSimple Mail Transfer Protocol (SMTP) is an Internet standard for
electronic mail (email) transmission. First defined by RFC 821 in 1982, it was last
updated in 2008 with the Extended SMTP additions by RFC 5321which is the
protocol in widespread use today.SMTP by default uses TCP port 25.
POP3 (Post Office Protocol 3) is the most recent version of a standard protocol
for receiving e-mail. POP3 is a client/server protocol in which e-mail is received and
held for you by your Internet server.

IMAP4-In computing, the Internet Message Access Protocol (IMAP) is an Internet


standard protocol used by e-mail clients to retrieve e-mail messages from a mail
server over a TCP/IP connection. IMAP is defined by RFC 3501.

MIMEMultipurpose Internet Mail Extensions (MIME) is an Internet standard

Text in character sets other than ASCII


Non-text attachments: audio, video, images, application programs etc.
Message bodies with multiple parts
Header information in non-ASCII character sets

SoftwareRequirementsSpecification

Page1

AlphaMailClient

1.4References
[1]MailClient.(2016,August20).Retrievedfromhttps://en.wikipedia.org/wiki/Email_client
[2] Java MailApi Tag Library. (2016 August 20). Retrieved from
https://javamail.java.net/nonav/docs/api/
[3]JavaMail.(2016,August20).RetrievedfromMailClient.(2016,August20).Retrievedfrom
https://en.wikipedia.org/wiki/Email_client.

1.5Overview
WhilepopularprotocolsforretrievingmailincludePOP3andIMAP4,sendingmailisusually
doneusingtheSMTPprotocol.Anotherimportantstandardsupportedbymostemailclients
isMIME,whichisusedtosendfile,
emailattachments.Attachmentsarefilesthatarenotpartoftheemailproper,butaresentwith
theemail.TheemailclientswillperformformattingaccordingtoRFC5322forheadersand
body,andMIMEfornontextualcontentandattachments.Headersincludethedestinationfields,
To,Cc,andBcc,andtheoriginatorfieldsfromwhichisthemessagesauthor(s),Senderincase
there are more authors, and ReplyTo in case responses should be addressed to a different
mailbox.

2.GeneralDescription
Client is meant to be a role. This application which provides message management, composition,
and reception functions may internally act as an email client; as a whole, it is commonly referred
to as alpha mail. Likewise, email
client may be referred to a piece of computer hardware or software whose primary or most visible
role is to work as an email client.

2.1ProductPerspective
TheApplicationwillbeaWindowsbased,selfcontainedandindependentsoftwareproduct.

2.2ProductFunctions
TheSystemwillallowaccessonlytoauthorizeduserswithspecificrole.Dependinguponthe
usersrolehe/shewillbeabletoaccessonlyspecificmoduleofthesystem.
LOGINALoginfacilityforenablingonlyauthorizedaccesstothesystem.
SENDINGMAILTheusercansendtheircomposedmailalongwiththeattachment
usingthismodule.
RECEIVINGMAILThereceiverclientcanviewthepopupnotificationusingreceiving
module.
Downloadingattachments.
Facilityoflatestnewsupdates.

SoftwareRequirementsSpecification

Page2

AlphaMailClient

2.3UserCharacteristics

UserhaveelementarycomputerknowledgeandtheknowledgeofuseofApplication.
Theusershouldknowthedetailsofitscorrespondingemailaccount.

2.4GeneralConstraints
.Thesenderemailidandpasswordisrequired.Themailwillbesenttoparticularmailserver
providedinthedropdownmenu.

2.5AssumptionsandDependencies
Thesearesomefollowingassumptions:

ThesystemishavingrequiredconfigurationaswellasWindowsoperatingsystem.
FullworkingofalphamailApplicationisdependentsontheavailabilityofInternet
connection.

3.SpecificRequirements
None.

3.1ExternalInterfaceRequirements
3.1.1UserInterfaces
Main/Centralwindow:
Thisisthefirstscreenthatwillbedisplayedandallowstheusertoenterhisemailidand
password.Useralsoneedstoselectthehostserverwhetheritssmtp.gmail.comforsendingmail
usingGmailorother.
Helpwindow:
Thisisthescreen/windowavailableunderthemenuoptionhelpanditprovidesageneraland
briefintroductiontheproposedsystem.
Aboutwindow:
Thisisthescreen/windowavailableunderthemenuoptionhelpprovidingownershipand
buildinformationaboutthesoftwaresystem.
3.1.2HardwareInterfaces

AnIBMcompatiblePCisrequiredtosupportandrunthegivensoftware
Anx86,x86_64,arm,ultrasparcbasedprocessor.Javavirtualmachineiscompiledand
testedfortheseCPUarchitectures.
Atleast512megabytesofRAMisrequiredtorunboththesoftwareandthejavavirtual
machine.

SoftwareRequirementsSpecification

Page3

AlphaMailClient
3.1.3SoftwareInterfaces

AnIBMcompatiblePCrunningWindows/Linux/*BSD/*nixoperatingsystem.
JavaRuntimeEnvironmenttorunandtestthesoftware.
JavaDevelopmentKittobuildanddevelopthesoftware.
Modelioforgeneratingandviewingreports.

3.1.4CommunicationsInterfaces
None

3.2FunctionalRequirements
Thissectiondescribesspecificfeaturesofthesoftwareproject.Ifdesired,somerequirements
maybespecifiedintheusecaseformatandlistedintheUseCasesSection.
Abilitytosendmail.
Abilitytoreceivemail
AstandardSMTPclient
AstandardIMAP4client.

3.3UseCases
3.3.1Login
3.3.1.1BriefDescription
Thisusecasedescribeshowausercanloginintohisemailaccountusingthesoftwaresystem.
3.3.1.2Actors
Thefollowingactor(s)interactandparticipateinthisusecase:
user
SMTPServer
POP3/IMAPServer
3.3.1.3FlowofEvents
Basicflow:Thisusecasestartswhentheactorwishestosendorreadmail.Thelogin
intoaccountdialogispresentedtotheuserwherebyhecanchoosethedesiredemail
server.TheactorselectstheSMTP/IMAPserverwithamouseclickandloginsintoemail
serverusinglogincredentials.
AlternativeFlows:Incasetheuserisunabletologinintotheaccountusingthesoftware
system,anerrorisdisplayedaccordingly.
3.3.2ComposeMail
3.3.2.1BriefDescription
Thisusecasedescribeshowausercancomposethemailusingvariouseditingoptions.Usercan
sendattachmentaswell.
3.3.2.2Actors
SoftwareRequirementsSpecification

Page4

AlphaMailClient
Thefollowingactor(s)interactandparticipateinthisusecase:
user
3.3.2.3FlowofEvents
Basicflow:Thisusecasestartswhentheactorhasalreadyloggedin.Astheuserpresses
thecomposemailoptionawindowshowingtextareaincludingeditingoptionsfortext
appearswhereusercancomposemail.
AlternativeFlows:Incasethescreendoesnotsuccessfullyappearsinthesoftware
system,anerrorisdisplayedaccordingly.
3.3.3SendMail
3.3.3.1BriefDescription
ThisusecasedescribeshowausercanSendMailwhichhehascomposed.
3.3.3.2Actors
Thefollowingactor(s)interactandparticipateinthisusecase:
user
SMTPserver.
3.3.3.3FlowofEvents
Basicflow:Thisusecasestartswhentheactorwishestosendthemailhehascomposed.
TheSendbuttonispresentedtotheuseroncomposemailscreen.
AlternativeFlows:Incasethemailcouldnotbesent,anerrorisdisplayedaccordingly.
3.3.4ReceiveMail
3.3.4.1BriefDescription
Thisusecasedescribeshowausercanreadhisemailswhichhehasreceived.
3.3.4.2Actors
Thefollowingactor(s)interactandparticipateinthisusecase:
user
POP3/IMAPserver.
3.3.4.3FlowofEvents
Basicflow:Thisusecasestartswhentheactorwishestoreadtheemails.TheReceived
mail/Inboxmenuprovidestheuserwiththedesiredfacility.
AlternativeFlows:Incasethereceivedmailcannotberetrieved,anerrorisdisplayed
accordingly.
3.3.5DownloadAttachments
3.3.1.1BriefDescription
SoftwareRequirementsSpecification

Page5

AlphaMailClient
Thisusecasedescribeshowaattachmentfilecanbedownloadedfrommailserver.
3.3.1.2Actors
Thefollowingactor(s)interactandparticipateinthisusecase:
User
POP3/IMAPserver.
3.3.1.3FlowofEvents
Basicflow:Thisusecasestartswhentheactorhasalreadyloggedintotheemailaccount
andhasreadthereceivedmail.Themailifcontainsattachedfiles,theycanbe
downloadedeasily.
AlternativeFlows:Incasethefileisnotsuccessfullyloadedinthesoftwaresystem,an
errorisdisplayedaccordingly.

3.4NonFunctionalRequirements
Followingarethenonfunctionalrequirementsofthegivensoftwaresystem.
3.4.1Performance
Thesoftwareshouldbeabletosend,receivemail,readnewstoanextentpermittedbythe
operatingsystemwithoutaffectingtheoverallperformanceofthesystem.
3.4.2Reliability
Thesoftwaresystemmustprovidereliabilityregarding
Thedownloadedfilesshouldbeinconsistentstateincaseoffailures.
Theunethicalaccessofemailaccountisprotectedasitusesstrongnetworkingprotocols.
3.4.3Availability
Thesoftwareissupposedtoberesponsiveinallpossibleandimaginablestates,inthatitshould
notleaveauserastray.
3.4.4Security
Nospecificconcerns.
3.4.5Maintainability
Thesoftwareissupposedtobeeasilymaintainableandeasytochange.
3.4.6Portability
Thesoftwareisportableinthatitisexpectedtorunonthefollowingplatforms
Linux
mac
windows

3.5InverseRequirements
Thesoftwaresysteminnocaseshould,
SoftwareRequirementsSpecification

Page6

AlphaMailClient

Loginintoaccountwithinvalidlogincredentials.
Shoulddownloadthefilesinsameformatastheywerereceived.

3.6DesignConstraints
Thedesignconstrainsasapplicabletothegivensoftwaresystemare,
Thesoftwareistobebuiltusingwindowsasdevelopmentplatforms.
Allthedevelopmenttoolslicensedundersomeopenorfreelicense.
Openjdkisusedasjavaimplementation.
Developedonanx86orx86_64compatibleprocessor.
ThecodingstyleusedisasperOracle'sCodeConventionsfortheJavaProgramming
Language.

3.7LogicalDatabaseRequirements
None.

3.8OtherRequirements
Ifpossiblefollowingrequirementscanbeimplemented,
Useswingforjavafordevelopmentoftheproposedsoftwaresystem.
Implementinganinbuiltlibraryfornetworkprotocols.

4.AnalysisModels
None.

4.1UseCaseDiagram

SoftwareRequirementsSpecification

Page7

AlphaMailClient

4.2ContextDiagram

SoftwareRequirementsSpecification

Page8

AlphaMailClient

4.3DataFlowDiagrams(DFD)

SoftwareRequirementsSpecification

Page9

AlphaMailClient

4.4StateTransitionDiagrams(STD)
None.

4.5EntityRelationshipDiagram(ERD)
None.

5.ChangeManagementProcess
ThescopeofthesoftwaredoesnotindicatesfuturechangesinSRSdocument,incaseachange
isrequired,itshouldbeaccomplishedbythefollowingmembersofthedevelopmentteam,
RishabhJain
UtkarshSehgal

A.Appendices
A.1Appendix1

Open JDK : OpenJDK (Open Java Development Kit) is a free and open source
implementation of the Java Platform, Standard Edition (Java SE). It is the result of an
effort Sun Microsystems began in 2006.

Modelio : Modelio is an Open Source UML tool developed by Modeliosoft, based in


Paris, France. It supports the UML2 and BPMN standards.

A.2Appendix2
SMTPSimple Mail Transfer Protocol (SMTP) is an Internet standard for
electronic mail (email) transmission. First defined by RFC 821 in 1982, it was last
updated in 2008 with the Extended SMTP additions by RFC 5321which is the
protocol in widespread use today.SMTP by default uses TCP port 25.
POP3 (Post Office Protocol 3) is the most recent version of a standard protocol
for receiving e-mail. POP3 is a client/server protocol in which e-mail is received and
held for you by your Internet server.

IMAP4-In computing, the Internet Message Access Protocol (IMAP) is an Internet


standard protocol used by e-mail clients to retrieve e-mail messages from a mail
server over a TCP/IP connection. IMAP is defined by RFC 3501.
SoftwareRequirementsSpecification

Page10

AlphaMailClient

SoftwareRequirementsSpecification

Page11

Anda mungkin juga menyukai